@@ -703,6 +703,58 @@ void formatByteShouldReturnOkOnValidBase64() {
703703 }
704704 }
705705
706+ @ Nested
707+ class FormatInt32 {
708+
709+ String path = "/format/int32" ;
710+
711+ @ Test
712+ void formatInt32ShouldReturnBadRequestOnOverflow () {
713+ try (var server =
714+ newServer (Map .of ("format-int32" , exchange -> exchange .sendResponseHeaders (200 , -1 )));
715+ var client = httpClient ()) {
716+
717+ var request = newRequest (server , path + "?n=2147483648" , "GET" , noBody ());
718+
719+ var response = client .send (request , BodyHandlers .ofString ());
720+ var statusCode = response .statusCode ();
721+ var contentType = response .headers ().firstValue ("Content-Type" ).orElse ("" );
722+ var responseBody = response .body ();
723+
724+ assertThat (statusCode ).isEqualTo (400 );
725+ assertThat (contentType ).contains ("application/problem+json" );
726+ assertThat (responseBody ).contains ("\" format\" " );
727+
728+ } catch (IOException e ) {
729+ fail (e );
730+ } catch (InterruptedException e ) {
731+ Thread .currentThread ().interrupt ();
732+ fail (e );
733+ }
734+ }
735+
736+ @ Test
737+ void formatInt32ShouldReturnOkOnValidValue () {
738+ try (var server =
739+ newServer (Map .of ("format-int32" , exchange -> exchange .sendResponseHeaders (200 , -1 )));
740+ var client = httpClient ()) {
741+
742+ var request = newRequest (server , path + "?n=42" , "GET" , noBody ());
743+
744+ var response = client .send (request , BodyHandlers .ofString ());
745+ var statusCode = response .statusCode ();
746+
747+ assertThat (statusCode ).isEqualTo (200 );
748+
749+ } catch (IOException e ) {
750+ fail (e );
751+ } catch (InterruptedException e ) {
752+ Thread .currentThread ().interrupt ();
753+ fail (e );
754+ }
755+ }
756+ }
757+
706758 @ Nested
707759 class Gates {
708760
0 commit comments