Skip to content
This repository has been archived by the owner on Jun 20, 2023. It is now read-only.

Latest commit

 

History

History
122 lines (78 loc) · 3.86 KB

setup.md

File metadata and controls

122 lines (78 loc) · 3.86 KB

開発のはじめかた

下記の手順を参考に TODO アプリを起動して下さい。

環境のセットアップ

コードの fork / clone

このリポジトリをローカルに git clone してください。

$ git clone https://github.com/mixi-inc/RubyTraining.git
$ cd RubyTraining

※ 開発対象は problems ブランチです

※ もし Travis CI / Code Climate / Coveralls を利用したいのであれば、fork してから clone して下さい。

bundle install

このプロジェクトでは bundler を利用してライブラリを管理しています。(最近のほとんどのRubyアプリケーションは bundler を使って管理されています)

まずは bundler を利用してプロジェクトが依存しているライブラリをインストールします。

$ gem install bundler  # 必要に応じて
$ bundle install

このプロジェクトでは ruby-2.1.0 のバージョンを指定しているので、それ以外のRubyでは bundle install できません。 ruby-2.1.0 が入っていない場合は rbenv を使ってインストールしてください。

また、必要に応じてオプションを使用してください。

  • ex.) bundle install --path vendor/gems --jobs 4

テスト実行

bundle install が終わったら、テストを実行して通ることを確認してください。 このプロジェクトでは rake コマンドで全てのテストを実行できます。

$ bundle exec rake
…
Finished in 0.13644 seconds
17 examples, 0 failures, 1 pending
$

データベースのセットアップ

このプロジェクトではデータベースとしてSQLiteを使用しています。以下のコマンドで開発用のDBにサンプルデータを読み込んでください。

$ bundle exec rake db:migrate
$ bundle exec rake db:seed

開発用サーバの起動

以下のコマンドでサーバを起動し、http://localhost:9292/ にアクセスしてみてください。

$ bundle exec rackup -p 9292

サンプルアプリケーションの確認

サンプルアプリケーションのシンプルなTODOアプリが http://localhost:9292/todos/index.html で動いています。

TODOの閲覧・新規作成・削除が正しく行えること、これらを行ってもコンソールにエラーログが出ていないことを確認してください。

おまけ

rubocop (コーディング規約適用ツール)

rubocopというコーディング規約の適用ツールがあります。 (日本語だと、こちらのQiitaの記事が参考になります。)

コマンドラインから直接実行する場合は、

# チェックのみ
rubocop

# 自動訂正付き
rubocop -a

のようにすると実行可能です。

デフォルトではオフにしていますが、pull-request中で使いたい場合は、 config.ruの中の以下のコメントアウトを解除してください。

  ENV['RACK_ENV'] ||= 'test'
  # sh 'rubocop'
  sh 'rspec'

Guard

Guard を利用してファイルを保存するタイミングで自動的にテストを回すことができます。 別の Shell を起動して以下のコマンドを実行してください。

  bundle exec guard

/app配下、/spec配下の.rbファイルが変更されるたびに、Rakefileにて定義されたテストが実行されます。

また、 rubocop も自動でかけられます。

Mosscow is Moss Cow

moss cow

different from moscow