Im trying to install salted and get errors when running the rake test...
/usr/bin/ruby1.8 -Ilib:test
"/usr/lib/ruby/gems/1.8/gems/rake-0.7.0/lib/rake/rake_test_loader .rb"
"test/unit/localization_test.rb" "test/unit/user_test.rb"
Loaded suite
/usr/lib/ruby/gems/1.8/gems/rake-0.7.0/lib/rake/rake_test_loader
Started
........F....E
Finished in 0.108794 seconds.
1) Failure:
test_auth(UserTest) [./test/unit/user_test.rb:9]:
<nil> expected but was
<#<User:0xb75d7210
@attributes
{"salt"=>"7f8b036f9b647d46d22abdbfc8113f44a88f9889",
"delete_after"=>nil,
"security_token"=>nil,
"role"=>nil,
"lastname"=>nil,
"firstname"=>nil,
"id"=>"1000001",
"deleted"=>"0",
"token_expiry"=>nil,
"verified"=>"1",
"salted_password"=>"ef94c16f6c124a4e84cc215c164767bfa25f6e92",
"login"=>"bob",
"email"=>"bob@test.com"}>>.
2) Error:
test_passwordchange(UserTest):
NoMethodError: You have a nil object when you didn''t expect it!
The error occured while evaluating nil.change_password
./test/unit/user_test.rb:17:in `test_passwordchange''
14 tests, 27 assertions, 1 failures, 1 errors
rake aborted!
Command failed with status (1): [/usr/bin/ruby1.8 -Ilib:test
"/usr/lib/ruby...]
--
Posted via http://www.ruby-forum.com/.
Hi Rob,
I just encountered the exact same problem. The test code that is failing
is this:
assert_equal @bob, User.authenticate("bob", "atest")
But I could not find anywhere where @bob was being set. The only thing I
could think of was that
perhaps the author used some sort of extension that would generate these
objects from the fixtures. There is another place where an @longbob is
assumed to exist as well.
I haven''t had a chance to track this down any farther, so I changed the
line to this:
assert_not_nil User.authenticate("bob", "atest")
to get past the first error. Then I went to bed, leaving the other error
intact while I did a little more research on this. Does anyone else know
anything about this? It woud look like the author was able to get an
@bob and @longbob generated simply from the fixture. Is there a way to
do this?
John Quinley
Rob Balfour wrote:> Im trying to install salted and get errors when running the rake test...
>
> /usr/bin/ruby1.8 -Ilib:test
> "/usr/lib/ruby/gems/1.8/gems/rake-0.7.0/lib/rake/rake_test_loader
.rb"
> "test/unit/localization_test.rb"
"test/unit/user_test.rb"
> Loaded suite
> /usr/lib/ruby/gems/1.8/gems/rake-0.7.0/lib/rake/rake_test_loader
> Started
> ........F....E
> Finished in 0.108794 seconds.
>
> 1) Failure:
> test_auth(UserTest) [./test/unit/user_test.rb:9]:
> <nil> expected but was
> <#<User:0xb75d7210
> @attributes>
{"salt"=>"7f8b036f9b647d46d22abdbfc8113f44a88f9889",
> "delete_after"=>nil,
> "security_token"=>nil,
> "role"=>nil,
> "lastname"=>nil,
> "firstname"=>nil,
> "id"=>"1000001",
> "deleted"=>"0",
> "token_expiry"=>nil,
> "verified"=>"1",
>
"salted_password"=>"ef94c16f6c124a4e84cc215c164767bfa25f6e92",
> "login"=>"bob",
> "email"=>"bob@test.com"}>>.
>
> 2) Error:
> test_passwordchange(UserTest):
> NoMethodError: You have a nil object when you didn''t expect it!
> The error occured while evaluating nil.change_password
> ./test/unit/user_test.rb:17:in `test_passwordchange''
>
> 14 tests, 27 assertions, 1 failures, 1 errors
> rake aborted!
> Command failed with status (1): [/usr/bin/ruby1.8 -Ilib:test
> "/usr/lib/ruby...]
--
Posted via http://www.ruby-forum.com/.
John Quinley wrote:> I just encountered the exact same problem. The test code that is failing > is this: > assert_equal @bob, User.authenticate("bob", "atest") > > But I could not find anywhere where @bob was being set. The only thing I > could think of was that > perhaps the author used some sort of extension that would generate these > objects from the fixtures. There is another place where an @longbob is > assumed to exist as well.To my knowledge these tests have never worked. A couple of the unit tests fail out of the box, but all the functional tests fail. Perhaps they worked on Rails 0.5 or something, I don''t know. I first looked at them at around Rails 0.12. On the plus side, even though the tests fail, the code itself seems to work. When I was looking at this a few months ago I was able to make both the unit and functional tests pass with some effort and to improve the coverage of the tests. At the time I was new to ruby and rails, so I ended up learning quite a bit in this exercise, but if I knew then what I know now, I would have moved to acts_as_authenticated weeks earlier. Almost everything in rails just works or is within a couple of configuration steps from working. That is not the case for these tests. -- Ray
John Quinley wrote:> Hi Rob, > > I just encountered the exact same problem. The test code that is failing > is this: > assert_equal @bob, User.authenticate("bob", "atest") >...>> 14 tests, 27 assertions, 1 failures, 1 errors >> rake aborted! >> Command failed with status (1): [/usr/bin/ruby1.8 -Ilib:test >> "/usr/lib/ruby...]If I remember right it has to do with some changes to the Rails test code, about the way it loads fixtures. I think it was a change from 0.14 to 1.0 but I don''t recall exactly. I''ll look into it to see what I did, but I know I went into the tests on my installation of SHLG and did some fiddling to get them up to date, for my own satisfaction. Jeff Coleman -- Posted via http://www.ruby-forum.com/.