コード例 #1
0
 def setUp(self):
     # import the generated Code
     import TurnstileHandler_generated
     import TurnstileStepper_generated
     self.stepper = TurnstileStepper_generated.Stepper()
     self.input = json.load(open("../sample_input.json"))
     self.fsm = parseFSM("../sample.fsml")
コード例 #2
0
ファイル: PositiveTests.py プロジェクト: slecourse/slecourse
    def testOneFile(self):
        self.shortDescription()
        fsm = parseFSM(self.fsmlFile)
        with open(self.inputFile) as inputFile, open(
                self.correctOutputFile) as outFile:
            correctInputJson = json.load(inputFile)

            # (1) this is the correct output which is created together with the input
            correctJsonOutput = json.load(outFile)

            # (2) this is the output of the Simulator.py module of assignment 2
            simulatedJsonOutput = simulateFSM(fsm, list(correctInputJson))

            # (3) what follows is the output of the dynamically generated TurnstileStepper modules
            generateCode(fsm)  # generate Stepper and Handler
            import TurnstileHandler_generated  # import the newly generated modules (& update their reference)
            reload(TurnstileHandler_generated)
            import TurnstileStepper_generated
            reload(TurnstileStepper_generated)
            stepper = TurnstileStepper_generated.Stepper()
            generatedJsonOutput = stepper.simulateFSM_generated(
                list(correctInputJson))
            try:
                os.remove('./TurnstileStepper_generated.pyc')
                os.remove('./TurnstileHandler_generated.pyc')
            except OSError:
                pass

            # assert all 3 are equal
            self.assertEqual(correctJsonOutput, simulatedJsonOutput)
            self.assertEqual(correctJsonOutput, generatedJsonOutput)
コード例 #3
0
ファイル: PositiveTests.py プロジェクト: nico1510/sle
    def testOneFile(self):
        self.shortDescription()
        fsm = parseFSM(self.fsmlFile)
        with open(self.inputFile) as inputFile, open(self.correctOutputFile) as outFile:
            correctInputJson = json.load(inputFile)

            # (1) this is the correct output which is created together with the input
            correctJsonOutput = json.load(outFile)

            # (2) this is the output of the Simulator.py module of assignment 2
            simulatedJsonOutput = simulateFSM(fsm, list(correctInputJson))

             # (3) what follows is the output of the dynamically generated TurnstileStepper modules
            generateCode(fsm)  # generate Stepper and Handler
            import TurnstileHandler_generated  # import the newly generated modules (& update their reference)
            reload(TurnstileHandler_generated)
            import TurnstileStepper_generated
            reload(TurnstileStepper_generated)
            stepper = TurnstileStepper_generated.Stepper()
            generatedJsonOutput = stepper.simulateFSM_generated(list(correctInputJson))
            try:
                os.remove('./TurnstileStepper_generated.pyc')
                os.remove('./TurnstileHandler_generated.pyc')
            except OSError:
                pass

            # assert all 3 are equal
            self.assertEqual(correctJsonOutput, simulatedJsonOutput)
            self.assertEqual(correctJsonOutput, generatedJsonOutput)
コード例 #4
0
ファイル: NegativeTests.py プロジェクト: slecourse/slecourse
 def testOneFile(self):
     fsm = parseFSM(self.fsmlFile)
     self.assertRaises(SingleInitialException, ok, fsm)
コード例 #5
0
ファイル: NegativeTests.py プロジェクト: slecourse/slecourse
 def testOneFile(self):
     fsm = parseFSM(self.fsmlFile)
     with open(self.inputFile) as inputFile:
         self.assertRaises(IllegalSymbolException, simulateFSM, fsm, json.load(inputFile))
コード例 #6
0
ファイル: NegativeTests.py プロジェクト: slecourse/slecourse
 def testOneFile(self):
     fsm = parseFSM(self.fsmlFile)
     self.assertRaises(ResolvableException, ok, fsm)
コード例 #7
0
ファイル: NegativeTests.py プロジェクト: slecourse/slecourse
 def testOneFile(self):
     fsm = parseFSM(self.fsmlFile)
     self.assertRaises(DistinctIdsException, ok, fsm)
コード例 #8
0
ファイル: NegativeTests.py プロジェクト: slecourse/slecourse
 def testOneFile(self):
     fsm = parseFSM(self.fsmlFile)
     self.assertRaises(DeterministicException, ok, fsm)
コード例 #9
0
ファイル: FsmTest.py プロジェクト: nico1510/sle
    def setUp(self):
        self.parserErrorFsm = "./parserError.fsml"

        self.correctFsm = parseFSM("../sample.fsml")
        self.illegalSymbolInput = json.load(open("illegalSymbol_input.json"))
        self.infeasibleSymbolInput = json.load(open("infeasibleSymbol_input.json"))
コード例 #10
0
ファイル: FsmTest.py プロジェクト: nico1510/sle
 def setUp(self):
     self.determinismNotOkFsm = parseFSM("./determinismNotOk.fsml")
     self.idsNotOkFsm = parseFSM("./idsNotOk.fsml")
     self.initialNotOkFsm = parseFSM("./initialNotOk.fsml")
     self.reachabilityNotOkFsm = parseFSM("./reachabilityNotOk.fsml")
     self.resolutionNotOkFsm = parseFSM("./resolutionNotOk.fsml")
コード例 #11
0
ファイル: PositiveTests.py プロジェクト: slecourse/slecourse
 def testOneFile(self):
     fsm = parseFSM(self.fsmlFile)
     self.assertTrue(ok(fsm))
コード例 #12
0
    def setUp(self):
        self.parserErrorFsm = "./parserError.fsml"

        self.correctFsm = parseFSM("../sample.fsml")
        self.illegalSymbolInput = json.load(open("illegalSymbol_input.json"))
        self.infeasibleSymbolInput = json.load(open("infeasibleSymbol_input.json"))
コード例 #13
0
 def setUp(self):
     self.determinismNotOkFsm = parseFSM("./determinismNotOk.fsml")
     self.idsNotOkFsm = parseFSM("./idsNotOk.fsml")
     self.initialNotOkFsm = parseFSM("./initialNotOk.fsml")
     self.reachabilityNotOkFsm = parseFSM("./reachabilityNotOk.fsml")
     self.resolutionNotOkFsm = parseFSM("./resolutionNotOk.fsml")
コード例 #14
0
ファイル: PositiveTests.py プロジェクト: nico1510/sle
 def testOneFile(self):
     fsm = parseFSM(self.fsmlFile)
     self.assertTrue(ok(fsm))