From 1ffe8848f09c53296c0e34ed57a3a0e4057aa601 Mon Sep 17 00:00:00 2001 From: Tony Date: Mon, 13 Jun 2022 15:02:14 -0500 Subject: [PATCH] move all lineup exports into dropdown --- .../templates/lineup/widgets/lineup.html | 29 +++----- teamsnap/tests.py | 74 ++++++++++++++++++- 2 files changed, 85 insertions(+), 18 deletions(-) diff --git a/teamsnap/lineup/templates/lineup/widgets/lineup.html b/teamsnap/lineup/templates/lineup/widgets/lineup.html index b3023e6..522a025 100644 --- a/teamsnap/lineup/templates/lineup/widgets/lineup.html +++ b/teamsnap/lineup/templates/lineup/widgets/lineup.html @@ -8,9 +8,6 @@
{{ event.data.start_date|date:"D, F j, Y g:i A" }}
-
- -
-
- -
-
- {% if request.user.gamechanger_account %} - - {% endif %} -
diff --git a/teamsnap/tests.py b/teamsnap/tests.py index a39b155..796ed16 100644 --- a/teamsnap/tests.py +++ b/teamsnap/tests.py @@ -1 +1,73 @@ -# Create your tests here. +import vcr +from django.conf import settings +from django.contrib.auth import ( + BACKEND_SESSION_KEY, + HASH_SESSION_KEY, + SESSION_KEY, + get_user_model, +) +from django.contrib.sessions.backends.db import SessionStore +from django.contrib.staticfiles.testing import StaticLiveServerTestCase +from selenium import webdriver + + +def create_session_cookie(): + + # First, create a new test user + user = get_user_model() + # user.objects.create_user(username=username, password=password) + user = get_user_model().objects.get(pk=2) + + # Then create the authenticated session using the new user credentials + session = SessionStore() + session[SESSION_KEY] = user.pk + session[BACKEND_SESSION_KEY] = settings.AUTHENTICATION_BACKENDS[0] + session[HASH_SESSION_KEY] = user.get_session_auth_hash() + session.save() + + # Finally, create the cookie dictionary + cookie = { + "name": settings.SESSION_COOKIE_NAME, + "value": session.session_key, + "secure": False, + "path": "/", + } + return cookie + + +class MySeleniumTests(StaticLiveServerTestCase): + fixtures = ["benchcoach/fixtures/dump.json"] + + @classmethod + def setUpClass(cls): + cls.port = 8000 + super().setUpClass() + cls.selenium = webdriver.Chrome("/opt/homebrew/bin/chromedriver") + cls.selenium.implicitly_wait(10) + + @classmethod + def tearDownClass(cls): + cls.selenium.quit() + super().tearDownClass() + + def setUp(self): + session_cookie = create_session_cookie() + self.selenium.get("{}{}".format(self.live_server_url, "/")) + self.selenium.add_cookie(session_cookie) + self.selenium.refresh() + pass + + @vcr.use_cassette( + "teamsnap/lineup/fixtures/test.yaml", + ignore_localhost=True, + # record_mode="new_episodes", + decode_compressed_response=True, + allow_playback_repeats=True, + ) + def test_login(self): + self.selenium.get( + "{url}/{team_id}/event/{event_ids}/edit_lineup/".format( + url=self.live_server_url, team_id=6882652, event_ids=266446202 + ) + ) + breakpoint()