Author: rfm
Date: Wed Mar  9 15:51:35 2016
New Revision: 39503

URL: http://svn.gna.org/viewcvs/gnustep?rev=39503&view=rev
Log:
new teestcase by Sergei Golovin

Added:
    libs/base/trunk/Tests/base/NSURLConnection/test06.m
Modified:
    libs/base/trunk/Tests/base/NSURLConnection/Helpers/RequestHandler.m

Modified: libs/base/trunk/Tests/base/NSURLConnection/Helpers/RequestHandler.m
URL: 
http://svn.gna.org/viewcvs/gnustep/libs/base/trunk/Tests/base/NSURLConnection/Helpers/RequestHandler.m?rev=39503&r1=39502&r2=39503&view=diff
==============================================================================
--- libs/base/trunk/Tests/base/NSURLConnection/Helpers/RequestHandler.m 
(original)
+++ libs/base/trunk/Tests/base/NSURLConnection/Helpers/RequestHandler.m Wed Mar 
 9 15:51:35 2016
@@ -582,6 +582,7 @@
                                          _URLString, @"507"];
              [response setContent: index];
              [response setHeader: @"content-type" value: @"text/html" 
parameters: nil];
+             [response setHeader: @"HTTP" value: @"HTTP/1.1 200 OK" 
parameters:nil];
            }
        }
       else

Added: libs/base/trunk/Tests/base/NSURLConnection/test06.m
URL: 
http://svn.gna.org/viewcvs/gnustep/libs/base/trunk/Tests/base/NSURLConnection/test06.m?rev=39503&view=auto
==============================================================================
--- libs/base/trunk/Tests/base/NSURLConnection/test06.m (added)
+++ libs/base/trunk/Tests/base/NSURLConnection/test06.m Wed Mar  9 15:51:35 2016
@@ -0,0 +1,72 @@
+/**
+ *  Tests for HTTP synchronous requests.
+ */
+#import <Foundation/Foundation.h>
+#import "Helpers/NSURLConnectionTest.h"
+#import "Helpers/TestWebServer.h"
+#import <Testing.h>
+
+int main(int argc, char **argv, char **env)
+{
+  CREATE_AUTORELEASE_POOL(arp);
+  NSFileManager *fm;
+  NSBundle *bundle;
+  BOOL loaded;
+  NSString *helperPath;
+
+  // load the test suite's classes
+  fm = [NSFileManager defaultManager];
+  helperPath = [[fm currentDirectoryPath]
+                stringByAppendingString: @"/Helpers/TestConnection.bundle"];
+  bundle = [NSBundle bundleWithPath: helperPath];
+  loaded = [bundle load];
+
+  if (loaded)
+    {
+      Class testClass;
+      TestWebServer *server;
+      BOOL debug = NO;
+      NSURL *url;
+      NSError *error = nil;
+      NSURLRequest *request;
+      NSURLResponse *response = nil;
+      NSData *data;
+
+      testClass = [bundle principalClass]; // NSURLConnectionTest
+
+      // create a shared TestWebServer instance for performance
+      // by default it requires the basic authentication with the pair
+      // login:password
+      server = [[testClass testWebServerClass] new];
+      [server setDebug: debug];
+      [server start: nil]; // 127.0.0.1:1234 HTTP
+
+      /*
+       *  Simple GET via HTTP with some response's body and
+       *  the response's status code 200
+       */
+      url = [NSURL
+        URLWithString: @"http://login:password@localhost:1234/index";];
+      request = [NSURLRequest requestWithURL: url];
+      data = [NSURLConnection sendSynchronousRequest: request
+                                  returningResponse: &response
+                                              error: &error];
+      PASS(nil != data && [(NSHTTPURLResponse*)response statusCode] == 200,
+        "NSURLConnection synchronous load with authentication returns a 
response");
+
+      // cleaning
+      [server stop];
+      DESTROY(server);
+    }
+  else
+    {
+      // no classes no tests
+      [NSException raise: NSInternalInconsistencyException
+                 format: @"can't load bundle TestConnection"];
+    }
+
+
+  DESTROY(arp);
+
+  return 0;
+}


_______________________________________________
Gnustep-cvs mailing list
[email protected]
https://mail.gna.org/listinfo/gnustep-cvs

Reply via email to