test_onboarding.py 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. from __future__ import absolute_import
  2. import mock
  3. from sentry.models import Project
  4. from sentry.testutils import AcceptanceTestCase
  5. class OrganizationOnboardingTest(AcceptanceTestCase):
  6. def setUp(self):
  7. super(OrganizationOnboardingTest, self).setUp()
  8. self.user = self.create_user('foo@example.com')
  9. self.org = self.create_organization(
  10. name='Rowdy Tiger',
  11. owner=None,
  12. )
  13. self.team = self.create_team(organization=self.org, name='Mariachi Band')
  14. self.member = self.create_member(
  15. user=self.user,
  16. organization=self.org,
  17. role='owner',
  18. teams=[self.team],
  19. )
  20. self.login_as(self.user)
  21. @mock.patch('sentry.models.ProjectKey.generate_api_key',
  22. return_value='031667ea1758441f92c7995a428d2d14')
  23. def test_onboarding(self, generate_api_key):
  24. self.browser.get('/onboarding/%s/' % self.org.slug)
  25. self.browser.wait_until('.onboarding-container')
  26. self.browser.wait_until_not('.loading-indicator')
  27. self.browser.snapshot(name='onboarding-choose-platform')
  28. self.browser.click('[data-test-id="platform-javascript-angular"]')
  29. self.browser.click('[data-test-id="create-project"]')
  30. self.browser.wait_until('.onboarding-Configure')
  31. self.browser.wait_until_not('.loading-indicator')
  32. project = Project.objects.get(organization=self.org)
  33. assert project.name == 'Angular'
  34. assert project.platform == 'javascript-angular'
  35. self.browser.snapshot(name='onboarding-configure-project')
  36. self.browser.click('[data-test-id="configure-done"]')
  37. self.browser.wait_until_not('.loading-indicator')
  38. assert self.browser.element_exists('.robot')
  39. assert self.browser.element_exists_by_test_id('install-instructions')