def test_fixtures_file_full_str(self): a = JsonFixtures(str(FULL_TEST_FIXTURES)) self.assertEqual(a._load(), { 'a': None, 'b': 503, 'd': {'A': 'a', 'B': 'b'} })
def test_recursive(self): b = JsonFixtures(FULL_TEST_FIXTURES) a = JsonFixtures(b, c=[1, 2, 3]) self.assertEqual(a._load(), { 'a': None, 'b': 503, 'c': [1, 2, 3], 'd': {'A': 'a', 'B': 'b'} })
def test_fixtures_file_full_str(self): a = JsonFixtures(Path(FULL_TEST_FIXTURES)) self.assertEqual(a._load(), { 'a': [None], 'b': [503], 'd': [{ 'A': 'a', 'B': 'b' }] })
def test_variables_fixtures(self): o = object() a = JsonFixtures({ "/me/%(userid)s/": o, }) v = {} a.set_variable(v) with self.assertRaises(KeyError): a["/me/1234/"] v['userid'] = 1234 self.assertEqual(a["/me/1234/"], [o])
def test_raw_data(self): a = JsonFixtures(**{ 'a': None, 'b': 503, 'd': {'A': 'a', 'B': 'b'} }) self.assertEqual(a._load(), { 'a': None, 'b': 503, 'd': {'A': 'a', 'B': 'b'} })
def setUp(self): # add all mock_data middleware to the databsase self._mock_data_middleware = {} self.rest_fixtures_variables = { } # should be update by the tests, and by side effects work on mocked data for db_name, fixtures in self.database_rest_fixtures.items(): fixtures = JsonFixtures(fixtures) fixtures.set_variable(self.rest_fixtures_variables) self._mock_data_middleware[db_name] = MockDataApiMiddleware( fixtures) dbwrapper = connections[db_name] dbwrapper.cursor().push_middleware( self._mock_data_middleware[db_name], priority=9) super(RestModelTestMixin, self).setUp()
def test_args(self): a = JsonFixtures( FULL_TEST_FIXTURES, { 'c': PARTIAL_DATA_FIXTURES }, { 'b': 502, } ) self.assertEqual(a._load(), { 'a': None, 'b': 502, 'c': [{'data': {'C': 'c'}}, {}, {}], 'd': {'A': 'a', 'B': 'b'} })
def test_load_bad_fixtures(self): _, path = tempfile.mkstemp(".json", text=True) file = open(path, "w") try: file.write("coucoubad json") file.flush() file.close() a = JsonFixtures(path) self.assertRaisesMessage(ValueError, 'error while loading ', a._load) finally: try: os.remove(path) except OSError: # pragma: no cover pass
def test_fixtures_file_partial_str(self): a = JsonFixtures(c=Path(PARTIAL_DATA_FIXTURES)) self.assertEqual(a._load(), {'c': [{'data': {'C': 'c'}}, {}, {}]})