flights_gui_henry_tests 2.5.2 → 2.5.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -13
- data/Gemfile +1 -0
- data/features/step_definitions/checkout/checkout_steps.rb +2 -1
- data/features/step_definitions/checkout/new_pay_method_steps.rb +60 -0
- data/features/step_definitions/checkout/price_difference_steps.rb +3 -0
- data/features/step_definitions/results/results_steps.rb +5 -1
- data/features/step_definitions/search/flight_gui_steps.rb +1 -0
- data/features/support/env.rb +1 -1
- data/features/support/lib/clusters/results/render_cluster.rb +68 -25
- data/features/tests/checkout/new_pay_method.feature +177 -0
- data/features/tests/search/searches.feature +0 -2
- data/flights_gui_henry_tests.gemspec +5 -5
- data/henry-context.yml +115 -194
- metadata +161 -159
checksums.yaml
CHANGED
@@ -1,15 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
|
5
|
-
data.tar.gz: !binary |-
|
6
|
-
YThiMzUyMmE5ODY4MDFjMjgwN2QyOTBlZWYwOWZjNzhkZDY0NDI4Mg==
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 5d666721368e6c5a866f69b884a42c5d1deadb20
|
4
|
+
data.tar.gz: bf2d4d6858a21c2d61ea550da316f0cae8994902
|
7
5
|
SHA512:
|
8
|
-
metadata.gz:
|
9
|
-
|
10
|
-
ZmRmMGFjNzczZjQ0MjlkMDNlYjNiODViNDM2ZjM0YmYzNWM1ZWQ5YmIxMTE4
|
11
|
-
YjZiMGNjZjZlMmRjZDk2MDRjNWZjMzRhNTc1OTliYjc5MjMzMjc=
|
12
|
-
data.tar.gz: !binary |-
|
13
|
-
MzFmZjJlZWE3M2U0MWEyNTMyNzNjZDVkYmJhMjk2NmQ5MGM1OTEzYmE3OTZh
|
14
|
-
MjdiMTUwMjIyZTFjZjgwZDc5YjJhY2M3ZTY2Mzg0NDQ5MGQ0OTJhMzk4OTRl
|
15
|
-
NDI2YjA0ZTJkNjdiYjkwNzM2OTE2YmMzMTM2MTYxYjY3NzQ1Y2M=
|
6
|
+
metadata.gz: 891ee841bd5567b033fbcba9ce57c1f8e26e1b31a98e78e46c32158b6a1463bfefa70fe1bb8ebc92d729c70828bc34b3d9bd7e897e75446c0fb9f4445ced3a57
|
7
|
+
data.tar.gz: 0387ef191bbb621757b8abd45ad50457601096c92756f52ea61e122c6d42dcbc12abf3ef47457d541315c143d19111985d923178ce1f7cff91899a5e95aacb34
|
data/Gemfile
CHANGED
@@ -238,6 +238,7 @@ And /^Completo los campos de factura fiscal$/ do
|
|
238
238
|
BROWSER.fieldset(:id,'invoice').should visible("formulario de factura")
|
239
239
|
container.select_list(:id,'invoice-fiscal-status').select_value(option)
|
240
240
|
if option=="FINAL"
|
241
|
+
container.text_field(:id,'invoice-fiscal-id').focus
|
241
242
|
container.text_field(:id,'invoice-fiscal-id').value.should equal("20-32456734-9") unless BROWSER.li(:id,'cac-installment').present?
|
242
243
|
container.text_field(:id,'invoice-fiscal-id').set("20324567349")
|
243
244
|
container.text_field(:id,'invoice-address').set("corrientes 123")
|
@@ -256,7 +257,7 @@ And /^Completo los campos de factura fiscal$/ do
|
|
256
257
|
container.text_field(:id,'invoice-address-deparment').set("1")
|
257
258
|
end
|
258
259
|
else
|
259
|
-
container.checkbox(:id,'invoice-check').set(true)
|
260
|
+
container.checkbox(:id,'invoice-check').set(true) if container.checkbox(:id,'invoice-check').present?
|
260
261
|
container.text_field(:id,'invoice-fiscal-id').set("3334445556")
|
261
262
|
container.text_field(:id,'invoice-card-holder-name').set("diego qa romero")
|
262
263
|
container.select_list(:id,'invoice-state').options[2].select
|
@@ -0,0 +1,60 @@
|
|
1
|
+
# -*- encoding : utf-8 -*-
|
2
|
+
Entonces(/^Completo el formulario de deposito$/) do
|
3
|
+
BROWSER.li(:id,'cash-installment').radio(:class,'radio main-radio').set
|
4
|
+
BROWSER.div(:id,'offlinePaymentDefinition').select_list(:id,'owner-type').select_value("PERSON")
|
5
|
+
byebug
|
6
|
+
BROWSER.div(:id,'offlinePaymentDefinition').text_field(:id,'owner-document-number').set("32456712")
|
7
|
+
BROWSER.div(:id,'offlinePaymentDefinition').select_list(:id,'owner-gender').select_value("MALE")
|
8
|
+
end
|
9
|
+
|
10
|
+
Entonces(/^verifico los texto del formulario de deposito$/) do
|
11
|
+
if $SITE=="US"
|
12
|
+
texto_fecha = ""
|
13
|
+
texto_pasos = ""
|
14
|
+
elsif $SITE=="BR"
|
15
|
+
texto_fecha = ""
|
16
|
+
texto_pasos = ""
|
17
|
+
else
|
18
|
+
texto_fecha = "El deposito debera realizarse hoy, antes del cierre del banco, por caja de una sucursal del Banco Santander Rio"
|
19
|
+
texto_pasos = "Simplemente utilizando tu numero de solicitud de compra, e informando que es para Despegar.com podras realizar el deposito por caja en la sucursal mas cercana del Banco Santander Rio"
|
20
|
+
end
|
21
|
+
BROWSER.li(:id,'cash-installment').span(:class,'installment-description-info').text.strip.no_accents.should equal(texto_fecha)
|
22
|
+
BROWSER.li(:id,'cash-installment').span(:class,'installment-detail-text').text.strip.no_accents.should equal(texto_pasos)
|
23
|
+
BROWSER.li(:id,'cash-installment').div(:class,'ux-common-message ux-common-message-warning installment-detail-warning ux-common-message-small').should visible("warning en deposito por caja")
|
24
|
+
BROWSER.div(:class,'upselling upselling-disabled').should visible("asistencia al viajero desactivada")
|
25
|
+
end
|
26
|
+
|
27
|
+
Cuando(/^aparece el popup de confirmacion de pago$/) do
|
28
|
+
begin
|
29
|
+
Watir::Wait.until(timeout=20){BROWSER.div(:id,'confirm-payment-popup').present?}
|
30
|
+
rescue Watir::Wait::TimeoutError
|
31
|
+
end
|
32
|
+
BROWSER.div(:id,'confirm-payment-popup').should visible("popup de confirmacion de pago")
|
33
|
+
end
|
34
|
+
|
35
|
+
Entonces(/^elijo la opcion otro metodo$/) do
|
36
|
+
BROWSER.div(:id,'confirm-payment-popup').div(:class,'flights-button-no').click
|
37
|
+
end
|
38
|
+
|
39
|
+
Entonces(/^Verifico que vuelva al checkout correctamente$/) do
|
40
|
+
Watir::Wait.until(timeout=10){BROWSER.div(:class,'upselling upselling-disabled').present?}
|
41
|
+
end
|
42
|
+
|
43
|
+
Entonces(/^Verifico los pasos para hacer el deposito$/) do
|
44
|
+
pending # express the regexp above with the code you wish you had
|
45
|
+
end
|
46
|
+
|
47
|
+
Entonces(/^Completo el formulario de pago online$/) do
|
48
|
+
BROWSER.li(:id,'homebanking-installment').radio(:class,'radio main-radio').set
|
49
|
+
BROWSER.div(:id,'offlinePaymentDefinition').select_list(:id,'owner-type').select_value("PERSON")
|
50
|
+
BROWSER.div(:id,'offlinePaymentDefinition').text_field(:id,'owner-document-number').set("32456712")
|
51
|
+
BROWSER.div(:id,'offlinePaymentDefinition').select_list(:id,'owner-gender').select_value("MALE")
|
52
|
+
end
|
53
|
+
|
54
|
+
Entonces(/^elijo la opcion confirmar pago$/) do
|
55
|
+
BROWSER.div(:id,'confirm-payment-popup').div(:class,'flights-button-yes').click
|
56
|
+
end
|
57
|
+
|
58
|
+
Entonces(/^Verifico los pasos para hacer el pago online$/) do
|
59
|
+
pending # express the regexp above with the code you wish you had
|
60
|
+
end
|
@@ -12,6 +12,9 @@ Then /^Verifico el popup de cambio de precio$/ do
|
|
12
12
|
@popup.div(:class,'popup-button button-yes').should visible("boton aceptar cambio de precio")
|
13
13
|
@popup.div(:class,'popup-link').should visible("boton ver otros vuelos")
|
14
14
|
doc = Hpricot.parse(@popup.div(:id,'popup-price-difference-template').html)
|
15
|
+
@itinerario_checkout = CheckoutCluster.new(@search.description,Hpricot.parse(BROWSER.div(:id,'detail').html))
|
16
|
+
@precio_inicial = Price.new((doc/"p.paragraph span.currency").first.inner_text.strip + " " + (doc/"p.paragraph span.amount").first.inner_text.strip)
|
17
|
+
@itinerario_checkout.tarifas['total'].value.should be_within(2).of(@precio_inicial.value)
|
15
18
|
@precio_final = Price.new((doc/"p.paragraph span.currency").last.inner_text.strip + " " + (doc/"p.paragraph span.amount").last.inner_text.strip)
|
16
19
|
end
|
17
20
|
|
@@ -30,7 +30,11 @@ end
|
|
30
30
|
And /^Verifico el banner de ultimos lugares en checkout$/ do
|
31
31
|
if @ultimos_lugares
|
32
32
|
BROWSER.div(:class,'ux-common-message ux-common-message-info ').should visible("banner de pocos lugares")
|
33
|
-
BROWSER.div(:class,'ux-common-message ux-common-message-info ').text.strip.no_accents.match(/(\d)/)
|
33
|
+
if BROWSER.div(:class,'ux-common-message ux-common-message-info ').text.strip.no_accents.match(/(\d)/)
|
34
|
+
BROWSER.div(:class,'ux-common-message ux-common-message-info ').text.strip.no_accents.match(/(\d)/)[1].to_i.should equal(@ultimos_lugares)
|
35
|
+
else
|
36
|
+
1.should equal(@ultimos_lugares)
|
37
|
+
end
|
34
38
|
else
|
35
39
|
BROWSER.div(:class,'ux-common-message ux-common-message-info ').should_not visible("banner de pocos lugares")
|
36
40
|
end
|
@@ -265,6 +265,7 @@ Then /^elijo otro vuelo$/ do
|
|
265
265
|
BROWSER.div(:class,'notification-box warn-box').should_not visible
|
266
266
|
pending(BROWSER.div(:class,'ux-common-error').text) if BROWSER.div(:class,'ux-common-error').present?
|
267
267
|
sleep(1)
|
268
|
+
@cluster_popup = RenderCluster.new(@search.description,Hpricot.parse(BROWSER.div(:id,'clusters').divs(:class,'cluster')[0].html))
|
268
269
|
BROWSER.radio(:id, "0-outbound-0").click if BROWSER.radio(:id, "0-outbound-0").present?
|
269
270
|
BROWSER.radio(:id, "0-inbound-0").click if BROWSER.radio(:id, "0-inbound-0").present?
|
270
271
|
BROWSER.a(:class=>'buy btn-buy flights-button').click
|
data/features/support/env.rb
CHANGED
@@ -1,9 +1,13 @@
|
|
1
1
|
class RenderCluster < ResultsCluster
|
2
|
+
def initialize(itinerario,html,page = 0)
|
3
|
+
self.load_prices((html/"div.fare-container"))
|
4
|
+
eval "#{itinerario.downcase}(html)"
|
5
|
+
end
|
2
6
|
def load_prices(p_html)
|
3
7
|
|
4
8
|
@tarifas = Hash.new
|
5
9
|
|
6
|
-
if !(p_html/"
|
10
|
+
if !(p_html/"span.fare-difference-price").empty?
|
7
11
|
con_diferencia(p_html)
|
8
12
|
else
|
9
13
|
sin_diferencia(p_html)
|
@@ -12,32 +16,71 @@ class RenderCluster < ResultsCluster
|
|
12
16
|
end
|
13
17
|
|
14
18
|
def con_diferencia(p_html)
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
19
|
+
@tarifas = Hash.new
|
20
|
+
@tarifas['diferencia'] = @tarifas['tarifa_adulto'] = Price.new((p_html/"span.fare-difference-price span[@class='price-currency #{currency($SITE)} '] span.currency").first.inner_text.strip + " " + (p_html/"span.fare-difference-price span[@class='price-currency #{currency($SITE)} '] span.amount").first.inner_text.strip)
|
21
|
+
@tarifas['tarifa_adulto_dolar'] = Price.new((p_html/"span.price-currency span.currency").first.inner_text.strip + " " + (p_html/"span.price-currency span.amount").first.inner_text.strip)
|
22
|
+
if (p_html/"span[@class='price-currency #{currency($SITE)} '] span.currency").first
|
23
|
+
@tarifas['tarifa_adulto'] = Price.new((p_html/"span[@class='price-currency #{currency($SITE)} '] span.currency").first.inner_text.strip + " " + (p_html/"span[@class='price-currency #{currency($SITE)} '] span.amount").first.inner_text.strip)
|
24
|
+
else
|
25
|
+
@tarifas['tarifa_adulto'] = @tarifas['tarifa_adulto_dolar']
|
26
|
+
end
|
27
|
+
|
28
|
+
adt = (p_html/"li").select{|li| li.inner_text.no_accents.downcase =~ /adulto/}.first
|
29
|
+
@tarifas['adt'] = adt ? Price.new((adt/"span.currency").first.inner_text.strip + " " + (adt/"span.amount").first.inner_text.strip) : Price.new("$ 0",true)
|
30
|
+
|
31
|
+
cnn = (p_html/"li").select{|li| li.inner_text.no_accents.downcase =~ /nino/}.first
|
32
|
+
@tarifas['cnn'] = cnn ? Price.new((cnn/"span.currency").first.inner_text.strip + " " + (cnn/"span.amount").first.inner_text.strip) : Price.new("$ 0",true)
|
33
|
+
|
34
|
+
inf = (p_html/"li").select{|li| li.inner_text.no_accents.downcase =~ /bebe/}.first
|
35
|
+
@tarifas['inf'] = inf ? Price.new((inf/"span.currency").first.inner_text.strip + " " + (inf/"span.amount").first.inner_text.strip) : Price.new("$ 0",true)
|
36
|
+
|
37
|
+
tasas = (p_html/"li.taxes-price").empty? ? (p_html/"li[@class='taxDetail.OTHER-price']").first : (p_html/"li.taxes-price").first
|
38
|
+
@tarifas['tasas'] = tasas ? Price.new((tasas/"span.currency").first.inner_text.strip + " " + (tasas/"span.amount").first.inner_text.strip,true) : Price.new("$ 0",true)
|
39
|
+
|
40
|
+
cargos = (p_html/"li.charges-price").first
|
41
|
+
@tarifas['cargos'] = cargos ? Price.new((cargos/"span.currency").first.inner_text.strip + " " + (cargos/"span.amount").first.inner_text.strip,true) : Price.new("$ 0",true)
|
42
|
+
|
43
|
+
afip = (p_html/"li[@class='taxDetail.ZK-price']").first
|
44
|
+
@tarifas['afip'] = afip ? Price.new((afip/"span.currency").first.inner_text.strip + " " + (afip/"span.amount").first.inner_text.strip,true) : Price.new("$ 0",true)
|
45
|
+
|
46
|
+
@tarifas['encargos'] = Price.new("$ 0",true)
|
47
|
+
|
48
|
+
campo = (p_html/"li").empty? ? "total" : "fare"
|
49
|
+
@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)
|
30
50
|
end
|
31
51
|
|
32
52
|
def sin_diferencia(p_html)
|
33
|
-
@tarifas
|
34
|
-
@tarifas['
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
53
|
+
@tarifas = Hash.new
|
54
|
+
@tarifas['diferencia'] = Price.new("$ 0",true)
|
55
|
+
@tarifas['tarifa_adulto_dolar'] = Price.new("$ 0",true)
|
56
|
+
if (p_html/"span[@class='price-currency #{currency($SITE)} '] span.currency").first
|
57
|
+
@tarifas['tarifa_adulto'] = Price.new((p_html/"span[@class='price-currency #{currency($SITE)} '] span.currency").first.inner_text.strip + " " + (p_html/"span[@class='price-currency #{currency($SITE)} '] span.amount").first.inner_text.strip)
|
58
|
+
else
|
59
|
+
@tarifas['tarifa_adulto'] = @tarifas['tarifa_adulto_dolar']
|
60
|
+
end
|
61
|
+
|
62
|
+
adt = (p_html/"li").select{|li| li.inner_text.no_accents.downcase =~ /adulto/}.first
|
63
|
+
@tarifas['adt'] = adt ? Price.new((adt/"span.currency").first.inner_text.strip + " " + (adt/"span.amount").first.inner_text.strip) : Price.new("$ 0",true)
|
64
|
+
|
65
|
+
cnn = (p_html/"li").select{|li| li.inner_text.no_accents.downcase =~ /nino/}.first
|
66
|
+
@tarifas['cnn'] = cnn ? Price.new((cnn/"span.currency").first.inner_text.strip + " " + (cnn/"span.amount").first.inner_text.strip) : Price.new("$ 0",true)
|
67
|
+
|
68
|
+
inf = (p_html/"li").select{|li| li.inner_text.no_accents.downcase =~ /bebe/}.first
|
69
|
+
@tarifas['inf'] = inf ? Price.new((inf/"span.currency").first.inner_text.strip + " " + (inf/"span.amount").first.inner_text.strip) : Price.new("$ 0",true)
|
70
|
+
|
71
|
+
tasas = (p_html/"li.taxes-price").empty? ? (p_html/"li[@class='taxDetail.OTHER-price']").first : (p_html/"li.taxes-price").first
|
72
|
+
@tarifas['tasas'] = tasas ? Price.new((tasas/"span.currency").first.inner_text.strip + " " + (tasas/"span.amount").first.inner_text.strip,true) : Price.new("$ 0",true)
|
73
|
+
|
74
|
+
cargos = (p_html/"li.charges-price").first
|
75
|
+
@tarifas['cargos'] = cargos ? Price.new((cargos/"span.currency").first.inner_text.strip + " " + (cargos/"span.amount").first.inner_text.strip,true) : Price.new("$ 0",true)
|
76
|
+
|
77
|
+
afip = (p_html/"li[@class='taxDetail.ZK-price']").first
|
78
|
+
@tarifas['afip'] = afip ? Price.new((afip/"span.currency").first.inner_text.strip + " " + (afip/"span.amount").first.inner_text.strip,true) : Price.new("$ 0",true)
|
79
|
+
|
80
|
+
@tarifas['encargos'] = Price.new("$ 0",true)
|
81
|
+
|
82
|
+
campo = (p_html/"li").empty? ? "total" : "fare"
|
83
|
+
@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)
|
42
84
|
end
|
43
85
|
end
|
86
|
+
|
@@ -0,0 +1,177 @@
|
|
1
|
+
#language: es
|
2
|
+
@checkout
|
3
|
+
Característica: checkout.new_pay_method
|
4
|
+
Se verifica que los nuevos metodos de pago funcionen correctamente
|
5
|
+
|
6
|
+
@new_pay_method
|
7
|
+
Esquema del escenario: Ingresar al checkout y elegir metodo por deposito
|
8
|
+
Cuando Ingreso a la pagina de resultados en "<pais>" para una busqueda "<tipo>" del tipo "<cabotage>"
|
9
|
+
Cuando Espero que termine de cargar
|
10
|
+
Entonces Verifico que traiga resultados
|
11
|
+
Cuando Elijo un itinerario y paso a checkout
|
12
|
+
Cuando Verifico que ingrese al checkout
|
13
|
+
Entonces Completo el formulario de pasajeros
|
14
|
+
Y Completo el formulario de deposito
|
15
|
+
Y Completo los datos de resolucion AFIP
|
16
|
+
Y Completo los datos de contacto
|
17
|
+
Y Si pide factura fiscal, Completo los campos de factura fiscal
|
18
|
+
Y Realizo la compra
|
19
|
+
Cuando aparece el popup de confirmacion de pago
|
20
|
+
Entonces elijo la opcion otro metodo
|
21
|
+
Entonces Verifico que vuelva al checkout correctamente
|
22
|
+
Cuando Realizo la compra
|
23
|
+
Cuando aparece el popup de confirmacion de pago
|
24
|
+
Entonces elijo la opcion confirmar pago
|
25
|
+
Entonces Verifico que dirija a la pagina de gracias
|
26
|
+
Entonces Si el checkout me pide mas datos de tarjeta, lleno los datos de tarjeta adicionales
|
27
|
+
Entonces Si se muestra el popup de no disponibilidad, elijo otro vuelo
|
28
|
+
Entonces Si debo completar de vuelta el formulario, completo el formulario
|
29
|
+
Y Verifico que genere id cro
|
30
|
+
Y Verifico los pasos para hacer el deposito
|
31
|
+
|
32
|
+
@ar
|
33
|
+
@roundtrip
|
34
|
+
Ejemplos:
|
35
|
+
|pais|tipo|cabotage|
|
36
|
+
|AR |roundtrip|nil|
|
37
|
+
@ar
|
38
|
+
@oneway
|
39
|
+
Ejemplos:
|
40
|
+
|pais|tipo|cabotage|
|
41
|
+
|AR |oneway|nil|
|
42
|
+
@ar
|
43
|
+
@multipledestinations
|
44
|
+
Ejemplos:
|
45
|
+
|pais|tipo|cabotage|
|
46
|
+
|AR |multipledestinations|nil|
|
47
|
+
@br
|
48
|
+
@roundtrip
|
49
|
+
Ejemplos:
|
50
|
+
|pais|tipo|cabotage|
|
51
|
+
|BR |roundtrip|nil|
|
52
|
+
@br
|
53
|
+
@oneway
|
54
|
+
Ejemplos:
|
55
|
+
|pais|tipo|cabotage|
|
56
|
+
|BR |oneway|nil|
|
57
|
+
@br
|
58
|
+
@multipledestinations
|
59
|
+
Ejemplos:
|
60
|
+
|pais|tipo|cabotage|
|
61
|
+
|BR |multipledestinations|nil|
|
62
|
+
@mx
|
63
|
+
@roundtrip
|
64
|
+
Ejemplos:
|
65
|
+
|pais|tipo|cabotage|
|
66
|
+
|MX |roundtrip|nil|
|
67
|
+
@mx
|
68
|
+
@oneway
|
69
|
+
Ejemplos:
|
70
|
+
|pais|tipo|cabotage|
|
71
|
+
|MX |oneway|nil|
|
72
|
+
@mx
|
73
|
+
@multipledestinations
|
74
|
+
Ejemplos:
|
75
|
+
|pais|tipo|cabotage|
|
76
|
+
|MX |multipledestinations|nil|
|
77
|
+
@us
|
78
|
+
@roundtrip
|
79
|
+
Ejemplos:
|
80
|
+
|pais|tipo|cabotage|
|
81
|
+
|US |roundtrip|nil|
|
82
|
+
@us
|
83
|
+
@oneway
|
84
|
+
Ejemplos:
|
85
|
+
|pais|tipo|cabotage|
|
86
|
+
|US |oneway|nil|
|
87
|
+
@us
|
88
|
+
@multipledestinations
|
89
|
+
Ejemplos:
|
90
|
+
|pais|tipo|cabotage|
|
91
|
+
|US |multipledestinations|nil|
|
92
|
+
|
93
|
+
@new_pay_method
|
94
|
+
Esquema del escenario: Ingresar al checkout y elegir pago online
|
95
|
+
Cuando Ingreso a la pagina de resultados en "<pais>" para una busqueda "<tipo>" del tipo "<cabotage>"
|
96
|
+
Cuando Espero que termine de cargar
|
97
|
+
Entonces Verifico que traiga resultados
|
98
|
+
Cuando Elijo un itinerario y paso a checkout
|
99
|
+
Cuando Verifico que ingrese al checkout
|
100
|
+
Entonces Completo el formulario de pasajeros
|
101
|
+
Y Completo el formulario de pago online
|
102
|
+
Y Completo los datos de resolucion AFIP
|
103
|
+
Y Completo los datos de contacto
|
104
|
+
Y Si pide factura fiscal, Completo los campos de factura fiscal
|
105
|
+
Y Realizo la compra
|
106
|
+
Cuando aparece el popup de confirmacion de pago online
|
107
|
+
Entonces elijo la opcion otro metodo
|
108
|
+
Entonces Verifico que vuelva al checkout correctamente
|
109
|
+
Cuando Realizo la compra
|
110
|
+
Entonces Verifico que dirija a la pagina de gracias
|
111
|
+
Entonces Si el checkout me pide mas datos de tarjeta, lleno los datos de tarjeta adicionales
|
112
|
+
Entonces Si se muestra el popup de no disponibilidad, elijo otro vuelo
|
113
|
+
Entonces Si debo completar de vuelta el formulario, completo el formulario
|
114
|
+
Y Verifico que genere id cro
|
115
|
+
Y Verifico los pasos para hacer el pago online
|
116
|
+
|
117
|
+
@ar
|
118
|
+
@roundtrip
|
119
|
+
Ejemplos:
|
120
|
+
|pais|tipo|cabotage|
|
121
|
+
|AR |roundtrip|nil|
|
122
|
+
@ar
|
123
|
+
@oneway
|
124
|
+
Ejemplos:
|
125
|
+
|pais|tipo|cabotage|
|
126
|
+
|AR |oneway|nil|
|
127
|
+
@ar
|
128
|
+
@multipledestinations
|
129
|
+
Ejemplos:
|
130
|
+
|pais|tipo|cabotage|
|
131
|
+
|AR |multipledestinations|nil|
|
132
|
+
@br
|
133
|
+
@roundtrip
|
134
|
+
Ejemplos:
|
135
|
+
|pais|tipo|cabotage|
|
136
|
+
|BR |roundtrip|nil|
|
137
|
+
@br
|
138
|
+
@oneway
|
139
|
+
Ejemplos:
|
140
|
+
|pais|tipo|cabotage|
|
141
|
+
|BR |oneway|nil|
|
142
|
+
@br
|
143
|
+
@multipledestinations
|
144
|
+
Ejemplos:
|
145
|
+
|pais|tipo|cabotage|
|
146
|
+
|BR |multipledestinations|nil|
|
147
|
+
@mx
|
148
|
+
@roundtrip
|
149
|
+
Ejemplos:
|
150
|
+
|pais|tipo|cabotage|
|
151
|
+
|MX |roundtrip|nil|
|
152
|
+
@mx
|
153
|
+
@oneway
|
154
|
+
Ejemplos:
|
155
|
+
|pais|tipo|cabotage|
|
156
|
+
|MX |oneway|nil|
|
157
|
+
@mx
|
158
|
+
@multipledestinations
|
159
|
+
Ejemplos:
|
160
|
+
|pais|tipo|cabotage|
|
161
|
+
|MX |multipledestinations|nil|
|
162
|
+
@us
|
163
|
+
@roundtrip
|
164
|
+
Ejemplos:
|
165
|
+
|pais|tipo|cabotage|
|
166
|
+
|US |roundtrip|nil|
|
167
|
+
@us
|
168
|
+
@oneway
|
169
|
+
Ejemplos:
|
170
|
+
|pais|tipo|cabotage|
|
171
|
+
|US |oneway|nil|
|
172
|
+
@us
|
173
|
+
@multipledestinations
|
174
|
+
Ejemplos:
|
175
|
+
|pais|tipo|cabotage|
|
176
|
+
|US |multipledestinations|nil|
|
177
|
+
|
@@ -9,8 +9,6 @@ Característica: search.searches
|
|
9
9
|
Entonces Verifico que la pagina no rompa
|
10
10
|
#Cuando Verifico el nuevo loader
|
11
11
|
Cuando Espero que termine de cargar
|
12
|
-
Entonces Verifico que traiga resultados
|
13
|
-
Cuando Espero que termine de cargar
|
14
12
|
Entonces Verifico que traiga resultados
|
15
13
|
Cuando Si el site es "AR|BR", Levanto los tag que deben mostrarse segun la ciudad buscada para una busqueda "<tipo>"
|
16
14
|
Entonces Si el site es "AR|BR", Verifico que se muestre en el codigo fuente
|
@@ -2,8 +2,8 @@
|
|
2
2
|
|
3
3
|
# -*- encoding: utf-8 -*-
|
4
4
|
Gem::Specification.new do |gem|
|
5
|
-
gem.authors = ["lgonzalez
|
6
|
-
gem.email = ["lgonzalez@despegar.com
|
5
|
+
gem.authors = ["lgonzalez"]
|
6
|
+
gem.email = ["lgonzalez@despegar.com"]
|
7
7
|
gem.description = %q{test automatizado para el proyecto flights gui}
|
8
8
|
gem.summary = %q{test para contents, search y advanced_search}
|
9
9
|
|
@@ -15,9 +15,9 @@
|
|
15
15
|
|
16
16
|
gem.require_paths = ["lib"] #Usualmente es solo lib -> ["lib"]
|
17
17
|
|
18
|
-
gem.version = '2.5.
|
18
|
+
gem.version = '2.5.3' #La version se debe incrementar cada vez que se desea publicar una nueva version del test.
|
19
19
|
|
20
|
-
gem.add_dependency('henry-container', '>= 0.1.
|
20
|
+
gem.add_dependency('henry-container', '>= 0.1.82')
|
21
21
|
gem.add_dependency('watir-webdriver')
|
22
22
|
gem.add_dependency('cucumber')
|
23
23
|
gem.add_dependency('rspec')
|
@@ -26,7 +26,7 @@
|
|
26
26
|
gem.add_dependency('sixarm_ruby_unaccent')
|
27
27
|
gem.add_dependency('sanitize')
|
28
28
|
gem.add_dependency('mock_search')
|
29
|
-
gem.add_dependency('
|
29
|
+
gem.add_dependency('byebug')
|
30
30
|
|
31
31
|
gem.add_development_dependency('geminabox')
|
32
32
|
|