#include "HexavigesimalTest.h" #include <alib/hexavigesimal> CPPUNIT_TEST_SUITE_NAMED_REGISTRATION( HexavigesimalTest, "bits" ); CPPUNIT_TEST_SUITE_REGISTRATION( HexavigesimalTest ); void HexavigesimalTest::setUp() { } void HexavigesimalTest::tearDown() { } void HexavigesimalTest::test1() { CPPUNIT_ASSERT_EQUAL(std::string("A") , ext::toBase26(0)); CPPUNIT_ASSERT_EQUAL(std::string("B") , ext::toBase26(1)); CPPUNIT_ASSERT_EQUAL(std::string("Z") , ext::toBase26(25)); CPPUNIT_ASSERT_EQUAL(std::string("BA") , ext::toBase26(26)); CPPUNIT_ASSERT_EQUAL(std::string("BB") , ext::toBase26(27)); CPPUNIT_ASSERT_EQUAL(std::string("ZZ") , ext::toBase26(675)); CPPUNIT_ASSERT_EQUAL(std::string("BAA"), ext::toBase26(676)); CPPUNIT_ASSERT_EQUAL(0u , ext::fromBase26("A")); CPPUNIT_ASSERT_EQUAL(1u , ext::fromBase26("B")); CPPUNIT_ASSERT_EQUAL(25u , ext::fromBase26("Z")); CPPUNIT_ASSERT_EQUAL(26u , ext::fromBase26("BA")); CPPUNIT_ASSERT_EQUAL(27u , ext::fromBase26("BB")); CPPUNIT_ASSERT_EQUAL(675u, ext::fromBase26("ZZ")); CPPUNIT_ASSERT_EQUAL(676u, ext::fromBase26("BAA")); CPPUNIT_ASSERT_EQUAL(std::string("") , ext::bijectiveToBase26(0)); CPPUNIT_ASSERT_EQUAL(std::string("A") , ext::bijectiveToBase26(1)); CPPUNIT_ASSERT_EQUAL(std::string("Z") , ext::bijectiveToBase26(26)); CPPUNIT_ASSERT_EQUAL(std::string("AA") , ext::bijectiveToBase26(27)); CPPUNIT_ASSERT_EQUAL(std::string("AB") , ext::bijectiveToBase26(28)); CPPUNIT_ASSERT_EQUAL(std::string("ZZ") , ext::bijectiveToBase26(702)); CPPUNIT_ASSERT_EQUAL(std::string("AAA"), ext::bijectiveToBase26(703)); CPPUNIT_ASSERT_EQUAL(0u , ext::bijectiveFromBase26("")); CPPUNIT_ASSERT_EQUAL(1u , ext::bijectiveFromBase26("A")); CPPUNIT_ASSERT_EQUAL(26u , ext::bijectiveFromBase26("Z")); CPPUNIT_ASSERT_EQUAL(27u , ext::bijectiveFromBase26("AA")); CPPUNIT_ASSERT_EQUAL(28u , ext::bijectiveFromBase26("AB")); CPPUNIT_ASSERT_EQUAL(702u, ext::bijectiveFromBase26("ZZ")); CPPUNIT_ASSERT_EQUAL(703u, ext::bijectiveFromBase26("AAA")); }