Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # WARNING: pseudo code
- class Authenticator
- def initialize(user_repository = User)
- @user_repository = user_repository
- end
- def authenticate(identifier, hashed_password)
- @user_repository.find(:username => identifier, :password => hashed_password).present?
- end
- end
- describe Authenticator
- let(:repo) { double("user repo") }
- let(:authenticator) { Authenticator.new(repo) }
- context "with invalid credentials"
- before { repo.stub(:find => nil) }
- it "returns false" do
- authenticator.authenticate("invalid", "invalid").should_not be
- end
- end
- context "with valid credentials"
- before { repo.stub(:find => double) }
- it "returns true" do
- authenticator.authenticate("valid", "valid").should be
- end
- end
- end
Add Comment
Please, Sign In to add comment