def testSaveCountShouldPassThroughFieldPrefix(self, mock_save): from stockandflow.models import Facet f = Facet("test_slug", "test name", "test_field", [1,2]) f.to_count = MagicMock() s = Stock(*self.stock_args) s.facets = [(f, "test_prefix")] s.save_count() self.assertEqual(f.to_count.call_args, (("test_prefix",), {}))
def testunitCallIteratorOnAValuesQuerySet(self): from stockandflow.models import Facet from django.db.models.query import ValuesQuerySet vqs = ValuesQuerySet() vqs.iterator = Mock() f = Facet("test_slug", "test_name", "test_field", vqs) f.values() vqs.iterator.assert_called()
def testCreateAGeneratorOfQObjectsForAllValuesWithAFieldPrefix(self): from stockandflow.models import Facet f = Facet("test_slug", "test name", "test_field", [1,2]) q_gen = f.to_count("yada") rv = q_gen.next() self.assertEqual(rv[0], 1) self.assertEqual(str(rv[1]), "(AND: ('yada__test_field', 1))") rv = q_gen.next() self.assertEqual(rv[0], 2) self.assertEqual(str(rv[1]), "(AND: ('yada__test_field', 2))")
from django.contrib.auth.models import User from stockandflow.models import Facet from profiles.models import Ramp, Source, PayState coach = Facet(slug="coach", name="Coach", field_lookup="coach__username", values=User.objects.filter(groups__name="coach").values_list( "username", flat=True)) ramp = Facet(slug="ramp", name="Ramp", field_lookup="ramp__name", values=Ramp.objects.all().values_list("name", flat=True)) source = Facet(slug="source", name="Source", field_lookup="source__name", values=Source.objects.all().values_list("name", flat=True)) pay_state = Facet(slug="pay_state", name="Pay state", field_lookup="pay_state__name", values=PayState.objects.all().values_list("name", flat=True))
def testCreateAQObjectGivenAFieldPrefix(self): from stockandflow.models import Facet f = Facet("test_slug", "test name", "test_field", [1,2]) q = f.get_Q(1, field_prefix="yada") self.assertEqual(str(q), "(AND: ('yada__test_field', 1))")
def testCreateAQObjectBasedOnAValue(self): from stockandflow.models import Facet f = Facet("test_slug", "test name", "test_field", [1,2]) q = f.get_Q(1) self.assertEqual(str(q), "(AND: ('test_field', 1))")