@@ -92,18 +92,12 @@ BOOST_AUTO_TEST_CASE( basics ) // constructors, equality, inequality
9292 BOOST_CHECK_NE (MaxL, ZeroL); BOOST_CHECK_NE (MaxS, ZeroS);
9393
9494 // 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);
107101 BOOST_CHECK_EQUAL (uint256 (R1L), R1L);
108102 BOOST_CHECK_EQUAL (uint256 (ZeroL), ZeroL);
109103 BOOST_CHECK_EQUAL (uint256 (OneL), OneL);
@@ -282,48 +276,20 @@ BOOST_AUTO_TEST_CASE( operator_with_self )
282276# pragma clang diagnostic push
283277# pragma clang diagnostic ignored "-Wself-assign-overloaded"
284278#endif
285- arith_uint256 v = UintToArith256 ( uint256S ( " 02 " )) ;
279+ arith_uint256 v{ 2 } ;
286280 v *= v;
287- BOOST_CHECK_EQUAL (v, UintToArith256 ( uint256S ( " 04 " )) );
281+ BOOST_CHECK_EQUAL (v, arith_uint256{ 4 } );
288282 v /= v;
289- BOOST_CHECK_EQUAL (v, UintToArith256 ( uint256S ( " 01 " )) );
283+ BOOST_CHECK_EQUAL (v, arith_uint256{ 1 } );
290284 v += v;
291- BOOST_CHECK_EQUAL (v, UintToArith256 ( uint256S ( " 02 " )) );
285+ BOOST_CHECK_EQUAL (v, arith_uint256{ 2 } );
292286 v -= v;
293- BOOST_CHECK_EQUAL (v, UintToArith256 ( uint256S ( " 0 " )) );
287+ BOOST_CHECK_EQUAL (v, arith_uint256{ 0 } );
294288#if defined(__clang__)
295289# pragma clang diagnostic pop
296290#endif
297291}
298292
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-
327293/* *
328294 * Implemented as a templated function so it can be reused by other classes that have a FromHex()
329295 * method that wraps base_blob::FromHex(), such as transaction_identifier::FromHex().
0 commit comments