private static void WriterSystemTextJsonBasicUtf16(bool formatted, ArrayFormatter output, int[] data) { var json = new JsonWriterUtf16(output, formatted); json.WriteObjectStart(); json.WriteAttribute("age", 42); json.WriteAttribute("first", "John"); json.WriteAttribute("last", "Smith"); json.WriteArrayStart("phoneNumbers"); json.WriteValue("425-000-1212"); json.WriteValue("425-000-1213"); json.WriteArrayEnd(); json.WriteObjectStart("address"); json.WriteAttribute("street", "1 Microsoft Way"); json.WriteAttribute("city", "Redmond"); json.WriteAttribute("zip", 98052); json.WriteObjectEnd(); // Add a large array of values json.WriteArrayStart("ExtraArray"); for (var i = 0; i < ExtraArraySize; i++) { json.WriteValue(data[i]); } json.WriteArrayEnd(); json.WriteObjectEnd(); }
static void Write(ref JsonWriterUtf16 json) { json.WriteObjectStart(); json.WriteAttribute("age", 30); json.WriteAttribute("first", "John"); json.WriteAttribute("last", "Smith"); json.WriteArrayStart("phoneNumbers"); json.WriteValue("425-000-1212"); json.WriteValue("425-000-1213"); json.WriteArrayEnd(); json.WriteObjectStart("address"); json.WriteAttribute("street", "1 Microsoft Way"); json.WriteAttribute("city", "Redmond"); json.WriteAttribute("zip", 98052); json.WriteObjectEnd(); json.WriteArrayStart("values"); json.WriteValue(425121); json.WriteValue(-425122); json.WriteValue(425123); json.WriteArrayEnd(); json.WriteObjectEnd(); }
public void WriteBasicJsonUtf16(bool prettyPrint) { int[] data = GetData(ExtraArraySize, 42, -10000, 10000); string expectedStr = GetExpectedString(prettyPrint, isUtf8: false, data); var output = new ArrayFormatter(1024, SymbolTable.InvariantUtf16); var jsonUtf16 = new JsonWriterUtf16(output, prettyPrint); jsonUtf16.WriteObjectStart(); jsonUtf16.WriteAttribute("age", 42); jsonUtf16.WriteAttribute("first", "John"); jsonUtf16.WriteAttribute("last", "Smith"); jsonUtf16.WriteArrayStart("phoneNumbers"); jsonUtf16.WriteValue("425-000-1212"); jsonUtf16.WriteValue("425-000-1213"); jsonUtf16.WriteArrayEnd(); jsonUtf16.WriteObjectStart("address"); jsonUtf16.WriteAttribute("street", "1 Microsoft Way"); jsonUtf16.WriteAttribute("city", "Redmond"); jsonUtf16.WriteAttribute("zip", 98052); jsonUtf16.WriteObjectEnd(); // Add a large array of values jsonUtf16.WriteArrayStart("ExtraArray"); for (var i = 0; i < ExtraArraySize; i++) { jsonUtf16.WriteValue(data[i]); } jsonUtf16.WriteArrayEnd(); jsonUtf16.WriteObjectEnd(); ArraySegment <byte> formatted = output.Formatted; string actualStr = Encoding.Unicode.GetString(formatted.Array, formatted.Offset, formatted.Count); Assert.Equal(expectedStr, actualStr); }