def test_delete_usergroup_remove_usergroup(self): usergroup_id = 42 test_utils.create_usergroup(usergroup_id=usergroup_id) self.post_to_delete_usergroup(usergroup_id=usergroup_id) usergroup = helpers.get_record_from_id(Usergroup, usergroup_id) assert not usergroup
def test_delete_usergroup_requires_admin_privileges(self): usergroup_id = 42 test_utils.create_usergroup(usergroup_id=usergroup_id) self.post_to_delete_usergroup(usergroup_id=usergroup_id, token_type='writer') usergroup = helpers.get_record_from_id(Usergroup, usergroup_id) assert usergroup
def test_add_member_to_usergroup_with_bad_user_id(self): usergroup_id = 1234 test_utils.create_usergroup(usergroup_id=usergroup_id) response = self.patch_to_edit_usergroups(usergroup_id=usergroup_id, member_ids=[99999]) usergroup = helpers.get_record_from_id(Usergroup, usergroup_id) assert response.status_code == 400 assert not usergroup.members
def test_get_all_usergroups_returns_all_usergroups(self): test_utils.create_usergroup(label='ug101') test_utils.create_usergroup(label='ug201') usergroup_count = len(Usergroup.query.all()) response = self.get_to_get_all_usergroups() response_dict = json.loads(response.data) response_count = len(response_dict['usergroups']) assert response.status_code == 200 assert usergroup_count == response_count
def test_cannot_delete_personal_usergroup(self): usergroup_id = 42 label = 'samson' test_utils.create_usergroup(usergroup_id=usergroup_id, label=label, personal_group=True) self.post_to_delete_usergroup(usergroup_id=usergroup_id) usergroup = helpers.get_record_from_id(Usergroup, usergroup_id) assert usergroup
def test_cannot_edit_personal_usergroups(self): starting_label = 'personal_user42' group_id = 42 test_utils.create_usergroup(label=starting_label, usergroup_id=group_id, personal_group=True) new_label = 'my new group' response = self.patch_to_edit_usergroups(label=new_label, usergroup_id=group_id) assert response.status_code == 401
def test_add_chart_to_usergroup_with_bad_chart_id(self): usergroup_id = 1234 test_utils.create_usergroup(usergroup_id=usergroup_id) chart_id = 9999999 response = self.patch_to_edit_usergroups(usergroup_id=usergroup_id, chart_ids=[chart_id]) usergroup = helpers.get_record_from_id(Usergroup, usergroup_id) assert response.status_code == 400 assert not usergroup.charts
def test_edit_user_cant_remove_personal_usergroup(self): user_id = 42 username = '******' test_utils.create_user(username=username, user_id=user_id) usergroup_ids = [99] test_utils.create_usergroup(label='test_ug', usergroup_id=usergroup_ids[0]) self.patch_to_edit_user(user_id=user_id, usergroup_ids=usergroup_ids) user = User.query.filter(User.id == user_id).first() assert user.get_personal_usergroup()
def test_add_report_to_usergroup(self): usergroup_id = 1234 test_utils.create_usergroup(usergroup_id=usergroup_id) report_id = 42 test_utils.create_report(report_id=report_id) response = self.patch_to_edit_usergroups(usergroup_id=usergroup_id, report_ids=[report_id]) usergroup = helpers.get_record_from_id(Usergroup, usergroup_id) assert response.status_code == 200 assert len(usergroup.reports) == 1
def test_add_query_to_usergroup(self): usergroup_id = 1234 test_utils.create_usergroup(usergroup_id=usergroup_id) query_id = 42 test_utils.create_query(query_id=query_id) response = self.patch_to_edit_usergroups(usergroup_id=usergroup_id, query_ids=[query_id]) usergroup = helpers.get_record_from_id(Usergroup, usergroup_id) assert response.status_code == 200 assert len(usergroup.queries) == 1
def test_add_connection_to_usergroup(self): usergroup_id = 1234 test_utils.create_usergroup(usergroup_id=usergroup_id) connection_id = 42 test_utils.create_connection(connection_id=connection_id) response = self.patch_to_edit_usergroups( usergroup_id=usergroup_id, connection_ids=[connection_id]) usergroup = helpers.get_record_from_id(Usergroup, usergroup_id) assert response.status_code == 200 assert len(usergroup.connections) == 1
def test_edit_label_with_valid_data(self): starting_label = 'my group' group_id = 42 test_utils.create_usergroup(label=starting_label, usergroup_id=group_id) new_label = 'my new group' response = self.patch_to_edit_usergroups(label=new_label, usergroup_id=group_id) usergroup = helpers.get_record_from_id(Usergroup, group_id) usergroup_label = usergroup.label assert response.status_code == 200 assert usergroup_label == new_label
def test_add_member_to_usergroup(self): user_id = 42 user = test_utils.create_user(user_id=user_id) usergroup_id = 1234 test_utils.create_usergroup(usergroup_id=usergroup_id) response = self.patch_to_edit_usergroups(usergroup_id=usergroup_id, member_ids=[user_id]) usergroup = helpers.get_record_from_id(Usergroup, usergroup_id) assert response.status_code == 200 assert len(usergroup.members) == 1 assert usergroup.members[0].id == user_id
def test_edit_label_with_bad_label(self): starting_label = 'my_group' group_id = 42 test_utils.create_usergroup(label=starting_label, usergroup_id=group_id) new_label = True response = self.patch_to_edit_usergroups(label=new_label, usergroup_id=group_id) response_dict = json.loads(response.data) usergroup = helpers.get_record_from_id(Usergroup, group_id) usergroup_label = usergroup.label assert response.status_code == 400 assert usergroup_label == starting_label
def test_get_dicts_from_usergroups(self): user = test_utils.create_user(username='******') starting_usergroups_count = len(user.get_dicts_from_usergroups()) usergroup2 = test_utils.create_usergroup(label='group2') usergroup3 = test_utils.create_usergroup(label='group3') user.usergroups.append(usergroup2) user.usergroups.append(usergroup3) db.session.commit() usergroups = user.get_dicts_from_usergroups() ending_usergroups_count = len(usergroups) assert ending_usergroups_count == starting_usergroups_count + 2 assert isinstance(usergroups[0], dict)
def test_get_dict_returns_dict(self): user = test_utils.create_user(username='******') usergroup = test_utils.create_usergroup(label='group1') usergroup.members.append(user) db.session.commit() usergroup_dict = usergroup.get_dict() assert isinstance(usergroup_dict, dict) assert usergroup_dict['usergroup_id'] assert usergroup_dict['label'] == "group1" assert usergroup_dict['members'][0]['username'] == 'samson'
def test_get_charts(self): usergroup1 = test_utils.create_usergroup(label='group1') user = test_utils.create_user(username='******') chart_label = 'test1' chart1 = test_utils.create_chart(label=chart_label) chart1.usergroups.append(usergroup1) user.usergroups.append(usergroup1) db.session.commit() charts = user.get_charts() assert len(charts) == 1 assert charts[0]['label'] == chart_label
def test_get_reports(self): usergroup1 = test_utils.create_usergroup(label='group1') user = test_utils.create_user(username='******') report1 = Report(label='rep1', creator=user) report1.usergroups.append(usergroup1) user.usergroups.append(usergroup1) db.session.add(report1) db.session.commit() reports = user.get_reports() assert len(reports) == 1 assert reports[0]['label'] == 'rep1' assert reports[0]['creator']['username'] == 'samson'
def test_get_queries(self): usergroup1 = test_utils.create_usergroup(label='group1') user = test_utils.create_user(username='******') query1 = SqlQuery(label='query1', creator=user) query1.usergroups.append(usergroup1) user.usergroups.append(usergroup1) db.session.add(query1) db.session.commit() queries = user.get_queries() assert len(queries) == 1 assert queries[0]['label'] == 'query1' assert queries[0]['creator']['username'] == 'samson'
def test_get_connections(self): usergroup1 = test_utils.create_usergroup(label='group1') user = test_utils.create_user(username='******') connection1 = Connection(label='con1', creator=user) connection1.usergroups.append(usergroup1) user.usergroups.append(usergroup1) db.session.add(connection1) db.session.add(usergroup1) db.session.commit() connections = user.get_connections() assert len(connections) == 1 assert connections[0]['label'] == 'con1'
def test_edit_user_with_valid_usergroups(self): starting_user_count = len(User.query.all()) user_id = 42 test_utils.create_user(username='******', email='*****@*****.**', role='viewer', user_id=user_id) test_utils.create_usergroup(label='ug101', usergroup_id=101) test_utils.create_usergroup(label='ug102', usergroup_id=102) response = self.patch_to_edit_user(username='******', email='*****@*****.**', role='writer', user_id=user_id, usergroup_ids=[101, 102]) edited_user = User.query.filter(User.id == user_id).first() edited_user_usergroup_ids = edited_user.get_usergroup_ids() number_of_users = len(User.query.all()) assert response.status_code == 200 assert 101 in edited_user_usergroup_ids assert number_of_users == starting_user_count + 1
def test_add_usergroup_to_query(self): usergroup_id = 42 usergroup = test_utils.create_usergroup(usergroup_id=usergroup_id) query_id = 1234 test_utils.create_query(query_id=query_id) response = self.patch_to_edit_queries(query_id=query_id, usergroup_ids=[usergroup_id]) query = helpers.get_record_from_id(SqlQuery, query_id) assert response.status_code == 200 assert len(query.usergroups) == 1 assert query.usergroups[0].id == usergroup_id
def test_add_usergroup_to_connection(self): usergroup_id = 42 usergroup = test_utils.create_usergroup(usergroup_id=usergroup_id) connection_id = 1234 test_utils.create_connection(connection_id=connection_id) response = self.patch_to_edit_connection(connection_id=connection_id, usergroup_ids=[usergroup_id]) connection = helpers.get_record_from_id(Connection, connection_id) assert response.status_code == 200 assert len(connection.usergroups) == 1 assert connection.usergroups[0].id == usergroup_id
def test_add_usergroup_to_chart(self): with db.session.no_autoflush: usergroup_id = 42 usergroup = test_utils.create_usergroup(usergroup_id=usergroup_id) chart_id = 1234 test_utils.create_chart(chart_id=chart_id) response = self.patch_to_edit_charts(chart_id=chart_id, usergroup_ids=[usergroup_id]) chart = helpers.get_record_from_id(Chart, chart_id) assert response.status_code == 200 assert len(chart.usergroups) == 1 assert chart.usergroups[0].id == usergroup_id