예제 #1
0
    def test_keyword_expression(self, parser, ctx, num):
        """Test a keyword expression is correctly extracted"""
        args = blackbirdParser.ArgumentsContext(parser, ctx)
        kwarg1 = blackbirdParser.KwargContext(parser, ctx)
        arg1 = blackbirdParser.ValContext(parser, ctx)
        name = blackbirdParser.NameContext(parser, ctx)

        name.getText = lambda: "test_kwarg"
        kwarg1.val = lambda: arg1
        kwarg1.NAME = lambda: name
        arg1.expression = lambda: num(5)
        args.getChildren = lambda: [kwarg1]
        assert _get_arguments(args) == ([], {"test_kwarg": 5})
예제 #2
0
    def test_keyword_nonnumeric(self, parser, ctx):
        """Test a keyword nonnumeric is correctly extracted"""
        args = blackbirdParser.ArgumentsContext(parser, ctx)
        kwarg1 = blackbirdParser.KwargContext(parser, ctx)
        arg1 = blackbirdParser.ValContext(parser, ctx)
        name = blackbirdParser.NameContext(parser, ctx)
        nonnumeric = blackbirdParser.NonnumericContext(parser, ctx)

        nonnumeric.STR = lambda: True
        nonnumeric.getText = lambda: "Test value"

        name.getText = lambda: "test_kwarg"
        kwarg1.val = lambda: arg1
        kwarg1.NAME = lambda: name
        arg1.nonnumeric = lambda: nonnumeric
        args.getChildren = lambda: [kwarg1]
        assert _get_arguments(args) == ([], {"test_kwarg": "Test value"})