ryoma123/sample_app2 — pull request #17 by ryoma123 (2014-09-04 07:55:20+00:00)
Title: UPDATEメソッドにPATCHリクエストを直接発行するテストを追加する

@tacahilo @kitak @gs3 @keokent

user_params (strong parameters) が正常に機能し、
adminが編集不可であることを確認するテストを追加しました。
テストを追加した後、敢えてadmin属性の更新を許可することで、テストに失敗することも確認しました。
レビューのほどよろしくお願いいたします。

### 修正箇所
- [x] 不正なPATCHリクエストを送信するテストを追加する
※ [Listing 9.48](https://www.railstutorial.org/book/updating_and_deleting_users#code-forbidden_admin_test) を参考にしました。

### テストが機能しているか確認する
- [x] user_params にadmin属性の編集を許可する

```
def user_params
params.require(:user).permit(:name, :email, :password,
:password_confirmation, :admin)
end
```

- [x] 全体テストが失敗することを確認

```
% bundle exec Rspec spec/
......................................................................................F

Failures:

1) User pages edit forbidden attributes
Failure/Error: specify { expect(user.reload).not_to be_admin }
expected admin? to return false, got true
# ./spec/requests/user_pages_spec.rb:153:in `block (4 levels) in '

Finished in 4.83 seconds
87 examples, 1 failure

Failed examples:

rspec ./spec/requests/user_pages_spec.rb:153 # User pages edit forbidden attributes
```

### 実行結果
- [x] 全体テストでグリーンを確認

```
% bundle exec Rspec spec/
.......................................................................................

Finished in 5.16 seconds
87 examples, 0 failures
```

演習URL：http://www.railstutorial.org/book/updating_and_deleting_users#sec-updating_deleting_exercises