diff --git a/.travis.yml b/.travis.yml index f1b4f923..c05b2d5c 100644 --- a/.travis.yml +++ b/.travis.yml @@ -25,7 +25,7 @@ install: - pip install -r requirements.txt --timeout 30 # command to run tests, e.g. python setup.py test script: - - ./manage.py test + - ./manage.py test -v3 # for the browser tests we need a real db with full data - we rely on cached version to speed up tests - if [ ! -f devdb/dev.db ]; then wget http://oknesset-devdb.s3.amazonaws.com/dev.db.bz2; fi - if [ ! -f devdb/dev.db ]; then bunzip2 dev.db.bz2 && cp dev.db devdb/dev.db; else cp devdb/dev.db dev.db; fi diff --git a/laws/models/bill.py b/laws/models/bill.py index 203742e3..9d3f335b 100644 --- a/laws/models/bill.py +++ b/laws/models/bill.py @@ -325,7 +325,7 @@ def update_stage(self, force_update=False): self.save() return for cm in self.second_committee_meetings.all(): - if not (self.stage_date) or self.stage_date < cm.date: + if not self.stage_date or self.stage_date < cm.date: self.stage = BillStages.COMMITTEE_CORRECTIONS self.stage_date = cm.date if self.stage == BillStages.COMMITTEE_CORRECTIONS: diff --git a/simple/government_bills/tests/1075.pdf b/simple/government_bills/tests/1075.pdf new file mode 100644 index 00000000..242de46b Binary files /dev/null and b/simple/government_bills/tests/1075.pdf differ diff --git a/simple/government_bills/tests/__init__.py b/simple/government_bills/tests/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/simple/government_bills/tests/test_government_bill_proposal.py b/simple/government_bills/tests/test_government_bill_proposal.py new file mode 100644 index 00000000..521b1578 --- /dev/null +++ b/simple/government_bills/tests/test_government_bill_proposal.py @@ -0,0 +1,21 @@ +import datetime +import os + +from django.test.testcases import SimpleTestCase + +from simple.government_bills.parse_government_bill_pdf import GovProposalParser + + +class GovernmentBillProposalParserTestCase(SimpleTestCase): + def setUp(self): + super(GovernmentBillProposalParserTestCase, self).setUp() + + def tearDown(self): + super(GovernmentBillProposalParserTestCase, self).setUp() + + def test_date_parsing_returns_correct_date_from_gov_proposals(self): + filepath = os.path.dirname(__file__) + full_filepath = os.path.join(filepath, '1075.pdf') + parsed_page_date = GovProposalParser(full_filepath) + parsed_date = parsed_page_date.get_date() + self.assertEqual(parsed_date, datetime.date(2016, 8, 1)) diff --git a/simple/management/commands/syncdata.py b/simple/management/commands/syncdata.py index feddc27e..e50c56e7 100644 --- a/simple/management/commands/syncdata.py +++ b/simple/management/commands/syncdata.py @@ -163,7 +163,7 @@ def parse_laws_page(self, page): count = -1 lines = page.split('\n') for line in lines: - + link = None r = re.search("""Href=\"(.*?)\">""", line) if r is not None: link = 'http://www.knesset.gov.il/privatelaw/' + r.group(1) @@ -172,7 +172,8 @@ def parse_laws_page(self, page): name = r.group(1).replace("", "").strip() if len(name) > 1 and name.find('span') < 0: names.append(name) - links.append(link) + if link: + links.append(link) exps.append('') count += 1 if re.search("""arrResume\[\d*\]""", line) is not None: