Skip to content

Commit 5b014af

Browse files
MarcusRiemerdomoritz
authored andcommitted
Added test to ensure correct behaviour for derived optionals (YousefED#126)
1 parent 8616cf2 commit 5b014af

File tree

3 files changed

+29
-0
lines changed

3 files changed

+29
-0
lines changed

Diff for: test/programs/optionals-derived/main.ts

+9
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
interface MyBase {
2+
baseRequired : number;
3+
baseOptional?: number;
4+
}
5+
6+
interface MyDerived extends MyBase {
7+
derivedRequired : number;
8+
derivedOptional?: number;
9+
}

Diff for: test/programs/optionals-derived/schema.json

+19
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
{
2+
"$schema": "http://json-schema.org/draft-04/schema#",
3+
"type": "object",
4+
"required": [ "baseRequired", "derivedRequired" ],
5+
"properties": {
6+
"baseRequired": {
7+
"type": "number"
8+
},
9+
"baseOptional": {
10+
"type": "number"
11+
},
12+
"derivedRequired": {
13+
"type": "number"
14+
},
15+
"derivedOptional": {
16+
"type": "number"
17+
}
18+
}
19+
}

Diff for: test/schema.test.ts

+1
Original file line numberDiff line numberDiff line change
@@ -104,6 +104,7 @@ describe("schema", () => {
104104
assertSchema("type-nullable", "main.ts", "MyObject");
105105

106106
assertSchema("optionals", "main.ts", "MyObject");
107+
assertSchema("optionals-derived", "main.ts", "MyDerived");
107108

108109
assertSchema("comments", "main.ts", "MyObject");
109110
assertSchema("comments-override", "main.ts", "MyObject");

0 commit comments

Comments
 (0)