示例#1
0
    def test_argument(self):
        text = "KEYWORD arg1 arg2"

        arg1 = Argument(8, 12, text)
        arg1.setArgumentDefinition(StringArgument())

        arg2 = Argument(13, 17, text)

        self.assertEqual(arg1.value(), "arg1")
        self.assertEqual(arg2.value(), "arg2")

        self.assertEqual(arg2.line(), text)

        self.assertTrue(arg1.hasArgumentDefinition())
        self.assertIsInstance(arg1.argumentDefinition(), StringArgument)

        self.assertFalse(arg2.hasArgumentDefinition())
        self.assertIsNone(arg2.argumentDefinition())
示例#2
0
    def test_argument(self):
        text = "KEYWORD arg1 arg2"

        arg1 = Argument(8, 12, text)
        arg1.setArgumentDefinition(StringArgument())

        arg2 = Argument(13, 17, text)

        self.assertEqual(arg1.value(), "arg1")
        self.assertEqual(arg2.value(), "arg2")

        self.assertEqual(arg2.line(), text)

        self.assertTrue(arg1.hasArgumentDefinition())
        self.assertIsInstance(arg1.argumentDefinition(), StringArgument)

        self.assertFalse(arg2.hasArgumentDefinition())
        self.assertIsNone(arg2.argumentDefinition())
示例#3
0
    def test_configuration_line(self):

        keyword_def = KeywordDefinition("KEYWORD")
        arg1_def = StringArgument()

        line = "KEYWORD string 2"
        keyword = Keyword(0, 7, line)
        self.assertEqual(keyword.value(), "KEYWORD")

        keyword.setKeywordDefinition(keyword_def)

        arg1 = Argument(8, 14, line)
        self.assertEqual(arg1.value(), "string")
        arg1.setArgumentDefinition(arg1_def)

        arg2 = Argument(15, 16, line)
        self.assertEqual(arg2.value(), "2")


        cl = ConfigurationLine(keyword=keyword,
                               arguments=[arg1, arg2],
                               documentation_link="help",
                               group="test_group",
                               required=True)

        self.assertTrue(cl.keyword().hasKeywordDefinition())
        self.assertEqual(cl.keyword().keywordDefinition(), keyword_def)

        self.assertEqual(len(cl.arguments()), 2)

        self.assertEqual(cl.arguments()[0], arg1)
        self.assertTrue(cl.arguments()[0].hasArgumentDefinition())
        self.assertEqual(cl.arguments()[0].argumentDefinition(), arg1_def)

        self.assertEqual(cl.arguments()[1], arg2)
        self.assertFalse(cl.arguments()[1].hasArgumentDefinition())
        self.assertIsNone(cl.arguments()[1].argumentDefinition())

        self.assertFalse(cl.validationStatusForToken(keyword))
        self.assertTrue(cl.validationStatusForToken(arg1))
        self.assertFalse(cl.validationStatusForToken(arg2))
示例#4
0
    def test_configuration_line(self):

        keyword_def = KeywordDefinition("KEYWORD")
        arg1_def = StringArgument()

        line = "KEYWORD string 2"
        keyword = Keyword(0, 7, line)
        self.assertEqual(keyword.value(), "KEYWORD")

        keyword.setKeywordDefinition(keyword_def)

        arg1 = Argument(8, 14, line)
        self.assertEqual(arg1.value(), "string")
        arg1.setArgumentDefinition(arg1_def)

        arg2 = Argument(15, 16, line)
        self.assertEqual(arg2.value(), "2")


        cl = ConfigurationLine(keyword=keyword,
                               arguments=[arg1, arg2],
                               documentation_link="help",
                               group="test_group",
                               required=True)

        self.assertTrue(cl.keyword().hasKeywordDefinition())
        self.assertEqual(cl.keyword().keywordDefinition(), keyword_def)

        self.assertEqual(len(cl.arguments()), 2)

        self.assertEqual(cl.arguments()[0], arg1)
        self.assertTrue(cl.arguments()[0].hasArgumentDefinition())
        self.assertEqual(cl.arguments()[0].argumentDefinition(), arg1_def)

        self.assertEqual(cl.arguments()[1], arg2)
        self.assertFalse(cl.arguments()[1].hasArgumentDefinition())
        self.assertIsNone(cl.arguments()[1].argumentDefinition())

        self.assertFalse(cl.validationStatusForToken(keyword))
        self.assertTrue(cl.validationStatusForToken(arg1))
        self.assertFalse(cl.validationStatusForToken(arg2))