summaryrefslogtreecommitdiff
path: root/test/xmlrpc
diff options
context:
space:
mode:
Diffstat (limited to 'test/xmlrpc')
-rw-r--r--test/xmlrpc/test_client.rb34
1 files changed, 33 insertions, 1 deletions
diff --git a/test/xmlrpc/test_client.rb b/test/xmlrpc/test_client.rb
index c3c3854d72..bf57d7e54c 100644
--- a/test/xmlrpc/test_client.rb
+++ b/test/xmlrpc/test_client.rb
@@ -16,7 +16,17 @@ module XMLRPC
def started?
@started
end
- def start; @started = true; end
+ def start
+ @started = true
+ if block_given?
+ begin
+ return yield(self)
+ ensure
+ @started = false
+ end
+ end
+ self
+ end
def request_post path, request, headers
@responses[path].shift
@@ -210,6 +220,28 @@ module XMLRPC
assert_equal expected, resp
end
+ def test_async_request
+ fh = read 'blog.xml'
+
+ responses = {
+ '/foo' => [ Fake::Response.new(fh, [['Content-Type', 'text/xml']]) ]
+ }
+
+ client = fake_client(responses).new2 'http://example.org/foo'
+
+ resp = client.call_async('wp.getUsersBlogs', 'tlo', 'omg')
+
+ expected = [{
+ "isAdmin" => true,
+ "url" => "http://tenderlovemaking.com/",
+ "blogid" => "1",
+ "blogName" => "Tender Lovemaking",
+ "xmlrpc" => "http://tenderlovemaking.com/xmlrpc.php"
+ }]
+
+ assert_equal expected, resp
+ end
+
# make a request without content-type header
def test_bad_content_type
fh = read 'blog.xml'