Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

OSS Gate Workshop: Tokyo: 2019-09-14: neko314: sorcery: Work log #1298

Closed
neko314 opened this issue Sep 14, 2019 · 24 comments
Closed

OSS Gate Workshop: Tokyo: 2019-09-14: neko314: sorcery: Work log #1298

neko314 opened this issue Sep 14, 2019 · 24 comments

Comments

@neko314
Copy link
Contributor

neko314 commented Sep 14, 2019

This is a work log of a "OSS Gate workshop".
"OSS Gate workshop" is an activity to increase OSS developers.
Here's been discussed in Japanese. Thanks.

作業ログ作成時の説明

以下のテンプレートを埋めてタイトルに設定します。埋め方例はスクロールすると見えてきます。

OSS Gate Workshop: ${LOCATION}: ${YEAR}-${MONTH}-${DAY}: ${ACCOUNT_NAME}: ${OSS_NAME}: Work log

タイトル例↓:

OSS Gate Workshop: Tokyo: 2017-01-16: kou: Rabbit: Work log

OSS Gateワークショップ関連情報

  • スライド:ワークショップの進行に使っているスライドがあります。
  • チャット:OSS開発に関することならなんでも相談できます。ワークショップが終わった後もオンラインで相談しながら継続的にOSSの開発に参加しましょう!
  • シナリオ:ワークショップの目的・内容・進め方の詳細が書いています。
  • 過去のビギナーの作業ログ:他の人の作業ログから学べることがいろいろあるはずです。
@neko314
Copy link
Contributor Author

neko314 commented Sep 14, 2019

SorceryのRails 5 request specs login_user method undefinedについて、動作確認することにした

@neko314
Copy link
Contributor Author

neko314 commented Sep 14, 2019

Sample appをclone

@neko314
Copy link
Contributor Author

neko314 commented Sep 14, 2019

docker-compose up

@neko314
Copy link
Contributor Author

neko314 commented Sep 14, 2019

docker exec -it sorcery_example bashして
bin/rails db:migrate
bundle install

@neko314
Copy link
Contributor Author

neko314 commented Sep 14, 2019

bin/rails testでテストが落ちる

# bin/rails test
Run options: --seed 31025

# Running:

.....E

Error:
UsersControllerTest#test_should_show_user:
ArgumentError: unknown keyword: id
    test/functional/users_controller_test.rb:29:in `block in <class:UsersControllerTest>'


bin/rails test test/functional/users_controller_test.rb:27

E

Error:
UsersControllerTest#test_should_update_user:
ArgumentError: unknown keywords: id, user
    test/functional/users_controller_test.rb:41:in `block in <class:UsersControllerTest>'


bin/rails test test/functional/users_controller_test.rb:39

E

Error:
UsersControllerTest#test_should_create_user:
ArgumentError: unknown keyword: user
    test/functional/users_controller_test.rb:21:in `block (2 levels) in <class:UsersControllerTest>'
    test/functional/users_controller_test.rb:20:in `block in <class:UsersControllerTest>'


bin/rails test test/functional/users_controller_test.rb:19

.E

Error:
UsersControllerTest#test_should_destroy_user:
ArgumentError: unknown keyword: id
    test/functional/users_controller_test.rb:48:in `block (2 levels) in <class:UsersControllerTest>'
    test/functional/users_controller_test.rb:47:in `block in <class:UsersControllerTest>'


bin/rails test test/functional/users_controller_test.rb:45

E

Error:
UsersControllerTest#test_should_get_edit:
ArgumentError: unknown keyword: id
    test/functional/users_controller_test.rb:35:in `block in <class:UsersControllerTest>'


bin/rails test test/functional/users_controller_test.rb:33

E

Error:
UsersControllerTest#test_should_get_index:
NoMethodError: assigns has been extracted to a gem. To continue using it,
        add `gem 'rails-controller-testing'` to your Gemfile.
    test/functional/users_controller_test.rb:11:in `block in <class:UsersControllerTest>'


bin/rails test test/functional/users_controller_test.rb:8



