def test_coordinate_data_series(mocker): start = dt.datetime(2019, 1, 2, 1, 0) end = dt.datetime(2019, 1, 2, 1, 10) # mock GsSession and data response mocker.patch.object(GsSession.__class__, 'default_value', return_value=GsSession.get(Environment.QA, 'client_id', 'secret')) mocker.patch.object(GsSession.current, '_post', side_effect=[{'responses': [{'data': bond_data}]}, {'responses': [{'data': swap_data}]}, {'responses': [{'data': bond_data}, {'data': swap_data}]}, {'responses': [{'data': bond_data}, {'data': swap_data}]} ]) bond_expected_series = pd.Series(index=bond_expected_frame.index, data=bond_expected_frame.value.values) swap_expected_series = pd.Series(index=swap_expected_frame.index, data=swap_expected_frame.value.values) coord_data_result = GsDataApi.coordinates_data_series(coordinates=test_coordinates[0], start=start, end=end) assert_series_equal(coord_data_result, bond_expected_series) str_coord_data_result = GsDataApi.coordinates_data_series(coordinates=test_str_coordinates[1], start=start, end=end) assert_series_equal(str_coord_data_result, swap_expected_series) coords_data_result = GsDataApi.coordinates_data_series(coordinates=test_coordinates, start=start, end=end) assert len(coords_data_result) == 2 assert_series_equal(coords_data_result[0], bond_expected_series) assert_series_equal(coords_data_result[1], swap_expected_series) GsSession.current._post.reset_mock() str_coords_data_result = GsDataApi.coordinates_data_series(coordinates=test_str_coordinates, start=start, end=end) assert len(str_coords_data_result) == 2 assert_series_equal(str_coords_data_result[0], bond_expected_series) assert_series_equal(str_coords_data_result[1], swap_expected_series) GsSession.current._post.assert_called_with('/data/coordinates/query', payload=MDAPIDataQuery(market_data_coordinates=test_coordinates, start_time=start, end_time=end, vendor=MarketDataVendor.Goldman_Sachs, format="MessagePack"), request_headers={'Accept': 'application/msgpack'} )
def test_coordinate_data_series(mocker): # mock GsSession and data response mocker.patch.object(GsSession.__class__, 'current', return_value=GsSession.get(Environment.QA, 'client_id', 'secret')) mocker.patch.object(GsSession.current, '_post', side_effect=[{'responses': [{'data': bond_data}]}, {'responses': [{'data': swap_data}]}, {'responses': [{'data': bond_data}, {'data': swap_data}]}, {'responses': [{'data': bond_data}, {'data': swap_data}]} ]) bond_expected_series = pd.Series(index=bond_expected_frame.index, data=bond_expected_frame.value.values) swap_expected_series = pd.Series(index=swap_expected_frame.index, data=swap_expected_frame.value.values) coord_data_result = GsDataApi.coordinates_data_series(coordinates=test_coordinates[0], start=dt.datetime(2019, 1, 2, 1, 0), end=dt.datetime(2019, 1, 2, 1, 10)) assert_series_equal(coord_data_result, bond_expected_series) str_coord_data_result = GsDataApi.coordinates_data_series(coordinates=test_str_coordinates[1], start=dt.datetime(2019, 1, 2, 1, 0), end=dt.datetime(2019, 1, 2, 1, 10)) assert_series_equal(str_coord_data_result, swap_expected_series) coords_data_result = GsDataApi.coordinates_data_series(coordinates=test_coordinates, start=dt.datetime(2019, 1, 2, 1, 0), end=dt.datetime(2019, 1, 2, 1, 10)) assert len(coords_data_result) == 2 assert_series_equal(coords_data_result[0], bond_expected_series) assert_series_equal(coords_data_result[1], swap_expected_series) str_coords_data_result = GsDataApi.coordinates_data_series(coordinates=test_str_coordinates, start=dt.datetime(2019, 1, 2, 1, 0), end=dt.datetime(2019, 1, 2, 1, 10)) assert len(str_coords_data_result) == 2 assert_series_equal(str_coords_data_result[0], bond_expected_series) assert_series_equal(str_coords_data_result[1], swap_expected_series) GsSession.current._post.assert_called_with('/data/coordinates/query', payload=mocker.ANY) assert GsSession.current._post.call_count == 4