Esempio n. 1
0
 def test_possible_expression_dates_consolidation(self):
     self.work.publication_date = datetime.date(2017, 2, 23)
     consolidation = ArbitraryExpressionDate(work=self.work,
                                             date='2020-09-13',
                                             created_by_user_id=1)
     consolidation.save()
     amendment = Amendment(amended_work=self.work,
                           amending_work_id=2,
                           date='2018-12-05',
                           created_by_user_id=1)
     amendment.save()
     dates = self.work.possible_expression_dates()
     self.assertEqual(dates, [
         {
             'date': datetime.date(2020, 9, 13),
             'amendment': False,
             'consolidation': True,
             'initial': False
         },
         {
             'date': datetime.date(2018, 12, 5),
             'amendment': True,
             'consolidation': False,
             'initial': False
         },
         {
             'date': datetime.date(2017, 2, 23),
             'initial': True
         },
     ])
Esempio n. 2
0
    def test_get_work_timeline(self):
        view = WorkViewBase()
        work = Work.objects.get(pk=1)
        work.assent_date = datetime.date(2014, 3, 20)
        amendment = Amendment(amended_work_id=1,
                              amending_work_id=2,
                              date='2019-01-01',
                              created_by_user_id=1)
        amendment.save()

        consolidation = ArbitraryExpressionDate(work=work,
                                                date='2018-01-01',
                                                created_by_user_id=1)
        consolidation.save()

        timeline = WorkViewBase.get_work_timeline(view, work)
        # most recent event first
        self.assertEqual(timeline[0]['date'], datetime.date(2019, 1, 1))
        self.assertEqual(timeline[0]['amendments'][0].date,
                         datetime.date(2019, 1, 1))
        self.assertEqual(timeline[0]['initial'], False)

        # consolidation
        self.assertEqual(timeline[1]['date'], datetime.date(2018, 1, 1))
        self.assertEqual(timeline[1]['consolidations'][0].date,
                         datetime.date(2018, 1, 1))
        self.assertEqual(timeline[1]['initial'], False)

        # publication date on fixture
        self.assertEqual(timeline[2]['date'], datetime.date(2014, 4, 2))
        self.assertEqual(timeline[2]['publication_date'], True)
        self.assertEqual(timeline[2]['initial'], True)

        # assent date (oldest)
        self.assertEqual(timeline[-1]['date'], datetime.date(2014, 3, 20))
        self.assertEqual(timeline[-1]['assent_date'], True)