From 334c67fa0e39f657dfe59b4a6c6445de20d5706b Mon Sep 17 00:00:00 2001 From: Steve Kemp Date: Tue, 28 Mar 2017 13:14:54 +0300 Subject: Added testcases for HTTP basic-auth. --- t/test-custodian-parser.rb | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) (limited to 't') diff --git a/t/test-custodian-parser.rb b/t/test-custodian-parser.rb index 1bcf5bc..843dc80 100755 --- a/t/test-custodian-parser.rb +++ b/t/test-custodian-parser.rb @@ -429,6 +429,46 @@ EOF end end + # + # Test that the parser works for basic-auth. + # + def test_http_user_password + + # + # test data + # + data = { + 'http://example must run http with auth "bob:steve".' => + { username: 'bob', password: 'steve'}, + 'http://example must run http with auth "stee\':steve".' => + { username: 'stee\'', password: 'steve'}, + 'http://example must run http with auth \'e"e:pa$$w0rd\'.' => + { username: 'e"e', password: 'pa$$w0rd'}, + } + + data.each do |str, hash | + assert_nothing_raised do + + # + # Create the new parser + # + obj = Custodian::TestFactory.create(str) + + assert(!obj.nil?) + assert(obj.kind_of?(Array)) + assert(obj.size == 1) + assert_equal(obj[0].to_s, str) + + # There should be auth-enabled + assert(obj[0].basic_auth?) + assert(obj[0].basic_auth_username == hash[:username] ) + assert(obj[0].basic_auth_password == hash[:password] ) + + end + end + end + + # # HTTP/HTTPS tests might specify custom expiry # -- cgit v1.2.1 From 69ac6cfbdaf9cbb25a0f73561d92a3d69accb434 Mon Sep 17 00:00:00 2001 From: Steve Kemp Date: Mon, 10 Apr 2017 10:41:50 +0300 Subject: Use standard URL username/password holders. Rather than: with auth 'username:password' We use: http://user:pass@example.com/ --- t/test-custodian-parser.rb | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 't') diff --git a/t/test-custodian-parser.rb b/t/test-custodian-parser.rb index 843dc80..2239503 100755 --- a/t/test-custodian-parser.rb +++ b/t/test-custodian-parser.rb @@ -438,12 +438,12 @@ EOF # test data # data = { - 'http://example must run http with auth "bob:steve".' => + 'http://bob:steve@example must run http.' => { username: 'bob', password: 'steve'}, - 'http://example must run http with auth "stee\':steve".' => + 'http://stee\':steve@example must run http.' => { username: 'stee\'', password: 'steve'}, - 'http://example must run http with auth \'e"e:pa$$w0rd\'.' => - { username: 'e"e', password: 'pa$$w0rd'}, + 'http://e\'e:pa$$w0rd@example must run http.' => + { username: 'e\'e', password: 'pa$$w0rd'}, } data.each do |str, hash | -- cgit v1.2.1