def test_data_calls_connection_get(self, mock):
     datatable = Datatable('ZACKS/FC')
     Data.page(datatable, params={'ticker': ['AAPL', 'MSFT'],
                                  'per_end_date': {'gte': '2015-01-01'},
                                  'qopts': {'columns': ['ticker', 'per_end_date']}})
     expected = call('get', 'datatables/ZACKS/FC',
                     params={'ticker[]': ['AAPL', 'MSFT'],
                             'per_end_date.gte': '2015-01-01',
                             'qopts.columns[]': ['ticker', 'per_end_date']})
     self.assertEqual(mock.call_args, expected)
 def test_data_calls_connection_post(self, mock):
     RequestType.USE_GET_REQUEST = False
     datatable = Datatable('ZACKS/FC')
     Data.page(datatable, params={'ticker': ['AAPL', 'MSFT'],
                                  'per_end_date': {'gte': '2015-01-01'},
                                  'qopts': {'columns': ['ticker', 'per_end_date']}})
     expected = call('post', 'datatables/ZACKS/FC',
                     json={'ticker': ['AAPL', 'MSFT'],
                             'per_end_date.gte': '2015-01-01',
                             'qopts.columns': ['ticker', 'per_end_date']})
     self.assertEqual(mock.call_args, expected)
 def test_to_numpy_returns_numpy_object(self, request_method):
     if request_method == 'POST':
         RequestType.USE_GET_REQUEST = False
     datatable = Datatable('ZACKS/FC')
     results = Data.page(datatable, params={})
     data = results.to_numpy()
     self.assertIsInstance(data, numpy.core.records.recarray)
Exemple #4
0
 def test_to_numpy_returns_numpy_object(self):
     results = Data.all(params={
         'database_code': 'NSE',
         'dataset_code': 'OIL'
     })
     data = results.to_numpy()
     self.assertIsInstance(data, numpy.core.records.recarray)
 def test_pandas_dataframe_index_is_none(self, request_method):
     if request_method == 'POST':
         RequestType.USE_GET_REQUEST = False
     datatable = Datatable('ZACKS/FC')
     results = Data.page(datatable, params={})
     df = results.to_pandas()
     self.assertEqual(df.index.name, 'None')
 def test_pandas_dataframe_index_is_none(self, request_method):
     if request_method == 'POST':
         RequestType.USE_GET_REQUEST = False
     datatable = Datatable('ZACKS/FC')
     results = Data.page(datatable, params={})
     df = results.to_pandas()
     self.assertEqual(df.index.name, 'None')
 def test_data_to_list(self):
     list_data = Data.all(
         params={'database_code': 'NSE', 'dataset_code': 'OIL'}).to_list()
     self.assertItemsEqual(list_data[0], self.expected_list_values[0])
     self.assertItemsEqual(list_data[1], self.expected_list_values[1])
     self.assertItemsEqual(list_data[2], self.expected_list_values[2])
     self.assertItemsEqual(list_data[3], self.expected_list_values[3])
 def test_to_pandas_returns_pandas_dataframe_object(self, request_method):
     if request_method == 'POST':
         RequestType.USE_GET_REQUEST = False
     datatable = Datatable('ZACKS/FC')
     results = Data.page(datatable, params={})
     df = results.to_pandas()
     self.assertIsInstance(df, pandas.core.frame.DataFrame)
 def test_values_and_meta_exist(self, request_method):
     if request_method == 'POST':
         RequestType.USE_GET_REQUEST = False
     datatable = Datatable('ZACKS/FC')
     results = Data.page(datatable, params={})
     self.assertIsNotNone(results.values)
     self.assertIsNotNone(results.meta)
 def test_to_csv_returns_expected_csv(self):
     results = Data.all(
         params={'database_code': 'NSE', 'dataset_code': 'OIL'})
     data = results.to_csv()
     expected = "Date,column.1,column.2,column.3\n2015-07-11,444.3,10,3\n" + \
                "2015-07-13,433.3,4,3\n2015-07-14,437.5,3,3\n2015-07-15,440.0,2,3\n"
     self.assertEqual(data, expected)
