Added:
trunk/src/
trunk/tests/requests/RequestTest.hx (contents, props changed)
- copied, changed from r7, /trunk/tests/requests/Request1.hx
Removed:
trunk/bin/
trunk/tests/requests/Request1.hx
Modified:
trunk/Test.hx
trunk/utest/Runner.hx
Log:
started reordering of folders
Modified: trunk/Test.hx
==============================================================================
--- trunk/Test.hx (original)
+++ trunk/Test.hx Sat Aug 30 04:57:06 2008
@@ -3,54 +3,11 @@
class Test {
public static function main() {
- /*
-#if php
- php.Lib.print("<pre>");
-#elseif neko
- neko.Lib.print("<pre>");
-#end
-*/
- var runner = new Runner();
-
- runner.addCase(new tests.std.ArrayTest());
- runner.addCase(new tests.std.DateTest());
-#if (!flash || flash9)
- runner.addCase(new tests.std.ERegTest());
-#end
- runner.addCase(new tests.std.HashTest());
- runner.addCase(new tests.std.IntHashTest());
- runner.addCase(new tests.std.ListTest());
- runner.addCase(new tests.std.StdTest());
- runner.addCase(new tests.std.StringTest());
- runner.addCase(new tests.std.StringToolsTest());
- runner.addCase(new tests.std.XmlTest());
-
- runner.addCase(new tests.std.haxe.Md5Test());
- runner.addCase(new tests.std.haxe.SerializerTest());
-
- runner.addCase(new tests.std.ReflectTest()); // CRASHES <= F8
-
-
-#if (!flash || flash9)
- runner.addCase(new tests.std.haxe.TemplateTest());
-#end
-
-
-#if neko
- runner.addCase(new tests.std.neko.NekoSerializationTest());
-#end
-
- runner.addCase(new tests.lang.CompareTest());
-
- haxe.Firebug.redirectTraces();
+// haxe.Firebug.redirectTraces();
+ var runner = new Runner();
+ runner.addCase(new tests.requests.RequestTest());
var report = new TraceReport(runner);
runner.run();
}
-}
-
-class TestClass {
- public function new();
-
- public function test() { utest.Assert.isTrue(true); }
}
Copied: trunk/tests/requests/RequestTest.hx (from r7,
/trunk/tests/requests/Request1.hx)
==============================================================================
--- /trunk/tests/requests/Request1.hx (original)
+++ trunk/tests/requests/RequestTest.hx Sat Aug 30 04:57:06 2008
@@ -1,141 +1,57 @@
package tests.requests;
import utest.Assert;
-import utest.Assertation;
-import utest.TestFixture;
-import utest.TestHandler;
import utest.Runner;
-import utest.ui.text.TraceReport;
-class Request1 {
-
- static inline var TIMEOUT = 500;
-
- static function main() {
- //var t = new Request1();
- //t.testRequest();
- //t.testRequestFail();
-
- var r = new Runner();
- r.addCase(new RequestTest());
- var report = new TraceReport(r);
- r.run();
-
- }
-
- public function new();
-
- // #1 - asynchronous usage
- function testRequest() {
- var testCase = new RequestTest();
- var fixture = new TestFixture(testCase, "testHttp");
- var handler = new TestHandler(fixture);
-
- var async = handler.addAsync(function(){ trace("running async"); },
TIMEOUT);
- testCase.onFinish = async;
-
- handler.onTimeout = function(h) {
- trace("TIMEOUT");
- }
-
- handler.onComplete = function(h) {
- trace("COMPLETE");
- var results = handler.results;
-
- if (h.results.length != 1) {
- trace("FAIL (wrong number of results ("+h.results.length+"))");
- } else {
- switch(h.results.pop()) {
- case Success(p):
- trace("OK #1");
- default:
- trace("FAIL (expected success)");
- }
- }
- }
-
- handler.execute();
- }
-
- // #2 - asynchronous usage with a failure
- function testRequestFail() {
- var testCase = new RequestTest();
- var fixture = new TestFixture(testCase, "testHttpFail");
- var handler = new TestHandler(fixture);
-
- var async = handler.addAsync(function(){ trace("running async"); },
TIMEOUT);
- testCase.onFinish = async;
-
- handler.onTimeout = function(h) {
- trace("TIMEOUT");
- }
-
- handler.onComplete = function(h) {
- trace("COMPLETE");
- var results = handler.results;
-
- if (h.results.length != 1) {
- trace("FAIL (wrong number of results ("+h.results.length+"))");
- } else {
- switch(h.results.pop()) {
- case Failure(msg , pos ):
- trace("OK #2");
- default:
- trace("FAIL (expected failure)");
- }
- }
- }
-
- handler.execute();
- }
-}
+#if php
+import php.Web;
+#elseif neko
+import neko.Web;
+#elseif flash
+import flash.external.ExternalInterface;
+#end
class RequestTest {
-
- // Edit url to match your server.
- private static var baseURL = "http://localhost:8888/utest/requests/";
-
- // A handle on the returned function from addAsync().
- public var onFinish : Void->Void;
-
+ static inline var TIMEOUT = 500;
+
public function new();
-
- /*
- Makes a http request that will work.
- */
- public function testHttp() {
- var requestor = new haxe.Http( baseURL + "hello.html" );
- requestor.onData = onData;
- requestor.onError = onError;
+
+ public function testWorkingHttp() {
+ var requestor = new haxe.Http( getUrl("real.html") );
+ requestor.onData = Assert.createEvent(onData, TIMEOUT);
requestor.request(false);
}
-
- /*
- Makes a http request that will not work.
- */
- public function testHttpFail() {
- var requestor = new haxe.Http( baseURL + "doesntexist.html" );
- requestor.onData = onData;
- requestor.onError = onError;
+
+ public function testFailingHttp() {
+ var requestor = new haxe.Http( getUrl("fake.html") );
+ requestor.onError = Assert.createEvent(onExpectedError, TIMEOUT);
requestor.request(false);
}
-
- /*
- Handles results from SUCCESSFUL http requests.
- */
+
function onData(msg:String) {
- trace(msg);
- Assert.equals("<P>hello world</P>", msg);
- onFinish();
+ Assert.isTrue(StringTools.startsWith(msg.toLowerCase(), "<html"));
}
-
- /*
- Handles results from UNSUCCESSFUL http requests.
- */
- public function onError(msg:String) {
- trace(msg);
- Assert.fail(msg);
- onFinish();
+
+ public function onExpectedError(msg:String) {
+ Assert.notNull(msg);
}
-
-}
\ No newline at end of file
+
+ static function getUrl(path : String) {
+#if (php || neko)
+ var uri = Web.getURI();
+ uri = uri.substr(0, uri.lastIndexOf("/")+1);
+ return "http://"+Web.getClientHeader("HOST")+uri+"../files/"+(path ==
null? '': path);
+#elseif js
+ var uri : String = Std.string(js.Lib.window.location);
+ uri = uri.substr(0, uri.lastIndexOf("/")+1);
+ return uri+"files/"+(path == null? '': path);
+#elseif (flash9 || flash8)
+ var uri : String =
ExternalInterface.call("window.location.href.toString");
+ uri = uri.substr(0, uri.lastIndexOf("/")+1);
+ return uri+"files/"+(path == null? '': path);
+#elseif flash
+// TODO: find a way to autodetect this
+ return "http://localhost/utest/files/"+path;
+#end
+ }
+}
Modified: trunk/utest/Runner.hx
==============================================================================
--- trunk/utest/Runner.hx (original)
+++ trunk/utest/Runner.hx Sat Aug 30 04:57:06 2008
@@ -3,10 +3,8 @@
class Runner {
public var fixtures(default, null) : List<TestFixture<Dynamic>>;
- public var results (default, null) : List<TestResult>;
public function new() {
fixtures = new List();
- results = new List();
}
public function addCase(test : Dynamic, setup = "setup", teardown
= "teardown", prefix = "test", ?pattern : EReg) {
@@ -66,9 +64,7 @@
}
function testComplete(h : TestHandler<Dynamic>) {
- var result = TestResult.ofHandler(h);
- onProgress(this, result, fixtures.length+1, testsToRun);
- results.add(result);
+ onProgress(this, TestResult.ofHandler(h), fixtures.length+1, testsToRun);
runNext();
}
}