Finished in 0.893892s, 13.4244 runs/s, 10.0683 assertions/s.
12 runs, 9 assertions, 0 failures, 6 errors, 0 skips

@neko314
Copy link
Contributor Author

neko314 commented Sep 14, 2019

エラーメッセージ通りgem 'rails-controller-testing'を追加してbundle install

@neko314
Copy link
Contributor Author

neko314 commented Sep 14, 2019

通るテストが1つ増えたけどまだ5個落ちる

# bin/rails test
Run options: --seed 2864

# Running:

....E

Error:
UsersControllerTest#test_should_get_edit:
ArgumentError: unknown keyword: id
    test/functional/users_controller_test.rb:35:in `block in <class:UsersControllerTest>'


bin/rails test test/functional/users_controller_test.rb:33

..E

Error:
UsersControllerTest#test_should_update_user:
ArgumentError: unknown keywords: id, user
    test/functional/users_controller_test.rb:41:in `block in <class:UsersControllerTest>'


bin/rails test test/functional/users_controller_test.rb:39

E

Error:
UsersControllerTest#test_should_create_user:
ArgumentError: unknown keyword: user
    test/functional/users_controller_test.rb:21:in `block (2 levels) in <class:UsersControllerTest>'
    test/functional/users_controller_test.rb:20:in `block in <class:UsersControllerTest>'


bin/rails test test/functional/users_controller_test.rb:19

E

Error:
UsersControllerTest#test_should_destroy_user:
ArgumentError: unknown keyword: id
    test/functional/users_controller_test.rb:48:in `block (2 levels) in <class:UsersControllerTest>'
    test/functional/users_controller_test.rb:47:in `block in <class:UsersControllerTest>'


bin/rails test test/functional/users_controller_test.rb:45

E

Error:
UsersControllerTest#test_should_show_user:
ArgumentError: unknown keyword: id
    test/functional/users_controller_test.rb:29:in `block in <class:UsersControllerTest>'


bin/rails test test/functional/users_controller_test.rb:27

.

Finished in 1.145968s, 10.4715 runs/s, 8.7262 assertions/s.
12 runs, 10 assertions, 0 failures, 5 errors, 0 skips

@neko314
Copy link
Contributor Author

neko314 commented Sep 14, 2019

localhostに接続して、アプリケーションの挙動としては問題ないことを確認。
引き続きテストの修正をやることにする。

@tdtds
Copy link
Member

tdtds commented Sep 14, 2019

サンプルアプリにはライセンスが設定されていないという問題はありましたが、ここはいちおう親プロジェクトに準拠すると判断して進めてしまいましょう。「ライセンスを設定してくれ」というissueをあげてもよいかも知れませんね。

@neko314
Copy link
Contributor Author

neko314 commented Sep 14, 2019

@tdtds
ありがとうございます。
ライセンスについては提案のIssue立ててみます。
テストは直せそうなので時間内に修正できたらPRとして作成できるように作業進めてみます。

@neko314
Copy link
Contributor Author

neko314 commented Sep 14, 2019

testコードを見てみるとこのようになっている。

get :edit, id: @user.to_param

でも、Railsガイドではこのように書いている。

get article_url, params: { id: 12 }, headers: { "HTTP_REFERER" => "http://example.com/home" }et article_url, params: { id: 12 }, headers: { "HTTP_REFERER" => "http://example.com/home" }

テスト中のパタメータの書き方を直したらテスト通りそう。

@neko314
Copy link
Contributor Author

neko314 commented Sep 14, 2019

直したら通った。

@neko314
Copy link
Contributor Author

neko314 commented Sep 14, 2019

gemの追加とテストの修正は別のPRにする。(ほうがいいといサポーターさんから教えていただいた)

@neko314
Copy link
Contributor Author

neko314 commented Sep 14, 2019

gemの追加とテストの修正は別のPRにする。

と思ったが、どちらもRails 4系から5系へアップデートしたときの修正漏れなのでまとめてもよさそう。

@neko314
Copy link
Contributor Author

neko314 commented Sep 14, 2019

リポジトリをfolkしてimprove-rails-5-test-supportというブランチで修正をコミットした。

@neko314
Copy link
Contributor Author

neko314 commented Sep 14, 2019

How to reproduce

docker-compose up
docker exec -it sorcery_example bash
bin/rails db:migrate
bundle install
# bin/rails test
Run options: --seed 31025

# Running:

.....E

Error:
UsersControllerTest#test_should_show_user:
ArgumentError: unknown keyword: id
    test/functional/users_controller_test.rb:29:in `block in <class:UsersControllerTest>'


