@@ -34,6 +34,7 @@ def change_crust(webdriver, crust):
34
34
if const .CRUSTS [crust ]:
35
35
webdriver .find_element_by_xpath ("//i[@class#'icon-chevron-right carousel-control-icon is-clickable']" )
36
36
webdriver .find_element_by_xpath (f"//p[contains(text(), '{ crust } ')]" ).click ()
37
+ logging .info (f" { crust } " )
37
38
38
39
39
40
def click_topping (webdriver , topping ):
@@ -64,6 +65,7 @@ def customise_pizza(webdriver, pizza_index, pizza, resource_name):
64
65
"""
65
66
66
67
is_customised = True
68
+ logging .info (f"Adding pizza { pizza ['name' ]} !" )
67
69
68
70
webdriver .find_elements_by_xpath (f"//button[@resource-name='{ resource_name } ']" )[
69
71
pizza_index .index (pizza ['name' ])].click ()
@@ -73,15 +75,17 @@ def customise_pizza(webdriver, pizza_index, pizza, resource_name):
73
75
change_crust (webdriver , pizza ['customisation' ]['crust' ])
74
76
75
77
for topping in pizza ['customisation' ]['extra' ]:
76
- if not click_topping (webdriver , topping ):
77
- is_customised = False
78
- logging .info (f"Added { topping } to the pizza." )
79
-
80
- for topping in pizza ['customisation' ]['remove' ]:
81
- for clicks in range (2 ):
78
+ if topping != "" :
82
79
if not click_topping (webdriver , topping ):
83
80
is_customised = False
84
- logging .info (f"Removed { topping } from the pizza." )
81
+ logging .info (f" + { topping } " )
82
+
83
+ for topping in pizza ['customisation' ]['remove' ]:
84
+ if topping != "" :
85
+ for clicks in range (2 ):
86
+ if not click_topping (webdriver , topping ):
87
+ is_customised = False
88
+ logging .info (f" - { topping } " )
85
89
86
90
if not is_customised :
87
91
error_restart (webdriver )
@@ -122,15 +126,14 @@ def process_pizza_json(webdriver):
122
126
pizza_index = [pizza_text .text for pizza_text in pizzas ]
123
127
124
128
if pizza ['customise' ]:
125
- logging .info (f"Customizing pizza { pizza ['name' ]} !" )
126
-
127
129
if pizza ['name' ] in pizza_index :
128
130
customise_pizza (webdriver , pizza_index , pizza , "Customise" )
129
131
scroll_to_top (webdriver ) # Add to order is at the top of the page
130
132
webdriver .find_element_by_id ("add-to-order" ).click ()
131
133
132
134
else :
133
135
if pizza ['name' ] in pizza_index :
136
+ logging .info (f"Adding pizza { pizza ['name' ]} !" )
134
137
# Adding the pizza that is at the index of the pizza name to the basket
135
138
webdriver .find_elements_by_xpath ("//button[@resource-name='AddToBasket']" )[
136
139
pizza_index .index (pizza ['name' ])].click ()
@@ -162,7 +165,6 @@ def process_pizza_json(webdriver):
162
165
pizza_index = [pizza .text for pizza in pizzas ]
163
166
164
167
if pizza ['name' ] in pizza_index :
165
- logging .info (f"Customizing pizza { pizza ['name' ]} !" )
166
168
customise_pizza (webdriver , pizza_index , pizza , "Choose" )
167
169
168
170
if first_half :
0 commit comments