Esempio n. 1
0
    def test_select_rewrite(self):
        "Test rewrite selection"
        settings = merge.RefactorSettings.deep()
        s1 = ast.LiteralSet([ast.Number(1), ast.Number(2), ast.Number(3)])
        s2 = ast.LiteralSet([ast.Number(1)])
        s3 = ast.LiteralSet([ast.Number(1), ast.Number(2), ast.Number(3), ast.Number(4), ast.Number(5)])
        l = ast.Literal('foo')
        c1 = ast.ContainsOperator(s1, l)
        c2 = ast.ContainsOperator(s2, l)
        c3 = ast.ContainsOperator(s3, l)

        name = merge.node_name(c1, True)
        select = contains.select_rewrite_expression(settings, name, [c1, c2, c3])
        assert select is c1
Esempio n. 2
0
    def test_select_rewrite(self):
        "Test rewrite selection"
        settings = merge.RefactorSettings.deep()
        s1 = ast.LiteralSet([ast.Number(1), ast.Number(2), ast.Number(3)])
        s2 = ast.LiteralSet([ast.Number(1)])
        s3 = ast.LiteralSet([ast.Number(1), ast.Number(2), ast.Number(3), ast.Number(4), ast.Number(5)])
        l = ast.Literal("foo")
        c1 = ast.ContainsOperator(s1, l)
        c2 = ast.ContainsOperator(s2, l)
        c3 = ast.ContainsOperator(s3, l)

        name = merge.node_name(c1, True)
        select = contains.select_rewrite_expression(settings, name, [c1, c2, c3])
        assert select is c1
Esempio n. 3
0
    def test_select_rewrite_low_density(self):
        "Test rewrite selection"
        settings = merge.RefactorSettings.deep()
        nums = [ast.Number(x) for x in range(100)]
        s1 = ast.LiteralSet(nums)
        nums = [ast.Number(x) for x in range(100, 200)]
        s2 = ast.LiteralSet(nums)
        l = ast.Literal('foo')
        c1 = ast.ContainsOperator(s1, l)
        c2 = ast.ContainsOperator(s2, l)

        name = merge.node_name(c1, True)
        select = contains.select_rewrite_expression(settings, name, [c1, c2])

        # Density is too low
        assert select is None
Esempio n. 4
0
    def test_select_rewrite_low_density(self):
        "Test rewrite selection"
        settings = merge.RefactorSettings.deep()
        nums = [ast.Number(x) for x in range(100)]
        s1 = ast.LiteralSet(nums)
        nums = [ast.Number(x) for x in range(100, 200)]
        s2 = ast.LiteralSet(nums)
        l = ast.Literal("foo")
        c1 = ast.ContainsOperator(s1, l)
        c2 = ast.ContainsOperator(s2, l)

        name = merge.node_name(c1, True)
        select = contains.select_rewrite_expression(settings, name, [c1, c2])

        # Density is too low
        assert select is None