]> WPIA git - cassiopeia.git/blob - test/src/CRL.cpp
add: Adding CRL generation
[cassiopeia.git] / test / src / CRL.cpp
1 #include "crypto/CRL.h"
2 #include "config.h"
3
4 #include <boost/test/unit_test.hpp>
5
6 #include <iostream>
7 #include <unordered_map>
8
9 extern std::unordered_map<std::string, std::shared_ptr<CAConfig>> CAs;
10
11 BOOST_AUTO_TEST_SUITE( TestCRL )
12 BOOST_AUTO_TEST_CASE( SeperateSignature ) {
13     parseProfiles();
14     std::shared_ptr<CAConfig> ca = CAs.at( "unassured" );
15
16     CRL c( "" );
17     c.setSignature( c.getSignature() );
18     c.sign( ca );
19     std::string oldsig = c.getSignature();
20     BOOST_CHECK( c.verify( ca ) );
21     std::string date = c.revoke( "1234", "" );
22     BOOST_CHECK( !c.verify( ca ) );
23     c.sign( ca );
24     BOOST_CHECK( c.verify( ca ) );
25     std::string newsig = c.getSignature();
26     c.setSignature( oldsig );
27     BOOST_CHECK( !c.verify( ca ) );
28     c.setSignature( newsig );
29     BOOST_CHECK( c.verify( ca ) );
30
31     CRL c2( "" );
32     c2.sign( ca );
33
34     std::string date2 = c2.revoke( "1234", date );
35     BOOST_CHECK_EQUAL( date, date2 );
36     c2.setSignature( newsig );
37     BOOST_CHECK( c2.verify( ca ) );
38
39     BOOST_CHECK_EQUAL( c.toString(), c2.toString() );
40
41 }
42
43 BOOST_AUTO_TEST_SUITE_END()