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

Method testInfNan

tensorflow/python/kernel_tests/cast_op_test.py:147–185  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

145
146 @test_util.run_deprecated_v1
147 def testInfNan(self):
148 i4 = np.iinfo(np.int32)
149 i8 = np.iinfo(np.int64)
150
151 self._compare(np.inf, np.float32, np.inf, False)
152 self._compare(np.inf, np.float64, np.inf, False)
153 if sys.byteorder == "big":
154 self._compare(np.inf, np.int32, i4.max, False)
155 self._compare(np.inf, np.int64, i8.max, False)
156 else:
157 # np.float64("np.inf").astype(np.int32) is negative on x86 but positive on ppc64le
158 # Numpy link to relevant discussion - https://github.com/numpy/numpy/issues/9040
159 # Tensorflow link to relevant discussion - https://github.com/tensorflow/tensorflow/issues/9360
160 if platform.machine() == "ppc64le" or platform.machine() == "aarch64":
161 self._compare(-np.inf, np.int32, i4.min, False)
162 self._compare(-np.inf, np.int64, i8.min, False)
163 else:
164 self._compare(np.inf, np.int32, i4.min, False)
165 self._compare(np.inf, np.int64, i8.min, False)
166 self._compare(-np.inf, np.float32, -np.inf, False)
167 self._compare(-np.inf, np.float64, -np.inf, False)
168 self._compare(-np.inf, np.int32, i4.min, False)
169 self._compare(-np.inf, np.int64, i8.min, False)
170 self.assertAllEqual(np.isnan(self._cast(np.nan, np.float32, False)), True)
171 self.assertAllEqual(np.isnan(self._cast(np.nan, np.float64, False)), True)
172 # np.float64(np.nan).astype(np.int32) is 0 on ARM
173 if platform.machine() == "aarch64":
174 self._compare(np.nan, np.int32, 0, False)
175 self._compare(np.nan, np.int64, 0, False)
176 else:
177 self._compare(np.nan, np.int32, i4.min, False)
178 self._compare(np.nan, np.int64, i8.min, False)
179
180 self._compare(np.inf, np.float32, np.inf, True)
181 self._compare(np.inf, np.float64, np.inf, True)
182 self._compare(-np.inf, np.float32, -np.inf, True)
183 self._compare(-np.inf, np.float64, -np.inf, True)
184 self.assertAllEqual(np.isnan(self._cast(np.nan, np.float32, True)), True)
185 self.assertAllEqual(np.isnan(self._cast(np.nan, np.float64, True)), True)
186
187 def _OpError(self, x, dtype, err):
188 with self.cached_session():

Callers

nothing calls this directly

Calls 3

_compareMethod · 0.95
_castMethod · 0.95
assertAllEqualMethod · 0.45

Tested by

no test coverage detected