Skip to content
This repository has been archived by the owner on Apr 30, 2022. It is now read-only.

Commit

Permalink
Remove dependency on unittest2 (#118)
Browse files Browse the repository at this point in the history
* Remove dependency on unittest2

fixes #113

* flake8 fixes
  • Loading branch information
sebix authored and mbasset committed Aug 29, 2018
1 parent 9b54403 commit 39f7e3a
Show file tree
Hide file tree
Showing 13 changed files with 64 additions and 58 deletions.
3 changes: 3 additions & 0 deletions CHANGELOG.md
@@ -1,3 +1,6 @@
### unreleased
* Remove dependency on unittest2, use unittest instead (#113)

### 3.4.2 - 2018-08-21

* Fix typos in our warning messages https://github.com/quandl/quandl-python/pull/114
Expand Down
1 change: 0 additions & 1 deletion setup.py
Expand Up @@ -56,7 +56,6 @@
license='MIT',
install_requires=install_requires,
tests_require=[
'unittest2',
'flake8',
'nose',
'httpretty',
Expand Down
4 changes: 2 additions & 2 deletions test/test_connection.py
Expand Up @@ -4,14 +4,14 @@
QuandlError, LimitExceededError, InternalServerError,
AuthenticationError, ForbiddenError, InvalidRequestError,
NotFoundError, ServiceUnavailableError)
import unittest2
import unittest
from test.helpers.httpretty_extension import httpretty
import json
from mock import patch, call
from quandl.version import VERSION


class ConnectionTest(unittest2.TestCase):
class ConnectionTest(unittest.TestCase):

@httpretty.activate
def test_quandl_exceptions(self):
Expand Down
26 changes: 13 additions & 13 deletions test/test_data.py
@@ -1,5 +1,5 @@
import re
import unittest2
import unittest
from test.helpers.httpretty_extension import httpretty
import json
import datetime
Expand All @@ -12,7 +12,7 @@
from quandl.errors.quandl_error import InvalidDataError


class DataTest(unittest2.TestCase):
class DataTest(unittest.TestCase):

@classmethod
def setUpClass(cls):
Expand Down Expand Up @@ -48,7 +48,7 @@ def test_meta_exists(self):
self.assertIsNotNone(self.data_object.meta)


class ListDataTest(unittest2.TestCase):
class ListDataTest(unittest.TestCase):

@classmethod
def setUpClass(cls):
Expand Down Expand Up @@ -99,24 +99,24 @@ def test_values_and_meta_exist(self):
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'])
six.assertCountEqual(self,
results.column_names, ['Date', 'column.1', 'column.2', 'column.3'])

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])
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 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])
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])

