|
22 | 22 | */ |
23 | 23 |
|
24 | 24 | #define CATCH_CONFIG_MAIN |
25 | | -#include <catch.hpp> |
| 25 | +#include <catch2/catch.hpp> |
26 | 26 |
|
27 | 27 | #include <cppcodec/base32_crockford.hpp> |
28 | 28 | #include <cppcodec/base32_hex.hpp> |
@@ -125,16 +125,16 @@ TEST_CASE("Douglas Crockford's base32", "[base32][crockford]") { |
125 | 125 | REQUIRE(base32::decode<std::string>("-C-SQ--PY-") == "foo"); |
126 | 126 |
|
127 | 127 | // An invalid number of symbols should throw the right kind of parse_error. |
128 | | - REQUIRE_THROWS_AS(base32::decode("0"), const cppcodec::invalid_input_length&); |
129 | | - REQUIRE_THROWS_AS(base32::decode("000"), const cppcodec::invalid_input_length&); |
130 | | - REQUIRE_THROWS_AS(base32::decode("000000"), const cppcodec::invalid_input_length&); |
131 | | - REQUIRE_THROWS_AS(base32::decode("000000000"), const cppcodec::invalid_input_length&); |
| 128 | + REQUIRE_THROWS_AS(base32::decode("0"), cppcodec::invalid_input_length); |
| 129 | + REQUIRE_THROWS_AS(base32::decode("000"), cppcodec::invalid_input_length); |
| 130 | + REQUIRE_THROWS_AS(base32::decode("000000"), cppcodec::invalid_input_length); |
| 131 | + REQUIRE_THROWS_AS(base32::decode("000000000"), cppcodec::invalid_input_length); |
132 | 132 |
|
133 | 133 | // An invalid symbol should throw a symbol error. |
134 | | - REQUIRE_THROWS_AS(base32::decode("00======"), const cppcodec::symbol_error&); // no padding for Crockford |
135 | | - REQUIRE_THROWS_AS(base32::decode("Uu"), const cppcodec::symbol_error&); // only a checksum symbol here |
136 | | - REQUIRE_THROWS_AS(base32::decode("++"), const cppcodec::symbol_error&); // make sure it's not base64 |
137 | | - REQUIRE_THROWS_AS(base32::decode("//"), const cppcodec::symbol_error&); // ...ditto |
| 134 | + REQUIRE_THROWS_AS(base32::decode("00======"), cppcodec::symbol_error); // no padding for Crockford |
| 135 | + REQUIRE_THROWS_AS(base32::decode("Uu"), cppcodec::symbol_error); // only a checksum symbol here |
| 136 | + REQUIRE_THROWS_AS(base32::decode("++"), cppcodec::symbol_error); // make sure it's not base64 |
| 137 | + REQUIRE_THROWS_AS(base32::decode("//"), cppcodec::symbol_error); // ...ditto |
138 | 138 | } |
139 | 139 |
|
140 | 140 | // Only test overloads once (for base32_crockford, since it happens to be the first one). |
@@ -324,20 +324,20 @@ TEST_CASE("base32hex", "[base32][hex]") { |
324 | 324 | REQUIRE(base32::decode<std::string>("cPnMuOj1") == "fooba"); |
325 | 325 |
|
326 | 326 | // An invalid number of symbols should throw the right kind of parse_error. |
327 | | - REQUIRE_THROWS_AS(base32::decode("0"), const cppcodec::padding_error&); |
328 | | - REQUIRE_THROWS_AS(base32::decode("00"), const cppcodec::padding_error&); |
329 | | - REQUIRE_THROWS_AS(base32::decode("00==="), const cppcodec::padding_error&); |
330 | | - REQUIRE_THROWS_AS(base32::decode("0======="), const cppcodec::invalid_input_length&); |
331 | | - REQUIRE_THROWS_AS(base32::decode("000====="), const cppcodec::invalid_input_length&); |
332 | | - REQUIRE_THROWS_AS(base32::decode("000000=="), const cppcodec::invalid_input_length&); |
| 327 | + REQUIRE_THROWS_AS(base32::decode("0"), cppcodec::padding_error); |
| 328 | + REQUIRE_THROWS_AS(base32::decode("00"), cppcodec::padding_error); |
| 329 | + REQUIRE_THROWS_AS(base32::decode("00==="), cppcodec::padding_error); |
| 330 | + REQUIRE_THROWS_AS(base32::decode("0======="), cppcodec::invalid_input_length); |
| 331 | + REQUIRE_THROWS_AS(base32::decode("000====="), cppcodec::invalid_input_length); |
| 332 | + REQUIRE_THROWS_AS(base32::decode("000000=="), cppcodec::invalid_input_length); |
333 | 333 |
|
334 | 334 | // An invalid symbol should throw a symbol error. |
335 | | - REQUIRE_THROWS_AS(base32::decode("W0======"), const cppcodec::symbol_error&); |
336 | | - REQUIRE_THROWS_AS(base32::decode("X0======"), const cppcodec::symbol_error&); |
337 | | - REQUIRE_THROWS_AS(base32::decode("Y0======"), const cppcodec::symbol_error&); |
338 | | - REQUIRE_THROWS_AS(base32::decode("Z0======"), const cppcodec::symbol_error&); |
339 | | - REQUIRE_THROWS_AS(base32::decode("CPNM UOJ1"), const cppcodec::symbol_error&); // no spaces |
340 | | - REQUIRE_THROWS_AS(base32::decode("CPNM-UOJ1"), const cppcodec::symbol_error&); // no dashes |
| 335 | + REQUIRE_THROWS_AS(base32::decode("W0======"), cppcodec::symbol_error); |
| 336 | + REQUIRE_THROWS_AS(base32::decode("X0======"), cppcodec::symbol_error); |
| 337 | + REQUIRE_THROWS_AS(base32::decode("Y0======"), cppcodec::symbol_error); |
| 338 | + REQUIRE_THROWS_AS(base32::decode("Z0======"), cppcodec::symbol_error); |
| 339 | + REQUIRE_THROWS_AS(base32::decode("CPNM UOJ1"), cppcodec::symbol_error); // no spaces |
| 340 | + REQUIRE_THROWS_AS(base32::decode("CPNM-UOJ1"), cppcodec::symbol_error); // no dashes |
341 | 341 | } |
342 | 342 | } |
343 | 343 |
|
@@ -431,20 +431,20 @@ TEST_CASE("base32 (RFC 4648)", "[base32][rfc4648]") { |
431 | 431 | REQUIRE(base32::decode<std::string>("mZxW6yTb") == "fooba"); |
432 | 432 |
|
433 | 433 | // An invalid number of symbols should throw the right kind of parse_error. |
434 | | - REQUIRE_THROWS_AS(base32::decode("A"), const cppcodec::padding_error&); |
435 | | - REQUIRE_THROWS_AS(base32::decode("AA"), const cppcodec::padding_error&); |
436 | | - REQUIRE_THROWS_AS(base32::decode("AA==="), const cppcodec::padding_error&); |
437 | | - REQUIRE_THROWS_AS(base32::decode("A======="), const cppcodec::invalid_input_length&); |
438 | | - REQUIRE_THROWS_AS(base32::decode("AAA====="), const cppcodec::invalid_input_length&); |
439 | | - REQUIRE_THROWS_AS(base32::decode("AAAAAA=="), const cppcodec::invalid_input_length&); |
| 434 | + REQUIRE_THROWS_AS(base32::decode("A"), cppcodec::padding_error); |
| 435 | + REQUIRE_THROWS_AS(base32::decode("AA"), cppcodec::padding_error); |
| 436 | + REQUIRE_THROWS_AS(base32::decode("AA==="), cppcodec::padding_error); |
| 437 | + REQUIRE_THROWS_AS(base32::decode("A======="), cppcodec::invalid_input_length); |
| 438 | + REQUIRE_THROWS_AS(base32::decode("AAA====="), cppcodec::invalid_input_length); |
| 439 | + REQUIRE_THROWS_AS(base32::decode("AAAAAA=="), cppcodec::invalid_input_length); |
440 | 440 |
|
441 | 441 | // An invalid symbol should throw a symbol error. |
442 | | - REQUIRE_THROWS_AS(base32::decode("0A======"), const cppcodec::symbol_error&); |
443 | | - REQUIRE_THROWS_AS(base32::decode("1A======"), const cppcodec::symbol_error&); |
444 | | - REQUIRE_THROWS_AS(base32::decode("8A======"), const cppcodec::symbol_error&); |
445 | | - REQUIRE_THROWS_AS(base32::decode("9A======"), const cppcodec::symbol_error&); |
446 | | - REQUIRE_THROWS_AS(base32::decode("GEZD GNBV"), const cppcodec::symbol_error&); // no spaces |
447 | | - REQUIRE_THROWS_AS(base32::decode("GEZD-GNBV"), const cppcodec::symbol_error&); // no dashes |
| 442 | + REQUIRE_THROWS_AS(base32::decode("0A======"), cppcodec::symbol_error); |
| 443 | + REQUIRE_THROWS_AS(base32::decode("1A======"), cppcodec::symbol_error); |
| 444 | + REQUIRE_THROWS_AS(base32::decode("8A======"), cppcodec::symbol_error); |
| 445 | + REQUIRE_THROWS_AS(base32::decode("9A======"), cppcodec::symbol_error); |
| 446 | + REQUIRE_THROWS_AS(base32::decode("GEZD GNBV"), cppcodec::symbol_error); // no spaces |
| 447 | + REQUIRE_THROWS_AS(base32::decode("GEZD-GNBV"), cppcodec::symbol_error); // no dashes |
448 | 448 | } |
449 | 449 | } |
450 | 450 |
|
@@ -571,17 +571,17 @@ TEST_CASE("base64 (RFC 4648)", "[base64][rfc4648]") { |
571 | 571 | REQUIRE(base64::decode("////") == std::vector<uint8_t>({255, 255, 255})); |
572 | 572 |
|
573 | 573 | // An invalid number of symbols should throw the right kind of parse_error. |
574 | | - REQUIRE_THROWS_AS(base64::decode("A"), const cppcodec::padding_error&); |
575 | | - REQUIRE_THROWS_AS(base64::decode("AA"), const cppcodec::padding_error&); |
576 | | - REQUIRE_THROWS_AS(base64::decode("ABCDE"), const cppcodec::padding_error&); |
577 | | - REQUIRE_THROWS_AS(base64::decode("A==="), const cppcodec::invalid_input_length&); |
578 | | - REQUIRE_THROWS_AS(base64::decode("AAAA===="), const cppcodec::invalid_input_length&); |
579 | | - REQUIRE_THROWS_AS(base64::decode("AAAAA==="), const cppcodec::invalid_input_length&); |
| 574 | + REQUIRE_THROWS_AS(base64::decode("A"), cppcodec::padding_error); |
| 575 | + REQUIRE_THROWS_AS(base64::decode("AA"), cppcodec::padding_error); |
| 576 | + REQUIRE_THROWS_AS(base64::decode("ABCDE"), cppcodec::padding_error); |
| 577 | + REQUIRE_THROWS_AS(base64::decode("A==="), cppcodec::invalid_input_length); |
| 578 | + REQUIRE_THROWS_AS(base64::decode("AAAA===="), cppcodec::invalid_input_length); |
| 579 | + REQUIRE_THROWS_AS(base64::decode("AAAAA==="), cppcodec::invalid_input_length); |
580 | 580 |
|
581 | 581 | // An invalid symbol should throw a symbol error. |
582 | | - REQUIRE_THROWS_AS(base64::decode("A&B="), const cppcodec::symbol_error&); |
583 | | - REQUIRE_THROWS_AS(base64::decode("--"), const cppcodec::symbol_error&); // this is not base64url |
584 | | - REQUIRE_THROWS_AS(base64::decode("__"), const cppcodec::symbol_error&); // ...ditto |
| 582 | + REQUIRE_THROWS_AS(base64::decode("A&B="), cppcodec::symbol_error); |
| 583 | + REQUIRE_THROWS_AS(base64::decode("--"), cppcodec::symbol_error); // this is not base64url |
| 584 | + REQUIRE_THROWS_AS(base64::decode("__"), cppcodec::symbol_error); // ...ditto |
585 | 585 | } |
586 | 586 | } |
587 | 587 |
|
@@ -674,21 +674,21 @@ TEST_CASE("base64 (unpadded URL-safe)", "[base64][url_unpadded]") { |
674 | 674 | REQUIRE(base64::decode<std::string>("Zm9vYmFy") == "foobar"); |
675 | 675 |
|
676 | 676 | // Unpadded base64_url allows padding, but an incorrect number of padding characters is still wrong. |
677 | | - REQUIRE_THROWS_AS(base64::decode<std::string>("Zg="), const cppcodec::padding_error&); |
| 677 | + REQUIRE_THROWS_AS(base64::decode<std::string>("Zg="), cppcodec::padding_error); |
678 | 678 |
|
679 | 679 | // Other test strings. |
680 | 680 | REQUIRE(base64::decode<std::string>("MTIz") == "123"); |
681 | 681 | REQUIRE(base64::decode<std::string>("QUJD") == "ABC"); |
682 | 682 | REQUIRE(base64::decode("____") == std::vector<uint8_t>({255, 255, 255})); |
683 | 683 |
|
684 | 684 | // An invalid number of symbols should throw the right kind of parse_error. |
685 | | - REQUIRE_THROWS_AS(base64::decode("A"), const cppcodec::invalid_input_length&); |
686 | | - REQUIRE_THROWS_AS(base64::decode("AAAAA"), const cppcodec::invalid_input_length&); |
| 685 | + REQUIRE_THROWS_AS(base64::decode("A"), cppcodec::invalid_input_length); |
| 686 | + REQUIRE_THROWS_AS(base64::decode("AAAAA"), cppcodec::invalid_input_length); |
687 | 687 |
|
688 | 688 | // An invalid symbol should throw a symbol error. |
689 | | - REQUIRE_THROWS_AS(base64::decode("A&B"), const cppcodec::symbol_error&); |
690 | | - REQUIRE_THROWS_AS(base64::decode("++"), const cppcodec::symbol_error&); // this is not standard base64 |
691 | | - REQUIRE_THROWS_AS(base64::decode("//"), const cppcodec::symbol_error&); // ...ditto |
| 689 | + REQUIRE_THROWS_AS(base64::decode("A&B"), cppcodec::symbol_error); |
| 690 | + REQUIRE_THROWS_AS(base64::decode("++"), cppcodec::symbol_error); // this is not standard base64 |
| 691 | + REQUIRE_THROWS_AS(base64::decode("//"), cppcodec::symbol_error); // ...ditto |
692 | 692 | } |
693 | 693 | } |
694 | 694 |
|
@@ -782,17 +782,17 @@ TEST_CASE("base64 (URL-safe)", "[base64][url]") { |
782 | 782 | REQUIRE(base64::decode("____") == std::vector<uint8_t>({255, 255, 255})); |
783 | 783 |
|
784 | 784 | // An invalid number of symbols should throw the right kind of parse_error. |
785 | | - REQUIRE_THROWS_AS(base64::decode("A"), const cppcodec::padding_error&); |
786 | | - REQUIRE_THROWS_AS(base64::decode("AA"), const cppcodec::padding_error&); |
787 | | - REQUIRE_THROWS_AS(base64::decode("ABCDE"), const cppcodec::padding_error&); |
788 | | - REQUIRE_THROWS_AS(base64::decode("A==="), const cppcodec::invalid_input_length&); |
789 | | - REQUIRE_THROWS_AS(base64::decode("AAAA===="), const cppcodec::invalid_input_length&); |
790 | | - REQUIRE_THROWS_AS(base64::decode("AAAAA==="), const cppcodec::invalid_input_length&); |
| 785 | + REQUIRE_THROWS_AS(base64::decode("A"), cppcodec::padding_error); |
| 786 | + REQUIRE_THROWS_AS(base64::decode("AA"), cppcodec::padding_error); |
| 787 | + REQUIRE_THROWS_AS(base64::decode("ABCDE"), cppcodec::padding_error); |
| 788 | + REQUIRE_THROWS_AS(base64::decode("A==="), cppcodec::invalid_input_length); |
| 789 | + REQUIRE_THROWS_AS(base64::decode("AAAA===="), cppcodec::invalid_input_length); |
| 790 | + REQUIRE_THROWS_AS(base64::decode("AAAAA==="), cppcodec::invalid_input_length); |
791 | 791 |
|
792 | 792 | // An invalid symbol should throw a symbol error. |
793 | | - REQUIRE_THROWS_AS(base64::decode("A&B="), const cppcodec::symbol_error&); |
794 | | - REQUIRE_THROWS_AS(base64::decode("++"), const cppcodec::symbol_error&); // this is not standard base64 |
795 | | - REQUIRE_THROWS_AS(base64::decode("//"), const cppcodec::symbol_error&); // ...ditto |
| 793 | + REQUIRE_THROWS_AS(base64::decode("A&B="), cppcodec::symbol_error); |
| 794 | + REQUIRE_THROWS_AS(base64::decode("++"), cppcodec::symbol_error); // this is not standard base64 |
| 795 | + REQUIRE_THROWS_AS(base64::decode("//"), cppcodec::symbol_error); // ...ditto |
796 | 796 | } |
797 | 797 | } |
798 | 798 |
|
@@ -883,13 +883,13 @@ TEST_CASE("hex (lowercase)", "[hex][lower]") { |
883 | 883 | REQUIRE(hex::decode<std::string>("666F6f6261") == "fooba"); |
884 | 884 |
|
885 | 885 | // An invalid number of symbols should throw the right kind of parse_error. |
886 | | - REQUIRE_THROWS_AS(hex::decode("0"), const cppcodec::invalid_input_length&); |
887 | | - REQUIRE_THROWS_AS(hex::decode("000"), const cppcodec::invalid_input_length&); |
| 886 | + REQUIRE_THROWS_AS(hex::decode("0"), cppcodec::invalid_input_length); |
| 887 | + REQUIRE_THROWS_AS(hex::decode("000"), cppcodec::invalid_input_length); |
888 | 888 |
|
889 | 889 | // An invalid symbol should throw a symbol error. |
890 | | - REQUIRE_THROWS_AS(hex::decode("1g"), const cppcodec::symbol_error&); |
891 | | - REQUIRE_THROWS_AS(hex::decode("66 6f"), const cppcodec::symbol_error&); // no spaces |
892 | | - REQUIRE_THROWS_AS(hex::decode("66-6f"), const cppcodec::symbol_error&); // no dashes |
| 890 | + REQUIRE_THROWS_AS(hex::decode("1g"), cppcodec::symbol_error); |
| 891 | + REQUIRE_THROWS_AS(hex::decode("66 6f"), cppcodec::symbol_error); // no spaces |
| 892 | + REQUIRE_THROWS_AS(hex::decode("66-6f"), cppcodec::symbol_error); // no dashes |
893 | 893 | } |
894 | 894 | } |
895 | 895 |
|
@@ -980,12 +980,12 @@ TEST_CASE("hex (uppercase)", "[hex][upper]") { |
980 | 980 | REQUIRE(hex::decode<std::string>("666f6F6261") == "fooba"); |
981 | 981 |
|
982 | 982 | // An invalid number of symbols should throw the right kind of parse_error. |
983 | | - REQUIRE_THROWS_AS(hex::decode("0"), const cppcodec::invalid_input_length&); |
984 | | - REQUIRE_THROWS_AS(hex::decode("000"), const cppcodec::invalid_input_length&); |
| 983 | + REQUIRE_THROWS_AS(hex::decode("0"), cppcodec::invalid_input_length); |
| 984 | + REQUIRE_THROWS_AS(hex::decode("000"), cppcodec::invalid_input_length); |
985 | 985 |
|
986 | 986 | // An invalid symbol should throw a symbol error. |
987 | | - REQUIRE_THROWS_AS(hex::decode("1G"), const cppcodec::symbol_error&); |
988 | | - REQUIRE_THROWS_AS(hex::decode("66 6F"), const cppcodec::symbol_error&); // no spaces |
989 | | - REQUIRE_THROWS_AS(hex::decode("66-6F"), const cppcodec::symbol_error&); // no dashes |
| 987 | + REQUIRE_THROWS_AS(hex::decode("1G"), cppcodec::symbol_error); |
| 988 | + REQUIRE_THROWS_AS(hex::decode("66 6F"), cppcodec::symbol_error); // no spaces |
| 989 | + REQUIRE_THROWS_AS(hex::decode("66-6F"), cppcodec::symbol_error); // no dashes |
990 | 990 | } |
991 | 991 | } |
0 commit comments