class TestCaseFileControllerTest(unittest.TestCase):
    SOURCE_HTML = os.path.abspath(
        os.path.join('tmp', '.path.with.dots', 'test.cases.html'))
    SOURCE_TXT = SOURCE_HTML.replace('.html', '.txt')

    def setUp(self):
        self.ctrl = TestCaseFileController(
            TestCaseFile(source=self.SOURCE_HTML))

    def test_creation(self):
        for st in self.ctrl.settings:
            assert_true(st is not None)
        assert_equal(len(self.ctrl.settings), 9)
        assert_false(self.ctrl.dirty)

    def test_has_format(self):
        assert_true(self.ctrl.has_format())

    @unittest.skip("ERRORS with RF 3.1")
    def test_get_format(self):
        assert_equal(self.ctrl.get_format(), 'html')

    @unittest.skip("ERRORS with RF 3.1")
    def test_source(self):
        assert_equal(self.ctrl.filename, self.SOURCE_HTML)

    def test_longname(self):
        assert_equal(self.ctrl.longname, 'Test.Cases')
        self.ctrl.parent = lambda: 0
        self.ctrl.parent.longname = 'Parent'
        assert_equal(self.ctrl.longname, 'Parent.Test.Cases')

    @unittest.skip("ERRORS with RF 3.1")
    def test_set_format(self):
        self.ctrl.set_format('txt')
        assert_equal(self.ctrl.filename, self.SOURCE_TXT)

    def test_add_test_or_kw(self):
        assert_equal(len(self.ctrl.tests), 0)
        new_test = TestCaseController(self.ctrl,
                                      TestCase(TestCaseFile(), 'New test'))
        self.ctrl.add_test_or_keyword(new_test)
        assert_equal(len(self.ctrl.tests), 1)
        assert_true(
            self.ctrl.tests[0]._test.parent.parent is self.ctrl.datafile)
        assert_true(self.ctrl.dirty)

    def test_new_test(self):
        test_ctrl = self.ctrl.create_test('Foo')
        assert_equal(test_ctrl.name, 'Foo')

    def test_create_keyword(self):
        kw_ctrl = self.ctrl.create_keyword('An UK')
        assert_equal(kw_ctrl.name, 'An UK')

    def test_create_keyword_with_args(self):
        kw_ctrl = self.ctrl.create_keyword('UK', '${a1} | ${a2}')
        assert_equal(kw_ctrl.name, 'UK')
        assert_equal(kw_ctrl.data.args.value, ['${a1}', '${a2}'])
예제 #2
0
class TestCaseFileControllerTest(unittest.TestCase):
    SOURCE_HTML = os.path.abspath(os.path.join('tmp', '.path.with.dots', 'test.cases.html'))
    SOURCE_TXT = SOURCE_HTML.replace('.html', '.txt')

    def setUp(self):
        self.ctrl = TestCaseFileController(TestCaseFile(source=self.SOURCE_HTML))

    def test_creation(self):
        for st in self.ctrl.settings:
            assert_true(st is not None)
        assert_equals(len(self.ctrl.settings), 9)
        assert_false(self.ctrl.dirty)

    def test_has_format(self):
        assert_true(self.ctrl.has_format())

    def test_get_format(self):
        assert_equals(self.ctrl.get_format(), 'html')

    def test_source(self):
        assert_equals(self.ctrl.filename, self.SOURCE_HTML)

    def test_longname(self):
        assert_equals(self.ctrl.longname, 'Test.Cases')
        self.ctrl.parent = lambda:0
        self.ctrl.parent.longname = 'Parent'
        assert_equals(self.ctrl.longname, 'Parent.Test.Cases')

    def test_set_format(self):
        self.ctrl.set_format('txt')
        assert_equals(self.ctrl.filename, self.SOURCE_TXT)

    def test_add_test_or_kw(self):
        assert_equals(len(self.ctrl.tests), 0)
        new_test = TestCaseController(self.ctrl, TestCase(TestCaseFile(), 'New test'))
        self.ctrl.add_test_or_keyword(new_test)
        assert_equals(len(self.ctrl.tests), 1)
        assert_true(self.ctrl.tests[0]._test.parent.parent is self.ctrl.datafile)
        assert_true(self.ctrl.dirty)

    def test_new_test(self):
        test_ctrl = self.ctrl.create_test('Foo')
        assert_equals(test_ctrl.name, 'Foo')

    def test_create_keyword(self):
        kw_ctrl = self.ctrl.create_keyword('An UK')
        assert_equals(kw_ctrl.name, 'An UK')

    def test_create_keyword_with_args(self):
        kw_ctrl = self.ctrl.create_keyword('UK', '${a1} | ${a2}')
        assert_equals(kw_ctrl.name, 'UK')
        assert_equals(kw_ctrl.data.args.value, ['${a1}', '${a2}'])