Exemple #11
0
 def test_values_and_meta_exist(self):
     results = Data.all(params={
         'database_code': 'NSE',
         'dataset_code': 'OIL'
     })
     self.assertIsNotNone(results.values)
     self.assertIsNotNone(results.meta)
Exemple #12
0
 def test_column_names_match(self):
     results = Data.all(params={
         'database_code': 'NSE',
         'dataset_code': 'OIL'
     })
     six.assertCountEqual(self, results.column_names,
                          ['Date', 'column.1', 'column.2', 'column.3'])
 def test_to_numpy_returns_numpy_object(self, request_method):
     if request_method == 'POST':
         RequestType.USE_GET_REQUEST = False
     datatable = Datatable('ZACKS/FC')
     results = Data.page(datatable, params={})
     data = results.to_numpy()
     self.assertIsInstance(data, numpy.core.records.recarray)
 def test_raw_data_is_zip_of_column_names_and_data(self):
     results = Data.all(
         params={'database_code': 'NSE', 'dataset_code': 'OIL'})
     self.assertItemsEqual(results[0].__get_raw_data__(), self.expected_list_values[0])
     self.assertItemsEqual(results[1].__get_raw_data__(), self.expected_list_values[1])
     self.assertItemsEqual(results[2].__get_raw_data__(), self.expected_list_values[2])
     self.assertItemsEqual(results[3].__get_raw_data__(), self.expected_list_values[3])
 def test_to_pandas_returns_pandas_dataframe_object(self, request_method):
     if request_method == 'POST':
         RequestType.USE_GET_REQUEST = False
     datatable = Datatable('ZACKS/FC')
     results = Data.page(datatable, params={})
     df = results.to_pandas()
     self.assertIsInstance(df, pandas.core.frame.DataFrame)
 def test_values_and_meta_exist(self, request_method):
     if request_method == 'POST':
         RequestType.USE_GET_REQUEST = False
     datatable = Datatable('ZACKS/FC')
     results = Data.page(datatable, params={})
     self.assertIsNotNone(results.values)
     self.assertIsNotNone(results.meta)
Exemple #17
0
 def test_to_pandas_returns_pandas_dataframe_object(self):
     results = Data.all(params={
         'database_code': 'NSE',
         'dataset_code': 'OIL'
     })
     df = results.to_pandas()
     self.assertIsInstance(df, pandas.core.frame.DataFrame)
 def test_pandas_dataframe_date_field_is_datetime(self):
     datatable = Datatable('ZACKS/FC')
     results = Data.page(datatable, params={})
     df = results.to_pandas()
     self.assertIsInstance(df['per_end_date'][0], pandas.datetime)
     self.assertIsInstance(df['per_end_date'][1], pandas.datetime)
     self.assertIsInstance(df['per_end_date'][2], pandas.datetime)
     self.assertIsInstance(df['per_end_date'][3], pandas.datetime)
 def test_exception_raised_if_column_and_data_row_mistmatch(self):
     dataset_data = {
         'dataset_data': DatasetDataFactory.build(column_names=['blah'])}
     httpretty.register_uri(httpretty.GET,
                            re.compile(
                                'https://www.quandl.com/api/v3/datasets*'),
                            body=json.dumps(dataset_data))
     self.assertRaises(InvalidDataError, lambda: Data.all())
 def test_pandas_dataframe_date_field_is_datetime(self):
     datatable = Datatable('ZACKS/FC')
     results = Data.page(datatable, params={})
     df = results.to_pandas()
     self.assertIsInstance(df['per_end_date'][0], pandas.datetime)
     self.assertIsInstance(df['per_end_date'][1], pandas.datetime)
     self.assertIsInstance(df['per_end_date'][2], pandas.datetime)
     self.assertIsInstance(df['per_end_date'][3], pandas.datetime)
Exemple #21
0
 def test_data_returned_are_data_objects(self):
     results = Data.all(params={
         'database_code': 'NSE',
         'dataset_code': 'OIL'
     })
     self.assertEqual(len(results), 4)
     for result in results:
         self.assertIsInstance(result, Data)
