def test_spow_enable(self): """ Tests :func:`colour.algebra.common.spow_enable` definition. """ with spow_enable(True): self.assertTrue(is_spow_enabled()) with spow_enable(False): self.assertFalse(is_spow_enabled()) @spow_enable(True) def fn_a(): """ :func:`spow_enable` unit tests :func:`fn_a` definition. """ self.assertTrue(is_spow_enabled()) fn_a() @spow_enable(False) def fn_b(): """ :func:`spow_enable` unit tests :func:`fn_b` definition. """ self.assertFalse(is_spow_enabled()) fn_b()
def test_is_spow_enabled(self): """Test :func:`colour.algebra.common.is_spow_enabled` definition.""" with spow_enable(True): self.assertTrue(is_spow_enabled()) with spow_enable(False): self.assertFalse(is_spow_enabled())
def test_spow(self): """Test :func:`colour.algebra.common.spow` definition.""" self.assertEqual(spow(2, 2), 4.0) self.assertEqual(spow(-2, 2), -4.0) np.testing.assert_almost_equal( spow([2, -2, -2, 0], [2, 2, 0.15, 0]), np.array([4.00000000, -4.00000000, -1.10956947, 0.00000000]), decimal=7, ) with spow_enable(True): np.testing.assert_almost_equal( spow(-2, 0.15), -1.10956947, decimal=7 ) with spow_enable(False): np.testing.assert_equal(spow(-2, 0.15), np.nan)