def test_retrieve_single_page_size(self): OfficerFactory.create_batch(40, first_name='Steve') self.rebuild_index() self.refresh_index() retrieve_single_url = reverse('api:suggestion-single') response = self.client.get(retrieve_single_url, { 'term': 'Ste', 'contentType': 'OFFICER' }) expect(response.status_code).to.equal(status.HTTP_200_OK) expect(response.data['count']).to.equal(40) expect(response.data['next']).to.ne(None) expect(len(response.data['results'])).to.eq(30)
def test_query(self): allegation_officer1, allegation_officer2 = OfficerFactory.create_batch( 2) trr_officer1, trr_officer2 = OfficerFactory.create_batch(2) pinboard_officer1, pinboard_officer2 = OfficerFactory.create_batch(2) other_officer = OfficerFactory() pinboard_allegation1, pinboard_allegation2 = AllegationFactory.create_batch( 2) allegation1, allegation2, allegation3, allegation4 = AllegationFactory.create_batch( 4) trr1 = TRRFactory(officer=trr_officer1) trr2 = TRRFactory(officer=trr_officer2) allegation_category1 = AllegationCategoryFactory( category='Operation/Personnel Violations', ) allegation_category2 = AllegationCategoryFactory( category='Illegal Search', ) allegation_category3 = AllegationCategoryFactory( category='Verbal Abuse', ) OfficerAllegationFactory(allegation=pinboard_allegation1, officer=allegation_officer1, allegation_category=allegation_category1) OfficerAllegationFactory(allegation=pinboard_allegation2, officer=allegation_officer1, allegation_category=allegation_category2) OfficerAllegationFactory(allegation=pinboard_allegation1, officer=allegation_officer2, allegation_category=allegation_category3) OfficerAllegationFactory(allegation=pinboard_allegation2, officer=allegation_officer2, allegation_category=allegation_category3) OfficerAllegationFactory(allegation=allegation3, officer=trr_officer1, allegation_category=None) OfficerAllegationFactory(allegation=allegation4, officer=trr_officer1, allegation_category=allegation_category1) OfficerAllegationFactory(allegation=pinboard_allegation1, officer=trr_officer1, allegation_category=None) OfficerAllegationFactory(allegation=pinboard_allegation2, officer=trr_officer2, allegation_category=None) OfficerAllegationFactory(allegation=pinboard_allegation2, officer=trr_officer2, allegation_category=allegation_category1) OfficerAllegationFactory(allegation=allegation1, officer=pinboard_officer1, allegation_category=None) OfficerAllegationFactory(allegation=allegation2, officer=pinboard_officer1, allegation_category=allegation_category2) OfficerAllegationFactory(allegation=allegation1, officer=other_officer, allegation_category=allegation_category2) pinboard = PinboardFactory(trrs=(trr1, trr2), allegations=(pinboard_allegation1, pinboard_allegation2), officers=(pinboard_officer1, pinboard_officer2)) expect(list(ComplaintSummaryQuery(pinboard).query())).to.eq([{ 'category': None, 'count': 4 }, { 'category': 'Operation/Personnel Violations', 'count': 3 }, { 'category': 'Illegal Search', 'count': 2 }, { 'category': 'Verbal Abuse', 'count': 2 }])