test_project_issues.py 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  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(
  9. owner=self.user,
  10. name='Rowdy Tiger'
  11. )
  12. self.team = self.create_team(
  13. organization=self.org,
  14. name='Mariachi Band'
  15. )
  16. self.project = self.create_project(
  17. organization=self.org,
  18. team=self.team,
  19. name='Bengal',
  20. )
  21. self.login_as(self.user)
  22. self.path = '/{}/{}/'.format(self.org.slug, self.project.slug)
  23. # TODO(dcramer): abstract fixtures into a basic set that is present for
  24. # all acceptance tests
  25. def test_not_setup(self):
  26. # TODO(dcramer): we should add basic assertions around "i wanted this
  27. # URL but was sent somewhere else"
  28. self.browser.get(self.path)
  29. self.browser.wait_until('.awaiting-events')
  30. self.browser.snapshot('project issues not configured')
  31. def test_with_issues(self):
  32. self.project.update(first_event=timezone.now())
  33. self.create_group(
  34. project=self.project,
  35. message='Foo bar',
  36. )
  37. self.browser.get(self.path)
  38. self.browser.wait_until('.group-list')
  39. self.browser.wait_until('.sparkline')
  40. self.browser.snapshot('project issues with issues')
  41. def test_with_no_issues(self):
  42. self.project.update(first_event=timezone.now())
  43. self.browser.get(self.path)
  44. self.browser.wait_until('.empty-stream')
  45. self.browser.snapshot('project issues without issues')