-
Notifications
You must be signed in to change notification settings - Fork 32
Expand file tree
/
Copy pathconftest.py
More file actions
102 lines (83 loc) · 2.98 KB
/
conftest.py
File metadata and controls
102 lines (83 loc) · 2.98 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
import os
import time
import pytest
headless_bool = True
slowmo_value = 0
try:
PASSWORD = os.environ['PASSWORD']
except KeyError:
import utils.secret_config
PASSWORD = utils.secret_config.PASSWORD
headless_bool = False
slowmo_value = 300
@pytest.fixture()
def set_up(page):
# Assess - Given
# browser = playwright.chromium.launch(headless=False)
# context = browser.new_context()
# # Open new page
# page = context.new_page()
page.goto("https://symonstorozhenko.wixsite.com/website-1")
page.set_default_timeout(3000)
yield page
page.close()
@pytest.fixture(scope='session')
def context_creation(playwright):
# Assess - Given
browser = playwright.chromium.launch(headless=headless_bool, slow_mo=slowmo_value)
context = browser.new_context()
# # Open new page
page = context.new_page()
page.goto("https://symonstorozhenko.wixsite.com/website-1")
page.set_default_timeout(3000)
login_issue = True
while login_issue:
if not page.is_visible("[data-testid=\"signUp.switchToSignUp\"]"):
page.click("button:has-text(\"Log In\")")
else:
login_issue = False
time.sleep(0.1)
# Click [data-testid="signUp.switchToSignUp"]
page.click("[data-testid=\"signUp.switchToSignUp\"]", timeout=2000)
# page.click(":nth-match(:text('Log In'), 2)", timeout=2000)
page.click("[data-testid='switchToEmailLink'] >> [data-testid='buttonElement']")
# page.click("[data-testid='siteMembers.container'] input[type='email']")
# page.fill("[data-testid='siteMembers.container'] input[type='email']", "symon.storozhenko@gmail.com")
page.fill('input:below(:text("Email"))', "symon.storozhenko@gmail.com")
page.press("[data-testid='siteMembers.container'] >> input[type='email']", "Tab")
page.fill("input[type='password']", PASSWORD)
page.click("[data-testid='submit'] >> [data-testid='buttonElement']")
# Save storage state into the file.
storage = context.storage_state(path="state.json")
# Create a new context with the saved storage state.
yield context
# time.sleep(5)
@pytest.fixture()
def login_set_up(context_creation, browser):
context = browser.new_context(storage_state="state.json")
page = context.new_page()
page.goto("https://symonstorozhenko.wixsite.com/website-1")
page.set_default_timeout(3000)
yield page
# time.sleep(3)
page.close()
# @pytest.fixture()
# def login_set_up(context_creation):
# context = context_creation
# page = context.new_page()
# page.goto("https://symonstorozhenko.wixsite.com/website-1")
# page.set_default_timeout(3000)
#
# yield page
# time.sleep(3)
# page.close()
@pytest.fixture
def go_to_new_collection_page(page):
# Assess - Given
# browser = playwright.chromium.launch(headless=False)
# context = browser.new_context()
# # Open new page
# page = context.new_page()
page.goto("/new-collection")
page.set_default_timeout(3000)
yield page