@@ -43,7 +43,8 @@ void testGenerateRequestId_ReturnsValidFormat() {
4343
4444 assertThat (requestId ).isNotNull ();
4545 assertThat (requestId ).matches (this ::isValidRequestIdFormat );
46- assertThat (requestId ).contains ("_1" ); // First call should increment counter to 1
46+ // First call should increment counter to 1
47+ assertThat (extractCounterFromRequestId (requestId )).isEqualTo (1 );
4748 }
4849
4950 @ Test
@@ -62,22 +63,22 @@ void testGenerateRequestId_ReturnsUniqueIds() {
6263
6364 @ Test
6465 void testCounterIncrementsSequentially () {
65- requestIdGenerator .setCounter (0 );
66+ // requestIdGenerator.setCounter(0);
6667
6768 String firstId = requestIdGenerator .generateRequestId ();
6869 String secondId = requestIdGenerator .generateRequestId ();
6970 String thirdId = requestIdGenerator .generateRequestId ();
7071
71- assertThat (firstId ). endsWith ( "_1" );
72- assertThat (secondId ). endsWith ( "_2" );
73- assertThat (thirdId ). endsWith ( "_3" );
72+ assertThat (extractCounterFromRequestId ( firstId )). isEqualTo ( 1 );
73+ assertThat (extractCounterFromRequestId ( secondId )). isEqualTo ( 2 );
74+ assertThat (extractCounterFromRequestId ( thirdId )). isEqualTo ( 3 );
7475 }
7576
7677 @ Test
7778 void testCounterRotationAtSoftMax () {
7879 // Set counter close to soft max
7980 long softMax = RequestIdGenerator .COUNTER_SOFT_MAX ;
80- requestIdGenerator .setCounter (softMax - 1 );
81+ requestIdGenerator .setCounter (softMax );
8182
8283 String beforeRotation = requestIdGenerator .generateRequestId ();
8384 String afterRotation = requestIdGenerator .generateRequestId ();
@@ -87,9 +88,9 @@ void testCounterRotationAtSoftMax() {
8788 String afterUuidPart = afterRotation .substring (0 , afterRotation .lastIndexOf ('_' ));
8889 assertNotEquals (beforeUuidPart , afterUuidPart );
8990
90- // After rotation, counter should be reset and UUID should be different
91- assertThat ( beforeRotation ). endsWith ( "_" + softMax );
92- assertThat (afterRotation ). endsWith ( "_1" ); // Counter reset to 1 (after increment from 0)
91+ assertThat ( extractCounterFromRequestId ( beforeRotation )). isEqualTo ( softMax );
92+ // Counter reset to 1 (after increment from 0)
93+ assertThat (extractCounterFromRequestId ( afterRotation )). isEqualTo ( 1 );
9394 }
9495
9596 @ Test
@@ -98,7 +99,8 @@ void testSetCounterChangesNextGeneratedId() {
9899
99100 String requestId = requestIdGenerator .generateRequestId ();
100101
101- assertThat (requestId ).endsWith ("_101" ); // Should increment from set value
102+ // Should increment from set value
103+ assertThat (extractCounterFromRequestId (requestId )).isEqualTo (100 );
102104 }
103105
104106 private boolean isValidRequestIdFormat (String str ) {
@@ -113,4 +115,8 @@ private boolean isValidRequestIdFormat(String str) {
113115 return false ;
114116 }
115117 }
118+
119+ private long extractCounterFromRequestId (String requestId ) {
120+ return Long .parseLong (requestId .split ("_" )[1 ]);
121+ }
116122}
0 commit comments