예제 #3
0
class TestCaseFileControllerTest(unittest.TestCase):
    SOURCE_HTML = os.path.abspath(os.path.join("tmp", ".path.with.dots", "test.cases.html"))
    SOURCE_TXT = SOURCE_HTML.replace(".html", ".txt")

    def setUp(self):
        self.ctrl = TestCaseFileController(TestCaseFile(source=self.SOURCE_HTML))

    def test_creation(self):
        for st in self.ctrl.settings:
            assert_true(st is not None)
        assert_equals(len(self.ctrl.settings), 9)
        assert_false(self.ctrl.dirty)

    def test_has_format(self):
        assert_true(self.ctrl.has_format())

    def test_get_format(self):
        assert_equals(self.ctrl.get_format(), "html")

    def test_source(self):
        assert_equals(self.ctrl.filename, self.SOURCE_HTML)

    def test_longname(self):
        assert_equals(self.ctrl.longname, "Test.Cases")
        self.ctrl.parent = lambda: 0
        self.ctrl.parent.longname = "Parent"
        assert_equals(self.ctrl.longname, "Parent.Test.Cases")

    def test_set_format(self):
        self.ctrl.set_format("txt")
        assert_equals(self.ctrl.filename, self.SOURCE_TXT)

    def test_add_test_or_kw(self):
        assert_equals(len(self.ctrl.tests), 0)
        new_test = TestCaseController(self.ctrl, TestCase(TestCaseFile(), "New test"))
        self.ctrl.add_test_or_keyword(new_test)
        assert_equals(len(self.ctrl.tests), 1)
        assert_true(self.ctrl.tests[0]._test.parent.parent is self.ctrl.datafile)
        assert_true(self.ctrl.dirty)

    def test_new_test(self):
        test_ctrl = self.ctrl.create_test("Foo")
        assert_equals(test_ctrl.name, "Foo")

    def test_create_keyword(self):
        kw_ctrl = self.ctrl.create_keyword("An UK")
        assert_equals(kw_ctrl.name, "An UK")

    def test_create_keyword_with_args(self):
        kw_ctrl = self.ctrl.create_keyword("UK", "${a1} | ${a2}")
        assert_equals(kw_ctrl.name, "UK")
        assert_equals(kw_ctrl.data.args.value, ["${a1}", "${a2}"])
예제 #4
0
class TestCaseFileControllerTest(unittest.TestCase):
    SOURCE_HTML = os.path.abspath(os.path.join('tmp', '.path.with.dots', 'test.cases.html'))
    SOURCE_TXT = SOURCE_HTML.replace('.html', '.txt')

    def setUp(self):
        self.ctrl = TestCaseFileController(TestCaseFile(source=self.SOURCE_HTML))

    def test_creation(self):
        for st in self.ctrl.settings:
            assert_true(st is not None)
        assert_equal(len(self.ctrl.settings), 9)
        assert_false(self.ctrl.dirty)

    def test_has_format(self):
        assert_true(self.ctrl.has_format())

    def test_get_format(self):
        assert_equal(self.ctrl.get_format(), 'html')

    def test_source(self):
        assert_equal(self.ctrl.filename, self.SOURCE_HTML)

    def test_longname(self):
        assert_equal(self.ctrl.longname, 'Test.Cases')
        self.ctrl.parent = lambda:0
        self.ctrl.parent.longname = 'Parent'
        assert_equal(self.ctrl.longname, 'Parent.Test.Cases')

    def test_set_format(self):
        self.ctrl.set_format('txt')
        assert_equal(self.ctrl.filename, self.SOURCE_TXT)

    def test_add_test_or_kw(self):
        assert_equal(len(self.ctrl.tests), 0)
        new_test = TestCaseController(self.ctrl, TestCase(TestCaseFile(), 'New test'))
        self.ctrl.add_test_or_keyword(new_test)
        assert_equal(len(self.ctrl.tests), 1)
        assert_true(self.ctrl.tests[0]._test.parent.parent is self.ctrl.datafile)
        assert_true(self.ctrl.dirty)

    def test_new_test(self):
        test_ctrl = self.ctrl.create_test('Foo')
        assert_equal(test_ctrl.name, 'Foo')

    def test_create_keyword(self):
        kw_ctrl = self.ctrl.create_keyword('An UK')
        assert_equal(kw_ctrl.name, 'An UK')

    def test_create_keyword_with_args(self):
        kw_ctrl = self.ctrl.create_keyword('UK', '${a1} | ${a2}')
        assert_equal(kw_ctrl.name, 'UK')
        assert_equal(kw_ctrl.data.args.value, ['${a1}', '${a2}'])

    def test_sort_and_restore_tests(self):
        # Add tests
        for test in ['Blabla', 'Atest', '2222222', '111111']:
            new_test = TestCaseController(self.ctrl, TestCase(TestCaseFile(), test))
            self.ctrl.add_test_or_keyword(new_test)

        # Capture test list before sorting
        original_tests = self.get_test_names()
        list_for_undo_comparison = original_tests[:]

        # Sort the list
        self.ctrl.execute(SortTests())
        sorted_tests = self.get_test_names()
        original_tests.sort()
        assert_equal(original_tests, sorted_tests)

        # Undo sorting
        self.ctrl.execute(Undo())
        restored_list = self.get_test_names()
        assert_equal(restored_list, list_for_undo_comparison)

        # Redo sorting
        self.ctrl.execute(Redo())
        keywords_after_redo = self.get_test_names()
        assert_equal(keywords_after_redo, sorted_tests)

    def get_test_names(self):
        return [test.name for test in self.ctrl.tests]