diff --git a/.idea/runConfigurations/All_Tests.xml b/.idea/runConfigurations/All_Tests.xml
deleted file mode 100644
index a824b209..00000000
--- a/.idea/runConfigurations/All_Tests.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-
-
-
-
\ No newline at end of file
diff --git a/.idea/runConfigurations/Generic_Tests.xml b/.idea/runConfigurations/Generic_Tests.xml
new file mode 100644
index 00000000..afb55d6f
--- /dev/null
+++ b/.idea/runConfigurations/Generic_Tests.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/runConfigurations/Typed_Tests.xml b/.idea/runConfigurations/Typed_Tests.xml
new file mode 100644
index 00000000..ea002d9b
--- /dev/null
+++ b/.idea/runConfigurations/Typed_Tests.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/test/all_tests.dart b/test/generic_tests.dart
similarity index 84%
rename from test/all_tests.dart
rename to test/generic_tests.dart
index 832c17c8..7e72b76f 100644
--- a/test/all_tests.dart
+++ b/test/generic_tests.dart
@@ -6,6 +6,11 @@ import 'package:json_god/json_god.dart';
import 'package:mongo_dart/mongo_dart.dart';
import 'package:test/test.dart';
+class Greeting {
+ final String to;
+ const Greeting(String this.to);
+}
+
final headers = {
HttpHeaders.ACCEPT: ContentType.JSON.mimeType,
HttpHeaders.CONTENT_TYPE: ContentType.JSON.mimeType
@@ -17,6 +22,12 @@ wireHooked(HookedService hooked) {
});
}
+wireGreeting(HookedService hooked) {
+ hooked.onCreated.listen((item) {
+ print("Greeting: $item");
+ });
+}
+
main() {
group('angel_mongo', () {
Angel app = new Angel();
@@ -24,19 +35,28 @@ main() {
God god = new God();
Db db = new Db('mongodb://localhost:27017/angel_mongo');
DbCollection testData;
+ DbCollection testGreetings;
String url;
setUp(() async {
client = new http.Client();
await db.open();
testData = db.collection('test_data');
+ testGreetings = db.collection('test_greetings');
// Delete anything before we start
await testData.remove();
+ await testGreetings.remove();
+
var service = new MongoService(testData);
var hooked = new HookedService(service);
wireHooked(hooked);
+ var greetings = new MongoService(testGreetings);
+ var hookedGreetings = new HookedService(greetings);
+ wireGreeting(hookedGreetings);
+
app.use('/api', hooked);
+ app.use('/greetings', hookedGreetings);
HttpServer server = await app.startServer(
InternetAddress.LOOPBACK_IP_V4, 0);
url = "http://${server.address.host}:${server.port}";
diff --git a/test/typed_tests.dart b/test/typed_tests.dart
new file mode 100644
index 00000000..e69de29b