예제 #1
0
파일: test_views.py 프로젝트: CTPUG/wafer
 def test_ticket_barcode_already_exists(self):
     ticket_type = TicketType.objects.create(name="Test Type")
     initial_ticket = Ticket.objects.create(
         barcode=12345, email=self.user_email, type=ticket_type, user=None)
     import_ticket(12345, "Test Type", self.user_email)
     [ticket] = Ticket.objects.all()
     self.assertEqual(ticket, initial_ticket)
예제 #2
0
파일: test_views.py 프로젝트: edrz/wafer
 def test_simple_import_without_user(self):
     import_ticket(12345, "Individual", self.user_email)
     ticket_type = TicketType.objects.get(name="Individual")
     ticket = Ticket.objects.get(barcode=12345)
     self.assertEqual(ticket.barcode, 12345)
     self.assertEqual(ticket.email, self.user_email)
     self.assertEqual(ticket.type, ticket_type)
     self.assertEqual(ticket.user, None)
예제 #3
0
파일: test_views.py 프로젝트: CTPUG/wafer
 def test_simple_import_without_user(self):
     import_ticket(12345, "Individual", self.user_email)
     ticket_type = TicketType.objects.get(name="Individual")
     ticket = Ticket.objects.get(barcode=12345)
     self.assertEqual(ticket.barcode, 12345)
     self.assertEqual(ticket.email, self.user_email)
     self.assertEqual(ticket.type, ticket_type)
     self.assertEqual(ticket.user, None)
예제 #4
0
파일: test_views.py 프로젝트: edrz/wafer
 def test_ticket_barcode_already_exists(self):
     ticket_type = TicketType.objects.create(name="Test Type")
     initial_ticket = Ticket.objects.create(barcode=12345,
                                            email=self.user_email,
                                            type=ticket_type,
                                            user=None)
     import_ticket(12345, "Test Type", self.user_email)
     [ticket] = Ticket.objects.all()
     self.assertEqual(ticket, initial_ticket)
예제 #5
0
 def test_simple_import_with_user(self):
     user = create_user("User Foo", email=self.user_email)
     import_ticket(12345, "Individual", self.user_email)
     ticket_type = TicketType.objects.get(name="Individual")
     ticket = Ticket.objects.get(barcode=12345)
     self.assertEqual(ticket.barcode, 12345)
     self.assertEqual(ticket.email, self.user_email)
     self.assertEqual(ticket.type, ticket_type)
     self.assertEqual(ticket.user, user)
예제 #6
0
파일: test_views.py 프로젝트: edrz/wafer
 def test_long_ticket_type(self):
     long_type = "Foo" * TicketType.MAX_NAME_LENGTH
     truncated_type = long_type[:TicketType.MAX_NAME_LENGTH]
     import_ticket(12345, long_type, self.user_email)
     ticket_type = TicketType.objects.get(name=truncated_type)
     ticket = Ticket.objects.get(barcode=12345)
     self.assertEqual(ticket.barcode, 12345)
     self.assertEqual(ticket.email, self.user_email)
     self.assertEqual(ticket.type, ticket_type)
     self.assertEqual(ticket.user, None)
예제 #7
0
파일: test_views.py 프로젝트: CTPUG/wafer
 def test_long_ticket_type(self):
     long_type = "Foo" * TicketType.MAX_NAME_LENGTH
     truncated_type = long_type[:TicketType.MAX_NAME_LENGTH]
     import_ticket(12345, long_type, self.user_email)
     ticket_type = TicketType.objects.get(name=truncated_type)
     ticket = Ticket.objects.get(barcode=12345)
     self.assertEqual(ticket.barcode, 12345)
     self.assertEqual(ticket.email, self.user_email)
     self.assertEqual(ticket.type, ticket_type)
     self.assertEqual(ticket.user, None)
예제 #8
0
    def handle(self, *args, **options):
        if len(args) != 1:
            raise CommandError('1 CSV File required')

        logging.basicConfig(level=logging.INFO)

        columns = ('Ticket Number', 'Ticket Barcode', 'Purchase Date',
                   'Ticket Type', 'Ticket Holder', 'Email', 'Cellphone',
                   'Checked in', 'Checked in date', 'Checked in by',
                   'Complimentary')
        keys = [column.lower().replace(' ', '_') for column in columns]

        with open(args[0], 'r') as f:
            reader = csv.reader(f)

            header = tuple(next(reader))
            if header != columns:
                raise CommandError('CSV format has changed. Update wafer')

            for row in reader:
                ticket = dict(zip(keys, row))
                import_ticket(ticket['ticket_barcode'], ticket['ticket_type'],
                              ticket['email'])
예제 #9
0
    def handle(self, *args, **options):
        if len(args) != 1:
            raise CommandError('1 CSV File required')

        logging.basicConfig(level=logging.INFO)

        columns = ('Ticket Number', 'Ticket Barcode', 'Purchase Date',
                   'Ticket Type', 'Ticket Holder', 'Email', 'Cellphone',
                   'Checked in', 'Checked in date', 'Checked in by',
                   'Complimentary')
        keys = [column.lower().replace(' ', '_') for column in columns]

        with open(args[0], 'r') as f:
            reader = csv.reader(f)

            header = tuple(next(reader))
            if header != columns:
                raise CommandError('CSV format has changed. Update wafer')

            for row in reader:
                ticket = dict(zip(keys, row))
                import_ticket(ticket['ticket_barcode'],
                              ticket['ticket_type'],
                              ticket['email'])