@@ -92,18 +92,12 @@ BOOST_AUTO_TEST_CASE( basics ) // constructors, equality, inequality
92
92
BOOST_CHECK_NE (MaxL, ZeroL); BOOST_CHECK_NE (MaxS, ZeroS);
93
93
94
94
// String Constructor and Copy Constructor
95
- BOOST_CHECK_EQUAL (uint256S (" 0x" +R1L.ToString ()), R1L);
96
- BOOST_CHECK_EQUAL (uint256S (" 0x" +R2L.ToString ()), R2L);
97
- BOOST_CHECK_EQUAL (uint256S (" 0x" +ZeroL.ToString ()), ZeroL);
98
- BOOST_CHECK_EQUAL (uint256S (" 0x" +OneL.ToString ()), OneL);
99
- BOOST_CHECK_EQUAL (uint256S (" 0x" +MaxL.ToString ()), MaxL);
100
- BOOST_CHECK_EQUAL (uint256S (R1L.ToString ()), R1L);
101
- BOOST_CHECK_EQUAL (uint256S (" 0x" +R1L.ToString ()+" " ), R1L);
102
- BOOST_CHECK_EQUAL (uint256S (" 0x" +R1L.ToString ()+" -trash;%^& " ), R1L);
103
- BOOST_CHECK_EQUAL (uint256S (" \t \n \n \f\n\r\t\v\t 0x" +R1L.ToString ()+" \t \n \n \f\n\r\t\v\t " ), R1L);
104
- BOOST_CHECK_EQUAL (uint256S (" " ), ZeroL);
105
- BOOST_CHECK_EQUAL (uint256S (" 1" ), OneL);
106
- BOOST_CHECK_EQUAL (R1L, uint256S (R1ArrayHex));
95
+ BOOST_CHECK_EQUAL (uint256::FromHex (R1L.ToString ()).value (), R1L);
96
+ BOOST_CHECK_EQUAL (uint256::FromHex (R2L.ToString ()).value (), R2L);
97
+ BOOST_CHECK_EQUAL (uint256::FromHex (ZeroL.ToString ()).value (), ZeroL);
98
+ BOOST_CHECK_EQUAL (uint256::FromHex (OneL.ToString ()).value (), OneL);
99
+ BOOST_CHECK_EQUAL (uint256::FromHex (MaxL.ToString ()).value (), MaxL);
100
+ BOOST_CHECK_EQUAL (uint256::FromHex (R1ArrayHex).value (), R1L);
107
101
BOOST_CHECK_EQUAL (uint256 (R1L), R1L);
108
102
BOOST_CHECK_EQUAL (uint256 (ZeroL), ZeroL);
109
103
BOOST_CHECK_EQUAL (uint256 (OneL), OneL);
@@ -282,48 +276,20 @@ BOOST_AUTO_TEST_CASE( operator_with_self )
282
276
# pragma clang diagnostic push
283
277
# pragma clang diagnostic ignored "-Wself-assign-overloaded"
284
278
#endif
285
- arith_uint256 v = UintToArith256 ( uint256S ( " 02 " )) ;
279
+ arith_uint256 v{ 2 } ;
286
280
v *= v;
287
- BOOST_CHECK_EQUAL (v, UintToArith256 ( uint256S ( " 04 " )) );
281
+ BOOST_CHECK_EQUAL (v, arith_uint256{ 4 } );
288
282
v /= v;
289
- BOOST_CHECK_EQUAL (v, UintToArith256 ( uint256S ( " 01 " )) );
283
+ BOOST_CHECK_EQUAL (v, arith_uint256{ 1 } );
290
284
v += v;
291
- BOOST_CHECK_EQUAL (v, UintToArith256 ( uint256S ( " 02 " )) );
285
+ BOOST_CHECK_EQUAL (v, arith_uint256{ 2 } );
292
286
v -= v;
293
- BOOST_CHECK_EQUAL (v, UintToArith256 ( uint256S ( " 0 " )) );
287
+ BOOST_CHECK_EQUAL (v, arith_uint256{ 0 } );
294
288
#if defined(__clang__)
295
289
# pragma clang diagnostic pop
296
290
#endif
297
291
}
298
292
299
- BOOST_AUTO_TEST_CASE (parse)
300
- {
301
- {
302
- std::string s_12{" 0000000000000000000000000000000000000000000000000000000000000012" };
303
- BOOST_CHECK_EQUAL (uint256S (" 12\0 " ).GetHex (), s_12);
304
- BOOST_CHECK_EQUAL (uint256S (std::string_view{" 12\0 " , 3 }).GetHex (), s_12);
305
- BOOST_CHECK_EQUAL (uint256S (" 0x12" ).GetHex (), s_12);
306
- BOOST_CHECK_EQUAL (uint256S (" 0x12" ).GetHex (), s_12);
307
- BOOST_CHECK_EQUAL (uint256S (" 12" ).GetHex (), s_12);
308
- }
309
- {
310
- std::string s_1{uint256::ONE.GetHex ()};
311
- BOOST_CHECK_EQUAL (uint256S (" 1\0 " ).GetHex (), s_1);
312
- BOOST_CHECK_EQUAL (uint256S (std::string_view{" 1\0 " , 2 }).GetHex (), s_1);
313
- BOOST_CHECK_EQUAL (uint256S (" 0x1" ).GetHex (), s_1);
314
- BOOST_CHECK_EQUAL (uint256S (" 0x1" ).GetHex (), s_1);
315
- BOOST_CHECK_EQUAL (uint256S (" 1" ).GetHex (), s_1);
316
- }
317
- {
318
- std::string s_0{uint256::ZERO.GetHex ()};
319
- BOOST_CHECK_EQUAL (uint256S (" \0 " ).GetHex (), s_0);
320
- BOOST_CHECK_EQUAL (uint256S (std::string_view{" \0 " , 1 }).GetHex (), s_0);
321
- BOOST_CHECK_EQUAL (uint256S (" 0x" ).GetHex (), s_0);
322
- BOOST_CHECK_EQUAL (uint256S (" 0x" ).GetHex (), s_0);
323
- BOOST_CHECK_EQUAL (uint256S (" " ).GetHex (), s_0);
324
- }
325
- }
326
-
327
293
/* *
328
294
* Implemented as a templated function so it can be reused by other classes that have a FromHex()
329
295
* method that wraps base_blob::FromHex(), such as transaction_identifier::FromHex().
0 commit comments