def test_to_pandas_returns_pandas_dataframe_object(self):
results = Data.all(
Expand Down
12 changes: 6 additions & 6 deletions test/test_database.py
Expand Up @@ -6,7 +6,7 @@
from cgi import parse_qs

import re
import unittest2
import unittest
from test.helpers.httpretty_extension import httpretty
import json
import six
Expand All @@ -19,7 +19,7 @@
from test.factories.meta import MetaFactory


class GetDatabaseTest(unittest2.TestCase):
class GetDatabaseTest(unittest.TestCase):

@classmethod
def setUpClass(cls):
Expand Down Expand Up @@ -64,7 +64,7 @@ def test_database_datasets_accepts_query_params(self, mock):
self.assertEqual(mock.call_args, expected)


class ListDatabasesTest(unittest2.TestCase):
class ListDatabasesTest(unittest.TestCase):

@classmethod
def setUpClass(cls):
Expand Down Expand Up @@ -102,15 +102,15 @@ def test_databases_has_meta(self):
def test_databases_returns_expected_ids(self):
results = Database.all()
self.assertEqual(len(results), 10)
self.assertItemsEqual([x.id for x in results],
[x['id'] for x in self.expected_databases['databases']])
six.assertCountEqual(self, [x.id for x in results],
[x['id'] for x in self.expected_databases['databases']])

def test_databases_has_more(self):
results = Database.all()
self.assertTrue(results.has_more_results())


class BulkDownloadDatabaseTest(unittest2.TestCase):
class BulkDownloadDatabaseTest(unittest.TestCase):

@classmethod
def setUpClass(cls):
Expand Down
11 changes: 6 additions & 5 deletions test/test_dataset.py
@@ -1,16 +1,17 @@
import re
import unittest2
import unittest
from test.helpers.httpretty_extension import httpretty
import json
import datetime
import six
from quandl.model.dataset import Dataset
from quandl.model.database import Database
from mock import patch, call
from test.factories.dataset import DatasetFactory
from test.factories.meta import MetaFactory


class GetDatasetTest(unittest2.TestCase):
class GetDatasetTest(unittest.TestCase):

@classmethod
def setUpClass(cls):
Expand Down Expand Up @@ -48,8 +49,8 @@ def test_dataset_attributes_are_datetime_objects(self):

def test_dataset_column_names_match_expected(self):
dataset = Dataset('NSE/OIL')
self.assertItemsEqual(
dataset.column_names, ['Date', 'column.1', 'column.2', 'column.3'])
six.assertCountEqual(self,
dataset.column_names, ['Date', 'column.1', 'column.2', 'column.3'])

def test_dataset_database_gives_instance_of_database(self):
database = self.dataset_instance.database()
Expand All @@ -65,7 +66,7 @@ def test_dataset_data_calls_data_all(self, mock):
self.assertEqual(mock.call_args, expected)


class ListDatasetsTest(unittest2.TestCase):
class ListDatasetsTest(unittest.TestCase):

@classmethod
def setUpClass(cls):
Expand Down
9 changes: 5 additions & 4 deletions test/test_datatable.py
@@ -1,13 +1,14 @@
import re
import unittest2
import unittest
import httpretty
import json
import six
from quandl.model.datatable import Datatable
from mock import patch, call
from test.factories.datatable import DatatableFactory


class GetDatatableDatasetTest(unittest2.TestCase):
class GetDatatableDatasetTest(unittest.TestCase):

@classmethod
def setUpClass(cls):
Expand Down Expand Up @@ -45,5 +46,5 @@ def test_datatable_returns_datatable_object(self):

def test_dataset_column_names_match_expected(self):
metadata = Datatable('ZACKS/FC').data_fields()
self.assertItemsEqual(
metadata, [u'datatable_code', u'id', u'name', u'vendor_code'])
six.assertCountEqual(self,
metadata, [u'datatable_code', u'id', u'name', u'vendor_code'])
6 changes: 3 additions & 3 deletions test/test_datatable_data.py
@@ -1,5 +1,5 @@
import re
import unittest2
import unittest
import httpretty
import json
import pandas
Expand All @@ -12,7 +12,7 @@
from test.factories.datatable_meta import DatatableMetaFactory


class DatatableDataTest(unittest2.TestCase):
class DatatableDataTest(unittest.TestCase):

@classmethod
def setUpClass(cls):
Expand Down Expand Up @@ -52,7 +52,7 @@ def test_meta_exists(self):
self.assertIsNotNone(self.data_object.meta)


class ListDatatableDataTest(unittest2.TestCase):
class ListDatatableDataTest(unittest.TestCase):

@classmethod
def setUpClass(cls):
Expand Down
6 changes: 3 additions & 3 deletions test/test_get.py
@@ -1,4 +1,4 @@
import unittest2
import unittest
from test.helpers.httpretty_extension import httpretty
from test.helpers.merged_datasets_helper import setupDatasetsTest
import pandas
Expand All @@ -11,7 +11,7 @@
from quandl.connection import Connection


class GetSingleDatasetTest(unittest2.TestCase):
class GetSingleDatasetTest(unittest.TestCase):
@classmethod
def setUp(self):
# ensure api key is not set
Expand Down Expand Up @@ -104,7 +104,7 @@ def test_raise_error_when_non_numeric_column_index(self):
self.assertRaises(ValueError, lambda: get('NSE/OIL.notanumber'))


class GetMultipleDatasetsTest(unittest2.TestCase):
class GetMultipleDatasetsTest(unittest.TestCase):
@classmethod
def setUp(self):
# ensure api key is not set
Expand Down
4 changes: 2 additions & 2 deletions test/test_get_table.py
@@ -1,5 +1,5 @@
import re
import unittest2
import unittest
import httpretty
import json
from quandl.model.datatable import Datatable
Expand All @@ -11,7 +11,7 @@
import quandl


class GetDataTableTest(unittest2.TestCase):
class GetDataTableTest(unittest.TestCase):

@classmethod
def setUpClass(cls):
Expand Down
26 changes: 13 additions & 13 deletions test/test_merged_dataset.py
@@ -1,4 +1,4 @@
import unittest2
import unittest
from test.helpers.httpretty_extension import httpretty
import six
import datetime
Expand All @@ -12,7 +12,7 @@
from test.helpers.merged_datasets_helper import setupDatasetsTest


class GetMergedDatasetTest(unittest2.TestCase):
class GetMergedDatasetTest(unittest.TestCase):

@classmethod
def setUp(self):
Expand Down Expand Up @@ -57,8 +57,8 @@ def test_sets_dataset_codes_for_the_datasets(self):
('WIKI/AAPL', {'column_index': [1]}),
('WIKI/MSFT')])
self.assertEqual(md._datasets, None)
self.assertItemsEqual([1, 2], md.dataset_codes[0][1]['column_index'])
self.assertItemsEqual([1], md.dataset_codes[1][1]['column_index'])
six.assertCountEqual(self, [1, 2], md.dataset_codes[0][1]['column_index'])
six.assertCountEqual(self, [1], md.dataset_codes[1][1]['column_index'])
self.assertEqual('I', md.dataset_codes[2][1])

