Skip to content

Commit ae4c4a7

Browse files
Merge pull request #11 from relogiclabs/develop
Add Support for .NET 8
2 parents 082624b + f477235 commit ae4c4a7

File tree

367 files changed

+6397
-3888
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

367 files changed

+6397
-3888
lines changed

JsonSchema.Tests/JsonSchema.Tests.csproj

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,11 @@
55
<Description>This project contains test cases for JsonSchema project.</Description>
66
<Authors>Relogic Labs</Authors>
77
<Company>Relogic Labs</Company>
8-
<Version>1.9.0</Version>
9-
<AssemblyVersion>1.9.0</AssemblyVersion>
8+
<Version>1.10.0</Version>
9+
<AssemblyVersion>1.10.0</AssemblyVersion>
1010
<Copyright>Copyright © Relogic Labs. All rights reserved.</Copyright>
1111
<NeutralLanguage>en</NeutralLanguage>
12-
<TargetFrameworks>net5.0;net6.0;net7.0</TargetFrameworks>
12+
<TargetFrameworks>net5.0;net6.0;net7.0;net8.0</TargetFrameworks>
1313
<ImplicitUsings>enable</ImplicitUsings>
1414
<Nullable>enable</Nullable>
1515
<IsPackable>false</IsPackable>
@@ -18,10 +18,10 @@
1818
</PropertyGroup>
1919

2020
<ItemGroup>
21-
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.3.2" />
22-
<PackageReference Include="MSTest.TestAdapter" Version="2.2.10" />
23-
<PackageReference Include="MSTest.TestFramework" Version="2.2.10" />
24-
<PackageReference Include="coverlet.collector" Version="3.1.2" />
21+
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.8.0" />
22+
<PackageReference Include="MSTest.TestAdapter" Version="3.1.1" />
23+
<PackageReference Include="MSTest.TestFramework" Version="3.1.1" />
24+
<PackageReference Include="coverlet.collector" Version="6.0.0" />
2525
</ItemGroup>
2626

2727
<ItemGroup>

JsonSchema.Tests/RelogicLabs/JsonSchema/Tests/Negative/IntegerTests.cs

Lines changed: 0 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -222,42 +222,4 @@ public void When_NestedRangeWithMaxUndefinedAndWrongIntegerInArray_ExceptionThro
222222
Assert.AreEqual(RANG03, exception.Code);
223223
Console.WriteLine(exception);
224224
}
225-
226-
[TestMethod]
227-
public void When_NestedPositiveWithWrongIntegerInArray_ExceptionThrown()
228-
{
229-
var schema =
230-
"""
231-
@positive* #integer*
232-
""";
233-
var json =
234-
"""
235-
[100, -500, 900]
236-
""";
237-
238-
JsonSchema.IsValid(schema, json);
239-
var exception = Assert.ThrowsException<JsonSchemaException>(
240-
() => JsonAssert.IsValid(schema, json));
241-
Assert.AreEqual(POSI01, exception.Code);
242-
Console.WriteLine(exception);
243-
}
244-
245-
[TestMethod]
246-
public void When_NestedNegativeWithWrongIntegerInArray_ExceptionThrown()
247-
{
248-
var schema =
249-
"""
250-
@negative* #integer*
251-
""";
252-
var json =
253-
"""
254-
[-100, -500, 900]
255-
""";
256-
257-
JsonSchema.IsValid(schema, json);
258-
var exception = Assert.ThrowsException<JsonSchemaException>(
259-
() => JsonAssert.IsValid(schema, json));
260-
Assert.AreEqual(NEGI01, exception.Code);
261-
Console.WriteLine(exception);
262-
}
263225
}

JsonSchema.Tests/RelogicLabs/JsonSchema/Tests/Negative/NumberTests.cs

Lines changed: 79 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,7 @@ public void When_WrongJsonWithNestedMaximumNumberInArray_ExceptionThrown()
109109
}
110110

111111
[TestMethod]
112-
public void When_NestedMaximumFloatInObject_ValidTrue()
112+
public void When_NestedMaximumWrongFloatInObject_ExceptionThrown()
113113
{
114114
var schema =
115115
"""
@@ -131,7 +131,7 @@ public void When_NestedMaximumFloatInObject_ValidTrue()
131131
}
132132

133133
[TestMethod]
134-
public void When_NestedMinimumExclusiveFloatInObject_ValidTrue()
134+
public void When_NestedMinimumExclusiveWrongFloatInObject_ExceptionThrown()
135135
{
136136
var schema =
137137
"""
@@ -153,7 +153,7 @@ public void When_NestedMinimumExclusiveFloatInObject_ValidTrue()
153153
}
154154

