def testEnumArgumentWithDefaultValue(self): '''Option enumArgumentWithDefaultValue(Option opt = UnixTime);''' self.assertEqual(SampleNamespace.enumArgumentWithDefaultValue(), SampleNamespace.UnixTime) self.assertEqual( SampleNamespace.enumArgumentWithDefaultValue( SampleNamespace.RandomNumber), SampleNamespace.RandomNumber)
def testEnumItemAsDefaultValueToIntArgument(self): '''Calls function with an enum item as default value to an int argument.''' self.assertEqual(SampleNamespace.enumItemAsDefaultValueToIntArgument(), SampleNamespace.ZeroIn) self.assertEqual( SampleNamespace.enumItemAsDefaultValueToIntArgument( SampleNamespace.ZeroOut), SampleNamespace.ZeroOut) self.assertEqual( SampleNamespace.enumItemAsDefaultValueToIntArgument(123), 123)
def testValueTypeReferenceAndValue(self): '''In C++ we have "function(const ValueType&, double)", in Python we add "function(ValueType)".''' point = Point(10, 20) multiplier = 4.0 control = (point.x() + point.y()) * multiplier self.assertEqual(SampleNamespace.passReferenceToValueType(point, multiplier), control) control = point.x() + point.y() self.assertEqual(SampleNamespace.passReferenceToValueType(point), control)
def testObjectTypeReferenceAndPointer(self): '''In C++ we have "function(const ObjectType&, int)", in Python we add "function(ValueType)".''' obj = ObjectType() obj.setObjectName('sbrubbles') multiplier = 3.0 control = len(obj.objectName()) * multiplier self.assertEqual(SampleNamespace.passReferenceToObjectType(obj, multiplier), control) control = len(obj.objectName()) self.assertEqual(SampleNamespace.passReferenceToObjectType(obj), control)
def testEnumItemAsDefaultValueToIntArgument(self): '''Calls function with an enum item as default value to an int argument.''' self.assertEqual(SampleNamespace.enumItemAsDefaultValueToIntArgument(), SampleNamespace.ZeroIn) self.assertEqual(SampleNamespace.enumItemAsDefaultValueToIntArgument(SampleNamespace.ZeroOut), SampleNamespace.ZeroOut) self.assertEqual(SampleNamespace.enumItemAsDefaultValueToIntArgument(123), 123)
def testEnumConversionToAndFromPython(self): '''Conversion of enum objects from Python to C++ back again.''' enumout = SampleNamespace.enumInEnumOut(SampleNamespace.TwoIn) self.assert_(enumout, SampleNamespace.TwoOut) self.assertEqual(repr(enumout), repr(SampleNamespace.TwoOut))
def testBuildingEnumFromIntegerValue(self): '''Tries to build the proper enum using an integer.''' SampleNamespace.getNumber(SampleNamespace.Option(1))
def testEnumConversionToAndFromPython(self): '''Conversion of enum objects from Python to C++ back again.''' enumout = SampleNamespace.enumInEnumOut(SampleNamespace.TwoIn) self.assertTrue(enumout, SampleNamespace.TwoOut) self.assertEqual(repr(enumout), repr(SampleNamespace.TwoOut))
def testBuildingEnumWithDefaultValue(self): '''Enum constructor with default value''' enum = SampleNamespace.Option() self.assertEqual(enum, SampleNamespace.None_)
def testEnumRepr(self): enum = SampleNamespace.Option(1) self.assertEqual(eval(repr(enum)), enum) enum = SampleNamespace.Option(999) self.assertEqual(eval(repr(enum)), enum)
def testEnumArgumentWithDefaultValue(self): '''Option enumArgumentWithDefaultValue(Option opt = UnixTime);''' self.assertEqual(SampleNamespace.enumArgumentWithDefaultValue(), SampleNamespace.UnixTime) self.assertEqual(SampleNamespace.enumArgumentWithDefaultValue(SampleNamespace.RandomNumber), SampleNamespace.RandomNumber)