aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/tests/catchy/test_cvc.cpp41
-rw-r--r--src/tests/catchy/test_x509.cpp48
2 files changed, 89 insertions, 0 deletions
diff --git a/src/tests/catchy/test_cvc.cpp b/src/tests/catchy/test_cvc.cpp
new file mode 100644
index 000000000..1678f76f1
--- /dev/null
+++ b/src/tests/catchy/test_cvc.cpp
@@ -0,0 +1,41 @@
+// (C) 2015 Simon Warta (Kullo GmbH)
+// Botan is released under the Simplified BSD License (see license.txt)
+
+#include "catch.hpp"
+#include <botan/build.h>
+
+#if defined(BOTAN_HAS_CVC)
+
+#include <botan/eac_asn_obj.h>
+
+TEST_CASE("human readable time", "[EAC_Time]")
+ {
+ auto time1 = Botan::EAC_Time("2008-02-01");
+ auto time2 = Botan::EAC_Time("2008/02/28");
+ auto time3 = Botan::EAC_Time("2004-06-14");
+
+ CHECK(( time1.time_is_set() == true ));
+ CHECK(( time2.time_is_set() == true ));
+ CHECK(( time3.time_is_set() == true ));
+
+ CHECK(( time1.readable_string() == "2008/02/01" ));
+ CHECK(( time2.readable_string() == "2008/02/28" ));
+ CHECK(( time3.readable_string() == "2004/06/14" ));
+ }
+
+TEST_CASE("no time", "[EAC_Time]")
+ {
+ auto time = Botan::EAC_Time("");
+ CHECK(( time.time_is_set() == false ));
+ }
+
+TEST_CASE("invalis time", "[EAC_Time]")
+ {
+ CHECK_THROWS( Botan::EAC_Time(" ") );
+ CHECK_THROWS( Botan::EAC_Time("2008`02-01") );
+ CHECK_THROWS( Botan::EAC_Time("9999-02-01") );
+ CHECK_THROWS( Botan::EAC_Time("2000-02-01 17") );
+ CHECK_THROWS( Botan::EAC_Time("999921") );
+ }
+
+#endif // BOTAN_HAS_CVC
diff --git a/src/tests/catchy/test_x509.cpp b/src/tests/catchy/test_x509.cpp
new file mode 100644
index 000000000..20b72ab26
--- /dev/null
+++ b/src/tests/catchy/test_x509.cpp
@@ -0,0 +1,48 @@
+// (C) 2015 Simon Warta (Kullo GmbH)
+// Botan is released under the Simplified BSD License (see license.txt)
+
+#include "catch.hpp"
+#include <botan/build.h>
+
+// deacticate due to
+// https://github.com/randombit/botan/issues/185
+
+#if 0
+
+#if defined(BOTAN_HAS_ASN1)
+
+#include <botan/asn1_time.h>
+
+TEST_CASE("human readable time", "[X509]")
+ {
+ auto time1 = Botan::X509_Time("2008-02-01");
+ auto time2 = Botan::X509_Time("2008-02-01 17:24:33");
+ auto time3 = Botan::X509_Time("2004-06-14T23:34:30");
+
+ CHECK(( time1.time_is_set() == true ));
+ CHECK(( time2.time_is_set() == true ));
+ CHECK(( time3.time_is_set() == true ));
+
+ CHECK(( time1.readable_string() == "2008/02/01 00:00:00 UTC" ));
+ CHECK(( time2.readable_string() == "2008/02/01 17:24:33 UTC" ));
+ CHECK(( time3.readable_string() == "2004/06/14 23:34:30 UTC" ));
+ }
+
+TEST_CASE("no time", "[X509]")
+ {
+ auto time = Botan::X509_Time("");
+ CHECK(( time.time_is_set() == false ));
+ }
+
+TEST_CASE("invalid time", "[X509]")
+ {
+ CHECK_THROWS( Botan::X509_Time(" ") );
+ CHECK_THROWS( Botan::X509_Time("2008`02-01") );
+ CHECK_THROWS( Botan::X509_Time("9999-02-01") );
+ CHECK_THROWS( Botan::X509_Time("2000-02-01 17") );
+ CHECK_THROWS( Botan::X509_Time("999921") );
+ }
+
+#endif // BOTAN_HAS_ASN1
+
+#endif