155155
[TestMethod]
156-
public void When_NestedMaximumExclusiveFloatInObject_ValidTrue()
156+
public void When_NestedMaximumExclusiveWrongFloatInObject_ExceptionThrown()
157157
{
158158
var schema =
159159
"""
@@ -173,4 +173,80 @@ public void When_NestedMaximumExclusiveFloatInObject_ValidTrue()
173173
Assert.AreEqual(MAXI03, exception.Code);
174174
Console.WriteLine(exception);
175175
}
176+
177+
[TestMethod]
178+
public void When_NestedPositiveWithWrongNumberInArray_ExceptionThrown()
179+
{
180+
var schema =
181+
"""
182+
@positive* #number*
183+
""";
184+
var json =
185+
"""
186+
[1, 100.5, -500]
187+
""";
188+
189+
JsonSchema.IsValid(schema, json);
190+
var exception = Assert.ThrowsException<JsonSchemaException>(
191+
() => JsonAssert.IsValid(schema, json));
192+
Assert.AreEqual(POSI01, exception.Code);
193+
Console.WriteLine(exception);
194+
}
195+
196+
[TestMethod]
197+
public void When_NestedPositiveReferenceWithWrongNumberInArray_ExceptionThrown()
198+
{
199+
var schema =
200+
"""
201+
@positive*(0) #number*
202+
""";
203+
var json =
204+
"""
205+
[0, 100, 0.1, -1]
206+
""";
207+
208+
JsonSchema.IsValid(schema, json);
209+
var exception = Assert.ThrowsException<JsonSchemaException>(
210+
() => JsonAssert.IsValid(schema, json));
211+
Assert.AreEqual(POSI02, exception.Code);
212+
Console.WriteLine(exception);
213+
}
214+
215+
[TestMethod]
216+
public void When_NestedNegativeWithWrongNumberInArray_ExceptionThrown()
217+
{
218+
var schema =
219+
"""
220+
@negative* #number*
221+
""";
222+
var json =
223+
"""
224+
[-100, -500, -0.1, 0]
225+
""";
226+
227+
JsonSchema.IsValid(schema, json);
228+
var exception = Assert.ThrowsException<JsonSchemaException>(
229+
() => JsonAssert.IsValid(schema, json));
230+
Assert.AreEqual(NEGI01, exception.Code);
231+
Console.WriteLine(exception);
232+
}
233+
234+
[TestMethod]
235+
public void When_NestedNegativeReferenceWithWrongNumberInArray_ExceptionThrown()
236+
{
237+
var schema =
238+
"""
239+
@negative*(0) #number*
240+
""";
241+
var json =
242+
"""
243+
[-100, -500, -0.01, 1]
244+
""";
245+
246+
JsonSchema.IsValid(schema, json);
247+
var exception = Assert.ThrowsException<JsonSchemaException>(
248+
() => JsonAssert.IsValid(schema, json));
249+
Assert.AreEqual(NEGI02, exception.Code);
250+
Console.WriteLine(exception);
251+
}
176252
}

JsonSchema.Tests/RelogicLabs/JsonSchema/Tests/Negative/OtherTests.cs

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -115,4 +115,39 @@ public void When_NonStaticValidMethodWithWrongJson_ExceptionThrown()
115115
Assert.AreEqual(DTYP04, exception.Code);
116116
Console.WriteLine(exception);
117117
}
118+
119+
[TestMethod]
120+
public void When_MandatoryValueMissingInArray_ExceptionThrown()
121+
{
122+
var schema = "[#number, #number?, #number?]";
123+
var json = "[]";
124+
JsonSchema.IsValid(schema, json);
125+
var exception = Assert.ThrowsException<JsonSchemaException>(
126+
() => JsonAssert.IsValid(schema, json));
127+
Assert.AreEqual(ARRY01, exception.Code);
128+
Console.WriteLine(exception);
129+
}
130+
131+
[TestMethod]
132+
public void When_MandatoryPropertyMissingInObject_ExceptionThrown()
133+
{
134+
var schema =
135+
"""
136+
{
137+
"key1": #integer,
138+
"key2": #integer
139+
}
140+
""";
141+
var json =
142+
"""
143+
{
144+
"key1": 10
145+
}
146+
""";
147+
JsonSchema.IsValid(schema, json);
148+
var exception = Assert.ThrowsException<JsonSchemaException>(
149+
() => JsonAssert.IsValid(schema, json));
150+
Assert.AreEqual(PROP05, exception.Code);
151+
Console.WriteLine(exception);
152+
}
118153
}

JsonSchema.Tests/RelogicLabs/JsonSchema/Tests/Positive/IntegerTests.cs

Lines changed: 7 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ public void When_DataTypeInteger_ValidTrue()
1010
var json = "10";
1111
JsonAssert.IsValid(schema, json);
1212
}
13-
13+
1414
[TestMethod]
1515
public void When_DataTypeIntegerInObject_ValidTrue()
1616
{
@@ -32,7 +32,7 @@ public void When_DataTypeIntegerInObject_ValidTrue()
3232
""";
3333
JsonAssert.IsValid(schema, json);
3434
}
35-
35+
3636
[TestMethod]
3737
public void When_DataTypeIntegerInArray_ValidTrue()
3838
{
@@ -46,7 +46,7 @@ public void When_DataTypeIntegerInArray_ValidTrue()
4646
""";
4747
JsonAssert.IsValid(schema, json);
4848
}
49-
49+
5050
[TestMethod]
5151
public void When_NestedDataTypeIntegerInArray_ValidTrue()
5252
{
@@ -60,7 +60,7 @@ public void When_NestedDataTypeIntegerInArray_ValidTrue()
6060
""";
6161
JsonAssert.IsValid(schema, json);
6262
}
63-
63+
6464
[TestMethod]
6565
public void When_NestedDataTypeIntegerInObject_ValidTrue()
6666
{
@@ -78,7 +78,7 @@ public void When_NestedDataTypeIntegerInObject_ValidTrue()
7878
""";
7979
JsonAssert.IsValid(schema, json);
8080
}
81-
81+
8282
[TestMethod]
8383
public void When_NestedRangeIntegerInObject_ValidTrue()
8484
{
@@ -96,7 +96,7 @@ public void When_NestedRangeIntegerInObject_ValidTrue()
9696
""";
9797
JsonAssert.IsValid(schema, json);
9898
}
99-
99+
100100
[TestMethod]
101101
public void When_NestedRangeWithUndefinedIntegerInObject_ValidTrue()
102102
{
@@ -114,7 +114,7 @@ public void When_NestedRangeWithUndefinedIntegerInObject_ValidTrue()
114114
""";
115115
JsonAssert.IsValid(schema, json);
116116
}
117-
117+
118118
[TestMethod]
119119
public void When_NestedRangeWithUndefinedIntegerInArray_ValidTrue()
120120
{
@@ -128,32 +128,4 @@ public void When_NestedRangeWithUndefinedIntegerInArray_ValidTrue()
128128
""";
129129
JsonAssert.IsValid(schema, json);
130130
}
131-
132-
[TestMethod]
133-
public void When_NestedPositiveWithIntegerInArray_ValidTrue()
134-
{
135-
var schema =
136-
"""
137-
@positive* #integer*
138-
""";
139-
var json =
140-
"""
141-
[100, 500, 900]
142-
""";
143-
JsonAssert.IsValid(schema, json);
144-
}
145-
146-
[TestMethod]
147-
public void When_NestedNegativeWithIntegerInArray_ValidTrue()
148-
{
149-
var schema =
150-
"""
151-
@negative* #integer*
152-
""";
153-
var json =
154-
"""
155-
[-100, -500, -900]
156-
""";
157-
JsonAssert.IsValid(schema, json);
158-
}
159131
}

