def test_error_condition(self): with self.assertRaises(TypeError): std_variant.index_int_str_list(("abc", "def")) with self.assertRaises(TypeError): std_variant.index_int_str_list(1.1) with self.assertRaises(TypeError): std_variant.get_direct(-1) with self.assertRaises(TypeError): std_variant.get_optional(-1) with self.assertRaises(TypeError): std_variant.get_unique_ptr(-1)
def test_custom_conversions(self): # Conversion values are +1 to ensure that custom conversions are used rather # than generic std::optional or std::unique_ptr conversions. self.assertEqual(std_variant.get_direct(1), 2) self.assertEqual(std_variant.get_optional(2), 3) self.assertEqual(std_variant.get_unique_ptr(3), 4)