diff --git a/tests/build.xml b/tests/build.xml index c3c3d9ba9..fff1d2f7f 100644 --- a/tests/build.xml +++ b/tests/build.xml @@ -99,6 +99,34 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -180,6 +208,38 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/etc/asc-files.txt b/tests/etc/asc-files.txt new file mode 100644 index 000000000..f9da2d836 --- /dev/null +++ b/tests/etc/asc-files.txt @@ -0,0 +1 @@ +com/threerings/bureau/client/TestClient.as diff --git a/tests/src/as/com/threerings/bureau/client/TestClient.as b/tests/src/as/com/threerings/bureau/client/TestClient.as new file mode 100644 index 000000000..811950266 --- /dev/null +++ b/tests/src/as/com/threerings/bureau/client/TestClient.as @@ -0,0 +1,50 @@ +package com.threerings.bureau.client { + +public class TestClient extends BureauClient +{ + public function TestClient (token :String, bureauId :String) + { + super(token, bureauId); + } + + protected override function createDirector () :BureauDirector + { + return new TestDirector(_ctx); + } +} + +} + +import com.threerings.bureau.client.Agent; +import com.threerings.bureau.client.BureauDirector; +import com.threerings.bureau.Log; +import com.threerings.bureau.data.AgentObject; +import com.threerings.bureau.util.BureauContext; + +class TestAgent extends Agent +{ + public override function start () :void + { + Log.info("Starting agent " + _agentObj.getOid()); + } + + public override function stop () :void + { + Log.info("Stopping agent " + _agentObj.getOid()); + } +} + +class TestDirector extends BureauDirector +{ + public function TestDirector (ctx :BureauContext) + { + super(ctx); + } + + // just use our test agent exclusively - in the real world, the agent created would depend + // on the object's type and/or properties + protected override function createAgent (agentObj :AgentObject) :Agent + { + return new TestAgent(); + } +} diff --git a/tests/src/as/com/threerings/bureau/client/TestClientMain.as b/tests/src/as/com/threerings/bureau/client/TestClientMain.as new file mode 100644 index 000000000..5390fb026 --- /dev/null +++ b/tests/src/as/com/threerings/bureau/client/TestClientMain.as @@ -0,0 +1,28 @@ + +/** + * The main entry point for the bureau test client to be run in thane. Arguments: + * 0: the token to use to log back into the server + * 1: the bureau id of this instance + * 2: the name of the server to log into + * 3: the port to connect to on the server + */ + +import avmplus.System; + +for (var i :int = 0; i < System.argv.length; ++i) { + print("Argv[" + i + "] = " + System.argv[i]); +} + +/* +// create the client and log on +var client :TestClient = new TestClient( + System.getProperty("token"), + System.getProperty("bureauId")); +client.setServer( + System.getProperty("serverName"), + new int[] {Integer.parseInt(System.getProperty("serverPort"))}); +client.logon(); + +// run it +client.run(); +*/