Ejemplo n.º 1
0
    def testSourceCache(self):
        """Creating the query with valid source should preserve it."""
        q = query.Query("Process.pid    != 10")  # Extra whitespace.
        self.assertEqual(q.source, "Process.pid    != 10")

        # Normalization shouldn't mess up the code (because it's 1:1).
        q = normalize.normalize(q)
        self.assertEqual(q.source, "Process.pid    != 10")
Ejemplo n.º 2
0
    def testVariadicExpressionMerging(self):
        """Make sure variadic expressions are collapsed."""
        original = query.Query(
            ("|", ("var", "x"), ("|", ("var", "y"), ("var", "z"))))

        expected = query.Query(("|", ("var", "x"), ("var", "y"), ("var", "z")))

        self.assertEqual(normalize.normalize(original), expected)
Ejemplo n.º 3
0
    def testSourceCache(self):
        """Creating the query with valid source should preserve it."""
        q = query.Query("Process.pid    != 10")  # Extra whitespace.
        self.assertEqual(q.source, "Process.pid    != 10")

        # Normalization shouldn't mess up the code (because it's 1:1).
        q = normalize.normalize(q)
        self.assertEqual(q.source, "Process.pid    != 10")
Ejemplo n.º 4
0
    def testVariadicExpressionMerging(self):
        """Make sure variadic expressions are collapsed."""
        original = query.Query(
            ("|", ("var", "x"), ("|", ("var", "y"), ("var", "z"))))

        expected = query.Query(
            ("|", ("var", "x"), ("var", "y"), ("var", "z")))

        self.assertEqual(normalize.normalize(original), expected)
Ejemplo n.º 5
0
    def testBinaryExpression(self):
        """Make sure binary expressions are normalized."""
        original = query.Query(
            (":", ("literal", "x"), ("|", ("var", "x"), ("|", ("var", "y"),
                                                         ("var", "z")))))

        expected = query.Query(
            (":", ("literal", "x"), ("|", ("var", "x"), ("var", "y"), ("var",
                                                                       "z"))))

        self.assertEqual(normalize.normalize(original), expected)
Ejemplo n.º 6
0
    def testReverse(self):
        """Make sure that reverse gets normalized."""
        original = query.Query(
            ("apply", ("var", "reverse"),
             ("repeat", ("var", "x"), ("var", "y"), ("|", 1, ("|", 2, 3)))))

        expected = query.Query(
            ("apply", ("var", "reverse"), ("repeat", ("var", "x"),
                                           ("var", "y"), ("|", 1, 2, 3))))

        self.assertEqual(normalize.normalize(original), expected)
Ejemplo n.º 7
0
    def testApply(self):
        """Make sure arguments to functions are normalized."""
        original = query.Query(
            ("apply", ("var", "f"),
             ("|", ("var", "x"), ("|", ("var", "y"), ("var", "z"))), ("var",
                                                                      "w")))

        expected = query.Query(
            ("apply", ("var", "f"), ("|", ("var", "x"), ("var", "y"),
                                     ("var", "z")), ("var", "w")))

        self.assertEqual(normalize.normalize(original), expected)
Ejemplo n.º 8
0
    def testBinaryExpression(self):
        """Make sure binary expressions are normalized."""
        original = query.Query(
            (":",
                ("literal", "x"),
                ("|", ("var", "x"), ("|", ("var", "y"), ("var", "z")))))

        expected = query.Query(
            (":",
                ("literal", "x"),
                ("|", ("var", "x"), ("var", "y"), ("var", "z"))))

        self.assertEqual(normalize.normalize(original), expected)
Ejemplo n.º 9
0
    def testApply(self):
        """Make sure arguments to functions are normalized."""
        original = query.Query(
            ("apply",
                ("var", "f"),
                ("|", ("var", "x"), ("|", ("var", "y"), ("var", "z"))),
                ("var", "w")))

        expected = query.Query(
            ("apply",
                ("var", "f"),
                ("|", ("var", "x"), ("var", "y"), ("var", "z")),
                ("var", "w")))

        self.assertEqual(normalize.normalize(original), expected)
Ejemplo n.º 10
0
    def testReverse(self):
        """Make sure that reverse gets normalized."""
        original = query.Query(
            ("apply",
                ("var", "reverse"),
                ("repeat",
                    ("var", "x"),
                    ("var", "y"),
                    ("|", 1, ("|", 2, 3)))))

        expected = query.Query(
            ("apply",
                ("var", "reverse"),
                ("repeat",
                    ("var", "x"),
                    ("var", "y"),
                    ("|", 1, 2, 3))))

        self.assertEqual(normalize.normalize(original), expected)
Ejemplo n.º 11
0
    def testVariadicExpressionElimination(self):
        """Make sure variadic expressions are eliminated."""
        original = query.Query(("&", ("var", "w")))
        expected = query.Query(("var", "w"))

        self.assertEqual(normalize.normalize(original), expected)
Ejemplo n.º 12
0
    def testVariadicExpressionElimination(self):
        """Make sure variadic expressions are eliminated."""
        original = query.Query(("&", ("var", "w")))
        expected = query.Query(("var", "w"))

        self.assertEqual(normalize.normalize(original), expected)