From 4700f3e5cb62355fe2baaa3b732f4dbdf52a5fc9 Mon Sep 17 00:00:00 2001 From: hut Date: Thu, 17 Dec 2009 21:14:21 +0100 Subject: fixed colorschemes, added unittest for colorschemes --- test/tc_colorscheme.py | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 test/tc_colorscheme.py (limited to 'test/tc_colorscheme.py') diff --git a/test/tc_colorscheme.py b/test/tc_colorscheme.py new file mode 100644 index 00000000..b7725b92 --- /dev/null +++ b/test/tc_colorscheme.py @@ -0,0 +1,31 @@ +if __name__ == '__main__': from __init__ import init; init() + +from unittest import TestCase, main +import random +import ranger.colorschemes +from ranger.gui.colorscheme import ColorScheme, CONTEXT_KEYS + +class Test(TestCase): + def setUp(self): + import random + schemes = [] + for key, mod in vars(ranger.colorschemes).items(): + if type(mod) == type(random): + for key, var in vars(mod).items(): + if type(var) == type and issubclass(var, ColorScheme) \ + and var != ColorScheme: + schemes.append(var) + self.schemes = set(schemes) + + def test_colorschemes(self): + def test(scheme): + scheme.get() # test with no arguments + + for i in range(300): # test with a bunch of random (valid) arguments + sample = random.sample(CONTEXT_KEYS, random.randint(2, 9)) + scheme.get(*sample) + + for scheme in self.schemes: + test(scheme()) + +if __name__ == '__main__': main() -- cgit 1.4.1-2-gfad0