summaryrefslogtreecommitdiff
path: root/bin/run_tests
diff options
context:
space:
mode:
authorelijah <elijah@riseup.net>2014-06-23 02:40:21 -0700
committerelijah <elijah@riseup.net>2014-06-23 02:40:21 -0700
commit10c76ac1cfa4e94375b456266e4113a4313abe96 (patch)
treef901c5b5977633199997750cce4a530e68b8d48c /bin/run_tests
parentc20aa4f8c35a4cba982de92105da2566ecdfa1ae (diff)
tests: fixed problem with showing couchdb password in process table, and adding warnings for when ACL is not being respected (which is currently always). closes #5445
Diffstat (limited to 'bin/run_tests')
-rwxr-xr-xbin/run_tests23
1 files changed, 20 insertions, 3 deletions
diff --git a/bin/run_tests b/bin/run_tests
index 3ba89684..d7fc1e4c 100755
--- a/bin/run_tests
+++ b/bin/run_tests
@@ -122,7 +122,7 @@ class LeapTest < MiniTest::Unit::TestCase
#
# attempts a http GET on the url, yields |body, response, error|
#
- def get(url, params=nil)
+ def get(url, params=nil, options=nil)
uri = URI(url)
if params
uri.query = URI.encode_www_form(params)
@@ -133,7 +133,11 @@ class LeapTest < MiniTest::Unit::TestCase
http.use_ssl = true
end
http.start do |agent|
- response = agent.get(uri.request_uri)
+ request = Net::HTTP::Get.new uri.request_uri
+ if options && options[:username]
+ request.basic_auth options[:username], options[:password]
+ end
+ response = agent.request(request)
if response.is_a?(Net::HTTPSuccess)
yield response.body, response, nil
else
@@ -146,7 +150,7 @@ class LeapTest < MiniTest::Unit::TestCase
def assert_get(url, params=nil, options=nil)
options ||= {}
- get(url, params) do |body, response, error|
+ get(url, params, options) do |body, response, error|
if body
yield body if block_given?
elsif response
@@ -158,6 +162,19 @@ class LeapTest < MiniTest::Unit::TestCase
end
#
+ # only a warning for now, should be a failure in the future
+ #
+ def assert_auth_fail(url, params, auth_options)
+ get(url, params, auth_options) do |body, response, error|
+ unless response.code == 401
+ warn "Expected a '401 Unauthorized' response, but got #{response.code} instead (GET #{url} with username '#{auth_options[:username]}')."
+ return false
+ end
+ end
+ true
+ end
+
+ #
# test if a socket can be connected to
#