Example #1
0
 def test_last_check_result_true(self):
     team = generate_sample_model_tree('Team', self.session)
     service = Service(name="Example Service",
                       team=team,
                       check_name="ICMP IPv4 Check",
                       host='127.0.0.1')
     self.session.add(service)
     round_obj = generate_sample_model_tree('Round', self.session)
     check_1 = Check(round=round_obj,
                     service=service,
                     result=False,
                     output='Check exceeded time')
     self.session.add(check_1)
     check_2 = Check(round=round_obj,
                     service=service,
                     result=False,
                     output='Check exceeded time')
     self.session.add(check_2)
     check_3 = Check(round=round_obj,
                     service=service,
                     result=True,
                     output='Good output')
     self.session.add(check_3)
     self.session.commit()
     assert service.last_check_result() is True
 def test_get_last_round_num_rounds_exist(self):
     generate_sample_model_tree('Service', self.session)
     round_5 = Round(number=5)
     self.session.add(round_5)
     round_6 = Round(number=6)
     self.session.add(round_6)
     self.session.commit()
     assert Round.get_last_round_num() == 6
Example #3
0
 def test_checks(self):
     service = generate_sample_model_tree('Service', self.db)
     round_obj = generate_sample_model_tree('Round', self.db)
     check_1 = Check(round=round_obj, service=service)
     self.db.save(check_1)
     check_2 = Check(round=round_obj, service=service)
     self.db.save(check_2)
     check_3 = Check(round=round_obj, service=service)
     self.db.save(check_3)
     assert service.checks == [check_1, check_2, check_3]
Example #4
0
 def test_checks(self):
     service = generate_sample_model_tree('Service', self.session)
     round_obj = generate_sample_model_tree('Round', self.session)
     check_1 = Check(round=round_obj, service=service)
     self.session.add(check_1)
     check_2 = Check(round=round_obj, service=service)
     self.session.add(check_2)
     check_3 = Check(round=round_obj, service=service)
     self.session.add(check_3)
     self.session.commit()
     assert service.checks == [check_1, check_2, check_3]
Example #5
0
 def test_percent_earned(self):
     service = generate_sample_model_tree('Service', self.db)
     service = generate_sample_model_tree('Service', self.db)
     check_1 = Check(service=service, result=True, output='Good output')
     check_2 = Check(service=service, result=True, output='Good output')
     check_3 = Check(service=service, result=True, output='Good output')
     check_4 = Check(service=service, result=True, output='Good output')
     check_5 = Check(service=service, result=False, output='bad output')
     self.db.save(check_1)
     self.db.save(check_2)
     self.db.save(check_3)
     self.db.save(check_4)
     self.db.save(check_5)
     assert service.percent_earned == 80
Example #6
0
 def test_basic_property(self):
     service = generate_sample_model_tree('Service', self.db)
     account = Account(username="******", password="******", service=service)
     self.db.save(account)
     assert account.id is not None
     assert account.service == service
     assert account.service_id == service.id
Example #7
0
 def test_current_score(self):
     team = generate_sample_model_tree('Team', self.session)
     service_1 = Service(name="Example Service 1",
                         team=team,
                         check_name="ICMP IPv4 Check",
                         host='127.0.0.1')
     self.session.add(service_1)
     check_1 = Check(service=service_1, result=True, output='Good output')
     self.session.add(check_1)
     service_2 = Service(name="Example Service 2",
                         team=team,
                         check_name="SSH IPv4 Check",
                         host='127.0.0.2')
     self.session.add(service_2)
     check_2 = Check(service=service_2, result=True, output='Good output')
     self.session.add(check_2)
     check_3 = Check(service=service_2, result=True, output='Good output')
     self.session.add(check_3)
     service_3 = Service(name="Example Service 3",
                         team=team,
                         check_name="SSH IPv4 Check",
                         host='127.0.0.3')
     self.session.add(service_3)
     check_3 = Check(service=service_3, result=False, output='bad output')
     self.session.add(check_3)
     self.session.commit()
     assert team.current_score == 300
Example #8
0
 def test_users(self):
     team = generate_sample_model_tree('Team', self.db)
     user_1 = User(username="******", password="******", team=team)
     user_2 = User(username="******", password="******", team=team)
     self.db.save(user_1)
     self.db.save(user_2)
     assert team.users == [user_1, user_2]
Example #9
0
 def test_username_unique(self):
     team = generate_sample_model_tree('Team', self.db)
     user1 = User(username="******", password="******", team=team)
     self.db.save(user1)
     with pytest.raises(IntegrityError):
         user2 = User(username="******", password="******", team=team)
         self.db.save(user2)
