def test_get_strength(self): dir = self.src.directories.create({ 'description': uuid4().hex, 'name': uuid4().hex, 'status': 'DISABLED', 'custom_data': {'hi': 'there'}, }) migrator = DirectoryMigrator(destination_client=self.dst, source_directory=dir) strength = migrator.get_strength() self.assertTrue(strength) dir.delete()
def test_copy_custom_data(self): dir = self.src.directories.create({ 'custom_data': {'hi': 'there'}, 'description': uuid4().hex, 'name': uuid4().hex, 'status': 'DISABLED', }) migrator = DirectoryMigrator(destination_client=self.dst, source_directory=dir) copied_dir = migrator.copy_dir() copied_data = migrator.copy_custom_data() self.assertEqual(copied_data['hi'], 'there') dir.delete() copied_dir.delete()
def test_copy_strength(self): dir = self.src.directories.create({'name': uuid4().hex}) strength = dir.password_policy.strength strength.max_length = 101 strength.save() migrator = DirectoryMigrator(destination_client=self.dst, source_directory=dir) copied_dir = migrator.copy_dir() copied_strength = migrator.copy_strength() for key in copied_strength.writable_attrs: self.assertEqual(copied_strength[key], strength[key]) dir.delete() copied_dir.delete()
def test_copy_dir(self): dir = self.src.directories.create({ 'description': uuid4().hex, 'name': uuid4().hex, 'status': 'DISABLED', 'custom_data': {'hi': 'there'}, }) migrator = DirectoryMigrator(destination_client=self.dst, source_directory=dir) copied_dir = migrator.copy_dir() self.assertTrue(copied_dir) self.assertEqual(dir.description, copied_dir.description) self.assertEqual(dir.name, copied_dir.name) self.assertEqual(dir.provider.provider_id, copied_dir.provider.provider_id) self.assertEqual(dir.status, copied_dir.status) dir.delete() copied_dir.delete() dir = self.src.directories.create({ 'description': uuid4().hex, 'name': uuid4().hex, 'status': 'DISABLED', 'provider': { 'provider_id': 'google', 'client_id': 'test', 'client_secret': 'test', 'redirect_uri': 'https://test.com/callback', } }) migrator = DirectoryMigrator(destination_client=self.dst, source_directory=dir) copied_dir = migrator.copy_dir() self.assertTrue(copied_dir) self.assertEqual(dir.description, copied_dir.description) self.assertEqual(dir.name, copied_dir.name) self.assertEqual(dir.provider.provider_id, copied_dir.provider.provider_id) self.assertEqual(dir.provider.client_id, copied_dir.provider.client_id) self.assertEqual(dir.provider.client_secret, copied_dir.provider.client_secret) self.assertEqual(dir.provider.redirect_uri, copied_dir.provider.redirect_uri) self.assertEqual(dir.status, copied_dir.status) dir.delete() copied_dir.delete()
def setUp(self): self.src = Client(id=SRC_CLIENT_ID, secret=SRC_CLIENT_SECRET) self.dst = Client(id=DST_CLIENT_ID, secret=DST_CLIENT_SECRET) self.dir = self.src.directories.create({ 'description': uuid4().hex, 'name': uuid4().hex, }) self.group = self.dir.groups.create({ 'description': uuid4().hex, 'name': uuid4().hex, 'status': 'DISABLED', 'custom_data': {'hi': 'there'}, }) migrator = DirectoryMigrator(destination_client=self.dst, source_directory=self.dir) self.dst_dir = migrator.migrate()
def setUp(self): self.src = Client(id=SRC_CLIENT_ID, secret=SRC_CLIENT_SECRET) self.dst = Client(id=DST_CLIENT_ID, secret=DST_CLIENT_SECRET) self.src_dir = self.src.directories.create({'name': uuid4().hex}) self.src_group = self.src_dir.groups.create({'name': uuid4().hex}) self.src_org = self.src.organizations.create({'name': uuid4().hex, 'name_key': uuid4().hex}) migrator = DirectoryMigrator(destination_client=self.dst, source_directory=self.src_dir) self.dst_dir = migrator.migrate() migrator = GroupMigrator(destination_directory=self.dst_dir, source_group=self.src_group) self.dst_group = migrator.migrate() migrator = OrganizationMigrator(destination_client=self.dst, source_organization=self.src_org) self.dst_org = migrator.migrate() self.src_mapping_1 = self.src.organization_account_store_mappings.create({ 'organization': self.src_org, 'account_store': self.src_dir, 'list_index': 0, 'is_default_account_store': True, 'is_default_group_store': True, }) self.src_mapping_2 = self.src.organization_account_store_mappings.create({ 'organization': self.src_org, 'account_store': self.src_group, 'list_index': 1, 'is_default_account_store': False, 'is_default_group_store': False, })
def setUp(self): self.src = Client(id=SRC_CLIENT_ID, secret=SRC_CLIENT_SECRET) self.dst = Client(id=DST_CLIENT_ID, secret=DST_CLIENT_SECRET) self.dir = self.src.directories.create({ 'description': uuid4().hex, 'name': uuid4().hex, }) self.account = self.dir.accounts.create({ 'custom_data': {'hi': 'there'}, 'username': uuid4().hex, 'given_name': uuid4().hex, 'middle_name': uuid4().hex, 'surname': uuid4().hex, 'email': uuid4().hex + '@test.com', 'password': '******', 'status': 'ENABLED', }) migrator = DirectoryMigrator(destination_client=self.dst, source_directory=self.dir) self.dst_dir = migrator.migrate()
def test_migrate(self): dir = self.src.directories.create({ 'description': uuid4().hex, 'name': uuid4().hex, 'status': 'DISABLED', 'custom_data': {'hi': 'there'}, }) custom_data = dir.custom_data strength = dir.password_policy.strength strength.max_length = 100 strength.min_length = 1 strength.min_lower_case = 0 strength.min_numeric = 0 strength.min_symbol = 0 strength.min_upper_case = 0 strength.min_diacritic = 0 strength.save() migrator = DirectoryMigrator(destination_client=self.dst, source_directory=dir) copied_dir = migrator.migrate() copied_custom_data = copied_dir.custom_data copied_strength = copied_dir.password_policy.strength self.assertEqual(copied_dir.description, dir.description) self.assertEqual(copied_dir.name, dir.name) self.assertEqual(copied_dir.status, dir.status) self.assertEqual(copied_custom_data['hi'], custom_data['hi']) for key in sanitize(strength).keys(): self.assertEqual(copied_strength[key], strength[key]) dir.delete() copied_dir.delete()
def setUp(self): self.src = Client(id=SRC_CLIENT_ID, secret=SRC_CLIENT_SECRET) self.dst = Client(id=DST_CLIENT_ID, secret=DST_CLIENT_SECRET) self.src_dir = self.src.directories.create({'name': uuid4().hex}) self.src_group = self.src_dir.groups.create({'name': uuid4().hex}) self.src_account = self.src_dir.accounts.create({ 'given_name': uuid4().hex, 'surname': uuid4().hex, 'email': uuid4().hex + '@test.com', 'password': '******', }) self.src_membership = self.src_account.add_group(self.src_group) migrator = DirectoryMigrator(destination_client=self.dst, source_directory=self.src_dir) self.dst_dir = migrator.migrate() migrator = GroupMigrator(destination_directory=self.dst_dir, source_group=self.src_group) self.dst_group = migrator.migrate() migrator = AccountMigrator(destination_directory=self.dst_dir, source_account=self.src_account, source_password='******') self.dst_account = migrator.migrate()
def setUp(self): self.src = Client(id=SRC_CLIENT_ID, secret=SRC_CLIENT_SECRET) self.dst = Client(id=DST_CLIENT_ID, secret=DST_CLIENT_SECRET) self.src_dir = self.src.directories.create({'name': uuid4().hex}) self.src_account_creation_policy = self.src_dir.account_creation_policy self.src_account_creation_policy.verification_email_status = 'ENABLED' self.src_account_creation_policy.verification_success_email_status = 'ENABLED' self.src_account_creation_policy.welcome_email_status = 'ENABLED' self.src_account_creation_policy.save() self.src_password_policy = self.src_dir.password_policy self.src_password_policy.reset_email_status = 'ENABLED' self.src_password_policy.reset_success_email_status = 'ENABLED' self.src_password_policy.reset_token_ttl = 100 self.src_password_policy.save() self.src_verification_email_template = self.src_account_creation_policy.verification_email_templates[0] self.src_verification_email_template.description = uuid4().hex self.src_verification_email_template.from_email_address = uuid4().hex + '@test.com' self.src_verification_email_template.from_name = uuid4().hex self.src_verification_email_template.html_body = '${url}' + uuid4().hex self.src_verification_email_template.mime_type = 'text/html' self.src_verification_email_template.name = uuid4().hex self.src_verification_email_template.subject = uuid4().hex self.src_verification_email_template.text_body = '${url}' + uuid4().hex self.src_verification_email_template.save() self.src_verification_success_email_template = self.src_account_creation_policy.verification_success_email_templates[0] self.src_verification_success_email_template.description = uuid4().hex self.src_verification_success_email_template.from_email_address = uuid4().hex + '@test.com' self.src_verification_success_email_template.from_name = uuid4().hex self.src_verification_success_email_template.html_body = '${url}' + uuid4().hex self.src_verification_success_email_template.mime_type = 'text/html' self.src_verification_success_email_template.name = uuid4().hex self.src_verification_success_email_template.subject = uuid4().hex self.src_verification_success_email_template.text_body = '${url}' + uuid4().hex self.src_verification_success_email_template.save() self.src_welcome_email_template = self.src_account_creation_policy.welcome_email_templates[0] self.src_welcome_email_template.description = uuid4().hex self.src_welcome_email_template.from_email_address = uuid4().hex + '@test.com' self.src_welcome_email_template.from_name = uuid4().hex self.src_welcome_email_template.html_body = '${url}' + uuid4().hex self.src_welcome_email_template.mime_type = 'text/html' self.src_welcome_email_template.name = uuid4().hex self.src_welcome_email_template.subject = uuid4().hex self.src_welcome_email_template.text_body = '${url}' + uuid4().hex self.src_welcome_email_template.save() self.src_reset_email_template = self.src_password_policy.reset_email_templates[0] self.src_reset_email_template.description = uuid4().hex self.src_reset_email_template.from_email_address = uuid4().hex + '@test.com' self.src_reset_email_template.from_name = uuid4().hex self.src_reset_email_template.html_body = '${url}' + uuid4().hex self.src_reset_email_template.mime_type = 'text/html' self.src_reset_email_template.name = uuid4().hex self.src_reset_email_template.subject = uuid4().hex self.src_reset_email_template.text_body = '${url}' + uuid4().hex self.src_reset_email_template.save() self.src_reset_success_email_template = self.src_password_policy.reset_success_email_templates[0] self.src_reset_success_email_template.description = uuid4().hex self.src_reset_success_email_template.from_email_address = uuid4().hex + '@test.com' self.src_reset_success_email_template.from_name = uuid4().hex self.src_reset_success_email_template.html_body = '${url}' + uuid4().hex self.src_reset_success_email_template.mime_type = 'text/html' self.src_reset_success_email_template.name = uuid4().hex self.src_reset_success_email_template.subject = uuid4().hex self.src_reset_success_email_template.text_body = '${url}' + uuid4().hex self.src_reset_success_email_template.save() migrator = DirectoryMigrator(destination_client=self.dst, source_directory=self.src_dir) self.dst_dir = migrator.migrate()