test_project_issues.py 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. from __future__ import absolute_import
  2. from django.utils import timezone
  3. from sentry.testutils import AcceptanceTestCase
  4. class ProjectIssuesTest(AcceptanceTestCase):
  5. def setUp(self):
  6. super(ProjectIssuesTest, self).setUp()
  7. self.user = self.create_user('foo@example.com')
  8. self.org = self.create_organization(owner=self.user, name='Rowdy Tiger')
  9. self.team = self.create_team(organization=self.org, name='Mariachi Band')
  10. self.project = self.create_project(
  11. organization=self.org,
  12. teams=[self.team],
  13. name='Bengal',
  14. )
  15. self.environment = self.create_environment(name="staging")
  16. self.login_as(self.user)
  17. self.path = u'/{}/{}/'.format(self.org.slug, self.project.slug)
  18. # TODO(dcramer): abstract fixtures into a basic set that is present for
  19. # all acceptance tests
  20. def test_not_setup(self):
  21. # TODO(dcramer): we should add basic assertions around "i wanted this
  22. # URL but was sent somewhere else"
  23. self.browser.get(self.path)
  24. self.browser.wait_until('[data-test-id="awaiting-events"]')
  25. self.browser.snapshot('project issues not configured')
  26. def test_with_issues(self):
  27. self.project.update(first_event=timezone.now())
  28. self.create_group(
  29. project=self.project,
  30. message='Foo bar',
  31. )
  32. self.browser.get(self.path)
  33. self.browser.wait_until('.ref-group-list')
  34. self.browser.wait_until('.barchart')
  35. self.browser.snapshot('project issues with issues')
  36. def test_with_no_issues(self):
  37. self.project.update(first_event=timezone.now())
  38. self.browser.get(self.path)
  39. self.browser.wait_until('.empty-stream')
  40. self.browser.snapshot('project issues without issues')