Example #10
0
 def test_get_last_round_num_rounds_exist(self):
     service = generate_sample_model_tree('Service', self.db)
     round_5 = Round(number=5)
     self.db.save(round_5)
     round_6 = Round(number=6)
     self.db.save(round_6)
     assert Round.get_last_round_num() == 6
Example #11
0
 def test_users(self):
     team = generate_sample_model_tree('Team', self.session)
     user_1 = User(username="******", password="******", team=team)
     user_2 = User(username="******", password="******", team=team)
     self.session.add(user_1)
     self.session.add(user_2)
     self.session.commit()
     assert team.users == [user_1, user_2]
Example #12
0
 def test_nonhidden_property(self):
     environment = generate_sample_model_tree('Environment', self.db)
     property_obj = Property(name="ip",
                             value="127.0.0.1",
                             environment=environment,
                             visible=True)
     self.db.save(property_obj)
     assert property_obj.visible is True
Example #13
0
 def test_last_check_result_not_found(self):
     team = generate_sample_model_tree('Team', self.db)
     service = Service(name="Example Service",
                       team=team,
                       check_name="ICMP IPv4 Check",
                       ip_address='127.0.0.1')
     self.db.save(service)
     assert service.last_check_result() is None
Example #14
0
 def test_username_unique(self):
     team = generate_sample_model_tree("Team", self.session)
     user1 = User(username="******", password="******", team=team)
     self.session.add(user1)
     self.session.commit()
     with pytest.raises(IntegrityError):
         user2 = User(username="******", password="******", team=team)
         self.session.add(user2)
         self.session.commit()
Example #15
0
 def test_last_check_result_not_found(self):
     team = generate_sample_model_tree('Team', self.session)
     service = Service(name="Example Service",
                       team=team,
                       check_name="ICMP IPv4 Check",
                       host='127.0.0.1')
     self.session.add(service)
     self.session.commit()
     assert service.last_check_result() is None
 def test_normal_service_id(self):
     user = self.create_default_user()
     service = generate_sample_model_tree('Service', self.session)
     self.set_blue_team(user.team)
     service.team = user.team
     self.session.add(service)
     self.session.commit()
     resp = self.auth_and_get_path('/service/1')
     assert resp.status_code == 200
 def test_unauthorized_services(self):
     user = self.create_default_user()
     service = generate_sample_model_tree('Service', self.session)
     self.set_white_team(user.team)
     service.team = user.team
     self.session.add(service)
     self.session.commit()
     resp = self.auth_and_get_path('/services')
     assert resp.status_code == 302
Example #18
0
 def test_environments(self):
     service = generate_sample_model_tree('Service', self.session)
     environment_1 = Environment(service=service, matching_content='*')
     self.session.add(environment_1)
     environment_2 = Environment(service=service, matching_content='*')
     self.session.add(environment_2)
     environment_3 = Environment(service=service, matching_content='*')
     self.session.add(environment_3)
     self.session.commit()
     assert service.environments == [environment_1, environment_2, environment_3]
Example #19
0
 def test_accounts(self):
     service = generate_sample_model_tree('Service', self.session)
     account_1 = Account(username="******", password="******", service=service)
     self.session.add(account_1)
     account_2 = Account(username="******", password="******", service=service)
     self.session.add(account_2)
     account_3 = Account(username="******", password="******", service=service)
     self.session.add(account_3)
     self.session.commit()
     assert service.accounts == [account_1, account_2, account_3]
Example #20
0
 def test_basic_property(self):
     environment = generate_sample_model_tree('Environment', self.db)
     property_obj = Property(name="ip",
                             value="127.0.0.1",
                             environment=environment)
     self.db.save(property_obj)
     assert property_obj.id is not None
     assert property_obj.environment == environment
     assert property_obj.environment_id == environment.id
     assert property_obj.visible is False
Example #21
0
 def test_basic_user(self):
     team = generate_sample_model_tree('Team', self.db)
     user = User(username="******", password="******", team=team)
     self.db.save(user)
     assert user.id is 1
     assert user.username == "testuser"
     assert user.password == User.generate_hash('testpass')
     assert user.team is team
     assert user.team_id is team.id
     assert user.get_id() == 1
