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)
Example #2
0
    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
Example #5
0
    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)
Example #6
0
    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