#5657 Fix SerialKey construction in unit tests
This commit is contained in:
parent
714b2f6440
commit
7eefa49c77
|
@ -181,7 +181,7 @@ SerialKey::email() const
|
|||
}
|
||||
|
||||
std::string
|
||||
SerialKey::decode(const std::string& serial) const
|
||||
SerialKey::decode(const std::string& serial)
|
||||
{
|
||||
static const char* const lut = "0123456789ABCDEF";
|
||||
string output;
|
||||
|
@ -215,6 +215,8 @@ SerialKey::parse(std::string plainSerial)
|
|||
string parityStart = plainSerial.substr(0, 1);
|
||||
string parityEnd = plainSerial.substr(plainSerial.length() - 1, 1);
|
||||
|
||||
m_valid = false;
|
||||
|
||||
// check for parity chars { and }, record parity result, then remove them.
|
||||
if (parityStart == "{" && parityEnd == "}") {
|
||||
plainSerial = plainSerial.substr(1, plainSerial.length() - 2);
|
||||
|
|
|
@ -40,10 +40,11 @@ public:
|
|||
Edition edition() const;
|
||||
std::string toString() const;
|
||||
|
||||
static std::string decode(const std::string& serial);
|
||||
static Edition parseEdition(const std::string& editionStr);
|
||||
|
||||
private:
|
||||
std::string decode(const std::string& serial) const;
|
||||
void parse(std::string plainSerial);
|
||||
Edition parseEdition(const std::string& editionStr);
|
||||
std::string editionString() const;
|
||||
|
||||
#ifdef TEST_ENV
|
||||
|
|
|
@ -23,42 +23,39 @@
|
|||
|
||||
TEST(SerialKeyTests, decode_empty_returnEmptyString)
|
||||
{
|
||||
SerialKey serial("");
|
||||
std::string plainText = serial.decode("");
|
||||
std::string plainText = SerialKey::decode("");
|
||||
EXPECT_EQ(0, plainText.size());
|
||||
}
|
||||
|
||||
TEST(SerialKeyTests, decode_invalidDigit_returnEmptyString)
|
||||
{
|
||||
SerialKey serial("");
|
||||
std::string plainText = serial.decode("MOCKZ");
|
||||
std::string plainText = SerialKey::decode("MOCKZ");
|
||||
EXPECT_EQ(0, plainText.size());
|
||||
}
|
||||
|
||||
TEST(SerialKeyTests, decode_validSerial_returnPlainText)
|
||||
{
|
||||
SerialKey serial("");
|
||||
std::string plainText = serial.decode("53796E6572677920726F636B7321");
|
||||
std::string plainText = SerialKey::decode("53796E6572677920726F636B7321");
|
||||
EXPECT_EQ("Synergy rocks!", plainText);
|
||||
}
|
||||
|
||||
TEST(SerialKeyTests, parse_noParty_invalid)
|
||||
{
|
||||
SerialKey serial("");
|
||||
SerialKey serial;
|
||||
serial.parse("MOCK");
|
||||
EXPECT_FALSE(serial.isValid(0));
|
||||
}
|
||||
|
||||
TEST(SerialKeyTests, parse_invalidPartsLenghth_invalid)
|
||||
{
|
||||
SerialKey serial("");
|
||||
SerialKey serial;
|
||||
serial.parse("{Synergy;Rocks}");
|
||||
EXPECT_FALSE(serial.isValid(0));
|
||||
}
|
||||
|
||||
TEST(SerialKeyTests, parse_validV1Serial_valid)
|
||||
{
|
||||
SerialKey serial("");
|
||||
SerialKey serial;
|
||||
serial.parse("{v1;basic;Bob;1;email;company name;0;86400}");
|
||||
EXPECT_EQ(true, serial.isValid(0));
|
||||
EXPECT_EQ(kBasic, serial.edition());
|
||||
|
@ -69,7 +66,7 @@ TEST(SerialKeyTests, parse_validV1Serial_valid)
|
|||
|
||||
TEST(SerialKeyTests, parse_validV2Serial_valid)
|
||||
{
|
||||
SerialKey serial("");
|
||||
SerialKey serial;
|
||||
serial.parse("{v2;trial;pro;Bob;1;email;company name;0;86400}");
|
||||
EXPECT_EQ(true, serial.isValid(0));
|
||||
EXPECT_EQ(kPro, serial.edition());
|
||||
|
|
Loading…
Reference in New Issue