def test_header_is_true(self): mem = StringIO.StringIO() with self.assertNumQueries(1): qs = Permission.objects.select_related().filter(codename='add_user') export_as_xls(queryset=qs, header=True, out=mem) mem.seek(0) xls_workbook = xlrd.open_workbook(file_contents=mem.read()) xls_sheet = xls_workbook.sheet_by_index(0) self.assertEqual(xls_sheet.row_values(0)[:], [u'#', u'ID', u'name', u'content type', u'codename'])
def test_callable_method(self): fields = ['codename', 'natural_key'] qs = Permission.objects.filter(codename='add_user') mem = StringIO.StringIO() export_as_xls(queryset=qs, fields=fields, out=mem) mem.seek(0) w = xlrd.open_workbook(file_contents=mem.read()) sheet = w.sheet_by_index(0) self.assertEquals(sheet.cell_value(1, 1), u'add_user') self.assertEquals(sheet.cell_value(1, 2), u'add_userauthuser')
def test_queryset_values(self): fields = ['codename', 'content_type__app_label'] header = ['Name', 'Application'] qs = Permission.objects.filter(codename='add_user').values('codename', 'content_type__app_label') mem = six.BytesIO() export_as_xls(queryset=qs, fields=fields, header=header, out=mem) mem.seek(0) w = xlrd.open_workbook(file_contents=mem.read()) sheet = w.sheet_by_index(0) self.assertEquals(sheet.cell_value(1, 1), u'add_user') self.assertEquals(sheet.cell_value(1, 2), u'auth')
def test_export_as_xls(self): fields = ['field1', 'field2'] header = ['Field 1', 'Field 2'] Row = namedtuple('Row', fields) rows = [Row(111, 222), Row(333, 444), Row(555, 'ӼӳӬԖԊ')] mem = io.BytesIO() export_as_xls(queryset=rows, fields=fields, header=header, out=mem) mem.seek(0) xls_workbook = xlrd.open_workbook(file_contents=mem.read()) xls_sheet = xls_workbook.sheet_by_index(0) self.assertEqual( xls_sheet.row_values(0)[:], ['#', 'Field 1', 'Field 2']) self.assertEqual(xls_sheet.row_values(1)[:], [1.0, 111.0, 222.0]) self.assertEqual(xls_sheet.row_values(2)[:], [2.0, 333.0, 444.0]) self.assertEqual(xls_sheet.row_values(3)[:], [3.0, 555.0, u'ӼӳӬԖԊ'])
def test_export_as_xls(self): fields = ['field1', 'field2'] header = ['Field 1', 'Field 2'] Row = namedtuple('Row', fields) rows = [Row(111, 222), Row(333, 444), Row(555, u'ӼӳӬԖԊ')] mem = StringIO.StringIO() export_as_xls(queryset=rows, fields=fields, header=header, out=mem) mem.seek(0) xls_workbook = xlrd.open_workbook(file_contents=mem.read()) xls_sheet = xls_workbook.sheet_by_index(0) self.assertEqual(xls_sheet.row_values(0)[:], ['#', 'Field 1', 'Field 2']) self.assertEqual(xls_sheet.row_values(1)[:], [1.0, 111.0, 222.0]) self.assertEqual(xls_sheet.row_values(2)[:], [2.0, 333.0, 444.0]) self.assertEqual(xls_sheet.row_values(3)[:], [3.0, 555.0, u'ӼӳӬԖԊ'])
def test_default_params(self): with self.assertNumQueries(1): qs = Permission.objects.select_related().filter( codename='add_user') ret = export_as_xls(queryset=qs) self.assertIsInstance(ret, HttpResponse)
def test_default_params(self): with self.assertNumQueries(1): qs = Permission.objects.select_related().filter(codename='add_user') ret = export_as_xls(queryset=qs) self.assertIsInstance(ret, HttpResponse)