Пример #1
0
 def testParseLevel01(self):
     m = Cml.Level()
     m.parse("data/levels/01-Water.cml")
     expected = ['H+(g)', 'O(g)', 'O(g)', 'H+(g)', 'P(g)', 'F(g)', 'Al(s)']
     self.assertEqual(m.molecules, expected)
     self.assertEqual(m.victory_condition, ["H2O"])
     self.assertEqual(m.objective, "Create a water molecule")
     self.assertEqual(m.hint, "H + H + O => H2O")
Пример #2
0
 def testParseLevel(self):
     m = Cml.Level()
     m.parse("tests/testlevel.cml")
     expected = ['H+(g)', 'O(g)', 'O(g)', 'H+(g)', 'P(g)', 'F(g)', 'Al(s)']
     self.assertEqual(m.molecules, expected)
     self.assertEqual(m.victory_condition, ["H2O"])
     self.assertEqual(m.objective, "Create a water molecule")
     self.assertEqual(m.hint, "H + H + O => H2O")
     self.assertEqual(m.effects[0].title, "Fire")
     self.assertEqual(m.effects[0].value, 800)
     self.assertEqual(m.effects[0].x2, 12)
     self.assertEqual(m.effects[0].y2, 10)
Пример #3
0
 def testParseLevelWithMiningEffect(self):
     m = Cml.Level()
     m.parse("data/levels/12-Iron-1.cml")
     self.assertEqual(m.effects[0].title, "Mining")
     self.assertEqual(m.effects[0].molecules, ['Fe2O3(s)', 'Fe3O4(s)'])
Пример #4
0
 def get_current_level(self):
     path = self.levels[self.current_level]
     cml = Cml.Level()
     cml.parse(path)
     return Level(cml, self.window)