Feathercoin  0.5.0
P2P Digital Currency
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros
base64_tests.cpp
Go to the documentation of this file.
1 #include <boost/test/unit_test.hpp>
2 
3 #include "main.h"
4 #include "wallet.h"
5 #include "util.h"
6 
7 BOOST_AUTO_TEST_SUITE(base64_tests)
8 
9 BOOST_AUTO_TEST_CASE(base64_testvectors)
10 {
11  static const std::string vstrIn[] = {"","f","fo","foo","foob","fooba","foobar"};
12  static const std::string vstrOut[] = {"","Zg==","Zm8=","Zm9v","Zm9vYg==","Zm9vYmE=","Zm9vYmFy"};
13  for (unsigned int i=0; i<sizeof(vstrIn)/sizeof(vstrIn[0]); i++)
14  {
15  std::string strEnc = EncodeBase64(vstrIn[i]);
16  BOOST_CHECK(strEnc == vstrOut[i]);
17  std::string strDec = DecodeBase64(strEnc);
18  BOOST_CHECK(strDec == vstrIn[i]);
19  }
20 }
21 
22 BOOST_AUTO_TEST_SUITE_END()
BOOST_AUTO_TEST_CASE(base64_testvectors)
Definition: base64_tests.cpp:9
string EncodeBase64(const unsigned char *pch, size_t len)
Definition: util.cpp:628
vector< unsigned char > DecodeBase64(const char *p, bool *pfInvalid)
Definition: util.cpp:679