X-Git-Url: http://nitlanguage.org diff --git a/tests/test_serialization.nit b/tests/test_serialization.nit index e9c8bdd..b098a82 100644 --- a/tests/test_serialization.nit +++ b/tests/test_serialization.nit @@ -1,65 +1,63 @@ +# This file is part of NIT ( http://www.nitlanguage.org ). +# +# Copyright 2014 Alexis Laferrière +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# 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::serialization # Simple class class A - auto_serializable - super Serializable + serialize +#alt5# serialize var b: Bool - var c: Char - var f: Float + 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 - - 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 + var array = new Array[nullable Object].with_items(88, "hello", null) redef fun to_s do return "" 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 "" end # Composed of an A and a B class C auto_serializable - super Serializable var a: A 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 "" end @@ -75,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[nullable Serializable].with_items(a, b, c, d) do - var stream = new StringOStream +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"