def test_supremecourt_records_issue_area(self): cw = supremecourt.SupremeCourt(download_if_missing=True) issue_areas = ({2}, {4, 5, 6}) for issue_area in issue_areas: self.assertTrue( all(r['issue_area'] in issue_area for r in cw.records(issue_area=issue_area, limit=100)))
def test_supremecourt_texts_min_len(self): cw = supremecourt.SupremeCourt(download_if_missing=True) for min_len in (100, 200, 1000): self.assertTrue( all( len(text) >= min_len for text in cw.texts(min_len=min_len, limit=1000)))
def test_supremecourt_download(self): supremecourt.SupremeCourt(data_dir=self.tempdir, download_if_missing=True) self.assertTrue( os.path.exists( os.path.join(self.tempdir, 'supremecourt', supremecourt.FILENAME)))
def test_supremecourt_records_decision_direction(self): cw = supremecourt.SupremeCourt(download_if_missing=True) decision_directions = ('liberal', {'conservative', 'unspecifiable'}) for decision_direction in decision_directions: self.assertTrue( all(r['decision_direction'] in decision_direction for r in cw.records(decision_direction=decision_direction, limit=100)))
def test_supremecourt_records_opinion_author(self): cw = supremecourt.SupremeCourt(download_if_missing=True) opinion_authors = ({109}, {113, 114}) for opinion_author in opinion_authors: self.assertTrue( all(r['maj_opinion_author'] in opinion_author for r in cw.records(opinion_author=opinion_author, limit=100)))
def test_supremecourt_bad_filters(self): cw = supremecourt.SupremeCourt(download_if_missing=True) bad_filters = ({ 'opinion_author': 'Burton DeWilde' }, { 'opinion_author': 1000 }, { 'decision_direction': 'blatantly political' }, { 'issue_area': 'legalizing gay marriage, woo!' }, { 'issue_area': 1000 }, { 'date_range': '2016-01-01' }) for bad_filter in bad_filters: with self.assertRaises(ValueError): list(cw._iterate(True, **bad_filter))
def test_supremecourt_records(self): cw = supremecourt.SupremeCourt(download_if_missing=True) for record in cw.records(limit=3): self.assertIsInstance(record, dict)
def test_supremecourt_texts_limit(self): cw = supremecourt.SupremeCourt(download_if_missing=True) for limit in (1, 5, 100): self.assertEqual(sum(1 for _ in cw.texts(limit=limit)), limit)
def test_supremecourt_texts(self): cw = supremecourt.SupremeCourt(download_if_missing=True) for text in cw.texts(limit=3): self.assertIsInstance(text, unicode_)