Beispiel #1
0
    def test_next_drill_down(self):
        cell = self.full_cube

        query = CubeQuery(cell, self.view)
        query.drilldown = ["date"]
        query.prepare()
        stmt = query.drilldown_statement
        s = str(stmt)
        self.assertRegexpMatches(s, r'date\.year')
        self.assertNotRegexpMatches(s, r'date\.month')

        cell = self.full_cube.slice(cubes.PointCut(self.date_dim, [2010]))
        query = CubeQuery(cell, self.view)
        query.drilldown = ["date"]
        query.prepare()
        stmt = query.drilldown_statement
        s = str(stmt)
        self.assertRegexpMatches(s, r'date\.year')
        self.assertRegexpMatches(s, r'date\.month')

        cell = self.full_cube.slice(cubes.PointCut(self.date_dim, [2010, 4]))
        query = CubeQuery(cell, self.view)
        query.drilldown = ["date"]
        self.assertRaisesRegexp(ValueError, "Unable to drill-down.*last level",
                                query.prepare)
Beispiel #2
0
    def test_explicit_drill_down_next_default(self):
        cell = self.full_cube

        query = CubeQuery(cell, self.view)
        query.drilldown = {"date": "year"}
        query.prepare()
        stmt = query.drilldown_statement
        s1 = str(stmt)

        query = CubeQuery(cell, self.view)
        query.drilldown = {"date": None}
        query.prepare()
        stmt = query.drilldown_statement
        s2 = str(stmt)

        self.assertEqual(s1, s2)
Beispiel #3
0
    def test_explicit_drill_down_next_default(self):
        cell = self.full_cube

        query = CubeQuery(cell, self.view)
        query.drilldown = {"date": "year"}
        query.prepare()
        stmt = query.drilldown_statement
        s1 = str(stmt)

        query = CubeQuery(cell, self.view)
        query.drilldown = {"date": None}
        query.prepare()
        stmt = query.drilldown_statement
        s2 = str(stmt)

        self.assertEqual(s1, s2)
Beispiel #4
0
    def test_explicit_drill_down(self):
        cell = self.full_cube
        query = CubeQuery(cell, self.view)
        query.drilldown = {"date": "year"}
        query.prepare()
        stmt = query.drilldown_statement
        s = str(stmt)
        self.assertRegexpMatches(s, r'date\.year')
        self.assertNotRegexpMatches(s, r'date\.month')

        cell = cell.slice(cubes.PointCut("date", [2010]))
        query = CubeQuery(cell, self.view)
        query.drilldown = {"date": "month"}
        query.prepare()
        stmt = query.drilldown_statement
        s = str(stmt)

        self.assertRegexpMatches(s, r'date\.year')
        self.assertRegexpMatches(s, r'date\.month')
Beispiel #5
0
    def test_explicit_drill_down(self):
        cell = self.full_cube
        query = CubeQuery(cell, self.view)
        query.drilldown = {"date": "year"}
        query.prepare()
        stmt = query.drilldown_statement
        s = str(stmt)
        self.assertRegexpMatches(s, r'date\.year')
        self.assertNotRegexpMatches(s, r'date\.month')

        cell = cell.slice(cubes.PointCut("date", [2010]))
        query = CubeQuery(cell, self.view)
        query.drilldown = {"date": "month"}
        query.prepare()
        stmt = query.drilldown_statement
        s = str(stmt)

        self.assertRegexpMatches(s, r'date\.year')
        self.assertRegexpMatches(s, r'date\.month')
Beispiel #6
0
    def test_next_drill_down(self):
        cell = self.full_cube

        query = CubeQuery(cell, self.view)
        query.drilldown = ["date"]
        query.prepare()
        stmt = query.drilldown_statement
        s = str(stmt)
        self.assertRegexpMatches(s, r'date\.year')
        self.assertNotRegexpMatches(s, r'date\.month')

        cell = self.full_cube.slice(cubes.PointCut(self.date_dim, [2010]))
        query = CubeQuery(cell, self.view)
        query.drilldown = ["date"]
        query.prepare()
        stmt = query.drilldown_statement
        s = str(stmt)
        self.assertRegexpMatches(s, r'date\.year')
        self.assertRegexpMatches(s, r'date\.month')

        cell = self.full_cube.slice(cubes.PointCut(self.date_dim, [2010, 4]))
        query = CubeQuery(cell, self.view)
        query.drilldown = ["date"]
        self.assertRaisesRegexp(ValueError, "Unable to drill-down.*last level", query.prepare)