Skip to content

Commit 37d1ce0

Browse files
committed
#124: added extra tests
1 parent d2b18b7 commit 37d1ce0

File tree

1 file changed

+44
-0
lines changed

1 file changed

+44
-0
lines changed

test/writer/model_reader_test.dart

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,50 @@ TestModel:
6666
expect(simpleDateTime.type, isA<DateTimeType>());
6767
expect(simpleDateTime.isRequired, false);
6868
});
69+
70+
test('Test required not definable anymore', () {
71+
final models = YmlGeneratorConfig(
72+
PubspecConfig("name: test"),
73+
"""
74+
TestModel:
75+
properties:
76+
optionalString1:
77+
type: String?
78+
required: true
79+
optionalString2:
80+
type: String?
81+
requiredString1:
82+
type: String
83+
required: false
84+
requiredString2:
85+
type: String
86+
""",
87+
'')
88+
.models;
89+
90+
expect(models.length, 1);
91+
final model = models.first;
92+
expect(model is ObjectModel, true);
93+
model as ObjectModel;
94+
95+
final optionalString1 = model.fields.getByName("optionalString1");
96+
final requiredString1 = model.fields.getByName("requiredString1");
97+
final optionalString2 = model.fields.getByName("optionalString2");
98+
final requiredString2 = model.fields.getByName("requiredString2");
99+
100+
expect(optionalString1.type, isA<StringType>());
101+
expect(optionalString1.isRequired, false);
102+
103+
expect(requiredString1.type, isA<StringType>());
104+
expect(requiredString1.isRequired, true);
105+
106+
expect(optionalString2.type, isA<StringType>());
107+
expect(optionalString2.isRequired, false);
108+
109+
expect(requiredString2.type, isA<StringType>());
110+
expect(requiredString2.isRequired, true);
111+
});
112+
69113
test('Test simple generic fields', () {
70114
final models = YmlGeneratorConfig(
71115
PubspecConfig("name: test"),

0 commit comments

Comments
 (0)