def test_sets_column_index_on_each_dataset(self):
Expand All @@ -67,9 +67,9 @@ def test_sets_column_index_on_each_dataset(self):
('WIKI/AAPL', {'column_index': [1]}),
('WIKI/MSFT')])
md.data_fields()
self.assertItemsEqual([1, 2], md._datasets[0].requested_column_indexes)
self.assertItemsEqual([1], md._datasets[1].requested_column_indexes)
self.assertItemsEqual([], md._datasets[2].requested_column_indexes)
six.assertCountEqual(self, [1, 2], md._datasets[0].requested_column_indexes)
six.assertCountEqual(self, [1], md._datasets[1].requested_column_indexes)
six.assertCountEqual(self, [], md._datasets[2].requested_column_indexes)

def test_merged_dataset_column_names(self):
md = MergedDataset(
Expand All @@ -82,7 +82,7 @@ def test_merged_dataset_column_names(self):
six.u('WIKI/MSFT - column.1'),
six.u('WIKI/MSFT - column.2'),
six.u('WIKI/MSFT - column.3')]
self.assertItemsEqual(md.column_names, expected)
six.assertCountEqual(self, md.column_names, expected)

def test_merged_dataset_oldest_available_date(self):
md = MergedDataset(
Expand All @@ -103,15 +103,15 @@ def test_merged_dataset_database_codes(self):
[('NSE/OIL', {'column_index': [1, 2]}),
('WIKI/AAPL', {'column_index': [1]}),
('WIKI/MSFT')])
self.assertItemsEqual(md.database_code, ['NSE', 'WIKI'])
six.assertCountEqual(self, md.database_code, ['NSE', 'WIKI'])

def test_merged_dataset_dataset_codes(self):
md = MergedDataset(
[('NSE/OIL', {'column_index': [1, 2]}),
('WIKI/AAPL', {'column_index': [1]}),
('WIKI/MSFT')])
self.assertItemsEqual(
md.dataset_code, ['OIL', 'AAPL', 'MSFT'])
six.assertCountEqual(self,
md.dataset_code, ['OIL', 'AAPL', 'MSFT'])

def test_get_returns_merged_dataset_obj(self):
md = MergedDataset(['NSE/OIL'])
Expand Down Expand Up @@ -187,7 +187,7 @@ def test_get_merged_dataset_data_returns_specified_columns(self):
six.u('WIKI/MSFT - column.1'),
six.u('WIKI/MSFT - column.2'),
six.u('WIKI/MSFT - column.3')]
self.assertItemsEqual(actual, expected)
six.assertCountEqual(self, actual, expected)

def test_get_merged_dataset_data_to_list(self):
data = MergedDataset(
Expand All @@ -203,7 +203,7 @@ def test_get_merged_dataset_data_to_list(self):
[datetime.datetime(2015, 7, 14, 0, 0), 437.5, 3, 437.5, 437.5, 3, 3],
[datetime.datetime(2015, 7, 15, 0, 0), 440.0, 2, 440.0, 440.0, 2, 3]]
for index, expected_item in enumerate(expected):
self.assertItemsEqual(expected_item, results[index])
six.assertCountEqual(self, expected_item, results[index])

def test_get_merged_dataset_data_is_descending_when_specified_in_params(self):
data = MergedDataset(['NSE/OIL', 'WIKI/AAPL',
Expand Down
10 changes: 6 additions & 4 deletions test/test_model.py
@@ -1,15 +1,17 @@
import unittest2
import unittest
from quandl.model.model_base import ModelBase

import six

class ModelTest(unittest2.TestCase):

class ModelTest(unittest.TestCase):

def setUp(self):
self.model = ModelBase('foo', {'foo': 'bar', 'here': 1})

def test_data_fields_returns_list_of_attribute_keys(self):
data_fields = self.model.data_fields()
self.assertItemsEqual(data_fields, ['foo', 'here'])
six.assertCountEqual(self, data_fields, ['foo', 'here'])

def test_data_can_be_accessed_as_dict(self):
self.assertEqual(self.model['foo'], 'bar')
Expand All @@ -24,4 +26,4 @@ def test_throws_exception_when_attribute_does_not_exist(self):

def test_to_list_returns_values(self):
results = self.model.to_list()
self.assertItemsEqual(results, ['bar', 1])
six.assertCountEqual(self, results, ['bar', 1])
4 changes: 2 additions & 2 deletions test/test_util.py
@@ -1,4 +1,4 @@
import unittest2
import unittest
import datetime
import six
from quandl.util import Util
Expand All @@ -11,7 +11,7 @@ def cmp(a, b):
return (a > b) - (a < b)


class UtilTest(unittest2.TestCase):
class UtilTest(unittest.TestCase):

def test_methodize(self):
self.assertEqual(
Expand Down

0 comments on commit 39f7e3a

Please sign in to comment.