Exemple #1
0
    def test_prev_event_given_valid_date_returns_expected_news_event(self):
        # Arrange
        news_filter = EconomicNewsEventFilter(currencies=["USD"], impacts=['HIGH'])

        # Act
        event = news_filter.prev_event(datetime(2017, 8, 10, 15, 0, tzinfo=pytz.utc))
        self.assertEqual(Timestamp("2017-08-04 12:30:00+0000", tz="UTC"), event.timestamp)
Exemple #2
0
    def test_prev_event_given_time_now_after_data_raises_value_error(self):
        # Arrange
        news_filter = EconomicNewsEventFilter(
            currencies=["USD"],
            impacts=["HIGH"],
            news_data=self.news_data,
        )

        # Act, Assert
        with pytest.raises(ValueError):
            news_filter.prev_event(datetime(2050, 1, 1, 1, 1, tzinfo=pytz.utc))
Exemple #3
0
    def test_prev_event_given_time_now_before_data_raises_value_error(self):
        # Arrange
        news_filter = EconomicNewsEventFilter(
            currencies=["USD"],
            impacts=["HIGH"],
            news_data=self.news_data,
        )

        # Act, Assert
        with pytest.raises(ValueError):
            news_filter.prev_event(UNIX_EPOCH)
    def test_prev_event_given_valid_date_returns_expected_news_event(self):
        # Arrange
        news_filter = EconomicNewsEventFilter(
            currencies=["USD"],
            impacts=["HIGH"],
            news_data=self.news_data,
        )

        # Act
        event = news_filter.prev_event(datetime(2017, 8, 10, 15, 0, tzinfo=pytz.utc))
        assert event.ts_event == 1501849800000000000
Exemple #5
0
    def test_next_event_given_valid_date_returns_expected_news_event(self):
        # Arrange
        news_filter = EconomicNewsEventFilter(
            currencies=["USD"],
            impacts=["HIGH"],
            news_data=self.news_data,
        )

        # Act
        event = news_filter.prev_event(
            datetime(2015, 5, 10, 12, 0, tzinfo=pytz.utc))
        self.assertEqual(1431088200000000000, event.ts_event_ns)
    def test_next_event_given_valid_date_returns_expected_news_event(self):
        # Arrange
        news_filter = EconomicNewsEventFilter(
            currencies=["USD"],
            impacts=["HIGH"],
            news_data=self.news_data,
        )

        # Act
        event = news_filter.prev_event(datetime(2015, 5, 10, 12, 0, tzinfo=pytz.utc))
        self.assertEqual(
            pd.Timestamp("2015-05-08 12:30:00+0000", tz="UTC"), event.timestamp
        )
Exemple #7
0
    def test_initialize_filter_with_no_currencies_or_impacts_returns_none(self):
        # Arrange
        currencies = []
        impacts = []
        news_filter = EconomicNewsEventFilter(currencies=currencies, impacts=impacts)

        # Act
        event_next = news_filter.next_event(datetime(2012, 3, 15, 12, 0, tzinfo=pytz.utc))
        event_prev = news_filter.next_event(datetime(2012, 3, 15, 12, 0, tzinfo=pytz.utc))

        # Assert
        self.assertIsNone(event_next)
        self.assertIsNone(event_prev)
Exemple #8
0
    def test_prev_event_given_time_now_after_data_raises_value_error(self):
        # Arrange
        news_filter = EconomicNewsEventFilter(currencies=["USD"], impacts=['HIGH'])

        # Act
        # Assert
        self.assertRaises(ValueError, news_filter.prev_event, datetime(2050, 1, 1, 1, 1, tzinfo=pytz.utc))
Exemple #9
0
    def test_prev_event_given_time_now_before_data_raises_value_error(self):
        # Arrange
        news_filter = EconomicNewsEventFilter(currencies=["USD"], impacts=['HIGH'])

        # Act
        # Assert
        self.assertRaises(ValueError, news_filter.prev_event, UNIX_EPOCH)
Exemple #10
0
    def test_initialize_filter(self):
        # Arrange
        currencies = ["USD", "GBP"]
        impacts = ['HIGH', 'MEDIUM']
        news_filter = EconomicNewsEventFilter(currencies=currencies, impacts=impacts)

        # Act
        # Assert
        self.assertEqual(Timestamp("2008-01-01 10:00:00+0000", tz="UTC"), news_filter.unfiltered_data_start)
        self.assertEqual(Timestamp("2020-12-31 23:00:00+0000", tz="UTC"), news_filter.unfiltered_data_end)
        self.assertEqual(currencies, news_filter.currencies)
        self.assertEqual(impacts, news_filter.impacts)
Exemple #11
0
    def test_initialize_filter(self):
        # Arrange
        currencies = ["USD", "GBP"]
        impacts = ["HIGH", "MEDIUM"]
        news_filter = EconomicNewsEventFilter(
            currencies=currencies,
            impacts=impacts,
            news_data=self.news_data,
        )

        # Act, Assert
        assert (pd.Timestamp("2008-01-01 10:00:00+0000",
                             tz="UTC") == news_filter.unfiltered_data_start)
        assert pd.Timestamp("2020-12-31 23:00:00+0000",
                            tz="UTC") == news_filter.unfiltered_data_end
        assert news_filter.currencies == currencies
        assert news_filter.impacts == impacts