Example #22
0
 def test_last_ten_checks_4_checks(self):
     service = generate_sample_model_tree('Service', self.db)
     check_1 = Check(service=service, result=True, output='Good output')
     check_2 = Check(service=service, result=True, output='Good output')
     check_3 = Check(service=service, result=True, output='Good output')
     check_4 = Check(service=service, result=True, output='Good output')
     self.db.save(check_1)
     self.db.save(check_2)
     self.db.save(check_3)
     self.db.save(check_4)
     assert service.last_ten_checks == [check_4, check_3, check_2, check_1]
Example #23
0
 def test_environments(self):
     service = generate_sample_model_tree('Service', self.db)
     environment_1 = Environment(service=service, matching_regex='*')
     self.db.save(environment_1)
     environment_2 = Environment(service=service, matching_regex='*')
     self.db.save(environment_2)
     environment_3 = Environment(service=service, matching_regex='*')
     self.db.save(environment_3)
     assert service.environments == [
         environment_1, environment_2, environment_3
     ]
Example #24
0
 def test_basic_user(self):
     team = generate_sample_model_tree("Team", self.session)
     user = User(username="******", password="******", team=team)
     self.session.add(user)
     self.session.commit()
     assert user.id == 1
     assert user.username == "testuser"
     assert user.password == User.generate_hash("testpass")
     assert user.team is team
     assert user.team_id is team.id
     assert user.get_id() == 1
 def test_basic_service(self):
     service = generate_sample_model_tree('Service', self.db)
     environment = Environment(service=service, matching_regex='*')
     self.db.save(environment)
     property_1 = Property(name='example_property1', value='somevalue', environment=environment)
     property_2 = Property(name='example_property2', value='anotheralue', environment=environment)
     self.db.save(property_1)
     self.db.save(property_2)
     assert environment.id is not None
     assert environment.service_id == service.id
     assert environment.service == service
     assert environment.properties == [property_1, property_2]
 def test_normal_services(self):
     user = self.create_default_user()
     service = generate_sample_model_tree('Service', self.session)
     self.set_blue_team(user.team)
     service.team = user.team
     self.session.add(service)
     self.session.commit()
     resp = self.auth_and_get_path('/services')
     assert resp.status_code == 200
     assert self.mock_obj.call_args == self.build_args('services.html',
                                                       team_name='Team 1',
                                                       team_id=1)
Example #27
0
 def test_basic_service_with_worker_queue(self):
     team = generate_sample_model_tree('Team', self.session)
     service = Service(name="Example Service", team=team, check_name="ICMP IPv4 Check", host='127.0.0.1', worker_queue='somequeue')
     self.session.add(service)
     self.session.commit()
     assert service.id is not None
     assert service.name == "Example Service"
     assert service.team == team
     assert service.team_id == team.id
     assert service.check_name == "ICMP IPv4 Check"
     assert service.port == 0
     assert service.points == 100
     assert service.worker_queue == 'somequeue'
Example #28
0
 def test_services(self):
     team = generate_sample_model_tree('Team', self.db)
     service_1 = Service(name="Example Service 1",
                         team=team,
                         check_name="ICMP IPv4 Check",
                         ip_address='127.0.0.1')
     service_2 = Service(name="Example Service 2",
                         team=team,
                         check_name="SSH IPv4 Check",
                         ip_address='2.3.4.5')
     self.db.save(service_1)
     self.db.save(service_2)
     assert team.services == [service_1, service_2]
Example #29
0
 def test_max_score(self):
     service = generate_sample_model_tree('Service', self.db)
     check_1 = Check(service=service, result=True, output='Good output')
     check_2 = Check(service=service, result=True, output='Good output')
     check_3 = Check(service=service, result=True, output='Good output')
     check_4 = Check(service=service, result=True, output='Good output')
     check_5 = Check(service=service, result=False, output='bad output')
     self.db.save(check_1)
     self.db.save(check_2)
     self.db.save(check_3)
     self.db.save(check_4)
     self.db.save(check_5)
     assert service.max_score == 500
Example #30
0
 def test_score_earned(self):
     service = generate_sample_model_tree('Service', self.session)
     check_1 = Check(service=service, result=True, output='Good output')
     check_2 = Check(service=service, result=True, output='Good output')
     check_3 = Check(service=service, result=True, output='Good output')
     check_4 = Check(service=service, result=True, output='Good output')
     check_5 = Check(service=service, result=False, output='bad output')
     self.session.add(check_1)
     self.session.add(check_2)
     self.session.add(check_3)
     self.session.add(check_4)
     self.session.add(check_5)
     self.session.commit()
     assert service.score_earned == 400