Skip to content
This repository has been archived by the owner on Mar 24, 2021. It is now read-only.

Commit

Permalink
Test is_latest_data directly
Browse files Browse the repository at this point in the history
This allows us to remove the calls part of the latest transaction
explorer tests.
  • Loading branch information
jcbashdown committed Jan 27, 2015
1 parent 37f662e commit 981830a
Show file tree
Hide file tree
Showing 2 changed files with 126 additions and 101 deletions.
101 changes: 1 addition & 100 deletions tests/transformers/tasks/test_latest_transaction_explorer_values.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
from backdrop.transformers.tasks.util import(
encode_id)

from mock import patch, Mock, call
from mock import patch, Mock

import json
import os
Expand Down Expand Up @@ -182,55 +182,6 @@ def test_compute(self, mock_dashboard_finder, mock_dataset):
'data-group': 'transactions-explorer',
'data-type': 'spreadsheet'}})

calls = [call(query_parameters={
'filter_by': 'dashboard_slug:bis-returns',
'start_at': u'2013-04-01T00:00:00+00:00',
'sort_by': '_timestamp:descending'}),
call(query_parameters={
'filter_by': 'dashboard_slug:bis-returns',
'start_at': u'2013-04-01T00:00:00+00:00',
'sort_by': '_timestamp:descending'}),
call(query_parameters={
'filter_by': 'dashboard_slug:bis-returns',
'start_at': u'2013-04-01T00:00:00+00:00',
'sort_by': '_timestamp:descending'}),
call(query_parameters={
'filter_by': 'dashboard_slug:bis-returns',
'start_at': u'2013-04-01T00:00:00+00:00',
'sort_by': '_timestamp:descending'}),
call(query_parameters={
'filter_by': 'dashboard_slug:bis-returns',
'start_at': u'2013-04-01T00:00:00+00:00',
'sort_by': '_timestamp:descending'}),
call(query_parameters={
'filter_by': 'dashboard_slug:bis-returns',
'start_at': u'2013-04-01T00:00:00+00:00',
'sort_by': '_timestamp:descending'}),
call(query_parameters={
'filter_by': 'dashboard_slug:sorn',
'start_at': u'2013-04-01T00:00:00+00:00',
'sort_by': '_timestamp:descending'}),
call(query_parameters={
'filter_by': 'dashboard_slug:sorn',
'start_at': u'2013-04-01T00:00:00+00:00',
'sort_by': '_timestamp:descending'}),
call(query_parameters={
'filter_by': 'dashboard_slug:sorn',
'start_at': u'2013-04-01T00:00:00+00:00',
'sort_by': '_timestamp:descending'}),
call(query_parameters={
'filter_by': 'dashboard_slug:sorn',
'start_at': u'2013-04-01T00:00:00+00:00',
'sort_by': '_timestamp:descending'}),
call(query_parameters={
'filter_by': 'dashboard_slug:sorn',
'start_at': u'2013-04-01T00:00:00+00:00',
'sort_by': '_timestamp:descending'}),
call(query_parameters={
'filter_by': 'dashboard_slug:sorn',
'start_at': u'2013-04-01T00:00:00+00:00',
'sort_by': '_timestamp:descending'})]
mockdata.get.has_calls(calls)
assert_that(transformed_data, contains_inanyorder(*data_to_post))
assert_that(len(transformed_data), is_(12))

Expand Down Expand Up @@ -268,55 +219,5 @@ def test_compute_when_no_new_data(
'data-group': 'transactions-explorer',
'data-type': 'spreadsheet'}})

calls = [call(query_parameters={
'filter_by': 'dashboard_slug:bis-returns',
'start_at': u'2013-04-01T00:00:00+00:00',
'sort_by': '_timestamp:descending'}),
call(query_parameters={
'filter_by': 'dashboard_slug:bis-returns',
'start_at': u'2013-04-01T00:00:00+00:00',
'sort_by': '_timestamp:descending'}),
call(query_parameters={
'filter_by': 'dashboard_slug:bis-returns',
'start_at': u'2013-04-01T00:00:00+00:00',
'sort_by': '_timestamp:descending'}),
call(query_parameters={
'filter_by': 'dashboard_slug:bis-returns',
'start_at': u'2013-04-01T00:00:00+00:00',
'sort_by': '_timestamp:descending'}),
call(query_parameters={
'filter_by': 'dashboard_slug:bis-returns',
'start_at': u'2013-04-01T00:00:00+00:00',
'sort_by': '_timestamp:descending'}),
call(query_parameters={
'filter_by': 'dashboard_slug:bis-returns',
'start_at': u'2013-04-01T00:00:00+00:00',
'sort_by': '_timestamp:descending'}),
call(query_parameters={
'filter_by': 'dashboard_slug:sorn',
'start_at': u'2013-04-01T00:00:00+00:00',
'sort_by': '_timestamp:descending'}),
call(query_parameters={
'filter_by': 'dashboard_slug:sorn',
'start_at': u'2013-04-01T00:00:00+00:00',
'sort_by': '_timestamp:descending'}),
call(query_parameters={
'filter_by': 'dashboard_slug:sorn',
'start_at': u'2013-04-01T00:00:00+00:00',
'sort_by': '_timestamp:descending'}),
call(query_parameters={
'filter_by': 'dashboard_slug:sorn',
'start_at': u'2013-04-01T00:00:00+00:00',
'sort_by': '_timestamp:descending'}),
call(query_parameters={
'filter_by': 'dashboard_slug:sorn',
'start_at': u'2013-04-01T00:00:00+00:00',
'sort_by': '_timestamp:descending'}),
call(query_parameters={
'filter_by': 'dashboard_slug:sorn',
'start_at': u'2013-04-01T00:00:00+00:00',
'sort_by': '_timestamp:descending'})]
mockdata.get.has_calls(calls)

