diff options
Diffstat (limited to 'tests')
-rw-r--r-- | tests/test_highscores.py | 4 | ||||
-rw-r--r-- | tests/test_screens.py | 2 | ||||
-rw-r--r-- | tests/test_settings.py | 65 |
3 files changed, 68 insertions, 3 deletions
diff --git a/tests/test_highscores.py b/tests/test_highscores.py index 366d60f..58d7121 100644 --- a/tests/test_highscores.py +++ b/tests/test_highscores.py @@ -3,7 +3,7 @@ from pathlib import Path import unittest import pygame -os.environ["TEST_CONFIG_FILE"] = "/tmp/sliceitoff-hiscores-test" +os.environ["TEST_CONFIG_FILE"] = "/tmp/sliceitoff-settings-test" from sliceitoff.settings import settings from sliceitoff.hiscores import hi_scores @@ -11,7 +11,7 @@ from sliceitoff.hiscores import hi_scores class TestHiScores(unittest.TestCase): def setUp(self): - self.filename = Path("/tmp/sliceitoff-hiscores-test") + self.filename = Path("/tmp/sliceitoff-settings-test") if self.filename.is_file(): self.filename.unlink() diff --git a/tests/test_screens.py b/tests/test_screens.py index 800dcd5..cd827d3 100644 --- a/tests/test_screens.py +++ b/tests/test_screens.py @@ -63,6 +63,6 @@ class TestScreens(unittest.TestCase): page = mainmenu_screen(2) self.assertEqual(TextPage, type(page)) - def test_can_run_mainmenu(self): + def test_can_run_settings(self): page = settings_screen(2) self.assertEqual(TextPage, type(page)) diff --git a/tests/test_settings.py b/tests/test_settings.py new file mode 100644 index 0000000..49f00cc --- /dev/null +++ b/tests/test_settings.py @@ -0,0 +1,65 @@ +import os +from pathlib import Path +import unittest +import pygame + +os.environ["TEST_CONFIG_FILE"] = "/tmp/sliceitoff-settings-test" +from sliceitoff.settings import settings + +class TestSettings(unittest.TestCase): + def setUp(self): + self.filename = Path("/tmp/sliceitoff-settings-test") + if self.filename.is_file(): + self.filename.unlink() + + def tearDown(self): + if self.filename.is_file(): + self.filename.unlink() + + def test_can_create(self): + self.assertNotEqual(None, settings) + + def test_config_save_can_run(self): + settings.save() + if self.filename.is_file(): + self.filename.unlink() + + def test_can_add_value(self): + settings.put_value("testing", "666") + self.assertEqual(settings.get_value("testing"), "666") + + def test_can_replace_value(self): + settings.put_value("testing2", "777") + settings.replace_value("testing2", "666") + self.assertEqual(settings.get_value("testing2"), "666") + + def test_scores_can_be_saved(self): + settings.put_value("testing3", "just_test") + settings.save() + with open(self.filename, "r", encoding="utf-8") as cfile: + for line in cfile: + if line == "testing3=just_test\n": + break + else: + self.fail("Problem saving settings.") + + def test_validate_line(self): + self.assertEqual( + ("option", "value"), + settings.validate_line("option=value\n")) + + self.assertEqual( + ("option", "value"), + settings.validate_line("option = value\n")) + + self.assertEqual( + None, + settings.validate_line("option = value = lol\n")) + + self.assertEqual( + None, + settings.validate_line("# option=value\n")) + + self.assertEqual( + None, + settings.validate_line("kamala lama\n")) |