Failure Reference: "User.count" didn't change by 1. Expected: 3 Actual: 2

What does “User.count” didn’t change by 1. Expected: 3 Actual: 2 means?

If I asked you to guess what it means what would you say? Start by looking at the test it refers to, see what you are asking it to test, then try to work out the answer to your question.

Colin

Hi Colin,

Thanks for your reply. Actually problem has been already solved as you can see in link down below but this question remains.

http://stackoverflow.com/questions/30990576/user-count-didnt-change-by-1-rails

I just want to make reference of failure, error message reference for sake of efficiency. In this case, where numbers 1, 2, 3 come from is actual question instead for what these numbers stands for.

Hi Liz,

Thanks for your reply. As I replied to Colin’s comment, I’m wondering where these number actually come from. I mean originally.

Hi Colin,

Thanks for your reply. Actually problem has been already solved as you can see in link down below but this question remains.

ruby - "User.count" didn't change by 1 - Rails - Stack Overflow

I just want to make reference of failure, error message reference for sake of efficiency. In this case, where numbers 1, 2, 3 come from is actual question instead for what these numbers stands for.

The test_should_create_user expects one record to be added to the user table, it had two records at the start of the test so count should increase from 2 to 3. It did not increase by 1 from 2 to 3, hence the error.

Colin

Colin,

So in the begging, I only had first_name and last_name in ‘myapp/test/fixtures/users.yml’ but there is 3rd attribute ‘email’ in model and controller is that what this means.

Thanks,

Masaaki

Colin,

So in the begging, I only had first_name and last_name in 'myapp/test/fixtures/users.yml' but there is 3rd attribute 'email' in model and controller is that what this means.

No, it is talking about the number of records in the users table. Initially 2 from your test/fixtures/users.yml and it should have added a new record. It did not add an error as you had an attribute missing so the validation failed and therefore the record count did not increase to three.

Colin

Thanks for you support.