JsonSchema.Tests/RelogicLabs/JsonSchema/Tests/Positive/NumberTests.cs

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -138,4 +138,60 @@ public void When_NestedMinimumMaximumExclusiveFloatInObject_ValidTrue()
138138
""";
139139
JsonAssert.IsValid(schema, json);
140140
}
141+
142+
[TestMethod]
143+
public void When_NestedPositiveWithNumberInArray_ValidTrue()
144+
{
145+
var schema =
146+
"""
147+
@positive* #number*
148+
""";
149+
var json =
150+
"""
151+
[1, 100, 500, 900]
152+
""";
153+
JsonAssert.IsValid(schema, json);
154+
}
155+
156+
[TestMethod]
157+
public void When_NestedPositiveReferenceWithNumberInArray_ValidTrue()
158+
{
159+
var schema =
160+
"""
161+
@positive*(10) #number*
162+
""";
163+
var json =
164+
"""
165+
[10, 100, 500, 900]
166+
""";
167+
JsonAssert.IsValid(schema, json);
168+
}
169+
170+
[TestMethod]
171+
public void When_NestedNegativeWithNumberInArray_ValidTrue()
172+
{
173+
var schema =
174+
"""
175+
@negative* #number*
176+
""";
177+
var json =
178+
"""
179+
[-1, -100, -500, -900]
180+
""";
181+
JsonAssert.IsValid(schema, json);
182+
}
183+
184+
[TestMethod]
185+
public void When_NestedNegativeReferenceWithNumberInArray_ValidTrue()
186+
{
187+
var schema =
188+
"""
189+
@negative*(0) #number*
190+
""";
191+
var json =
192+
"""
193+
[0, -100, -500, -900]
194+
""";
195+
JsonAssert.IsValid(schema, json);
196+
}
141197
}

0 commit comments

Comments
 (0)