def test_send(self): ''' Creates 3 users, 2 teams and 2 filters. User 1 and 2 is a member of team 1 and user 2 is a member of team 2. Team 1 has a relation to both filter 1 and 2. Team 2 has a relation to filter 2. User 1 and 3 should receive an email and User 2 should not. ''' user = User.new(name=u'Test user 1', email='*****@*****.**', notification_types={ 'send_email': { 'data': '*****@*****.**', 'enabled': True, } }) user2 = User.new(name=u'Test user 2', email='*****@*****.**', notification_types={ 'send_email': { 'data': '*****@*****.**', 'enabled': False, } }) user3 = User.new(name=u'Test user 3', email='*****@*****.**', notification_types={ 'send_email': { 'data': '*****@*****.**', 'enabled': True, } }) team = Team.new(name=u'Test team 1', ) team2 = Team.new(name=u'Test team 2', ) filter1 = Filter.new( name=u'Test filter 1', data_yaml='notify: true', ) filter2 = Filter.new( name=u'Test filter 2', data_yaml='notify: false', ) # create a relations User_team.new(team_id=team.id, user_id=user.id) User_team.new(team_id=team2.id, user_id=user2.id) User_team.new(team_id=team.id, user_id=user3.id) Filter_team.new(filter_id=filter1.id, team_id=team.id) Filter_team.new(filter_id=filter2.id, team_id=team.id) Filter_team.new(filter_id=filter2.id, team_id=team2.id) Mock_notifier.email_send = False Notifier.send(message='Test notification', filters=[ filter1, filter2, ]) self.assertTrue(Mock_notifier.email_send)
def test(self): # new filter_ = Filter.new(name=u'Test filter ø', data_yaml='') team = Team.new(name=u'Test team ø') self.assertTrue( Filter_team.new( filter_id=filter_.id, team_id=team.id, ) ) # get teams by filter_id teams = Filter_team.get_teams_by_filter_id(filter_id=filter_.id) self.assertEqual(len(teams), 1) self.assertEqual(team.id, teams[0].id) # delete self.assertTrue( Filter_team.delete( filter_id=filter_.id, team_id=team.id, ) ) teams = Filter_team.get_teams_by_filter_id(filter_id=filter_.id) self.assertEqual(len(teams), 0)
def post(self): ''' Validates and creates a new team. Redirects to the new team if successful. ''' form = forms.Team(self.request.arguments) if form.validate(): try: team = Team.new(name=form.name.data, ) self.redirect('/team/{}'.format(team.id)) return except Team_exception_duplicate_name as e: form.name.errors.append(e.message) self.render( 'team.html', title='New team', form=form, edit=False, )
def test_delete(self): user = self.new_user() team = Team.new( name='Test team', ) self.assertTrue( User_team.new( user_id=user.id, team_id=team.id, ) ) teams = User_teams.get(user_id=user.id) self.assertEqual(len(teams), 1) self.assertEqual(teams[0].id, team.id) self.assertTrue( User_team.delete(user_id=user.id, team_id=team.id) ) teams = User_teams.get(user_id=user.id) self.assertEqual(len(teams), 0)
def post(self): ''' Validates and creates a new team. Redirects to the new team if successful. ''' form = forms.Team(self.request.arguments) if form.validate(): try: team = Team.new( name=form.name.data, ) self.redirect('/team/{}'.format(team.id)) return except Team_exception_duplicate_name as e: form.name.errors.append(e.message) self.render( 'team.html', title='New team', form=form, edit=False, )
def test_new(self): user = self.new_user() team = Team.new( name='Test team', ) self.assertTrue( User_team.new( user_id=user.id, team_id=team.id, ) ) teams = User_teams.get(user_id=user.id) self.assertEqual(len(teams), 1) self.assertEqual(teams[0].id, team.id) users = Users_team.get(team_id=team.id) self.assertEqual(len(users), 1) self.assertEqual(users[0].id, user.id) users = Users_team.get_by_team_list(teams=[team]) self.assertEqual(len(users), 1) self.assertEqual(users[0].id, user.id)
def test_send(self): ''' Creates 3 users, 2 teams and 2 filters. User 1 and 2 is a member of team 1 and user 2 is a member of team 2. Team 1 has a relation to both filter 1 and 2. Team 2 has a relation to filter 2. User 1 and 3 should receive an email and User 2 should not. ''' user = User.new( name=u'Test user 1', email='*****@*****.**', notification_types={ 'send_email': { 'data': '*****@*****.**', 'enabled': True, } } ) user2 = User.new( name=u'Test user 2', email='*****@*****.**', notification_types={ 'send_email': { 'data': '*****@*****.**', 'enabled': False, } } ) user3 = User.new( name=u'Test user 3', email='*****@*****.**', notification_types={ 'send_email': { 'data': '*****@*****.**', 'enabled': True, } } ) team = Team.new( name=u'Test team 1', ) team2 = Team.new( name=u'Test team 2', ) filter1 = Filter.new( name=u'Test filter 1', data_yaml='notify: true', ) filter2 = Filter.new( name=u'Test filter 2', data_yaml='notify: false', ) # create a relations User_team.new( team_id=team.id, user_id=user.id ) User_team.new( team_id=team2.id, user_id=user2.id ) User_team.new( team_id=team.id, user_id=user3.id ) Filter_team.new( filter_id=filter1.id, team_id=team.id ) Filter_team.new( filter_id=filter2.id, team_id=team.id ) Filter_team.new( filter_id=filter2.id, team_id=team2.id ) Mock_notifier.email_send = False Notifier.send( message='Test notification', filters=[ filter1, filter2, ] ) self.assertTrue(Mock_notifier.email_send)
def new_team(self): return Team.new(name=u'Test team ø', )
def new_team(self): return Team.new( name=u'Test team ø', )