MCPcopy Create free account
hub / github.com/DeepRec-AI/DeepRec / TEST

Function TEST

tensorflow/lite/delegates/gpu/common/shape_test.cc:27–76  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

25namespace {
26
27TEST(OIHW, Smoke) {
28 OIHW OIHW;
29
30 // Test 4 different versions of setters.
31 OIHW.i = 1;
32 ASSERT_TRUE(OIHW.set<Axis::OUTPUT_CHANNELS>(2));
33 ASSERT_TRUE(OIHW.set(Axis::HEIGHT, 3));
34 ASSERT_TRUE(OIHW.set(3, 4));
35
36 // Make sure invalid setters return false.
37 ASSERT_FALSE(OIHW.set(5, 10));
38 ASSERT_FALSE(OIHW.set(Axis::CHANNELS, 10));
39 ASSERT_FALSE(OIHW.set<Axis::CHANNELS>(10));
40
41 // Test 4 different versions of getters
42 EXPECT_EQ(1, OIHW.get(Axis::INPUT_CHANNELS));
43 EXPECT_EQ(2, OIHW.o);
44 EXPECT_EQ(3, OIHW.get(2));
45 EXPECT_EQ(4, OIHW.get<Axis::WIDTH>());
46
47 // Make sure getters that fall outside of a range return invalid axis.
48 EXPECT_EQ(-1, OIHW.get(5));
49 EXPECT_EQ(-1, OIHW.get(Axis::CHANNELS));
50 EXPECT_EQ(-1, OIHW.get<Axis::CHANNELS>());
51
52 // Check axis indices are all correct.
53 ASSERT_EQ(4, OIHW.size());
54 std::vector<Axis> expected = {Axis::OUTPUT_CHANNELS, Axis::INPUT_CHANNELS,
55 Axis::HEIGHT, Axis::WIDTH};
56 for (int i = 0; i < OIHW.size(); ++i) {
57 Axis axis = OIHW.axis(i);
58 ASSERT_EQ(expected[i], axis);
59 ASSERT_EQ(i, OIHW.index(axis));
60 }
61
62 // Check equivalent conversions.
63 OHWI ohwi;
64 ASSERT_TRUE(ohwi.CopyAllDefinedAxis(OIHW));
65 EXPECT_EQ(ohwi.o, OIHW.o);
66 EXPECT_EQ(ohwi.i, OIHW.i);
67 EXPECT_EQ(ohwi.h, OIHW.h);
68 EXPECT_EQ(ohwi.w, OIHW.w);
69
70 ohwi = OHWI(10, 20, 30, 40);
71 ASSERT_TRUE(OIHW.CopyAllGivenAxis(ohwi));
72 EXPECT_EQ(ohwi.o, OIHW.o);
73 EXPECT_EQ(ohwi.i, OIHW.i);
74 EXPECT_EQ(ohwi.h, OIHW.h);
75 EXPECT_EQ(ohwi.w, OIHW.w);
76}
77
78TEST(Layout, Smoke) {
79 EXPECT_EQ(4, Size<Layout::OIHW>());

Callers

nothing calls this directly

Calls 12

CopyAllDefinedAxisMethod · 0.80
CopyAllGivenAxisMethod · 0.80
AdoptMethod · 0.80
SizeFunction · 0.70
GetAxisFunction · 0.70
GetAxisIndexFunction · 0.70
setMethod · 0.45
getMethod · 0.45
sizeMethod · 0.45
axisMethod · 0.45
indexMethod · 0.45
ToShapeMethod · 0.45

Tested by

no test coverage detected