示例#1
0
 def test_unregister(self):
     gen = AbstractKeyGenerator()
     gen.register()
     registry = Registry()
     self.assertEqual(registry.get('abstract'), gen)
     gen.unregister()
     self.assertRaises(GeneratorError, registry.get, 'abstract')
示例#2
0
 def test_reset(self):
     registry = Registry()
     expected = DEFAULT_GENERATOR_NAMES
     registry.register('abstract', AbstractKeyGenerator)
     now_expected = DEFAULT_GENERATOR_NAMES + ['abstract']
     self.assertEqual(set(registry.available()), set(now_expected))
     registry.reset()
     self.assertEqual(set(registry.available()), set(expected))
示例#3
0
 def test_register(self):
     gen = AbstractKeyGenerator()
     gen.register()
     registry = Registry()
     self.assertEqual(registry.get('abstract'), gen)
示例#4
0
 def tearDown(self):
     registry = Registry()
     registry.unregister('abstract')
示例#5
0
 def test_unregister(self):
     registry = Registry()
     registry.register('abstract', AbstractKeyGenerator)
     registry.unregister('abstract')
     self.assertRaises(GeneratorError, registry.get, 'abstract')
     self.assertFalse(registry.get('abstract', False))
示例#6
0
 def test_register(self):
     registry = Registry()
     registry.register('abstract', AbstractKeyGenerator)
     self.assertEqual(registry.get('abstract'), AbstractKeyGenerator)
示例#7
0
 def test_get(self):
     registry = Registry()
     sms = registry.get('sms')
     self.assertEqual(sms, SMSKeyGenerator)
示例#8
0
 def test_available(self):
     registry = Registry()
     available = registry.available()
     expected = DEFAULT_GENERATOR_NAMES
     self.assertEqual(set(available), set(expected))
示例#9
0
 def setUp(self):
     registry = Registry()
     registry.reset()
示例#10
0
        return reverse_lazy('meetup-activate',
                            kwargs={'group': self.keygroup.name})

    def generate_keys(self):
        Key = get_model('verification', 'Key')
        Generator = self.keygroup.get_generator()
        used_keys = set(
            Key.objects.filter(group__generator=Generator.name).values_list(
                'key', flat=True))
        generator = Generator()
        all_keys = set(generator.generate_all_keys())
        keys = sample(all_keys - used_keys, self.estimated_number_of_attendees)
        expires = datetime.combine(self.valid_until, datetime.max.time())
        for keystring in keys:
            key = Key.objects.create(
                key=keystring,
                group=self.keygroup,
                expires=expires.replace(tzinfo=pytz.utc),
            )

    def set_actual_number_of_attendees(self):
        self.actual_number_of_attendees = self.badge.receivers.count()
        self.save()


registry = Registry()
registry.register('cals', CALSGenerator)
registry.register('hexcolor', HexColorGenerator)
registry.register('isodate', IsoDateGenerator)
registry.register('zeropaddedpin', ZeroPaddedNumberGenerator)