| 104 | static const char kLargeTensorMessage[] = "Tensor shape is too large"; |
| 105 | |
| 106 | TEST(NumElementsTest, Int) { |
| 107 | int count; |
| 108 | tensorflow::Status status = tensorflow::Status::OK(); |
| 109 | |
| 110 | status = NumElements(std::vector<int>{1024, 1024, 2047}, &count); |
| 111 | EXPECT_TRUE(status.ok()); |
| 112 | EXPECT_EQ(count, 2146435072); |
| 113 | |
| 114 | status = NumElements(std::vector<int>{1024, 0, 2048}, &count); |
| 115 | EXPECT_TRUE(status.ok()); |
| 116 | EXPECT_EQ(count, 0); |
| 117 | |
| 118 | status = NumElements(std::vector<int>{1, 2, -3}, &count); |
| 119 | EXPECT_EQ(status.error_message(), kNegativeValuesMessage); |
| 120 | |
| 121 | status = NumElements(std::vector<int>{1024, 1024, 2048}, &count); |
| 122 | EXPECT_EQ(status.error_message(), kLargeTensorMessage); |
| 123 | } |
| 124 | |
| 125 | TEST(NumElementsTest, Int32) { |
| 126 | int32_t count; |
nothing calls this directly
no test coverage detected