def test_sample_did_not_exist(self): assert not Sample.objects.filter(name='foo').exists() with override_sample('foo', active=True): assert sample_is_active('foo') with override_sample('foo', active=False): assert not sample_is_active('foo') assert not Sample.objects.filter(name='foo').exists()
def test_sample_existed_and_was_50(self): Sample.objects.create(name='foo', percent='50.0') with override_sample('foo', active=True): assert sample_is_active('foo') with override_sample('foo', active=False): assert not sample_is_active('foo') self.assertEquals(Decimal('50.0'), Sample.objects.get(name='foo').percent)
def _generate_waffle_js(request): flags = cache.get(keyfmt(get_setting('ALL_FLAGS_CACHE_KEY'))) if flags is None: flags = Flag.objects.values_list('name', flat=True) cache.add(keyfmt(get_setting('ALL_FLAGS_CACHE_KEY')), flags) flag_values = [(f, flag_is_active(request, f)) for f in flags] switches = cache.get(keyfmt(get_setting('ALL_SWITCHES_CACHE_KEY'))) if switches is None: switches = Switch.objects.values_list('name', 'active') cache.add(keyfmt(get_setting('ALL_SWITCHES_CACHE_KEY')), switches) samples = cache.get(keyfmt(get_setting('ALL_SAMPLES_CACHE_KEY'))) if samples is None: samples = Sample.objects.values_list('name', flat=True) cache.add(keyfmt(get_setting('ALL_SAMPLES_CACHE_KEY')), samples) sample_values = [(s, sample_is_active(s)) for s in samples] return loader.render_to_string('waffle/waffle.js', { 'flags': flag_values, 'switches': switches, 'samples': sample_values, 'flag_default': get_setting('FLAG_DEFAULT'), 'switch_default': get_setting('SWITCH_DEFAULT'), 'sample_default': get_setting('SAMPLE_DEFAULT'), })
def sample(parser, token): condition = lambda request, name: sample_is_active(name) return WaffleNode.handle_token(parser, token, 'sample', condition)
def test_undecorated_method_is_set_properly_for_sample(self): self.assertFalse(sample_is_active('foo'))