bin/rails test test/functional/users_controller_test.rb:27

E

Error:
UsersControllerTest#test_should_update_user:
ArgumentError: unknown keywords: id, user
    test/functional/users_controller_test.rb:41:in `block in <class:UsersControllerTest>'


bin/rails test test/functional/users_controller_test.rb:39

E

Error:
UsersControllerTest#test_should_create_user:
ArgumentError: unknown keyword: user
    test/functional/users_controller_test.rb:21:in `block (2 levels) in <class:UsersControllerTest>'
    test/functional/users_controller_test.rb:20:in `block in <class:UsersControllerTest>'


bin/rails test test/functional/users_controller_test.rb:19

.E

Error:
UsersControllerTest#test_should_destroy_user:
ArgumentError: unknown keyword: id
    test/functional/users_controller_test.rb:48:in `block (2 levels) in <class:UsersControllerTest>'
    test/functional/users_controller_test.rb:47:in `block in <class:UsersControllerTest>'


bin/rails test test/functional/users_controller_test.rb:45

E

Error:
UsersControllerTest#test_should_get_edit:
ArgumentError: unknown keyword: id
    test/functional/users_controller_test.rb:35:in `block in <class:UsersControllerTest>'


bin/rails test test/functional/users_controller_test.rb:33

E

Error:
UsersControllerTest#test_should_get_index:
NoMethodError: assigns has been extracted to a gem. To continue using it,
        add `gem 'rails-controller-testing'` to your Gemfile.
    test/functional/users_controller_test.rb:11:in `block in <class:UsersControllerTest>'


bin/rails test test/functional/users_controller_test.rb:8



Finished in 0.893892s, 13.4244 runs/s, 10.0683 assertions/s.
12 runs, 9 assertions, 0 failures, 6 errors, 0 skips

@neko314
Copy link
Contributor Author

neko314 commented Sep 14, 2019

Fix

  • Add gem 'rails-controller-testing'
  • All parameters should be passed to the methods with param hashes

@neko314
Copy link
Contributor Author

neko314 commented Sep 14, 2019

PR作った
Sorcery/sorcery-example-app#8

@neko314
Copy link
Contributor Author

neko314 commented Sep 14, 2019

”ライセンス設定してほしい”Issueの文章を考える

@neko314
Copy link
Contributor Author

neko314 commented Sep 14, 2019

Add LICENSE.md.
Please consider to license this repository explicitly

@neko314
Copy link
Contributor Author

neko314 commented Sep 14, 2019

Issue 立てた
Sorcery/sorcery-example-app#9

@ryoon
Copy link
Contributor

ryoon commented Sep 14, 2019

今日はありがとうございました。私も大変勉強になりました。

@neko314
Copy link
Contributor Author

neko314 commented Sep 14, 2019

@ryoon
こちらこそ、本当にありがとうございました!
今日はPRとか出せましたが、最初にやろうと思っていた動作確認はできてないので、明日以降は今日教えてもらったことを参考にして自分でやってみたいと思います✨

@oss-gate-issue-cleaner
Copy link

おつかれさまでした!

後日引き続きワークショップがある場合

後日のワークショップで再開する際に、issueタイトルの日付を更新してreopenしてください!

ワークショップ終了後に続きがしたい場合

issueはクローズしますが、その後も作業を続けていただいて大丈夫です!

是非このissueを活用なさってください。

今後のイベントの案内

現在以下のイベントの開催を予定しています。

参加をお待ちしてます!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants