Exemplo n.º 1
0
    def _loadRenameFile(self, renameFileName):
#        self._renameFileName = renameFileName
        if not FG.fsa.isfile(renameFileName):
            return False
        valid = True
        try:
            rFile = FG.fsa.open(renameFileName, "rt")
            rList = rFile.readlines()
            rFile.close()
            FixtureLoader.loadFixtureRenameTable(rList)
        except: #pragma: no cover # should't happen - see test above
            valid = False
        return valid
Exemplo n.º 2
0
    def _loadRenameFile(self, renameFileName):
#        self._renameFileName = renameFileName
        if not FG.fsa.isfile(renameFileName):
            return False
        valid = True
        try:
            rFile = FG.fsa.open(renameFileName, "rt")
            rList = rFile.readlines()
            rFile.close()
            FixtureLoader.loadFixtureRenameTable(rList)
        except: #pragma: no cover # should't happen - see test above
            valid = False
        return valid
class Test_FixtureLoader(TestCase):
    def setUp(self):
        print '%s %s' % (self.id(), self.shortDescription())
        self.options = Options(["FileRunner", "+v", "+e", "foo", "bar"],
                               BatchBase.parmDict)
        self.saveFitGlobal = (FitGlobal.RunOptions, FitGlobal.Options,
                              FitGlobal.Environment)
        FitGlobal.RunOptions = self.options
        FitGlobal.Options = self.options
        FitGlobal.Environment = "Batch"
        Variations.returnVariation()
        ##        it = getattr(FixtureLoader, "__it__", None)
        ##        if it is not None:
        ##            del FixtureLoader.__it__
        self.obj = FixtureLoader()
        FixtureLoader.clearFixtureRenameTable()

    def testAddToRenameTable(self):
        obj = self.obj
        assert not hasattr(obj._fixtureRenameTable, "spam")
        obj.addRenameToRenameTable("spam", "eggs")
        assert obj._fixtureRenameTable["spam"] == "eggs"

    def testLoadOfFixtureRenameTable(self):
        loader = self.obj
        assert len(loader._fixtureRenameTable) == 0
        loader.loadFixtureRenameTable(["spam: eggs\n", "foo: bar"])
        assert len(loader._fixtureRenameTable) == 2
        assert loader._fixtureRenameTable["spam"] == "eggs"
        assert loader._fixtureRenameTable["foo"] == "bar"

    def testLoadOfFixtureRenameTableWithComment(self):
        loader = self.obj
        assert len(loader._fixtureRenameTable) == 0
        loader.loadFixtureRenameTable(
            ["spam: eggs\n", "#This is: a comment", "foo: bar"])
        assert len(loader._fixtureRenameTable) == 2
        assert loader._fixtureRenameTable["spam"] == "eggs"
        assert loader._fixtureRenameTable["foo"] == "bar"

    def test_loadFixtureRenameTable(self):
        testList = [
            "fit.fat: exercise", "foo.bar: spam", "foo: ham",
            "spam.eggs: vikingChow"
        ]
        self.obj.loadFixtureRenameTable(testList)
        assert len(self.obj._fixtureRenameTable) == 4
        dList = [
            "%s: %s" % (key, value)
            for key, value in self.obj._fixtureRenameTable.items()
        ]
        dList.sort()
        assert dList == testList

    def test_renameFixtureName(self):
        testList = [
            "fit.fat: exercise", "foo: ham", "foo.bar: spam",
            "spam.eggs: vikingChow"
        ]
        self.obj.loadFixtureRenameTable(testList)
        assert self.obj._renameFixture("foo.bar.fefifofum") == "spam.fefifofum"
        assert self.obj._renameFixture("foo.fiddle") == "ham.fiddle"

    def testExactRenameMatch(self):
        loader = self.obj
        testList = [
            "laurel.hardy: fit.ColumnFixture",
        ]
        loader.loadFixtureRenameTable(testList)
        fixture = loader.loadFixture("laurel.hardy")
        assert fixture.__name__ == "ColumnFixture"

    def test_isGracefulName(self):
        assert self.obj.isGracefulName("foo bar")
        assert self.obj.isGracefulName("spam") is False
        assert self.obj.isGracefulName("spam.eggs") is False
        assert self.obj.isGracefulName("spam. eggs") is False
        assert self.obj.isGracefulName("spam. eggs.toast") is False

    def test_unGracefulName(self):
        assert self.obj.unGracefulName("foo'bar") == "Foobar"
        assert self.obj.unGracefulName("foo bar") == "FooBar"
        assert self.obj.unGracefulName("foo48bar") == "Foo48Bar"
        assert self.obj.unGracefulName("spam. eggs") == "Spam.Eggs"
        assert self.obj.unGracefulName("spam:eggs.toast") == "SpamEggs.Toast"

    def testOneLevelNameExists(self):
        loader = self.obj
        try:
            loader.loadFixture("FileRunner")
        except FitException, e:
            isExc, doTrace, result = e.getMeaningfulMessage()
            print result
            if result == ('"FileRunner" was found, but it\'s not a fixture.'):
                return
            raise
        assert False, "Accepted a non-Fixture object as a fixture"
Exemplo n.º 4
0
 def _doFixtureRenamesSection(self, txtList):
     sectionList = self._extractSection(txtList, "[fixture renames]")
     if sectionList:
         FixtureLoader.loadFixtureRenameTable(sectionList)
Exemplo n.º 5
0
 def _doFixtureRenamesSection(self, txtList):
     sectionList = self._extractSection(txtList, "[fixture renames]")
     if sectionList:
         FixtureLoader.loadFixtureRenameTable(sectionList)
Exemplo n.º 6
0
class Test_FixtureLoader(TestCase):
    def setUp(self):
        print '%s %s' % (self.id(), self.shortDescription())
        self.options = Options(["FileRunner", "+v", "+e", "foo", "bar"],
                               BatchBase.parmDict)
        self.saveFitGlobal = (FitGlobal.RunOptions, FitGlobal.Options,
                              FitGlobal.Environment)
        FitGlobal.RunOptions = self.options
        FitGlobal.Options = self.options
        FitGlobal.Environment = "Batch"
        Variations.returnVariation()
##        it = getattr(FixtureLoader, "__it__", None)
##        if it is not None:
##            del FixtureLoader.__it__ 
        self.obj = FixtureLoader()
        FixtureLoader.clearFixtureRenameTable()

    def testAddToRenameTable(self):
        obj = self.obj
        assert not hasattr(obj._fixtureRenameTable, "spam")
        obj.addRenameToRenameTable("spam", "eggs")
        assert obj._fixtureRenameTable["spam"] == "eggs"

    def testLoadOfFixtureRenameTable(self):
        loader = self.obj
        assert len(loader._fixtureRenameTable) == 0
        loader.loadFixtureRenameTable(["spam: eggs\n",
                                       "foo: bar"
                                       ])
        assert len(loader._fixtureRenameTable) == 2
        assert loader._fixtureRenameTable["spam"] == "eggs"
        assert loader._fixtureRenameTable["foo"] == "bar"

    def testLoadOfFixtureRenameTableWithComment(self):
        loader = self.obj
        assert len(loader._fixtureRenameTable) == 0
        loader.loadFixtureRenameTable(["spam: eggs\n",
                                       "#This is: a comment",
                                       "foo: bar"
                                       ])
        assert len(loader._fixtureRenameTable) == 2
        assert loader._fixtureRenameTable["spam"] == "eggs"
        assert loader._fixtureRenameTable["foo"] == "bar"

    def test_loadFixtureRenameTable(self):
        testList = ["fit.fat: exercise", "foo.bar: spam", "foo: ham",
                     "spam.eggs: vikingChow"]
        self.obj.loadFixtureRenameTable(testList)
        assert len(self.obj._fixtureRenameTable) == 4
        dList = ["%s: %s" % (key, value) for key, value in 
                    self.obj._fixtureRenameTable.items()]
        dList.sort()
        assert dList == testList

    def test_renameFixtureName(self):
        testList = ["fit.fat: exercise", "foo: ham", "foo.bar: spam",
                     "spam.eggs: vikingChow"]
        self.obj.loadFixtureRenameTable(testList)
        assert self.obj._renameFixture("foo.bar.fefifofum") == "spam.fefifofum"
        assert self.obj._renameFixture("foo.fiddle") == "ham.fiddle"

    def testExactRenameMatch(self):
        loader = self.obj
        testList = ["laurel.hardy: fit.ColumnFixture",]
        loader.loadFixtureRenameTable(testList)
        fixture = loader.loadFixture("laurel.hardy")
        assert fixture.__name__ == "ColumnFixture"

    def test_isGracefulName(self):
        assert self.obj.isGracefulName("foo bar")
        assert self.obj.isGracefulName("spam") is False
        assert self.obj.isGracefulName("spam.eggs") is False
        assert self.obj.isGracefulName("spam. eggs") is False
        assert self.obj.isGracefulName("spam. eggs.toast") is False

    def test_unGracefulName(self):
        assert self.obj.unGracefulName("foo'bar") == "Foobar"
        assert self.obj.unGracefulName("foo bar") == "FooBar"
        assert self.obj.unGracefulName("foo48bar") == "Foo48Bar"
        assert self.obj.unGracefulName("spam. eggs") == "Spam.Eggs"
        assert self.obj.unGracefulName("spam:eggs.toast") == "SpamEggs.Toast"

    def testOneLevelNameExists(self):
        loader = self.obj
        try:
            loader.loadFixture("FileRunner")
        except FitException, e:
            isExc, doTrace, result = e.getMeaningfulMessage()
            print result
            if result == ('"FileRunner" was found, but it\'s not a fixture.'):
                return
            raise
        assert False, "Accepted a non-Fixture object as a fixture"