xref: /aosp_15_r20/external/kotlinx.serialization/guide/test/FormatsTest.kt (revision 57b5a4a64c534cf7f27ac9427ceab07f3d8ed3d8)
1*57b5a4a6SAndroid Build Coastguard Worker // This file was automatically generated from formats.md by Knit tool. Do not edit.
2*57b5a4a6SAndroid Build Coastguard Worker package example.test
3*57b5a4a6SAndroid Build Coastguard Worker 
4*57b5a4a6SAndroid Build Coastguard Worker import org.junit.Test
5*57b5a4a6SAndroid Build Coastguard Worker import kotlinx.knit.test.*
6*57b5a4a6SAndroid Build Coastguard Worker 
7*57b5a4a6SAndroid Build Coastguard Worker class FormatsTest {
8*57b5a4a6SAndroid Build Coastguard Worker     @Test
testExampleFormats01null9*57b5a4a6SAndroid Build Coastguard Worker     fun testExampleFormats01() {
10*57b5a4a6SAndroid Build Coastguard Worker         captureOutput("ExampleFormats01") { example.exampleFormats01.main() }.verifyOutputLines(
11*57b5a4a6SAndroid Build Coastguard Worker             "{BF}dnameukotlinx.serializationhlanguagefKotlin{FF}",
12*57b5a4a6SAndroid Build Coastguard Worker             "Project(name=kotlinx.serialization, language=Kotlin)"
13*57b5a4a6SAndroid Build Coastguard Worker         )
14*57b5a4a6SAndroid Build Coastguard Worker     }
15*57b5a4a6SAndroid Build Coastguard Worker 
16*57b5a4a6SAndroid Build Coastguard Worker     @Test
testExampleFormats02null17*57b5a4a6SAndroid Build Coastguard Worker     fun testExampleFormats02() {
18*57b5a4a6SAndroid Build Coastguard Worker         captureOutput("ExampleFormats02") { example.exampleFormats02.main() }.verifyOutputLines(
19*57b5a4a6SAndroid Build Coastguard Worker             "Project(name=kotlinx.serialization)"
20*57b5a4a6SAndroid Build Coastguard Worker         )
21*57b5a4a6SAndroid Build Coastguard Worker     }
22*57b5a4a6SAndroid Build Coastguard Worker 
23*57b5a4a6SAndroid Build Coastguard Worker     @Test
testExampleFormats03null24*57b5a4a6SAndroid Build Coastguard Worker     fun testExampleFormats03() {
25*57b5a4a6SAndroid Build Coastguard Worker         captureOutput("ExampleFormats03") { example.exampleFormats03.main() }.verifyOutputLines(
26*57b5a4a6SAndroid Build Coastguard Worker             "{BF}etype2D{01}{02}{03}{04}etype4{9F}{05}{06}{07}{08}{FF}{FF}",
27*57b5a4a6SAndroid Build Coastguard Worker             "Data(type2=[1, 2, 3, 4], type4=[5, 6, 7, 8])"
28*57b5a4a6SAndroid Build Coastguard Worker         )
29*57b5a4a6SAndroid Build Coastguard Worker     }
30*57b5a4a6SAndroid Build Coastguard Worker 
31*57b5a4a6SAndroid Build Coastguard Worker     @Test
testExampleFormats04null32*57b5a4a6SAndroid Build Coastguard Worker     fun testExampleFormats04() {
33*57b5a4a6SAndroid Build Coastguard Worker         captureOutput("ExampleFormats04") { example.exampleFormats04.main() }.verifyOutputLines(
34*57b5a4a6SAndroid Build Coastguard Worker             "{0A}{15}kotlinx.serialization{12}{06}Kotlin",
35*57b5a4a6SAndroid Build Coastguard Worker             "Project(name=kotlinx.serialization, language=Kotlin)"
36*57b5a4a6SAndroid Build Coastguard Worker         )
37*57b5a4a6SAndroid Build Coastguard Worker     }
38*57b5a4a6SAndroid Build Coastguard Worker 
39*57b5a4a6SAndroid Build Coastguard Worker     @Test
testExampleFormats05null40*57b5a4a6SAndroid Build Coastguard Worker     fun testExampleFormats05() {
41*57b5a4a6SAndroid Build Coastguard Worker         captureOutput("ExampleFormats05") { example.exampleFormats05.main() }.verifyOutputLines(
42*57b5a4a6SAndroid Build Coastguard Worker             "{0A}{15}kotlinx.serialization{1A}{06}Kotlin",
43*57b5a4a6SAndroid Build Coastguard Worker             "Project(name=kotlinx.serialization, language=Kotlin)"
44*57b5a4a6SAndroid Build Coastguard Worker         )
45*57b5a4a6SAndroid Build Coastguard Worker     }
46*57b5a4a6SAndroid Build Coastguard Worker 
47*57b5a4a6SAndroid Build Coastguard Worker     @Test
testExampleFormats06null48*57b5a4a6SAndroid Build Coastguard Worker     fun testExampleFormats06() {
49*57b5a4a6SAndroid Build Coastguard Worker         captureOutput("ExampleFormats06") { example.exampleFormats06.main() }.verifyOutputLines(
50*57b5a4a6SAndroid Build Coastguard Worker             "{08}{01}{10}{03}{1D}{03}{00}{00}{00}"
51*57b5a4a6SAndroid Build Coastguard Worker         )
52*57b5a4a6SAndroid Build Coastguard Worker     }
53*57b5a4a6SAndroid Build Coastguard Worker 
54*57b5a4a6SAndroid Build Coastguard Worker     @Test
testExampleFormats07null55*57b5a4a6SAndroid Build Coastguard Worker     fun testExampleFormats07() {
56*57b5a4a6SAndroid Build Coastguard Worker         captureOutput("ExampleFormats07") { example.exampleFormats07.main() }.verifyOutputLines(
57*57b5a4a6SAndroid Build Coastguard Worker             "{08}{01}{08}{02}{08}{03}",
58*57b5a4a6SAndroid Build Coastguard Worker             "Data(a=[1, 2, 3], b=[])"
59*57b5a4a6SAndroid Build Coastguard Worker         )
60*57b5a4a6SAndroid Build Coastguard Worker     }
61*57b5a4a6SAndroid Build Coastguard Worker 
62*57b5a4a6SAndroid Build Coastguard Worker     @Test
testExampleFormats08null63*57b5a4a6SAndroid Build Coastguard Worker     fun testExampleFormats08() {
64*57b5a4a6SAndroid Build Coastguard Worker         captureOutput("ExampleFormats08") { example.exampleFormats08.main() }.verifyOutputLines(
65*57b5a4a6SAndroid Build Coastguard Worker             "syntax = \"proto2\";",
66*57b5a4a6SAndroid Build Coastguard Worker             "",
67*57b5a4a6SAndroid Build Coastguard Worker             "",
68*57b5a4a6SAndroid Build Coastguard Worker             "// serial name 'example.exampleFormats08.SampleData'",
69*57b5a4a6SAndroid Build Coastguard Worker             "message SampleData {",
70*57b5a4a6SAndroid Build Coastguard Worker             "  required int64 amount = 1;",
71*57b5a4a6SAndroid Build Coastguard Worker             "  optional string description = 2;",
72*57b5a4a6SAndroid Build Coastguard Worker             "  // WARNING: a default value decoded when value is missing",
73*57b5a4a6SAndroid Build Coastguard Worker             "  optional string department = 3;",
74*57b5a4a6SAndroid Build Coastguard Worker             "}",
75*57b5a4a6SAndroid Build Coastguard Worker             ""
76*57b5a4a6SAndroid Build Coastguard Worker         )
77*57b5a4a6SAndroid Build Coastguard Worker     }
78*57b5a4a6SAndroid Build Coastguard Worker 
79*57b5a4a6SAndroid Build Coastguard Worker     @Test
testExampleFormats09null80*57b5a4a6SAndroid Build Coastguard Worker     fun testExampleFormats09() {
81*57b5a4a6SAndroid Build Coastguard Worker         captureOutput("ExampleFormats09") { example.exampleFormats09.main() }.verifyOutputLines(
82*57b5a4a6SAndroid Build Coastguard Worker             "name = kotlinx.serialization",
83*57b5a4a6SAndroid Build Coastguard Worker             "owner.name = kotlin"
84*57b5a4a6SAndroid Build Coastguard Worker         )
85*57b5a4a6SAndroid Build Coastguard Worker     }
86*57b5a4a6SAndroid Build Coastguard Worker 
87*57b5a4a6SAndroid Build Coastguard Worker     @Test
testExampleFormats10null88*57b5a4a6SAndroid Build Coastguard Worker     fun testExampleFormats10() {
89*57b5a4a6SAndroid Build Coastguard Worker         captureOutput("ExampleFormats10") { example.exampleFormats10.main() }.verifyOutputLines(
90*57b5a4a6SAndroid Build Coastguard Worker             "[kotlinx.serialization, kotlin, 9000]"
91*57b5a4a6SAndroid Build Coastguard Worker         )
92*57b5a4a6SAndroid Build Coastguard Worker     }
93*57b5a4a6SAndroid Build Coastguard Worker 
94*57b5a4a6SAndroid Build Coastguard Worker     @Test
testExampleFormats11null95*57b5a4a6SAndroid Build Coastguard Worker     fun testExampleFormats11() {
96*57b5a4a6SAndroid Build Coastguard Worker         captureOutput("ExampleFormats11") { example.exampleFormats11.main() }.verifyOutputLines(
97*57b5a4a6SAndroid Build Coastguard Worker             "[kotlinx.serialization, kotlin, 9000]",
98*57b5a4a6SAndroid Build Coastguard Worker             "Project(name=kotlinx.serialization, owner=User(name=kotlin), votes=9000)"
99*57b5a4a6SAndroid Build Coastguard Worker         )
100*57b5a4a6SAndroid Build Coastguard Worker     }
101*57b5a4a6SAndroid Build Coastguard Worker 
102*57b5a4a6SAndroid Build Coastguard Worker     @Test
testExampleFormats12null103*57b5a4a6SAndroid Build Coastguard Worker     fun testExampleFormats12() {
104*57b5a4a6SAndroid Build Coastguard Worker         captureOutput("ExampleFormats12") { example.exampleFormats12.main() }.verifyOutputLines(
105*57b5a4a6SAndroid Build Coastguard Worker             "[kotlinx.serialization, kotlin, 9000]",
106*57b5a4a6SAndroid Build Coastguard Worker             "Project(name=kotlinx.serialization, owner=User(name=kotlin), votes=9000)"
107*57b5a4a6SAndroid Build Coastguard Worker         )
108*57b5a4a6SAndroid Build Coastguard Worker     }
109*57b5a4a6SAndroid Build Coastguard Worker 
110*57b5a4a6SAndroid Build Coastguard Worker     @Test
testExampleFormats13null111*57b5a4a6SAndroid Build Coastguard Worker     fun testExampleFormats13() {
112*57b5a4a6SAndroid Build Coastguard Worker         captureOutput("ExampleFormats13") { example.exampleFormats13.main() }.verifyOutputLines(
113*57b5a4a6SAndroid Build Coastguard Worker             "[kotlinx.serialization, 2, kotlin, jetbrains, 9000]",
114*57b5a4a6SAndroid Build Coastguard Worker             "Project(name=kotlinx.serialization, owners=[User(name=kotlin), User(name=jetbrains)], votes=9000)"
115*57b5a4a6SAndroid Build Coastguard Worker         )
116*57b5a4a6SAndroid Build Coastguard Worker     }
117*57b5a4a6SAndroid Build Coastguard Worker 
118*57b5a4a6SAndroid Build Coastguard Worker     @Test
testExampleFormats14null119*57b5a4a6SAndroid Build Coastguard Worker     fun testExampleFormats14() {
120*57b5a4a6SAndroid Build Coastguard Worker         captureOutput("ExampleFormats14") { example.exampleFormats14.main() }.verifyOutputLines(
121*57b5a4a6SAndroid Build Coastguard Worker             "[kotlinx.serialization, !!, kotlin, NULL]",
122*57b5a4a6SAndroid Build Coastguard Worker             "Project(name=kotlinx.serialization, owner=User(name=kotlin), votes=null)"
123*57b5a4a6SAndroid Build Coastguard Worker         )
124*57b5a4a6SAndroid Build Coastguard Worker     }
125*57b5a4a6SAndroid Build Coastguard Worker 
126*57b5a4a6SAndroid Build Coastguard Worker     @Test
testExampleFormats15null127*57b5a4a6SAndroid Build Coastguard Worker     fun testExampleFormats15() {
128*57b5a4a6SAndroid Build Coastguard Worker         captureOutput("ExampleFormats15") { example.exampleFormats15.main() }.verifyOutputLines(
129*57b5a4a6SAndroid Build Coastguard Worker             "{00}{15}kotlinx.serialization{00}{06}Kotlin",
130*57b5a4a6SAndroid Build Coastguard Worker             "Project(name=kotlinx.serialization, language=Kotlin)"
131*57b5a4a6SAndroid Build Coastguard Worker         )
132*57b5a4a6SAndroid Build Coastguard Worker     }
133*57b5a4a6SAndroid Build Coastguard Worker 
134*57b5a4a6SAndroid Build Coastguard Worker     @Test
testExampleFormats16null135*57b5a4a6SAndroid Build Coastguard Worker     fun testExampleFormats16() {
136*57b5a4a6SAndroid Build Coastguard Worker         captureOutput("ExampleFormats16") { example.exampleFormats16.main() }.verifyOutputLines(
137*57b5a4a6SAndroid Build Coastguard Worker             "{00}{15}kotlinx.serialization{04}{0A}{0B}{0C}{0D}",
138*57b5a4a6SAndroid Build Coastguard Worker             "Project(name=kotlinx.serialization, attachment=[10, 11, 12, 13])"
139*57b5a4a6SAndroid Build Coastguard Worker         )
140*57b5a4a6SAndroid Build Coastguard Worker     }
141*57b5a4a6SAndroid Build Coastguard Worker }
142