Exemple #22
0
 def test_pandas_dataframe_index_is_datetime(self):
     results = Data.all(params={
         'database_code': 'NSE',
         'dataset_code': 'OIL'
     })
     df = results.to_pandas()
     self.assertEqual(df.index.name, 'Date')
     self.assertIsInstance(df.index, pandas.DatetimeIndex)
Exemple #23
0
 def test_to_csv_returns_expected_csv(self):
     results = Data.all(params={
         'database_code': 'NSE',
         'dataset_code': 'OIL'
     })
     data = results.to_csv()
     expected = "Date,column.1,column.2,column.3\n2015-07-11,444.3,10,3\n" + \
                "2015-07-13,433.3,4,3\n2015-07-14,437.5,3,3\n2015-07-15,440.0,2,3\n"
     self.assertEqual(data, expected)
Exemple #24
0
 def test_data_to_list(self):
     list_data = Data.all(params={
         'database_code': 'NSE',
         'dataset_code': 'OIL'
     }).to_list()
     six.assertCountEqual(self, list_data[0], self.expected_list_values[0])
     six.assertCountEqual(self, list_data[1], self.expected_list_values[1])
     six.assertCountEqual(self, list_data[2], self.expected_list_values[2])
     six.assertCountEqual(self, list_data[3], self.expected_list_values[3])
Exemple #25
0
 def test_exception_raised_if_column_and_data_row_mistmatch(self):
     dataset_data = {
         'dataset_data': DatasetDataFactory.build(column_names=['blah'])
     }
     httpretty.register_uri(
         httpretty.GET,
         re.compile('https://www.quandl.com/api/v3/datasets*'),
         body=json.dumps(dataset_data))
     self.assertRaises(InvalidDataError, lambda: Data.all())
 def test_to_csv_returns_expected_csv(self):
     datatable = Datatable('ZACKS/FC')
     results = Data.page(datatable, params={})
     data = results.to_csv()
     expected = "None,per_end_date,ticker,tot_oper_exp\n" + \
                "0,2015-07-11,AAPL,456.9\n" + \
                "1,2015-07-13,433.3,\n" + \
                "2,2015-07-14,AAPL,419.1\n" + \
                "3,2015-07-15,476.5,\n"
     self.assertEqual(data, expected)
 def test_to_csv_returns_expected_csv(self):
     datatable = Datatable('ZACKS/FC')
     results = Data.page(datatable, params={})
     data = results.to_csv()
     expected = "None,per_end_date,ticker,tot_oper_exp\n" + \
                "0,2015-07-11,AAPL,456.9\n" + \
                "1,2015-07-13,433.3,\n" + \
                "2,2015-07-14,AAPL,419.1\n" + \
                "3,2015-07-15,476.5,\n"
     self.assertEqual(data, expected)
 def test_pandas_dataframe_date_field_is_datetime(self, request_method):
     if request_method == 'POST':
         RequestType.USE_GET_REQUEST = False
     datatable = Datatable('ZACKS/FC')
     results = Data.page(datatable, params={})
     df = results.to_pandas()
     self.assertIsInstance(df['per_end_date'][0], pandas.datetime)
     self.assertIsInstance(df['per_end_date'][1], pandas.datetime)
     self.assertIsInstance(df['per_end_date'][2], pandas.datetime)
     self.assertIsInstance(df['per_end_date'][3], pandas.datetime)
 def test_pandas_dataframe_date_field_is_datetime(self, request_method):
     if request_method == 'POST':
         RequestType.USE_GET_REQUEST = False
     datatable = Datatable('ZACKS/FC')
     results = Data.page(datatable, params={})
     df = results.to_pandas()
     self.assertIsInstance(df['per_end_date'][0], pandas.datetime)
     self.assertIsInstance(df['per_end_date'][1], pandas.datetime)
     self.assertIsInstance(df['per_end_date'][2], pandas.datetime)
     self.assertIsInstance(df['per_end_date'][3], pandas.datetime)
