Mercurial > projects > orange
annotate tests/Event.d @ 42:8b9409423740
Added unit tests for (de)serializing events.
author | Jacob Carlborg <doob@me.com> |
---|---|
date | Sun, 07 Aug 2011 17:53:50 +0200 |
parents | |
children |
rev | line source |
---|---|
42
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
1 /** |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
2 * Copyright: Copyright (c) 2011 Jacob Carlborg. All rights reserved. |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
3 * Authors: Jacob Carlborg |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
4 * Version: Initial created: Aug 6, 2011 |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
5 * License: $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost Software License 1.0) |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
6 */ |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
7 module tests.Event; |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
8 |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
9 import orange.core.string; |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
10 import orange.serialization.Serializer; |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
11 import orange.serialization.Events; |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
12 import orange.serialization.archives.XMLArchive; |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
13 import orange.test.UnitTester; |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
14 import tests.Util; |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
15 |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
16 Serializer serializer; |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
17 XMLArchive!(char) archive; |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
18 |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
19 int[] arr; |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
20 |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
21 class Foo |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
22 { |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
23 |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
24 void serializing () |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
25 { |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
26 arr ~= 1; |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
27 } |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
28 |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
29 void serialized () |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
30 { |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
31 arr ~= 2; |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
32 } |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
33 |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
34 void deserializing () |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
35 { |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
36 arr ~= 3; |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
37 } |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
38 |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
39 void deserialized () |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
40 { |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
41 arr ~= 4; |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
42 } |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
43 |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
44 mixin OnSerializing!(serializing); |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
45 mixin OnSerialized!(serialized); |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
46 mixin OnDeserializing!(deserializing); |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
47 mixin OnDeserialized!(deserialized); |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
48 } |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
49 |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
50 unittest |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
51 { |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
52 archive = new XMLArchive!(char); |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
53 serializer = new Serializer(archive); |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
54 |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
55 describe("serialization events") in { |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
56 it("all four events should be triggered when serializing and deserializing") in { |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
57 serializer.serialize(new Foo); |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
58 serializer.deserialize!(Foo)(archive.untypedData); |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
59 |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
60 assert(arr == [1, 2, 3, 4]); |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
61 }; |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
62 }; |
8b9409423740
Added unit tests for (de)serializing events.
Jacob Carlborg <doob@me.com>
parents:
diff
changeset
|
63 } |