def test_successful_export(self): exported_file = export_lists(self.category) buf = BytesIO(exported_file) wb = openpyxl.load_workbook(buf) ws = wb.active self.assertEqual(ws.max_column, 6) # Nb rows = total lists + 1 self.assertEqual(ws.max_row, 4) # First row self.assertEqual(ws.cell(column=2, row=2).value, 'L') self.assertEqual(ws.cell(column=3, row=2).value, 'A') self.assertEqual(ws.cell(column=4, row=2).value, 'R') self.assertEqual(ws.cell(column=5, row=2).value, 'R') self.assertEqual(ws.cell(column=6, row=2).value, None) self.assertEqual(ws.cell(column=7, row=2).value, None) # Second row self.assertEqual(ws.cell(column=2, row=3).value, None) self.assertEqual(ws.cell(column=3, row=3).value, None) self.assertEqual(ws.cell(column=4, row=3).value, 'L') self.assertEqual(ws.cell(column=5, row=3).value, None) self.assertEqual(ws.cell(column=6, row=3).value, None) self.assertEqual(ws.cell(column=7, row=3).value, None) # Third row self.assertEqual(ws.cell(column=2, row=4).value, 'R') self.assertEqual(ws.cell(column=3, row=4).value, None) self.assertEqual(ws.cell(column=4, row=4).value, 'L') self.assertEqual(ws.cell(column=5, row=4).value, 'R') self.assertEqual(ws.cell(column=6, row=4).value, None) self.assertEqual(ws.cell(column=7, row=4).value, None)
def form_valid(self, form): category = form.cleaned_data['category'] exported_file = export_lists(category) filename = 'lists_{}_{}.xlsx'.format( category.organisation.slug, category.slug ) response = HttpResponse( exported_file, content_type='application/vnd.openxmlformats-officedocument.spreadsheetml.sheet') response['Content-Disposition'] = 'attachment; filename={}'.format(filename) return response
def form_valid(self, form): category = form.cleaned_data['category'] exported_file = export_lists(category) filename = 'lists_{}_{}.xlsx'.format(category.organisation.slug, category.slug) response = HttpResponse( exported_file, content_type= 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' ) response['Content-Disposition'] = 'attachment; filename={}'.format( filename) return response