Exemple #30
0
 def setUpClass(cls):
     cls.expected_column_names = [
         six.u('Date'),
         six.u('column.1'),
         six.u('column.2'),
         six.u('column.3')
     ]
     cls.data_object = Data(
         ['2015-07-15', 440.0, 2, 3],
         meta={'column_names': cls.expected_column_names})
 def test_data_calls_connection_get(self, mock):
     datatable = Datatable('ZACKS/FC')
     Data.page(datatable,
               params={
                   'ticker': ['AAPL', 'MSFT'],
                   'per_end_date': {
                       'gte': '2015-01-01'
                   },
                   'qopts': {
                       'columns': ['ticker', 'per_end_date']
                   }
               })
     expected = call('get',
                     'datatables/ZACKS/FC',
                     params={
                         'ticker[]': ['AAPL', 'MSFT'],
                         'per_end_date.gte': '2015-01-01',
                         'qopts.columns[]': ['ticker', 'per_end_date']
                     })
     self.assertEqual(mock.call_args, expected)
 def test_to_csv_returns_expected_csv(self, request_method):
     if request_method == 'POST':
         RequestType.USE_GET_REQUEST = False
     datatable = Datatable('ZACKS/FC')
     results = Data.page(datatable, params={})
     data = results.to_csv()
     expected = "None,per_end_date,ticker,tot_oper_exp\n" + \
                "0,2015-07-11,AAPL,456.9\n" + \
                "1,2015-07-13,433.3,\n" + \
                "2,2015-07-14,AAPL,419.1\n" + \
                "3,2015-07-15,476.5,\n"
     self.assertEqual(data, expected)
 def test_data_calls_connection_post(self, mock):
     RequestType.USE_GET_REQUEST = False
     datatable = Datatable('ZACKS/FC')
     Data.page(datatable,
               params={
                   'ticker': ['AAPL', 'MSFT'],
                   'per_end_date': {
                       'gte': '2015-01-01'
                   },
                   'qopts': {
                       'columns': ['ticker', 'per_end_date']
                   }
               })
     expected = call('post',
                     'datatables/ZACKS/FC',
                     json={
                         'ticker': ['AAPL', 'MSFT'],
                         'per_end_date.gte': '2015-01-01',
                         'qopts.columns': ['ticker', 'per_end_date']
                     })
     self.assertEqual(mock.call_args, expected)
 def test_to_csv_returns_expected_csv(self, request_method):
     if request_method == 'POST':
         RequestType.USE_GET_REQUEST = False
     datatable = Datatable('ZACKS/FC')
     results = Data.page(datatable, params={})
     data = results.to_csv()
     expected = "None,per_end_date,ticker,tot_oper_exp\n" + \
                "0,2015-07-11,AAPL,456.9\n" + \
                "1,2015-07-13,433.3,\n" + \
                "2,2015-07-14,AAPL,419.1\n" + \
                "3,2015-07-15,476.5,\n"
     self.assertEqual(data, expected)
