flights_gui_henry_tests 1.9.0 → 1.9.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +8 -8
- data/Gemfile +1 -0
- data/features/step_definitions/checkout/checkout_steps.rb +60 -21
- data/features/step_definitions/checkout/error_messages.rb +1 -1
- data/features/step_definitions/filter/matrix_steps.rb +13 -12
- data/features/step_definitions/landing/landing_steps.rb +1 -1
- data/features/step_definitions/search/fenix_steps.rb +0 -20
- data/features/step_definitions/search/flight_gui_steps.rb +1 -1
- data/features/support/lib/clusters/checkout_cluster.rb +56 -0
- data/features/support/lib/clusters/results_cluster.rb +8 -3
- data/features/support/lib/clusters.rb +2 -1
- data/features/tests/checkout/integration.feature +1 -0
- data/features/tests/checkout/low_cost.feature +1 -1
- data/flights_gui_henry_tests.gemspec +1 -1
- metadata +3 -2
checksums.yaml
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
---
|
|
2
2
|
!binary "U0hBMQ==":
|
|
3
3
|
metadata.gz: !binary |-
|
|
4
|
-
|
|
4
|
+
ZjE4ODk4YmFlZTU3MTI5MjllMzdkYzA1MDI3OGNhMjAzYzRhM2MyYQ==
|
|
5
5
|
data.tar.gz: !binary |-
|
|
6
|
-
|
|
6
|
+
YmI0NTcyYzFmNTc0ZTE2OTE5MTJmMTY1MjI0NTc2NjhlMDQyNzY5NQ==
|
|
7
7
|
SHA512:
|
|
8
8
|
metadata.gz: !binary |-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
9
|
+
MGY3YjE5ODNiMzE0ZDQxYmY3ZjljY2JhY2QxNTQxYzQzYTA1OGQzYmE5YTM5
|
|
10
|
+
YzA0MDEwOTZhYTY2NWE3YzQ1Mzg5ZjVjMTI3OGNjZmZlNzdiMzFhOGMxZTBk
|
|
11
|
+
ZTMxNmRiYWVjZDkxZTA4OGUxMWZhZmFmZGFiYzcwMWRkNTg1MDc=
|
|
12
12
|
data.tar.gz: !binary |-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
13
|
+
YTA5ZjY5ZjkxOTg3MDNjMjlmMzFlNWM1MGZlZjBjNDkyMTk0NjQ2MzI2NzM4
|
|
14
|
+
ZjJiNWM1N2ZjMjJmY2FlMzlhMDU1MGUwYTE1Mzk0ODlkYzM2MDc0ODA5NDVj
|
|
15
|
+
NWZkM2U4ZDg3YWQ5MmNmMDAwZTFlYjNjMTU3MDU5Y2YxOTczM2Y=
|
data/Gemfile
CHANGED
|
@@ -10,29 +10,20 @@ When /^verifico que los precios de las cuotas se muestran correctamente$/ do
|
|
|
10
10
|
radio.click
|
|
11
11
|
doc=Hpricot.parse(BROWSER.span(:id,'total-price').html)
|
|
12
12
|
total_2 = doc.inner_text.gsub(/\D/,'').to_i
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
if interes
|
|
13
|
+
unless radio.attribute_value("data-regular-expressions").nil?
|
|
14
|
+
keys = JSON.parse(radio.attribute_value("data-regular-expressions")).keys
|
|
15
|
+
if interes or keys.select{|key| key.match(/(.*)CREDIT(.*)null/)}.first
|
|
16
16
|
validar_cuota_con_intereses(total_1,total_2)
|
|
17
17
|
else
|
|
18
|
-
case
|
|
19
|
-
when /1(.*)CREDIT(.*)
|
|
20
|
-
when /(
|
|
21
|
-
when /(.*)CREDIT(.*)
|
|
22
|
-
end
|
|
18
|
+
case keys.first
|
|
19
|
+
when /1(.*)CREDIT(.*)null$/ then validar_cuota_un_pago()
|
|
20
|
+
when /(.*)CREDIT(.*)null$/ then validar_cuota_con_intereses(total_1,total_2)
|
|
21
|
+
when /(.*)CREDIT(.*)$/ then validar_cuota_sin_intereses(total_1,total_2)
|
|
22
|
+
end
|
|
23
|
+
#keys.uniq!.length.equal (keys.length)
|
|
24
|
+
doc=Hpricot.parse(BROWSER.div(:id,'card-group').html)
|
|
25
|
+
(doc/'select#card-brand option').collect{|option| option.attributes['value']}.sort.should equal(keys.sort)
|
|
23
26
|
end
|
|
24
|
-
cards = radio.value.split("_")
|
|
25
|
-
shares = cards.delete(cards[0])
|
|
26
|
-
options = []
|
|
27
|
-
cards.each do |option|
|
|
28
|
-
tmp = option.split("-")
|
|
29
|
-
last = tmp.delete(tmp.last)
|
|
30
|
-
options << "#{shares}_#{last}_#{tmp.compact.join('_')}"
|
|
31
|
-
end
|
|
32
|
-
doc=Hpricot.parse(BROWSER.div(:id,'card-group').html)
|
|
33
|
-
if BROWSER.spans(:class,'bank-interest-description').collect{|span| span.present?}.empty?
|
|
34
|
-
(doc/'select#card-brand option').collect{|option| option.attributes['value'].gsub('_null','')}.sort.should equal(options.sort)
|
|
35
|
-
end
|
|
36
27
|
else
|
|
37
28
|
interes = true
|
|
38
29
|
end
|
|
@@ -141,4 +132,52 @@ end
|
|
|
141
132
|
|
|
142
133
|
Then /^se elijio otro vuelo$/ do
|
|
143
134
|
@pop_up.should be_true
|
|
144
|
-
end
|
|
135
|
+
end
|
|
136
|
+
|
|
137
|
+
Then /^Valido los valores del desglose del checkout$/ do
|
|
138
|
+
puts @itinerario.tarifas
|
|
139
|
+
@itinerario_checkout = CheckoutCluster.new(@search.description,Hpricot.parse(BROWSER.div(:id,'detail').html))
|
|
140
|
+
puts @itinerario_checkout.tarifas
|
|
141
|
+
@itinerario_checkout.validarSumaDesgloce.should be_within(4).of(@itinerario_checkout.tarifas['total'].value)
|
|
142
|
+
unless @itinerario_checkout.tarifas['adt'].valor.zero?
|
|
143
|
+
@itinerario_checkout.tarifas['adt'].valor.should equal(@itinerario_checkout.tarifas['tarifa_adulto'].valor * @search.adt)
|
|
144
|
+
end
|
|
145
|
+
@itinerario.tarifas.each_pair do |key,value|
|
|
146
|
+
if @itinerario_checkout.tarifas[key] and !value.zero? and value.currency == @itinerario_checkout.tarifas[key].currency
|
|
147
|
+
value.should equal(@itinerario_checkout.tarifas[key])
|
|
148
|
+
end
|
|
149
|
+
end
|
|
150
|
+
end
|
|
151
|
+
|
|
152
|
+
And /^Levanto los datos del vuelo$/ do
|
|
153
|
+
@cluster_json = @search.get_results_search_service
|
|
154
|
+
BROWSER.div(:id,'ticket').link(:class,'ux-shared-checkout-thanks-more').should visible("Link para popup de detalle de vuelo")
|
|
155
|
+
BROWSER.div(:id,'ticket').link(:class,'ux-shared-checkout-thanks-more').click
|
|
156
|
+
Watir::Wait.until(timeout = 20){BROWSER.div(:id,'popup-booking-details').present?}
|
|
157
|
+
popup_detalle_vuelo = Hpricot.parse(BROWSER.div(:id,'popup-booking-details').html)
|
|
158
|
+
popup_detalle_vuelo.inner_text.empty?.should_not be_true
|
|
159
|
+
@monto_total=(popup_detalle_vuelo/"span#total-price span.amount").inner_text.gsub(/\.|\,/,'').to_i
|
|
160
|
+
BROWSER.div(:id,'popup-booking-details').links(:class,'number').each do |a|
|
|
161
|
+
a.click
|
|
162
|
+
Watir::Wait.until(timeout=20){BROWSER.div(:class,"flights-popup popup-detail").present?}
|
|
163
|
+
doc = Hpricot.parse(BROWSER.div(:class,"flights-popup popup-detail").html)
|
|
164
|
+
detail = DetailsCluster.new(doc)
|
|
165
|
+
BROWSER.div(:class,"flights-popup popup-detail").span(:class,'popup-close-button popup-close').click
|
|
166
|
+
Watir::Wait.until(timeout=20){!BROWSER.div(:class,"flights-popup popup-detail").present?}
|
|
167
|
+
sleep(1)
|
|
168
|
+
end
|
|
169
|
+
BROWSER.div(:id,'popup-booking-details').span(:class,'popup-close-button popup-close').click
|
|
170
|
+
@popup_detalle_vuelo = CheckoutCluster.new(@search.description,popup_detalle_vuelo)
|
|
171
|
+
unless @pop_up
|
|
172
|
+
puts @popup_detalle_vuelo.tarifas
|
|
173
|
+
@popup_detalle_vuelo.validarSumaDesgloce.should be_within(4).of(@popup_detalle_vuelo.tarifas['total'].value)
|
|
174
|
+
unless @popup_detalle_vuelo.tarifas['adt'].valor.zero?
|
|
175
|
+
@popup_detalle_vuelo.tarifas['adt'].valor.should equal(@popup_detalle_vuelo.tarifas['tarifa_adulto'].valor * @search.adt)
|
|
176
|
+
end
|
|
177
|
+
@itinerario_checkout.tarifas.each_pair do |key,value|
|
|
178
|
+
if @popup_detalle_vuelo.tarifas[key] and !value.zero? and value.currency == @popup_detalle_vuelo.tarifas[key].currency
|
|
179
|
+
value.should equal(@popup_detalle_vuelo.tarifas[key])
|
|
180
|
+
end
|
|
181
|
+
end
|
|
182
|
+
end
|
|
183
|
+
end
|
|
@@ -23,7 +23,7 @@ When /^Verifico que sean visibles los campos obligatorios$/ do
|
|
|
23
23
|
index += 1
|
|
24
24
|
end
|
|
25
25
|
container = BROWSER.fieldset(:id,'payment')
|
|
26
|
-
container.radio(:
|
|
26
|
+
container.radio(:id,"installment-0").should visible
|
|
27
27
|
container.select_list(:id,'card-brand').should visible
|
|
28
28
|
container.text_field(:id,'card-number').should visible
|
|
29
29
|
container.select_list(:id,'card-expiration-month').should visible
|
|
@@ -189,17 +189,17 @@ And /^Verifico que la matriz cumpla con el rango de fechas de la busqueda$/ do
|
|
|
189
189
|
months << today.mes.capitalize
|
|
190
190
|
today = today +1
|
|
191
191
|
end
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
#
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
192
|
+
months.uniq!
|
|
193
|
+
visible_months.delete(visible_months.last) if (visible_months.length!=months.length)
|
|
194
|
+
months.sort.should equal(visible_months.sort) #verifico que se muestren todos los meses hasta la fecha de salida
|
|
195
|
+
(doc/"div.fare-chart-main div.fare-chart-current-price div").first.attributes['data-month-index'].to_i.should equal(@search.date_from_1.month - 1) #verifico que el mes del precio mostrado sea el correcto
|
|
196
|
+
(doc/"div.fare-chart-main div.fare-chart-current-price div").first.attributes['data-suggestion-index'].to_i.should equal(@search.date_from_1.day - 1) #verifico que el mes del precio mostrado sea el correcto
|
|
197
|
+
|
|
198
|
+
#secondary
|
|
199
|
+
visible_months_abbr = BROWSER.div(:class,'fare-chart-secondary').divs(:class,'fare-chart-bars-text').collect{|m| m.text}
|
|
200
|
+
visible_months_abbr.should include?(@search.date_from_1.mes_abrr.capitalize)
|
|
201
|
+
(doc/"div.fare-chart-secondary div.fare-chart-current-price div").first.attributes['data-month-index'].to_i.should equal(@search.date_from_1.month - 1) #verifico que el mes del precio mostrado sea el correcto
|
|
202
|
+
(doc/"div.fare-chart-secondary div.fare-chart-current-price div").first.attributes['data-suggestion-index'].to_i.should equal(@search.date_from_1.day - 1) #verifico que el mes del precio mostrado sea el correcto
|
|
203
203
|
end
|
|
204
204
|
|
|
205
205
|
And /^Verificar que los datos mostrados en la matriz sean correctos$/ do
|
|
@@ -220,7 +220,8 @@ And /^Verificar que filtre por una celda de la matriz$/ do
|
|
|
220
220
|
end
|
|
221
221
|
doc = Hpricot.parse(BROWSER.div(:id,'fare-chart').html)
|
|
222
222
|
month_bar = (doc/"div.fare-chart-main div.fare-chart-bars div.fare-chart-min-price")
|
|
223
|
-
|
|
223
|
+
puts "#{(month_bar/'div').first.attributes['data-suggestion-index'].to_i+1}"+"/"+"#{(month_bar/'div').first.attributes['data-month-index'].to_i+1}"+"/"+"2014"
|
|
224
|
+
@search.set_from_date(Date.parse("#{(month_bar/'div').first.attributes['data-suggestion-index'].to_i+1}"+"/"+"#{(month_bar/'div').first.attributes['data-month-index'].to_i+1}"+"/"+"2014"))
|
|
224
225
|
BROWSER.div(:class,'fare-chart-main').div(:class,'fare-chart-bar fare-chart-min-price').div(:class,'fare-chart-bar-content').click
|
|
225
226
|
step "Espero que termine de cargar"
|
|
226
227
|
step "Ingreso a la matriz de tendencia de precios"
|
|
@@ -312,7 +312,7 @@ end
|
|
|
312
312
|
|
|
313
313
|
When /^Verifico que el paginado no rompa en la ultima paginas$/ do
|
|
314
314
|
doc = Hpricot.parse(BROWSER.html)
|
|
315
|
-
|
|
315
|
+
unless (doc/"div.flights-pagination li.page a").empty?
|
|
316
316
|
url_with_filter = BROWSER.url
|
|
317
317
|
iterator = BROWSER.div(:class,'flights-pagination').lis(:class,'page')[-1].text
|
|
318
318
|
BROWSER.div(:class,'flights-pagination').lis(:class,'page')[-1].links[0].click
|
|
@@ -4,26 +4,6 @@ And /^cumple para pruebas en fenix$/ do
|
|
|
4
4
|
$ENV.upcase.should equal("RC")
|
|
5
5
|
end
|
|
6
6
|
|
|
7
|
-
And /^Levanto los datos del vuelo$/ do
|
|
8
|
-
@cluster_json = @search.get_results_search_service
|
|
9
|
-
BROWSER.div(:id,'ticket').link(:class,'ux-shared-checkout-thanks-more').should visible("Link para popup de detalle de vuelo")
|
|
10
|
-
BROWSER.div(:id,'ticket').link(:class,'ux-shared-checkout-thanks-more').click
|
|
11
|
-
Watir::Wait.until(timeout = 20){BROWSER.div(:id,'popup-booking-details').present?}
|
|
12
|
-
popup_detalle_vuelo = Hpricot.parse(BROWSER.div(:id,'popup-booking-details').html)
|
|
13
|
-
popup_detalle_vuelo.inner_text.empty?.should_not be_true
|
|
14
|
-
@monto_total=(popup_detalle_vuelo/"span#total-price span.amount").inner_text.gsub(/\.|\,/,'').to_i
|
|
15
|
-
BROWSER.div(:id,'popup-booking-details').links(:class,'number').each do |a|
|
|
16
|
-
a.click
|
|
17
|
-
Watir::Wait.until(timeout=20){BROWSER.div(:class,"flights-popup popup-detail").present?}
|
|
18
|
-
doc = Hpricot.parse(BROWSER.div(:class,"flights-popup popup-detail").html)
|
|
19
|
-
detail = DetailsCluster.new(doc)
|
|
20
|
-
BROWSER.div(:class,"flights-popup popup-detail").span(:class,'popup-close-button popup-close').click
|
|
21
|
-
Watir::Wait.until(timeout=20){!BROWSER.div(:class,"flights-popup popup-detail").present?}
|
|
22
|
-
sleep(1)
|
|
23
|
-
end
|
|
24
|
-
BROWSER.div(:id,'popup-booking-details').span(:class,'popup-close-button popup-close').click
|
|
25
|
-
end
|
|
26
|
-
|
|
27
7
|
Then /^Inicializo las pruebas en fenix$/ do
|
|
28
8
|
puts BROWSER.url
|
|
29
9
|
data_cluster = @item_json
|
|
@@ -132,7 +132,7 @@ end
|
|
|
132
132
|
|
|
133
133
|
And /^Completo el formulario de tarjeta$/ do
|
|
134
134
|
container = BROWSER.fieldset(:id,'payment')
|
|
135
|
-
container.
|
|
135
|
+
container.div(:class,"installment-info").text.downcase.no_accents.match(/debito/) ? container.radio(:id,"installment-1").click : container.radio(:id,"installment-0").click
|
|
136
136
|
container.select_list(:id,'card-brand').select("Visa")
|
|
137
137
|
container.text_field(:id,'card-number').set("4242424242424242")
|
|
138
138
|
container.select_list(:id,'card-expiration-month').select('10')
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
class CheckoutCluster
|
|
2
|
+
|
|
3
|
+
attr_accessor :ida, :vuelta, :tarifas
|
|
4
|
+
|
|
5
|
+
def initialize(itinerario,html,page = 0)
|
|
6
|
+
self.load_prices((html/"div.price-info"))
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
def load_prices(p_html)
|
|
10
|
+
|
|
11
|
+
@tarifas = Hash.new
|
|
12
|
+
if (p_html/"span#secondary-currency").empty?
|
|
13
|
+
@tarifas['tarifa_adulto'] = Price.new((p_html/"li.adult-price span[@class='price-currency'] span.currency").first.inner_text.strip + " " + (p_html/"li.adult-price span[@class='price-currency'] span.amount").first.inner_text.strip)
|
|
14
|
+
else
|
|
15
|
+
@tarifas['tarifa_adulto'] = Price.new((p_html/"div.adult-price-conversion span#local-currency span.code").first.inner_text.strip + " " + (p_html/"div.adult-price-conversion span#local-currency span.amount").first.inner_text.strip)
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
adt = (p_html/"li.adult_fare").select{|li| li.inner_text.no_accents.downcase =~ /adulto|adult/}.first
|
|
19
|
+
@tarifas['adt'] = adt ? Price.new((adt/"span.currency").first.inner_text.strip + " " + (adt/"span.amount").first.inner_text.strip) : Price.new("$ 0",true)
|
|
20
|
+
|
|
21
|
+
cnn = (p_html/"li").select{|li| li.inner_text.no_accents.downcase =~ /nino|criancas|child/}.first
|
|
22
|
+
@tarifas['cnn'] = cnn ? Price.new((cnn/"span.currency").first.inner_text.strip + " " + (cnn/"span.amount").first.inner_text.strip) : Price.new("$ 0",true)
|
|
23
|
+
|
|
24
|
+
inf = (p_html/"li").select{|li| li.inner_text.no_accents.downcase =~ /bebe|infant/}.first
|
|
25
|
+
@tarifas['inf'] = inf ? Price.new((inf/"span.currency").first.inner_text.strip + " " + (inf/"span.amount").first.inner_text.strip) : Price.new("$ 0",true)
|
|
26
|
+
|
|
27
|
+
tasas = (p_html/"li.taxes").empty? ? (p_html/"li[@class='taxDetail.OTHER-price']").first : (p_html/"li.taxes").first
|
|
28
|
+
@tarifas['tasas'] = tasas ? Price.new((tasas/"span.currency").first.inner_text.strip + " " + (tasas/"span.amount").first.inner_text.strip,true) : Price.new("$ 0",true)
|
|
29
|
+
|
|
30
|
+
cargos = (p_html/"li.charges").first
|
|
31
|
+
@tarifas['cargos'] = cargos ? Price.new((cargos/"span.currency").first.inner_text.strip + " " + (cargos/"span.amount").first.inner_text.strip,true) : Price.new("$ 0",true)
|
|
32
|
+
|
|
33
|
+
afip = (p_html/"li.tax_afip").first
|
|
34
|
+
@tarifas['afip'] = afip ? Price.new((afip/"span.currency").first.inner_text.strip + " " + (afip/"span.amount").first.inner_text.strip,true) : Price.new("$ 0",true)
|
|
35
|
+
|
|
36
|
+
servicio = (p_html/"li.service_taxes").first
|
|
37
|
+
@tarifas['encargos'] = servicio ? Price.new((servicio/"span.currency").first.inner_text.strip + " " + (servicio/"span.amount").first.inner_text.strip,true) : Price.new("$ 0",true)
|
|
38
|
+
|
|
39
|
+
campo = "total"
|
|
40
|
+
@tarifas['total'] = (p_html/"li.#{campo} span.currency").empty? ? Price.new("$ 0",true) : Price.new((p_html/"li.#{campo} span.currency").first.inner_text.strip + " " + (p_html/"li.#{campo} span.amount").first.inner_text.strip)
|
|
41
|
+
end
|
|
42
|
+
|
|
43
|
+
def validarSumaDesgloce(linea = "total|tarifa_adulto|tarifa_adulto_dolar")
|
|
44
|
+
|
|
45
|
+
sumaTarifas = 0
|
|
46
|
+
@tarifas.each_pair do |key,tarifa|
|
|
47
|
+
if key !~ /#{linea}/
|
|
48
|
+
sumaTarifas += tarifa.valor
|
|
49
|
+
end
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
return sumaTarifas.to_i
|
|
53
|
+
|
|
54
|
+
end
|
|
55
|
+
|
|
56
|
+
end
|
|
@@ -87,10 +87,15 @@ class ResultsCluster
|
|
|
87
87
|
else
|
|
88
88
|
@tarifas['tarifa_adulto'] = @tarifas['tarifa_adulto_dolar']
|
|
89
89
|
end
|
|
90
|
-
|
|
91
|
-
|
|
90
|
+
|
|
92
91
|
adt = (p_html/"li").select{|li| li.inner_text.no_accents.downcase =~ /adulto/}.first
|
|
93
92
|
@tarifas['adt'] = adt ? Price.new((adt/"span.currency").first.inner_text.strip + " " + (adt/"span.amount").first.inner_text.strip) : Price.new("$ 0",true)
|
|
93
|
+
|
|
94
|
+
cnn = (p_html/"li").select{|li| li.inner_text.no_accents.downcase =~ /nino/}.first
|
|
95
|
+
@tarifas['cnn'] = cnn ? Price.new((cnn/"span.currency").first.inner_text.strip + " " + (cnn/"span.amount").first.inner_text.strip) : Price.new("$ 0",true)
|
|
96
|
+
|
|
97
|
+
inf = (p_html/"li").select{|li| li.inner_text.no_accents.downcase =~ /bebe/}.first
|
|
98
|
+
@tarifas['inf'] = inf ? Price.new((inf/"span.currency").first.inner_text.strip + " " + (inf/"span.amount").first.inner_text.strip) : Price.new("$ 0",true)
|
|
94
99
|
|
|
95
100
|
tasas = (p_html/"li.taxes-price").empty? ? (p_html/"li[@class='taxDetail.OTHER-price']").first : (p_html/"li.taxes-price").first
|
|
96
101
|
@tarifas['tasas'] = tasas ? Price.new((tasas/"span.currency").first.inner_text.strip + " " + (tasas/"span.amount").first.inner_text.strip,true) : Price.new("$ 0",true)
|
|
@@ -105,7 +110,7 @@ class ResultsCluster
|
|
|
105
110
|
|
|
106
111
|
campo = (p_html/"li").empty? ? "total" : "fare"
|
|
107
112
|
@tarifas['total'] = (p_html/"li.#{campo}-price span.currency").empty? ? Price.new("$ 0",true) : Price.new((p_html/"li.#{campo}-price span.currency").first.inner_text.strip + " " + (p_html/"li.#{campo}-price span.amount").first.inner_text.strip)
|
|
108
|
-
|
|
113
|
+
end
|
|
109
114
|
|
|
110
115
|
def validarSumaDesgloce(linea = "total|tarifa_adulto")
|
|
111
116
|
|
|
@@ -2,4 +2,5 @@
|
|
|
2
2
|
require_relative 'clusters/results_cluster'
|
|
3
3
|
require_relative 'clusters/results/landing_cluster'
|
|
4
4
|
require_relative 'clusters/results/render_cluster'
|
|
5
|
-
require_relative 'clusters/details/details_cluster'
|
|
5
|
+
require_relative 'clusters/details/details_cluster'
|
|
6
|
+
require_relative 'clusters/checkout_cluster'
|
|
@@ -10,6 +10,7 @@ Característica: checkout.integration
|
|
|
10
10
|
Entonces Verifico que traiga resultados
|
|
11
11
|
Cuando Elijo un itinerario y paso a checkout
|
|
12
12
|
Cuando Verifico que ingrese al checkout
|
|
13
|
+
Y Valido los valores del desglose del checkout
|
|
13
14
|
Y Verifico el pixel de Efrontier
|
|
14
15
|
Y Verifico el pixel de trackeame en checkout
|
|
15
16
|
Entonces verifico que los precios de las cuotas se muestran correctamente
|
|
@@ -13,7 +13,7 @@ Característica: checkout.low_cost
|
|
|
13
13
|
Y Verifico el pixel de Efrontier
|
|
14
14
|
Y Verifico el pixel de trackeame en checkout
|
|
15
15
|
Y Verifico el tag de remarketing de facebook
|
|
16
|
-
Entonces verifico que los precios de las cuotas se muestran correctamente
|
|
16
|
+
#Entonces verifico que los precios de las cuotas se muestran correctamente
|
|
17
17
|
Y Verifico que se muestren la caja de clientes felices
|
|
18
18
|
Entonces Completo el formulario de pasajeros
|
|
19
19
|
Y Completo el formulario de tarjeta
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
|
|
16
16
|
gem.require_paths = ["lib"] #Usualmente es solo lib -> ["lib"]
|
|
17
17
|
|
|
18
|
-
gem.version = '1.9.
|
|
18
|
+
gem.version = '1.9.1' #La version se debe incrementar cada vez que se desea publicar una nueva version del test.
|
|
19
19
|
|
|
20
20
|
gem.add_dependency('henry-container', '>= 0.1.39')
|
|
21
21
|
gem.add_dependency('watir-webdriver')
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: flights_gui_henry_tests
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.9.
|
|
4
|
+
version: 1.9.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- lgonzalez,lsimean
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2014-01-
|
|
11
|
+
date: 2014-01-21 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: henry-container
|
|
@@ -165,6 +165,7 @@ files:
|
|
|
165
165
|
- features/support/lib/services/landing.rb
|
|
166
166
|
- features/support/lib/clusters/results/landing_cluster.rb
|
|
167
167
|
- features/support/lib/clusters/results/render_cluster.rb
|
|
168
|
+
- features/support/lib/clusters/checkout_cluster.rb
|
|
168
169
|
- features/support/lib/clusters/results_cluster.rb
|
|
169
170
|
- features/support/lib/clusters/details/details_cluster.rb
|
|
170
171
|
- features/support/lib/clusters/data/datos_new.rb
|