summaryrefslogtreecommitdiff
path: root/tests/network.cpp
diff options
context:
space:
mode:
authorlouiz’ <louiz@louiz.org>2017-06-28 14:41:33 +0200
committerlouiz’ <louiz@louiz.org>2017-06-28 14:41:33 +0200
commit13a1ab1878fd6312aea485ded3f5bad59c36f17f (patch)
tree071b90523126d677f714cbf13346507f2e500d69 /tests/network.cpp
parenta1349361d2c15929e8260536c9091f2a4c2048a4 (diff)
parent7e69d0387e85eeed10d605349feeba595c3fa0ee (diff)
downloadbiboumi-13a1ab1878fd6312aea485ded3f5bad59c36f17f.tar.gz
biboumi-13a1ab1878fd6312aea485ded3f5bad59c36f17f.tar.bz2
biboumi-13a1ab1878fd6312aea485ded3f5bad59c36f17f.tar.xz
biboumi-13a1ab1878fd6312aea485ded3f5bad59c36f17f.zip
Merge remote-tracking branch 'remotes/debian/master' into debian
Diffstat (limited to 'tests/network.cpp')
-rw-r--r--tests/network.cpp44
1 files changed, 44 insertions, 0 deletions
diff --git a/tests/network.cpp b/tests/network.cpp
new file mode 100644
index 0000000..33cf023
--- /dev/null
+++ b/tests/network.cpp
@@ -0,0 +1,44 @@
+#include "catch.hpp"
+#include <network/tls_policy.hpp>
+
+#ifdef BOTAN_FOUND
+TEST_CASE("tls_policy")
+{
+ BiboumiTLSPolicy policy;
+ const auto default_minimum_signature_strength = policy.minimum_signature_strength();
+ const auto default_session_ticket_lifetime = policy.session_ticket_lifetime();
+ const auto default_minimum_rsa_bits = policy.minimum_rsa_bits();
+
+ policy.load("does not exist");
+ WHEN("we fail to load the file")
+ {
+ THEN("all values are the default ones")
+ {
+ CHECK(policy.minimum_signature_strength() == default_minimum_signature_strength);
+ CHECK(policy.minimum_rsa_bits() == default_minimum_rsa_bits);
+ }
+ AND_WHEN("we load a valid first file")
+ {
+ std::istringstream iss("minimum_signature_strength = 128\nminimum_rsa_bits=12\n");
+ policy.load(iss);
+ THEN("the specified values are updated, and the rest is still the default")
+ {
+ CHECK(policy.minimum_signature_strength() == 128);
+ CHECK(policy.minimum_rsa_bits() == 12);
+ CHECK(policy.session_ticket_lifetime() == default_session_ticket_lifetime);
+ }
+ AND_WHEN("we load a second file")
+ {
+ std::istringstream iss("minimum_signature_strength = 15");
+ policy.load(iss);
+ THEN("the specified values are updated, and the rest is untouched")
+ {
+ CHECK(policy.minimum_signature_strength() == 15);
+ CHECK(policy.minimum_rsa_bits() == 12);
+ CHECK(policy.session_ticket_lifetime() == default_session_ticket_lifetime);
+ }
+ }
+ }
+ }
+}
+#endif