commonjs.cpp 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. /*
  2. This file is part of cpp-ethereum.
  3. cpp-ethereum is free software: you can redistribute it and/or modify
  4. it under the terms of the GNU General Public License as published by
  5. the Free Software Foundation, either version 3 of the License, or
  6. (at your option) any later version.
  7. cpp-ethereum is distributed in the hope that it will be useful,
  8. but WITHOUT ANY WARRANTY; without even the implied warranty of
  9. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  10. GNU General Public License for more details.
  11. You should have received a copy of the GNU General Public License
  12. along with cpp-ethereum. If not, see <http://www.gnu.org/licenses/>.
  13. */
  14. /** @file commonjs.cpp
  15. * @author Marek Kotewicz <marek@ethdev.com>
  16. * @date 2014
  17. */
  18. #include <boost/test/unit_test.hpp>
  19. #include <libdevcore/Log.h>
  20. #include <libethcore/CommonJS.h>
  21. #include <test/TestHelper.h>
  22. using namespace std;
  23. using namespace dev;
  24. using namespace dev::eth;
  25. using namespace dev::test;
  26. BOOST_FIXTURE_TEST_SUITE(commonjs, TestOutputHelper)
  27. BOOST_AUTO_TEST_CASE(jsToPublic)
  28. {
  29. KeyPair kp = KeyPair::create();
  30. string s = toJS(kp.pub());
  31. Public pub = dev::jsToPublic(s);
  32. BOOST_CHECK_EQUAL(kp.pub(), pub);
  33. }
  34. BOOST_AUTO_TEST_CASE(jsToAddress)
  35. {
  36. KeyPair kp = KeyPair::create();
  37. string s = toJS(kp.address());
  38. Address address = dev::jsToAddress(s);
  39. BOOST_CHECK_EQUAL(kp.address(), address);
  40. }
  41. BOOST_AUTO_TEST_CASE(jsToSecret)
  42. {
  43. KeyPair kp = KeyPair::create();
  44. string s = toJS(kp.secret().makeInsecure());
  45. Secret secret = dev::jsToSecret(s);
  46. BOOST_CHECK_EQUAL(kp.secret().makeInsecure(), secret.makeInsecure());
  47. }
  48. BOOST_AUTO_TEST_SUITE_END()