def test_import_users_csv(self): """users:import is working with CSV files""" roles = [ { "name": "Writer", "privileges": {} }, { "name": "Admin", "privileges": {} }, ] self.app.data.insert("roles", roles) cmd = ImportUsersCommand() fixtures_path = join(dirname(__file__), "fixtures") import_file = join(fixtures_path, "import_users_test.csv") cmd.run([ "username", "first_name", "last_name", "sign_off", "email", "role" ], import_file) users_service = get_resource_service("users") roles_services = get_resource_service("roles") found_user = users_service.find_one(req=None, username="******") self.assertIsNotNone(found_user) role_id = roles_services.find_one(req=None, name="Writer")["_id"] self.assertEqual(found_user["role"], role_id) found_user = users_service.find_one(req=None, username="******") self.assertIsNotNone(found_user) role_id = roles_services.find_one(req=None, name="Admin")["_id"] self.assertEqual(found_user["role"], role_id)
def test_import_users(self): """users:import is working with JSON files""" roles = [ {'name': 'Writer', 'privileges': {}}, {'name': 'Admin', 'privileges': {}}, ] self.app.data.insert('roles', roles) cmd = ImportUsersCommand() print('path', fixtures_path) import_file = join(fixtures_path, "import_users_test.json") cmd.run(None, import_file) users_service = get_resource_service('users') roles_services = get_resource_service('roles') found_user = users_service.find_one(req=None, username="******") self.assertIsNotNone(found_user) role_id = roles_services.find_one(req=None, name="Writer")['_id'] self.assertEqual(found_user["role"], role_id) found_user = users_service.find_one(req=None, username="******") self.assertIsNotNone(found_user) role_id = roles_services.find_one(req=None, name="Admin")['_id'] self.assertEqual(found_user["role"], role_id) found_user = users_service.find_one(req=None, username="******") self.assertIsNone(found_user) found_user = users_service.find_one(req=None, username="******") self.assertIsNone(found_user)
def test_import_users(self): """users:import is working with JSON files""" roles = [ { "name": "Writer", "privileges": {} }, { "name": "Admin", "privileges": {} }, ] self.app.data.insert("roles", roles) cmd = ImportUsersCommand() fixtures_path = join(dirname(__file__), "fixtures") import_file = join(fixtures_path, "import_users_test.json") cmd.run(None, import_file) users_service = get_resource_service("users") roles_services = get_resource_service("roles") found_user = users_service.find_one(req=None, username="******") self.assertIsNotNone(found_user) role_id = roles_services.find_one(req=None, name="Writer")["_id"] self.assertEqual(found_user["role"], role_id) found_user = users_service.find_one(req=None, username="******") self.assertIsNotNone(found_user) role_id = roles_services.find_one(req=None, name="Admin")["_id"] self.assertEqual(found_user["role"], role_id) found_user = users_service.find_one(req=None, username="******") self.assertIsNone(found_user) found_user = users_service.find_one(req=None, username="******") self.assertIsNone(found_user)
def test_import_users_activation_email(self): """users:import sends activation link""" roles = [ { "name": "Writer", "privileges": {} }, { "name": "Admin", "privileges": {} }, ] self.app.data.insert("roles", roles) cmd = ImportUsersCommand() fixtures_path = join(dirname(__file__), "fixtures") import_file = join(fixtures_path, "import_users_test.json") with self.app.app_context(): with self.app.mail.record_messages() as outbox: assert len(outbox) == 0 cmd.run(None, import_file, activation_email=True) assert len(outbox) == 2
def test_import_users_csv(self): """users:import is working with CSV files""" roles = [ {'name': 'Writer', 'privileges': {}}, {'name': 'Admin', 'privileges': {}}, ] self.app.data.insert('roles', roles) cmd = ImportUsersCommand() import_file = join(fixtures_path, "import_users_test.csv") cmd.run(["username", "first_name", "last_name", "sign_off", "email", "role"], import_file) users_service = get_resource_service('users') roles_services = get_resource_service('roles') found_user = users_service.find_one(req=None, username="******") self.assertIsNotNone(found_user) role_id = roles_services.find_one(req=None, name="Writer")['_id'] self.assertEqual(found_user["role"], role_id) found_user = users_service.find_one(req=None, username="******") self.assertIsNotNone(found_user) role_id = roles_services.find_one(req=None, name="Admin")['_id'] self.assertEqual(found_user["role"], role_id)
def test_import_users_no_activation_email(self): """users:import does not send activation email""" roles = [ { 'name': 'Writer', 'privileges': {} }, { 'name': 'Admin', 'privileges': {} }, ] self.app.data.insert('roles', roles) cmd = ImportUsersCommand() fixtures_path = join(dirname(__file__), 'fixtures') import_file = join(fixtures_path, "import_users_test.json") with self.app.app_context(): with self.app.mail.record_messages() as outbox: assert len(outbox) == 0 cmd.run(None, import_file) assert len(outbox) == 0