@@ -170,6 +170,38 @@ public function testIntegerWithAllConstraints(): void
170170 self ::assertSame ('$p->int()->minimum(1)->maximum(99) ' , $ code );
171171 }
172172
173+ public function testIntegerWithMinimumAndExclusiveMinimumTrue (): void
174+ {
175+ $ generator = new JsonSchemaCodeGenerator ();
176+ $ code = $ generator ->generate (['type ' => 'integer ' , 'minimum ' => 0 , 'exclusiveMinimum ' => true ]);
177+
178+ self ::assertSame ('$p->int()->exclusiveMinimum(0) ' , $ code );
179+ }
180+
181+ public function testIntegerWithMinimumAndExclusiveMinimumFalse (): void
182+ {
183+ $ generator = new JsonSchemaCodeGenerator ();
184+ $ code = $ generator ->generate (['type ' => 'integer ' , 'minimum ' => 0 , 'exclusiveMinimum ' => false ]);
185+
186+ self ::assertSame ('$p->int()->minimum(0) ' , $ code );
187+ }
188+
189+ public function testIntegerWithMaximumAndExclusiveMaximumTrue (): void
190+ {
191+ $ generator = new JsonSchemaCodeGenerator ();
192+ $ code = $ generator ->generate (['type ' => 'integer ' , 'maximum ' => 100 , 'exclusiveMaximum ' => true ]);
193+
194+ self ::assertSame ('$p->int()->exclusiveMaximum(100) ' , $ code );
195+ }
196+
197+ public function testIntegerWithMaximumAndExclusiveMaximumFalse (): void
198+ {
199+ $ generator = new JsonSchemaCodeGenerator ();
200+ $ code = $ generator ->generate (['type ' => 'integer ' , 'maximum ' => 100 , 'exclusiveMaximum ' => false ]);
201+
202+ self ::assertSame ('$p->int()->maximum(100) ' , $ code );
203+ }
204+
173205 public function testNumber (): void
174206 {
175207 $ generator = new JsonSchemaCodeGenerator ();
@@ -210,6 +242,38 @@ public function testNumberWithExclusiveMaximum(): void
210242 self ::assertSame ('$p->float()->exclusiveMaximum(100.0) ' , $ code );
211243 }
212244
245+ public function testNumberWithMinimumAndExclusiveMinimumTrue (): void
246+ {
247+ $ generator = new JsonSchemaCodeGenerator ();
248+ $ code = $ generator ->generate (['type ' => 'number ' , 'minimum ' => 0.5 , 'exclusiveMinimum ' => true ]);
249+
250+ self ::assertSame ('$p->float()->exclusiveMinimum(0.5) ' , $ code );
251+ }
252+
253+ public function testNumberWithMinimumAndExclusiveMinimumFalse (): void
254+ {
255+ $ generator = new JsonSchemaCodeGenerator ();
256+ $ code = $ generator ->generate (['type ' => 'number ' , 'minimum ' => 0.5 , 'exclusiveMinimum ' => false ]);
257+
258+ self ::assertSame ('$p->float()->minimum(0.5) ' , $ code );
259+ }
260+
261+ public function testNumberWithMaximumAndExclusiveMaximumTrue (): void
262+ {
263+ $ generator = new JsonSchemaCodeGenerator ();
264+ $ code = $ generator ->generate (['type ' => 'number ' , 'maximum ' => 99.9 , 'exclusiveMaximum ' => true ]);
265+
266+ self ::assertSame ('$p->float()->exclusiveMaximum(99.9) ' , $ code );
267+ }
268+
269+ public function testNumberWithMaximumAndExclusiveMaximumFalse (): void
270+ {
271+ $ generator = new JsonSchemaCodeGenerator ();
272+ $ code = $ generator ->generate (['type ' => 'number ' , 'maximum ' => 99.9 , 'exclusiveMaximum ' => false ]);
273+
274+ self ::assertSame ('$p->float()->maximum(99.9) ' , $ code );
275+ }
276+
213277 public function testBoolean (): void
214278 {
215279 $ generator = new JsonSchemaCodeGenerator ();
0 commit comments