Exemple #35
0
 def test_raw_data_is_zip_of_column_names_and_data(self):
     results = Data.all(params={
         'database_code': 'NSE',
         'dataset_code': 'OIL'
     })
     six.assertCountEqual(self, results[0].__get_raw_data__(),
                          self.expected_list_values[0])
     six.assertCountEqual(self, results[1].__get_raw_data__(),
                          self.expected_list_values[1])
     six.assertCountEqual(self, results[2].__get_raw_data__(),
                          self.expected_list_values[2])
     six.assertCountEqual(self, results[3].__get_raw_data__(),
                          self.expected_list_values[3])
 def setUpClass(cls):
     cls.expected_column_names = [
         six.u('per_end_date'),
         six.u('ticker'),
         six.u('tot_oper_exp')
     ]
     cls.expected_column_types = [
         six.u('Date'), six.u('String'),
         six.u('String')
     ]
     cls.data_object = Data(
         ['2015-07-11', 'AAPL', 440.0],
         meta={
             'columns': cls.expected_column_names,
             'column_types': cls.expected_column_types
         })
 def test_values_and_meta_exist(self):
     datatable = Datatable('ZACKS/FC')
     results = Data.page(datatable, params={})
     self.assertIsNotNone(results.values)
     self.assertIsNotNone(results.meta)
 def test_to_numpy_returns_numpy_object(self):
     results = Data.all(
         params={'database_code': 'NSE', 'dataset_code': 'OIL'})
     data = results.to_numpy()
     self.assertIsInstance(data, numpy.core.records.recarray)
 def test_to_numpy_returns_numpy_object(self):
     datatable = Datatable('ZACKS/FC')
     results = Data.page(datatable, params={})
     data = results.to_numpy()
     self.assertIsInstance(data, numpy.core.records.recarray)
 def test_to_pandas_returns_pandas_dataframe_object(self):
     datatable = Datatable('ZACKS/FC')
     results = Data.page(datatable, params={})
     df = results.to_pandas()
     self.assertIsInstance(df, pandas.core.frame.DataFrame)
 def test_pandas_dataframe_index_is_none(self):
     datatable = Datatable('ZACKS/FC')
     results = Data.page(datatable, params={})
     df = results.to_pandas()
     self.assertEqual(df.index.name, 'None')
 def test_data_returned_are_data_objects(self):
     results = Data.all(
         params={'database_code': 'NSE', 'dataset_code': 'OIL'})
     self.assertEqual(len(results), 4)
     for result in results:
         self.assertIsInstance(result, Data)
 def test_data_calls_connection(self, mock):
     Data.all(params={'database_code': 'NSE', 'dataset_code': 'OIL'})
     expected = call('get', 'datasets/NSE/OIL/data', params={})
     self.assertEqual(mock.call_args, expected)
 def test_values_and_meta_exist(self):
     results = Data.all(
         params={'database_code': 'NSE', 'dataset_code': 'OIL'})
     self.assertIsNotNone(results.values)
     self.assertIsNotNone(results.meta)
 def test_to_pandas_returns_pandas_dataframe_object(self):
     datatable = Datatable('ZACKS/FC')
     results = Data.page(datatable, params={})
     df = results.to_pandas()
     self.assertIsInstance(df, pandas.core.frame.DataFrame)
 def test_values_and_meta_exist(self):
     datatable = Datatable('ZACKS/FC')
     results = Data.page(datatable, params={})
     self.assertIsNotNone(results.values)
     self.assertIsNotNone(results.meta)
 def test_column_names_match(self):
     results = Data.all(
         params={'database_code': 'NSE', 'dataset_code': 'OIL'})
     self.assertItemsEqual(
         results.column_names, ['Date', 'column.1', 'column.2', 'column.3'])
 def test_pandas_dataframe_index_is_none(self):
     datatable = Datatable('ZACKS/FC')
     results = Data.page(datatable, params={})
     df = results.to_pandas()
     self.assertEqual(df.index.name, 'None')
 def test_to_pandas_returns_pandas_dataframe_object(self):
     results = Data.all(
         params={'database_code': 'NSE', 'dataset_code': 'OIL'})
     df = results.to_pandas()
     self.assertIsInstance(df, pandas.core.frame.DataFrame)
 def test_to_numpy_returns_numpy_object(self):
     datatable = Datatable('ZACKS/FC')
     results = Data.page(datatable, params={})
     data = results.to_numpy()
     self.assertIsInstance(data, numpy.core.records.recarray)
Exemple #51
0
 def test_data_calls_connection(self, mock):
     Data.all(params={'database_code': 'NSE', 'dataset_code': 'OIL'})
     expected = call('get', 'datasets/NSE/OIL/data', params={})
     self.assertEqual(mock.call_args, expected)
 def test_pandas_dataframe_index_is_datetime(self):
     results = Data.all(
         params={'database_code': 'NSE', 'dataset_code': 'OIL'})
     df = results.to_pandas()
     self.assertEqual(df.index.name, 'Date')
     self.assertIsInstance(df.index, pandas.DatetimeIndex)