MCPcopy Create free account
hub / github.com/apache/impala / TestCompareImpl

Function TestCompareImpl

be/src/runtime/string-value-test.cc:34–67  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

32}
33
34void TestCompareImpl(StringValue* svs, int NUM_STRINGS) {
35 for (int i = 0; i < NUM_STRINGS; ++i) {
36 for (int j = 0; j < NUM_STRINGS; ++j) {
37 if (i == j) {
38 // Same string
39 EXPECT_TRUE(svs[i].Eq(svs[j])) << "i=" << i << " j=" << j;
40 EXPECT_FALSE(svs[i].Ne(svs[j])) << "i=" << i << " j=" << j;
41 EXPECT_FALSE(svs[i].Lt(svs[j])) << "i=" << i << " j=" << j;
42 EXPECT_FALSE(svs[i].Gt(svs[j])) << "i=" << i << " j=" << j;
43 EXPECT_TRUE(svs[i].Le(svs[j])) << "i=" << i << " j=" << j;
44 EXPECT_TRUE(svs[i].Ge(svs[j])) << "i=" << i << " j=" << j;
45 EXPECT_TRUE(svs[i].Compare(svs[j]) == 0) << "i=" << i << " j=" << j;
46 } else if (i < j) {
47 // svs[i] < svs[j]
48 EXPECT_FALSE(svs[i].Eq(svs[j])) << "i=" << i << " j=" << j;
49 EXPECT_TRUE(svs[i].Ne(svs[j])) << "i=" << i << " j=" << j;
50 EXPECT_TRUE(svs[i].Lt(svs[j])) << "i=" << i << " j=" << j;
51 EXPECT_FALSE(svs[i].Gt(svs[j])) << "i=" << i << " j=" << j;
52 EXPECT_TRUE(svs[i].Le(svs[j])) << "i=" << i << " j=" << j;
53 EXPECT_FALSE(svs[i].Gt(svs[j])) << "i=" << i << " j=" << j;
54 EXPECT_TRUE(svs[i].Compare(svs[j]) < 0) << "i=" << i << " j=" << j;
55 } else {
56 // svs[i] > svs[j]
57 EXPECT_FALSE(svs[i].Eq(svs[j])) << "i=" << i << " j=" << j;
58 EXPECT_TRUE(svs[i].Ne(svs[j])) << "i=" << i << " j=" << j;
59 EXPECT_FALSE(svs[i].Lt(svs[j])) << "i=" << i << " j=" << j;
60 EXPECT_TRUE(svs[i].Gt(svs[j])) << "i=" << i << " j=" << j;
61 EXPECT_FALSE(svs[i].Le(svs[j])) << "i=" << i << " j=" << j;
62 EXPECT_TRUE(svs[i].Gt(svs[j])) << "i=" << i << " j=" << j;
63 EXPECT_TRUE(svs[i].Compare(svs[j]) > 0) << "i=" << i << " j=" << j;
64 }
65 }
66 }
67}
68
69class StringValueTest : public ::testing::Test {
70protected:

Callers 1

TEST_FFunction · 0.85

Calls 7

EqMethod · 0.45
NeMethod · 0.45
LtMethod · 0.45
GtMethod · 0.45
LeMethod · 0.45
GeMethod · 0.45
CompareMethod · 0.45

Tested by

no test coverage detected