Merge: doc: fixed some typos and other misc. corrections
[nit.git] / tests / test_serialization.nit
index 1d3de0a..3530f12 100644 (file)
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
+#alt2#module test_serialization_alt2 is serialize
+
 import serialization
-import json_serialization
+import json
 
 # Simple class
 class A
-       auto_serializable
-
-       var b = false
-       var c: Char
-       var f: Float
-       var i = 123
-       var s = "asdf"
+       serialize
+#alt5# serialize
+
+       var b: Bool
+       var c: Char#alt2#
+       #alt2#var c: Char is noserialize
+       var f: Float#alt4#
+       #alt4#var f: Float is serialize
+       var i: Int
+       var s: String
        var n: nullable Int
        var array = new Array[nullable Object].with_items(88, "hello", null)
 
-       init(b: Bool, c: Char, f: Float, i: Int, s: String, n: nullable Int)
-       do
-               self.b = b
-               self.c = c
-               self.f = f
-               self.i = i
-               self.s = s
-       end
-
        redef fun to_s do return "<A: {b} {c} {f} {i} {s} {n != null}>"
 end
 
 # Sub-class of A
 class B
-       auto_serializable
+       auto_serializable#alt2##alt3#
+#alt2# noserialize
+#alt3# noserialize
        super A
 
        var ii: Int
        var ss: String
 
-       init(b: Bool, c: Char, f: Float, i: Int, s: String, n: nullable Int, ii: Int, ss: String)
-       do
-               super(b, c, f, i, s, n)
-
-               self.ii = ii
-               self.ss = ss
-       end
-
        redef fun to_s do return "<B: {super} {ii} {ss}>"
 end
 
@@ -65,16 +55,9 @@ class C
        auto_serializable
 
        var a: A
-       var b = new B(false, 'b', 123.123, 2345, "hjkl", 12, 1111, "qwer")
+       var b: B
        var aa: A
 
-       init(a: A, b: B)
-       do
-               self.a = a
-               self.b = b
-               self.aa = a
-       end
-
        redef fun to_s do return "<C: {a} {b}>"
 end
 
@@ -90,13 +73,14 @@ end
 
 var a = new A(true, 'a', 0.1234, 1234, "asdf", null)
 var b = new B(false, 'b', 123.123, 2345, "hjkl", 12, 1111, "qwer")
-var c = new C(a, b)
+var c = new C(a, b, a)
 var d = new D(false, 'b', 123.123, 2345, "new line ->\n<-", null, 1111, "\t\f\"\r\\/")
 d.d = d
 
 for o in new Array[Serializable].with_items(a, b, c, d) do
        var stream = new StringWriter
        var serializer = new JsonSerializer(stream)
+       #alt1#serializer.plain_json = true
        serializer.serialize(o)
 
        print "# Nit:\n{o}\n"