test_onboarding.py 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  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(name="Rowdy Tiger", owner=None)
  10. self.team = self.create_team(organization=self.org, name="Mariachi Band")
  11. self.member = self.create_member(
  12. user=self.user, organization=self.org, role="owner", teams=[self.team]
  13. )
  14. self.login_as(self.user)
  15. @mock.patch("sentry.models.ProjectKey.generate_api_key", return_value="test-dsn")
  16. def test_onboarding(self, generate_api_key):
  17. self.browser.get("/onboarding/%s/" % self.org.slug)
  18. # Welcome step
  19. self.browser.wait_until('[data-test-id="onboarding-step-welcome"]')
  20. self.browser.snapshot(name="onboarding - welcome")
  21. # Platform selection step
  22. self.browser.click('[data-test-id="welcome-next"]')
  23. self.browser.wait_until('[data-test-id="onboarding-step-select-platform"]')
  24. self.browser.snapshot(name="onboarding - select platform")
  25. # Select and create node JS project
  26. self.browser.click('[data-test-id="platform-node"]')
  27. self.browser.click('[data-test-id="platform-select-next"]')
  28. # Project getting started
  29. self.browser.wait_until('[data-test-id="onboarding-step-get-started"]')
  30. self.browser.snapshot(name="onboarding - get started")
  31. # Verify project was created for org
  32. project = Project.objects.get(organization=self.org)
  33. assert project.name == "rowdy-tiger"
  34. assert project.platform == "node"
  35. self.browser.click('[data-test-id="onboarding-getting-started-invite-members"]')
  36. self.browser.snapshot(name="onboarding - invite members")
  37. self.browser.click('[data-test-id="onboarding-getting-started-learn-more"]')
  38. self.browser.snapshot(name="onboarding - learn more")