def test_empty(self):
        table = pivots.pivot_table_from_select(
            self.mytable.select(),
            rows='yearmonth', cols='gender', values='price'
        )

        self.assertIsNone(table)
    def test_empty(self):
        table = pivots.pivot_table_from_select(self.mytable.select(),
                                               rows='yearmonth',
                                               cols='gender',
                                               values='price')

        self.assertIsNone(table)
    def test_len(self):
        self._insert_data(1, '201001', 'male', 10)
        self._insert_data(2, '201001', 'male', 5)
        self._insert_data(3, '201001', 'female', 10)

        table = pivots.pivot_table_from_select(self.mytable.select(),
                                               rows='yearmonth',
                                               cols='gender',
                                               values=(len, 'price'))

        self.assertEquals(1, table.price.female['201001'])
        self.assertEquals(2, table.price.male['201001'])
    def test_len(self):
        self._insert_data(1, '201001', 'male', 10)
        self._insert_data(2, '201001', 'male', 5)
        self._insert_data(3, '201001', 'female', 10)

        table = pivots.pivot_table_from_select(
            self.mytable.select(),
            rows='yearmonth', cols='gender', values=(len, 'price')
        )

        self.assertEquals(1, table.price.female['201001'])
        self.assertEquals(2, table.price.male['201001'])
    def test_multiple_columns(self):
        self._insert_data(1, '201001', 'male', 10, town='BA')
        self._insert_data(2, '201001', 'male', 5, town='KE')
        self._insert_data(3, '201001', 'female', 10, town='BA')

        table = pivots.pivot_table_from_select(self.mytable.select(),
                                               rows='yearmonth',
                                               cols=['town', 'gender'],
                                               values=(len, 'price'))

        self.assertEquals(1, table.price.BA.female['201001'])
        self.assertEquals(1, table.price.BA.male['201001'])
        self.assertEquals(1, table.price.KE.male['201001'])
    def test_multiple_columns(self):
        self._insert_data(1, '201001', 'male', 10, town='BA')
        self._insert_data(2, '201001', 'male', 5, town='KE')
        self._insert_data(3, '201001', 'female', 10, town='BA')

        table = pivots.pivot_table_from_select(
            self.mytable.select(),
            rows='yearmonth', cols=['town', 'gender'], values=(len, 'price')
        )

        self.assertEquals(1, table.price.BA.female['201001'])
        self.assertEquals(1, table.price.BA.male['201001'])
        self.assertEquals(1, table.price.KE.male['201001'])
    def test_pivot_table(self):
        self._insert_data(1, '201001', 'male', 10)
        self._insert_data(2, '201001', 'male', 5)
        self._insert_data(3, '201001', 'female', 10)

        select = self.mytable.select().order_by('yearmonth', 'gender')
        table = pivots.pivot_table_from_select(
            select,
            rows='yearmonth', cols='gender', values='price'
        )

        self.assertEquals('            price      \n'
                          'gender     female  male\n'
                          'yearmonth              \n'
                          '201001         10    15', str(table))
    def test_pivot_table(self):
        self._insert_data(1, '201001', 'male', 10)
        self._insert_data(2, '201001', 'male', 5)
        self._insert_data(3, '201001', 'female', 10)

        select = self.mytable.select().order_by('yearmonth', 'gender')
        table = pivots.pivot_table_from_select(select,
                                               rows='yearmonth',
                                               cols='gender',
                                               values='price')

        self.assertEquals(
            '            price      \n'
            'gender     female  male\n'
            'yearmonth              \n'
            '201001         10    15', str(table))
    def test_multiple_functions(self):
        self._insert_data(1, '201001', 'male', 10)
        self._insert_data(2, '201001', 'male', 5)
        self._insert_data(3, '201001', 'female', 10)

        table = pivots.pivot_table_from_select(self.mytable.select(),
                                               rows='yearmonth',
                                               cols='gender',
                                               values=[('count', 'price'),
                                                       ('sum', 'price')])

        self.assertEquals(2, table.price_count.male['201001'])
        self.assertEquals(1, table.price_count.female['201001'])

        self.assertEquals(15, table.price_sum.male['201001'])
        self.assertEquals(10, table.price_sum.female['201001'])
Esempio n. 10
0
    def test_multiple_functions(self):
        self._insert_data(1, '201001', 'male', 10)
        self._insert_data(2, '201001', 'male', 5)
        self._insert_data(3, '201001', 'female', 10)

        table = pivots.pivot_table_from_select(
            self.mytable.select(),
            rows='yearmonth', cols='gender',
            values=[('count', 'price'), ('sum', 'price')]
        )

        self.assertEquals(2, table.price_count.male['201001'])
        self.assertEquals(1, table.price_count.female['201001'])

        self.assertEquals(15, table.price_sum.male['201001'])
        self.assertEquals(10, table.price_sum.female['201001'])