示例#1
0
    def testUnknownFlavor(self):
        # Adding a flavor that is unknown to the current version of the
        # code

        intTag = 65535
        stringTag = "yet-to-be-defined"
        class YetToBeDefinedFlavor(DependencyClass):
            tag = intTag
            tagName = stringTag
            justOne = False
            depClass = Dependency

        flv = Flavor()
        flvName = "was"
        flvFlag = "flag1"
        flv.addDep(YetToBeDefinedFlavor,
            Dependency(flvName, [ (flvFlag, FLAG_SENSE_REQUIRED) ]))
        frozen = flv.freeze()

        x = ThawFlavor(frozen)
        # The code that implements str is very specific to what's currently
        # implemented
        self.assertEqual(str(x), '')
        # However, it's not the empty flavor
        self.assertNotEqual(x, parseFlavor(''))
        self.assertEqual(x.freeze(), '65535#was:flag1')