def test_set_data(self, mock_retriever, mock_utility): """ Verify the proper methods are called.""" mock_retriever.get_response_json.return_value = SAMPLE_RESPONSE mediator = TimeSeriesMediator(**NO_METRIC_REQUEST_PARAMS) mediator.get_results() with self.subTest(): mock_retriever.assert_called_once() mock_utility.assert_called_once()
def test_set_data(self, mock_return): """ Verify get_results returns a DataFrame.""" adapter = RequestsAdapter(**DEFAULT_EXPECTED_REQUEST_PARAMS) mock_return.request("GET", DEFAULT_SESSION_URL, json=self.time_series_json["response"]) expected = json_normalize(adapter.request().json(), 'samples', ['id', 'sessionId']) self.mediator = TimeSeriesMediator(**DEFAULT_REQUEST_PARAMS) actual = self.mediator.get_results() assert_frame_equal(expected, actual)
def test_init_creates_retriever(self, mock_retriever): """ Verify the init calls the ResponseRetriever and assigns it to a variable.""" mediator = TimeSeriesMediator() with self.subTest(): mock_retriever.assert_called_once_with() self.assertIsNotNone(mediator.retriever)
class TestTimeSeriesMediator(TestCase): """ Tests for the TimeSeriesMediator.""" def setUp(self): self.error_message = "\nTest: {} \nExpected: {}\nActual: {}\n" with open(os.path.join( PARENT_DIR + API_SAMPLES + "cpu_multiple_sessions.json")) as \ json_data: self.time_series_json = json.load(json_data) @requests_mock.Mocker() def test_set_data(self, mock_return): """ Verify get_results returns a DataFrame.""" adapter = RequestsAdapter(**DEFAULT_EXPECTED_REQUEST_PARAMS) mock_return.request( "GET", DEFAULT_SESSION_URL, json=self.time_series_json["response"] ) expected = json_normalize( adapter.request().json(), 'samples', ['id', 'sessionId'] ) self.mediator = TimeSeriesMediator(**DEFAULT_REQUEST_PARAMS) actual = self.mediator.get_results() assert_frame_equal( expected, actual )
def __init__(self, **request_parameters): """ Sets up the mediator and data attributes. The mediator is set to the mediator that it will be contacting. The data is set to the DataFrame returned from the get_results method. :param request_parameters: Dictionary passed in from the model Creator. Contains information to build and send a response. """ super().__init__() self.mediator = TimeSeriesMediator(**request_parameters) self.data = self.get_data()
def __init__(self, **request_parameters): """ Sets up the mediator and data attributes. The mediator is set to the mediator that it will be contacting. The data is set to the DataFrame returned from the get_results method. """ super().__init__(**request_parameters) self.request_parameters = request_parameters self.authenticator = Authenticator() self.request_parameters['auth_token'] = self.authenticator.data[ 'token'] self.request_parameters['metric'] = self.METRIC_PATH self.mediator = TimeSeriesMediator(**self.request_parameters) self.data = self.get_data()