Make test more strict

- Align chain of method calls
- Add more expectations for method call
- Add `have_received_id` and `have_received_pw` matcher

    It support receive counts of RSpec Mocks 3.0.
    https://relishapp.com/rspec/rspec-mocks/v/3-0/docs/setting-constraints/receive-counts