| 169 | |
| 170 | template <int num_spatial_dims> |
| 171 | void RunDimensionIndexesTest() { |
| 172 | for (auto& test_data_format : test_data_formats) { |
| 173 | TensorFormat format = test_data_format.first; |
| 174 | auto& tdm = GetTensorDimMap(num_spatial_dims, format); |
| 175 | int num_dims = GetTensorDimsFromSpatialDims(num_spatial_dims, format); |
| 176 | LOG(INFO) << ToString(format) << ", num_spatial_dims=" << num_spatial_dims |
| 177 | << ", num_dims=" << num_dims; |
| 178 | EXPECT_EQ(GetTensorBatchDimIndex(num_dims, format), tdm.n()); |
| 179 | EXPECT_EQ(GetTensorDimIndex<num_spatial_dims>(format, 'N'), tdm.n()); |
| 180 | EXPECT_EQ(GetTensorFeatureDimIndex(num_dims, format), tdm.c()); |
| 181 | EXPECT_EQ(GetTensorDimIndex<num_spatial_dims>(format, 'C'), tdm.c()); |
| 182 | for (int i = 0; i < num_spatial_dims; ++i) { |
| 183 | EXPECT_EQ(GetTensorSpatialDimIndex(num_dims, format, i), tdm.spatial(i)); |
| 184 | EXPECT_EQ(GetTensorDimIndex<num_spatial_dims>(format, '0' + i), |
| 185 | tdm.spatial(i)); |
| 186 | } |
| 187 | } |
| 188 | for (auto& test_filter_format : test_filter_formats) { |
| 189 | FilterTensorFormat format = test_filter_format.first; |
| 190 | auto& fdm = GetFilterDimMap(num_spatial_dims, format); |
| 191 | int num_dims = GetFilterTensorDimsFromSpatialDims(num_spatial_dims, format); |
| 192 | LOG(INFO) << ToString(format) << ", num_spatial_dims=" << num_spatial_dims |
| 193 | << ", num_dims=" << num_dims; |
| 194 | EXPECT_EQ(GetFilterTensorOutputChannelsDimIndex(num_dims, format), fdm.o()); |
| 195 | EXPECT_EQ(GetFilterDimIndex<num_spatial_dims>(format, 'O'), fdm.o()); |
| 196 | EXPECT_EQ(GetFilterTensorInputChannelsDimIndex(num_dims, format), fdm.i()); |
| 197 | EXPECT_EQ(GetFilterDimIndex<num_spatial_dims>(format, 'I'), fdm.i()); |
| 198 | for (int i = 0; i < num_spatial_dims; ++i) { |
| 199 | EXPECT_EQ(GetFilterTensorSpatialDimIndex(num_dims, format, i), |
| 200 | fdm.spatial(i)); |
| 201 | EXPECT_EQ(GetFilterDimIndex<num_spatial_dims>(format, '0' + i), |
| 202 | fdm.spatial(i)); |
| 203 | } |
| 204 | } |
| 205 | } |
| 206 | |
| 207 | TEST(TensorFormatTest, DimensionIndexes) { |
| 208 | RunDimensionIndexesTest<1>(); |
nothing calls this directly
no test coverage detected