def test_basic(self): from celerymanagementapp.segmentize import Segmentizer from celerymanagementapp.segmentize import basic_query_sequence fieldname = 'enumval' labels = ['A','B','C','D'] szr = Segmentizer( basic_query_sequence(fieldname, labels) ) res = szr(TestModel.objects.all()) segments = list(res) self.assertEquals(len(segments), 4) lbl0, qs0 = segments[0] lbl1, qs1 = segments[1] lbl2, qs2 = segments[2] lbl3, qs3 = segments[3] self.assertEquals(lbl0, 'A') self.assertEquals(qs0.count(), 3) self.assertEquals(lbl1, 'B') self.assertEquals(qs1.count(), 2) self.assertEquals(lbl2, 'C') self.assertEquals(qs2.count(), 1) self.assertEquals(lbl3, 'D') self.assertEquals(qs3.count(), 0)
def test_basic_tupleargs(self): fieldname = 'thefield' labels = [('A','a'),('B','b'),('C','c')] res = segmentize.basic_query_sequence(fieldname, labels) qseq = list(res) self.assertEquals(qseq, [ ('A',{'thefield':'a'}), ('B',{'thefield':'b'}), ('C',{'thefield':'c'}) ])
def test_basic(self): fieldname = 'thefield' labels = ['A','B','C'] res = segmentize.basic_query_sequence(fieldname, labels) qseq = list(res) self.assertEquals(qseq, [ ('A',{'thefield':'A'}), ('B',{'thefield':'B'}), ('C',{'thefield':'C'}) ])
def test_basic(self): from celerymanagementapp.segmentize import make_segments, Segmentizer from celerymanagementapp.segmentize import basic_query_sequence from celerymanagementapp.segmentize import avg_aggregator seq_fieldname = 'enumval' agg_fieldname = 'floatval' labels = ['A','B','C','D'] qs = TestModel.objects.all() segmentizer = Segmentizer( basic_query_sequence(seq_fieldname, labels) ) aggregator = avg_aggregator(agg_fieldname) segs = make_segments(qs, segmentizer, aggregator) self.assertEquals(len(segs), 4) self.assertEquals(segs[0], ('A',5.0)) self.assertEquals(segs[1], ('B',4.0)) self.assertEquals(segs[2], ('C',88.)) self.assertEquals(segs[3], ('D',None))