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(+) 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