diff options
author | Azul <azul@riseup.net> | 2012-10-05 12:44:47 +0200 |
---|---|---|
committer | Azul <azul@riseup.net> | 2012-10-05 12:44:47 +0200 |
commit | 7762129834afab32dbdd4b16e79b4fd487d1fafe (patch) | |
tree | 63e226e1df93e95a8e9be2494c8d58ab5d04839c /test/auth_test.rb | |
parent | 9683634eb18843151d318b483a5fb237508f4755 (diff) | |
parent | ce246cb722f7f61b3a1ba7223857627f1bed4f4c (diff) |
Merge branch 'feature-py_srp_compat' into developdevelop
Diffstat (limited to 'test/auth_test.rb')
-rw-r--r-- | test/auth_test.rb | 28 |
1 files changed, 16 insertions, 12 deletions
diff --git a/test/auth_test.rb b/test/auth_test.rb index 4311683..24bc42f 100644 --- a/test/auth_test.rb +++ b/test/auth_test.rb @@ -1,23 +1,25 @@ require File.expand_path(File.dirname(__FILE__) + '/test_helper') -class User +# single user test server. +# You obviously want sth. different for real life. +class Server - include SRP::Authentication + attr_accessor :salt, :verifier, :username - attr_accessor :salt, :verifier - - def initialize(salt, verifier) + def initialize(salt, verifier, username) @salt = salt @verifier = verifier + @username = username end def handshake(login, aa) - @session = initialize_auth(aa) + # this can be serialized and needs to be persisted between requests + @session = SRP::Session.new(self, aa) return @session.bb end def validate(m) - authenticate(m, @session) + @session.authenticate(m) end end @@ -28,19 +30,21 @@ class AuthTest < Test::Unit::TestCase @username = 'user' @password = 'opensesami' @client = SRP::Client.new(@username, @password) - @server = User.new(@client.salt, @client.verifier) + @server = Server.new(@client.salt, @client.verifier, @username) end def test_successful_auth - assert @client.authenticate(@server, @username, @password) + assert @client.authenticate(@server) end - def test_wrong_password - assert !@client.authenticate(@server, @username, "wrong password") + def test_a_wrong_password + client = SRP::Client.new(@username, "wrong password", @client.salt) + assert !client.authenticate(@server) end def test_wrong_username - assert !@client.authenticate(@server, "wrong username", @password) + client = SRP::Client.new("wrong username", @password, @client.salt) + assert !client.authenticate(@server) end end |