tests: test eq and ne operators of fields and values against arbitrary objects and...
[babeltrace.git] / tests / bindings / python / bt2 / test_value.py
index 5e601e51db1ee5d40643f594df9a9a699c72dc67..82383762dbfda1a25726a0a43db93ef2a7d31216 100644 (file)
@@ -212,19 +212,23 @@ class _TestNumericValue(_TestCopySimple):
     # `vint` and `vfloat` mean a signed integer value object and a real
     # value object.
 
-    def _test_binop_invalid_unknown(self, op):
-        if op in _COMP_BINOPS:
-            self.skipTest('not testing')
-
-        with self.assertRaises(TypeError):
-            op(self._def, object())
-
-    def _test_binop_invalid_none(self, op):
-        if op in _COMP_BINOPS:
-            self.skipTest('not testing')
-
-        with self.assertRaises(TypeError):
-            op(self._def, None)
+    def _test_binop_unknown(self, op):
+        if op is operator.eq:
+            self.assertIs(op(self._def, object()), False)
+        elif op is operator.ne:
+            self.assertIs(op(self._def, object()), True)
+        else:
+            with self.assertRaises(TypeError):
+                op(self._def, object())
+
+    def _test_binop_none(self, op):
+        if op is operator.eq:
+            self.assertIs(op(self._def, None), False)
+        elif op is operator.ne:
+            self.assertIs(op(self._def, None), True)
+        else:
+            with self.assertRaises(TypeError):
+                op(self._def, None)
 
     def _test_binop_rhs_false(self, test_cb, op):
         test_cb(op, False)
@@ -482,10 +486,14 @@ class _TestNumericValue(_TestCopySimple):
         self.assertEqual(str(self._def), str(self._def_value))
 
     def test_eq_none(self):
-        self.assertFalse(self._def == None)
+        # Disable the "comparison to None" warning, as this is precisely what
+        # we want to test here.
+        self.assertFalse(self._def == None)  # noqa: E711
 
     def test_ne_none(self):
-        self.assertTrue(self._def != None)
+        # Disable the "comparison to None" warning, as this is precisely what
+        # we want to test here.
+        self.assertTrue(self._def != None)  # noqa: E711
 
 
 # This is a list of binary operators used for
@@ -573,13 +581,13 @@ def _inject_numeric_testing_methods(cls):
     for name, binop in _BINOPS:
         setattr(
             cls,
-            test_binop_name('invalid_unknown'),
-            partialmethod(_TestNumericValue._test_binop_invalid_unknown, op=binop),
+            test_binop_name('unknown'),
+            partialmethod(_TestNumericValue._test_binop_unknown, op=binop),
         )
         setattr(
             cls,
-            test_binop_name('invalid_none'),
-            partialmethod(_TestNumericValue._test_binop_invalid_none, op=binop),
+            test_binop_name('none'),
+            partialmethod(_TestNumericValue._test_binop_none, op=binop),
         )
         setattr(
             cls,
@@ -1174,10 +1182,14 @@ class BoolValueTestCase(_TestNumericValue, unittest.TestCase):
         self.assertEqual(str(self._def), str(self._def_value))
 
     def test_eq_none(self):
-        self.assertFalse(self._def == None)
+        # Disable the "comparison to None" warning, as this is precisely what
+        # we want to test here.
+        self.assertFalse(self._def == None)  # noqa: E711
 
     def test_ne_none(self):
-        self.assertTrue(self._def != None)
+        # Disable the "comparison to None" warning, as this is precisely what
+        # we want to test here.
+        self.assertTrue(self._def != None)  # noqa: E711
 
     def test_vfalse_eq_false(self):
         self.assertEqual(self._f, False)
@@ -1363,10 +1375,6 @@ class RealValueTestCase(_TestNumericValue, unittest.TestCase):
     def test_create_neg(self):
         self.assertEqual(self._fn, self._nv)
 
-    def test_create_from_vint(self):
-        f = bt2.RealValue(self._fp)
-        self.assertEqual(f, self._pv)
-
     def test_create_from_false(self):
         f = bt2.RealValue(False)
         self.assertFalse(f)
@@ -1691,10 +1699,6 @@ class ArrayValueTestCase(_TestCopySimple, unittest.TestCase):
         self._def[2] = None
         self.assertIsNone(self._def[2])
 
-    def test_setitem_none(self):
-        self._def[2] = None
-        self.assertIsNone(self._def[2])
-
     def test_setitem_index_wrong_type(self):
         with self._assert_type_error():
             self._def['yes'] = 23
This page took 0.025683 seconds and 4 git commands to generate.