class TestConfigurationXML(unittest.TestCase): def setUp(self): self.xmlSettingsFile = ConfigurationXML('../Configuration.xml') def testifGameOptionsareAddedintheXmlFile(self): gameType = self.xmlSettingsFile.getSudokuGameOptions() expectedOptionsList = ['Solve', 'Generate', 'Change Settings', 'Exit'] self.assertEqual(expectedOptionsList, gameType) def testifDifficultyLevelandBottomTopLevelsareaAddedintheXmlFile(self): listOfLevels = self.xmlSettingsFile.getSudokuDifficultyLevels() firstLevel = Level(15, 20, "Easy") secondLevel = Level(21, 35, "Medium") thirdLevel = Level(36, 55, "Hard") levelListComparison = (listOfLevels[0] == firstLevel and listOfLevels[1] == secondLevel and listOfLevels[2] == thirdLevel) self.assertTrue(levelListComparison) def testifAlgorithmOptionsareAddedintheXmlFile(self): gameType = self.xmlSettingsFile.getSudokuAlgorithmOptions() expecteddificultList = ['BackTracking', 'Peter Norvig', 'Exact'] self.assertEqual(expecteddificultList, gameType) def testifOutputFormatareAddedinthexXmlFile(self): gameType = self.xmlSettingsFile.getSudokuOutputFormat() expecteddificultList = ['Console', 'File'] self.assertEqual(expecteddificultList, gameType) # Unit tests for write XML methods def testifGameOptionSelectedbyUserwasUpdatedinXML(self): setTestWriteGameOption = "Solve" expectedResult = "Solve" self.xmlSettingsFile.writeSudokuGameOptions(setTestWriteGameOption) self.assertEqual(expectedResult, self.xmlSettingsFile.\ getUserSudokuGameOption()) def testifDifficultyLevelSelectedbyUserwasUpdatedinXML(self): expectedResult = Level(21, 35 ,"Medium") self.xmlSettingsFile.writeSudokuDifficultyLevels\ (expectedResult) self.assertEqual(expectedResult, self.xmlSettingsFile.\ getUserDifficultyLevel()) def testifAlgorithmOptionSelectedbyUserwasUpdatedinXML(self): setTestWriteAlgorithmOption = "Peter Norvig" expectedResult = "Peter Norvig" self.xmlSettingsFile.writeSudokuAlgorithmOptions\ (setTestWriteAlgorithmOption) self.assertEqual(expectedResult, self.xmlSettingsFile.\ getUserAlgorithmOption()) def testifOutputFormatSelectedbyUserwasUpdatedinXML(self): setTestWriteOutputFormat = "Console" expectedResult = "Console" self.xmlSettingsFile.writeSudokuOutputFormat\ (setTestWriteOutputFormat) self.assertEqual(expectedResult, self.xmlSettingsFile.\ getUserOutputFormat()) def testifOutputPathFileSelectedbyUserwasUpdatedinXML(self): setTestWriteOutputPathFile = "c:\\user\\SudokuFile.txt" expectedResult = "c:\\user\\SudokuFile.txt" self.xmlSettingsFile.writeSudokuFilePath\ (setTestWriteOutputPathFile) self.assertEqual(expectedResult, self.xmlSettingsFile.\ getUserFilePath()) def testifMatrixDimensionSelectedwasUpdatedinXML(self): setTestWriteMatrixDimension = 9 expectedResult = 9 self.xmlSettingsFile.writeSudokuMatrixDimension\ (setTestWriteMatrixDimension) self.assertEqual( expectedResult, self.xmlSettingsFile.\ getUserMatrixDimension()) def testifGameOptionsetbyUserwasUpdatedinXmlFile(self): expectedResult = "Solve" self.assertEqual( expectedResult, self.xmlSettingsFile.\ getUserSudokuGameOption()) def testifUserDifficultyLevelsetbyUserwasUpdatedinXmlFile(self): expectedResult = Level(21, 35 ,"Medium") self.assertEqual( expectedResult, self.xmlSettingsFile.\ getUserDifficultyLevel()) def testifAlgorithmOptionsetbyUserwasUpdatedinXmlFile(self): expectedResult = "Peter Norvig" self.assertEqual( expectedResult, self.xmlSettingsFile.\ getUserAlgorithmOption()) def testifOutputFormatsetbyUserwasUpdatedinXmlFile(self): expectedResult = "Console" self.assertEqual( expectedResult, self.xmlSettingsFile.\ getUserOutputFormat()) def testifFilePathbyUserwasUpdatedinXmlFile(self): expectedResult = "c:\\user\\SudokuFile.txt" self.assertEqual( expectedResult, self.xmlSettingsFile.\ getUserFilePath()) def testifFilePathbyUserwasUpdatedinXmlFile(self): expectedResult = 9 self.assertEqual( expectedResult, self.xmlSettingsFile.\ getUserMatrixDimension())