Index: src/libchcore/Tests/TestsTSparseRangeMap.cpp =================================================================== diff -u -N -r5efb534fc5440a7ab779d2514a00486ecb58e845 -ra4635addad389b9e117679437a3e1b64a739ea96 --- src/libchcore/Tests/TestsTSparseRangeMap.cpp (.../TestsTSparseRangeMap.cpp) (revision 5efb534fc5440a7ab779d2514a00486ecb58e845) +++ src/libchcore/Tests/TestsTSparseRangeMap.cpp (.../TestsTSparseRangeMap.cpp) (revision a4635addad389b9e117679437a3e1b64a739ea96) @@ -1,89 +1,89 @@ -#include "stdafx.h" -#include "gtest/gtest.h" -#include "../TSparseRangeMap.h" - -using namespace chcore; - -TEST(TestsTSparseRangeMap, DefaultConstructor) -{ - TSparseRangeMap map; - EXPECT_EQ(0, map.GetRangeCount()); - EXPECT_EQ(false, map.OverlapsRange(0, 0)); -} - -TEST(TestsTSparseRangeMap, SingleRange) -{ - TSparseRangeMap map; - map.Insert(45, 59); - - file_size_t fsStart = 0; - file_size_t fsEnd = 0; - - EXPECT_EQ(1, map.GetRangeCount()); - map.GetRangeAt(0, fsStart, fsEnd); - EXPECT_EQ(45, fsStart); - EXPECT_EQ(59, fsEnd); - - EXPECT_EQ(false, map.OverlapsRange(44, 44)); - EXPECT_EQ(false, map.OverlapsRange(60, 60)); - EXPECT_EQ(true, map.OverlapsRange(45, 45)); - EXPECT_EQ(true, map.OverlapsRange(59, 59)); -} - -TEST(TestsTSparseRangeMap, MultipleUnrelatedRanges) -{ - TSparseRangeMap map; - map.Insert(45, 59); - map.Insert(63, 85); - map.Insert(92, 87); - - file_size_t fsStart = 0; - file_size_t fsEnd = 0; - - EXPECT_EQ(3, map.GetRangeCount()); - map.GetRangeAt(0, fsStart, fsEnd); - EXPECT_EQ(45, fsStart); - EXPECT_EQ(59, fsEnd); - map.GetRangeAt(1, fsStart, fsEnd); - EXPECT_EQ(63, fsStart); - EXPECT_EQ(85, fsEnd); - map.GetRangeAt(2, fsStart, fsEnd); - EXPECT_EQ(87, fsStart); - EXPECT_EQ(92, fsEnd); - - EXPECT_EQ(false, map.OverlapsRange(44, 44)); - EXPECT_EQ(false, map.OverlapsRange(60, 60)); - EXPECT_EQ(true, map.OverlapsRange(45, 45)); - EXPECT_EQ(true, map.OverlapsRange(59, 59)); - - EXPECT_EQ(false, map.OverlapsRange(62, 62)); - EXPECT_EQ(false, map.OverlapsRange(86, 86)); - EXPECT_EQ(true, map.OverlapsRange(63, 63)); - EXPECT_EQ(true, map.OverlapsRange(85, 85)); - - EXPECT_EQ(false, map.OverlapsRange(86, 86)); - EXPECT_EQ(false, map.OverlapsRange(93, 93)); - EXPECT_EQ(true, map.OverlapsRange(87, 87)); - EXPECT_EQ(true, map.OverlapsRange(92, 92)); -} - -TEST(TestsTSparseRangeMap, MultipleRelatedRanges) -{ - TSparseRangeMap map; - map.Insert(45, 59); - map.Insert(60, 85); - map.Insert(36, 50); - - file_size_t fsStart = 0; - file_size_t fsEnd = 0; - - EXPECT_EQ(1, map.GetRangeCount()); - map.GetRangeAt(0, fsStart, fsEnd); - EXPECT_EQ(36, fsStart); - EXPECT_EQ(85, fsEnd); - - EXPECT_EQ(false, map.OverlapsRange(35, 35)); - EXPECT_EQ(false, map.OverlapsRange(86, 86)); - EXPECT_EQ(true, map.OverlapsRange(36, 36)); - EXPECT_EQ(true, map.OverlapsRange(85, 85)); -} +#include "stdafx.h" +#include "gtest/gtest.h" +#include "../TSparseRangeMap.h" + +using namespace chcore; + +TEST(TestsTSparseRangeMap, DefaultConstructor) +{ + TSparseRangeMap map; + EXPECT_EQ(0, map.GetRangeCount()); + EXPECT_EQ(false, map.OverlapsRange(0, 0)); +} + +TEST(TestsTSparseRangeMap, SingleRange) +{ + TSparseRangeMap map; + map.Insert(45, 59); + + file_size_t fsStart = 0; + file_size_t fsEnd = 0; + + EXPECT_EQ(1, map.GetRangeCount()); + map.GetRangeAt(0, fsStart, fsEnd); + EXPECT_EQ(45, fsStart); + EXPECT_EQ(59, fsEnd); + + EXPECT_EQ(false, map.OverlapsRange(44, 44)); + EXPECT_EQ(false, map.OverlapsRange(60, 60)); + EXPECT_EQ(true, map.OverlapsRange(45, 45)); + EXPECT_EQ(true, map.OverlapsRange(59, 59)); +} + +TEST(TestsTSparseRangeMap, MultipleUnrelatedRanges) +{ + TSparseRangeMap map; + map.Insert(45, 59); + map.Insert(63, 85); + map.Insert(92, 87); + + file_size_t fsStart = 0; + file_size_t fsEnd = 0; + + EXPECT_EQ(3, map.GetRangeCount()); + map.GetRangeAt(0, fsStart, fsEnd); + EXPECT_EQ(45, fsStart); + EXPECT_EQ(59, fsEnd); + map.GetRangeAt(1, fsStart, fsEnd); + EXPECT_EQ(63, fsStart); + EXPECT_EQ(85, fsEnd); + map.GetRangeAt(2, fsStart, fsEnd); + EXPECT_EQ(87, fsStart); + EXPECT_EQ(92, fsEnd); + + EXPECT_EQ(false, map.OverlapsRange(44, 44)); + EXPECT_EQ(false, map.OverlapsRange(60, 60)); + EXPECT_EQ(true, map.OverlapsRange(45, 45)); + EXPECT_EQ(true, map.OverlapsRange(59, 59)); + + EXPECT_EQ(false, map.OverlapsRange(62, 62)); + EXPECT_EQ(false, map.OverlapsRange(86, 86)); + EXPECT_EQ(true, map.OverlapsRange(63, 63)); + EXPECT_EQ(true, map.OverlapsRange(85, 85)); + + EXPECT_EQ(false, map.OverlapsRange(86, 86)); + EXPECT_EQ(false, map.OverlapsRange(93, 93)); + EXPECT_EQ(true, map.OverlapsRange(87, 87)); + EXPECT_EQ(true, map.OverlapsRange(92, 92)); +} + +TEST(TestsTSparseRangeMap, MultipleRelatedRanges) +{ + TSparseRangeMap map; + map.Insert(45, 59); + map.Insert(60, 85); + map.Insert(36, 50); + + file_size_t fsStart = 0; + file_size_t fsEnd = 0; + + EXPECT_EQ(1, map.GetRangeCount()); + map.GetRangeAt(0, fsStart, fsEnd); + EXPECT_EQ(36, fsStart); + EXPECT_EQ(85, fsEnd); + + EXPECT_EQ(false, map.OverlapsRange(35, 35)); + EXPECT_EQ(false, map.OverlapsRange(86, 86)); + EXPECT_EQ(true, map.OverlapsRange(36, 36)); + EXPECT_EQ(true, map.OverlapsRange(85, 85)); +}