assert_that(transformed_data, equal_to([]))
assert_that(len(transformed_data), is_(0))
126 changes: 125 additions & 1 deletion tests/transformers/tasks/test_util.py
Original file line number Diff line number Diff line change
@@ -1,8 +1,13 @@
import unittest
from freezegun import freeze_time

from hamcrest import assert_that, is_
from mock import patch, Mock

from backdrop.transformers.tasks.util import encode_id, group_by
from backdrop.transformers.tasks.util import(
encode_id,
group_by,
is_latest_data)


class UtilTestCase(unittest.TestCase):
Expand Down Expand Up @@ -31,3 +36,122 @@ def test_group_by(self):
assert_that(len(groupped_data.keys()), is_(2))
assert_that(len(groupped_data[('foo', 'bar')]), is_(2))
assert_that(len(groupped_data[('foo', 'foo')]), is_(1))

@freeze_time('2018, 1, 09 00:00:00')
@patch("performanceplatform.client.DataSet.from_group_and_type")
def test_is_latest_data(self, mock_dataset):
mockdata = Mock()
mockdata.get.return_value = {
'data': [
{
'_count': 1.0,
'_end_at': '2012-01-19T00:00:00+00:00',
'_timestamp': '2012-01-12T00:00:00+00:00'
}
]
}
mock_dataset.return_value = mockdata
is_actually_latest_data = is_latest_data(
{
'data_group': 'transactions-explorer',
'data_type': 'spreadsheet'
},
{
'output': {
'data-group': 'transactions-explorer',
'data-type': 'spreadsheet'
}
},
{
"_timestamp": "2013-04-01T00:00:00+00:00"
},
{
'filter_by': 'dashboard_slug:sorn'
}
)
mockdata.get.assert_called_once_with(query_parameters={
'filter_by': 'dashboard_slug:sorn',
'start_at': u'2013-04-01T00:00:00+00:00',
'end_at': '2018-01-09T00:00:00+00:00',
'sort_by': '_timestamp:descending'})
assert_that(is_actually_latest_data, is_(True))

@freeze_time('2018, 1, 09 00:00:00')
@patch("performanceplatform.client.DataSet.from_group_and_type")
def test_is_latest_data_is_false(self, mock_dataset):
mockdata = Mock()
mockdata.get.return_value = {
'data': [
{
'_count': 1.0,
'_end_at': '2012-01-19T00:00:00+00:00',
'_timestamp': '2018-01-12T00:00:00+00:00'
}
]
}
mock_dataset.return_value = mockdata
is_actually_latest_data = is_latest_data(
{
'data_group': 'transactions-explorer',
'data_type': 'spreadsheet'
},
{
'output': {
'data-group': 'transactions-explorer',
'data-type': 'spreadsheet'
}
},
{
"_timestamp": "2013-04-01T00:00:00+00:00"
},
{
'filter_by': 'dashboard_slug:sorn'
}
)
mockdata.get.assert_called_once_with(query_parameters={
'filter_by': 'dashboard_slug:sorn',
'start_at': u'2013-04-01T00:00:00+00:00',
'end_at': '2018-01-09T00:00:00+00:00',
'sort_by': '_timestamp:descending'})
assert_that(is_actually_latest_data, is_(False))

@patch("performanceplatform.client.DataSet.from_group_and_type")
def test_is_latest_data_when_transform_has_period(self, mock_dataset):
mockdata = Mock()
mockdata.get.return_value = {
'data': [
{
'_count': 1.0,
'_end_at': '2012-01-19T00:00:00+00:00',
'_timestamp': '2012-01-12T00:00:00+00:00'
}
]
}
mock_dataset.return_value = mockdata
is_actually_latest_data = is_latest_data(
{
'data_group': 'transactions-explorer',
'data_type': 'spreadsheet'
},
{
'output': {
'data-group': 'transactions-explorer',
'data-type': 'spreadsheet'
},
'query_parameters': {
'period': 'year'
}
},
{
"_timestamp": "2013-04-01T00:00:00+00:00"
},
{
'filter_by': 'dashboard_slug:sorn'
}
)
mockdata.get.assert_called_once_with(query_parameters={
'duration': 1,
'filter_by': 'dashboard_slug:sorn',
'period': 'year',
'sort_by': '_timestamp:descending'})
assert_that(is_actually_latest_data, is_(True))

0 comments on commit 981830a

Please sign in to comment.