(self)
| 189 | self.assertEqual((12, 4, 1), stride) |
| 190 | |
| 191 | def test_dim_order_from_stride(self) -> None: |
| 192 | # shape = (4) |
| 193 | strides = (1,) |
| 194 | dim_order = dim_order_from_stride(strides) |
| 195 | print(dim_order) |
| 196 | self.assertEqual((0,), dim_order) |
| 197 | |
| 198 | # Test contiguous, a.k.a NCHW format |
| 199 | # shape = (2, 3, 4) |
| 200 | strides = (3 * 4, 4, 1) |
| 201 | dim_order = dim_order_from_stride(strides) |
| 202 | self.assertEqual((0, 1, 2), dim_order) |
| 203 | |
| 204 | # shape = (2, 3, 4, 5) |
| 205 | strides = (3 * 4 * 5, 4 * 5, 5, 1) |
| 206 | dim_order = dim_order_from_stride(strides) |
| 207 | self.assertEqual((0, 1, 2, 3), dim_order) |
| 208 | |
| 209 | # shape = (2, 3, 4, 5, 6) |
| 210 | strides = (3 * 4 * 5 * 6, 4 * 5 * 6, 5 * 6, 6, 1) |
| 211 | dim_order = dim_order_from_stride(strides) |
| 212 | self.assertEqual((0, 1, 2, 3, 4), dim_order) |
| 213 | |
| 214 | # Test channels last format |
| 215 | # shape = (2, 3, 4) |
| 216 | strides = (3 * 4, 1, 3) |
| 217 | dim_order = dim_order_from_stride(strides) |
| 218 | self.assertEqual((0, 2, 1), dim_order) |
| 219 | |
| 220 | # shape = (2, 3, 4, 5) |
| 221 | strides = (3 * 4 * 5, 1, 5 * 3, 3) |
| 222 | dim_order = dim_order_from_stride(strides) |
| 223 | self.assertEqual((0, 2, 3, 1), dim_order) |
| 224 | |
| 225 | # shape = (2, 3, 4, 5, 6) |
| 226 | strides = (3 * 4 * 5 * 6, 1, 5 * 6 * 3, 6 * 3, 3) |
| 227 | dim_order = dim_order_from_stride(strides) |
| 228 | self.assertEqual((0, 2, 3, 4, 1), dim_order) |
| 229 | |
| 230 | # test ambiguous strides |
| 231 | # shape = (1, 3, 3, 1) |
| 232 | strides = (9, 3, 1, 1) |
| 233 | dim_order = dim_order_from_stride(strides) |
| 234 | self.assertEqual((0, 1, 2, 3), dim_order) |
| 235 | |
| 236 | # test ambiguous strides |
| 237 | # shape = (1, 3, 1, 1) |
| 238 | strides = (3, 1, 3, 3) |
| 239 | dim_order = dim_order_from_stride(strides) |
| 240 | self.assertEqual((0, 2, 3, 1), dim_order) |
| 241 | |
| 242 | # test ambiguous strides |
| 243 | # shape = (1, 3, 1, 1) |
| 244 | strides = (3, 1, 1, 1) |
| 245 | dim_order = dim_order_from_stride(strides) |
| 246 | self.assertEqual((0, 1, 2, 3), dim_order) |
| 247 | |
| 248 | # test ambiguous strides |
nothing calls this directly
no test coverage detected