Fixed tests

This commit is contained in:
Pesc0
2023-03-18 19:44:18 +01:00
parent 376c94f72f
commit 5e5719a435
2 changed files with 21 additions and 47 deletions

View File

@@ -103,9 +103,6 @@ public:
MappedName(const MappedName& other) = default;
// FIXME if you pass a raw MappedName into these constructors they will
// reset raw to false and things will break. is this intended?
/// Copy constructor with start position offset and optional size. The data is *not* reused.
///
/// \param other The MappedName to copy
@@ -364,7 +361,6 @@ public:
/// \param size The number of bytes to copy. If omitted, dataToAppend must be null-terminated.
void append(const char* dataToAppend, int size = -1)
{
// FIXME raw not assigned?
if (dataToAppend && (size != 0)) {
if (size < 0) {
size = static_cast<int>(qstrlen(dataToAppend));
@@ -690,6 +686,8 @@ public:
}
/// Returns true if this is shared data, or false if a unique copy has been made.
/// It is safe to access data only if it has been copied prior. To force a copy
/// please \see compact()
bool isRaw() const
{
return this->raw;
@@ -783,9 +781,9 @@ public:
return -1;
}
if (startPosition < 0
|| startPosition > this->postfix.size()) {// FIXME should be this->data.size
if (startPosition > postfix.size()) {
startPosition -= postfix.size();
|| startPosition >= this->data.size()) {
if (startPosition >= data.size()) {
startPosition -= data.size();
}
int res = this->postfix.lastIndexOf(searchTarget, startPosition);
if (res >= 0) {

View File

@@ -237,19 +237,12 @@ TEST(MappedName, fromRawDataCopy)
EXPECT_EQ(mappedName.postfixBytes(), QByteArray("TESTPOSTFIX"));
}
TEST(MappedName, fromRawDataCopyStartposAndSize) //FIXME
TEST(MappedName, fromRawDataCopyStartposAndSize)
{
// Arrange
Data::MappedName temp = Data::MappedName::fromRawData(QByteArray("TESTTEST", 8));
temp.append("ABCDEFGHIJKLM"); //postfix
/* This block is OK
EXPECT_EQ(temp.isRaw(), true);
EXPECT_EQ(temp.empty(), false);
EXPECT_EQ(temp.size(), 21);
EXPECT_EQ(temp.dataBytes(), QByteArray("TESTTEST", 8));
EXPECT_EQ(temp.postfixBytes(), QByteArray("ABCDEFGHIJKLM"));
*/
temp.compact(); //Always call compact before accessing data!
// Act
Data::MappedName mappedName = Data::MappedName::fromRawData(temp, 2, 13);
@@ -258,9 +251,6 @@ TEST(MappedName, fromRawDataCopyStartposAndSize) //FIXME
EXPECT_EQ(mappedName.isRaw(), true);
EXPECT_EQ(mappedName.empty(), false);
EXPECT_EQ(mappedName.size(), 13);
//next line fails with TEST\0T != STTEST
//funny thing if i uncomment the block above, which does nothing, now the next line
//fails with TEST\0H != STTEST
EXPECT_EQ(mappedName.dataBytes(), QByteArray("STTEST", 6));
EXPECT_EQ(mappedName.postfixBytes(), QByteArray("ABCDEFG"));
}
@@ -649,40 +639,26 @@ TEST(MappedName, rfind)
EXPECT_EQ(mappedName.rfind("STPO"), -1); //sentence must be fully contained in data or postfix
EXPECT_EQ(mappedName.rfind("POST"), 4);
//FIXME looks broken
EXPECT_EQ(mappedName.rfind("ST"), 13);
EXPECT_EQ(mappedName.rfind("ST", 0), -1);
EXPECT_EQ(mappedName.rfind("ST", 1), -1);
EXPECT_EQ(mappedName.rfind("ST", 2), 2);
EXPECT_EQ(mappedName.rfind("ST", 3), 2);
EXPECT_EQ(mappedName.rfind("ST", 4), 2);
EXPECT_EQ(mappedName.rfind("ST", 5), -1);
EXPECT_EQ(mappedName.rfind("ST", 6), -1);
EXPECT_EQ(mappedName.rfind("ST", 7), -1);
EXPECT_EQ(mappedName.rfind("ST", 8), -1);
EXPECT_EQ(mappedName.rfind("ST", 9), -1);
EXPECT_EQ(mappedName.rfind("ST", 10), -1);
EXPECT_EQ(mappedName.rfind("ST", 11), -1);
EXPECT_EQ(mappedName.rfind("ST", 12), 2);
EXPECT_EQ(mappedName.rfind("ST", 13), 6);
EXPECT_EQ(mappedName.rfind("ST", 14), 6);
EXPECT_EQ(mappedName.rfind("ST", 15), 6);
EXPECT_EQ(mappedName.rfind("ST", 16), 6);
EXPECT_EQ(mappedName.rfind("ST", 17), 6);
EXPECT_EQ(mappedName.rfind("ST", 18), 6);
EXPECT_EQ(mappedName.rfind("ST", 19), 6);
EXPECT_EQ(mappedName.rfind("ST", 20), 13);
EXPECT_EQ(mappedName.rfind("ST", 21), 13);
EXPECT_EQ(mappedName.rfind("ST", 22), 13);
EXPECT_EQ(mappedName.rfind("ST", 23), 2);
EXPECT_EQ(mappedName.rfind("ST", 24), 2);
EXPECT_EQ(mappedName.rfind("ST", 25), 2);
EXPECT_EQ(mappedName.rfind("ST", 26), 2);
EXPECT_EQ(mappedName.rfind("ST", 27), 2);
EXPECT_EQ(mappedName.rfind("ST", 28), 2);
//EXPECT_EQ(mappedName.rfind("POST", 7), 4);
//EXPECT_EQ(mappedName.rfind("POST", 8), -1);
EXPECT_EQ(mappedName.rfind("ST", 5), 2);
EXPECT_EQ(mappedName.rfind("ST", 6), 6);
EXPECT_EQ(mappedName.rfind("ST", 7), 6);
EXPECT_EQ(mappedName.rfind("ST", 8), 6);
EXPECT_EQ(mappedName.rfind("ST", 9), 6);
EXPECT_EQ(mappedName.rfind("ST", 10), 6);
EXPECT_EQ(mappedName.rfind("ST", 11), 6);
EXPECT_EQ(mappedName.rfind("ST", 12), 6);
EXPECT_EQ(mappedName.rfind("ST", 13), 13);
EXPECT_EQ(mappedName.rfind("ST", 14), 13);
EXPECT_EQ(mappedName.rfind("ST", 15), 13);
EXPECT_EQ(mappedName.rfind("POST", 4), 4);
EXPECT_EQ(mappedName.rfind("POST", 3), -1);
EXPECT_EQ(mappedName.rfind(std::string("")), mappedName.size());
}