flights_gui_tests 0.3.4 → 0.3.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/features/step_definitions/checkout/checkout_steps.rb +5 -1
- data/features/step_definitions/checkout/last_minutes_steps.rb +8 -0
- data/features/step_definitions/page_steps.rb +0 -4
- data/features/step_definitions/results/load_steps.rb +2 -0
- data/features/step_definitions/tags_steps.rb +1 -0
- data/features/support/pages/all_pages.rb +1 -1
- data/features/support/pages/results/search_page.rb +7 -0
- data/features/tests/checkout/checkout_gui_last_minute.feature +20 -2
- data/flights_gui_tests.gemspec +1 -1
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: db61813fe274da7979bbd8bc7abbdaa3b6960826
|
4
|
+
data.tar.gz: 832e2de46338f18d45ca5ba9b3cc4d29d257078d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c40162830ad0df197e59c048d0304a9fc4221166771a2422b302d6052bbd66de401b658d45923ef6cb25a9d3db6b954dc2f2e3e2d542d0884f0917171393be97
|
7
|
+
data.tar.gz: 20a8b32c43dbd3a7c578d15912d26bf5b326978787cfb62d3a784baa5f564825351b633110734945918276e8f596cb8522fc163c09de5d76963887e0e8432cca
|
@@ -126,4 +126,8 @@ end
|
|
126
126
|
Entonces(/^el checkout me pide mas datos de tarjeta$/) do
|
127
127
|
text = @page.notificacion_warning_element.text if @page.notificacion_warning_element.present?
|
128
128
|
@page.notificacion_warning_element.should visible(text)
|
129
|
-
end
|
129
|
+
end
|
130
|
+
|
131
|
+
Entonces(/^el checkout tiene las nuevas formas de pago en BR$/) do
|
132
|
+
@page.cuotas_element.should visible
|
133
|
+
end
|
@@ -0,0 +1,8 @@
|
|
1
|
+
#encoding: utf-8
|
2
|
+
Entonces(/^verifico el mensaje de last minute con texto '(.*)'$/) do |mensaje|
|
3
|
+
if @page.last_minute?
|
4
|
+
@page.mensaje_cancelacion_en_el_dia_element.text.no_accents.should match(mensaje)
|
5
|
+
else
|
6
|
+
@page.mensaje_cancelacion_en_el_dia_element.should visible("mensaje de last minute")
|
7
|
+
end
|
8
|
+
end
|
@@ -11,10 +11,6 @@ Entonces(/^el site no es "(.*)"$/) do |sites|
|
|
11
11
|
AllPages.site.should_not match(sites)
|
12
12
|
end
|
13
13
|
|
14
|
-
Entonces(/^el checkout tiene las nuevas formas de pago en BR$/) do
|
15
|
-
@page.cuotas_element.should visible
|
16
|
-
end
|
17
|
-
|
18
14
|
Entonces(/^seteo el proveedor "(.*)"$/) do |provider|
|
19
15
|
@page.execute_script("javascript:void(document.cookie='XDESP-FDBS-PROVIDER=#{provider};path=/');")
|
20
16
|
@page.manage_data.set_header_json({"XDESP-FDBS-PROVIDER"=>provider})
|
@@ -41,6 +41,8 @@ end
|
|
41
41
|
|
42
42
|
Entonces(/^(?:verifico|valido) que (?:traiga|vengan|tenga) resultados$/) do
|
43
43
|
unless @page.con_resultados?
|
44
|
+
@page.ofertas_personalizadas_element.should visible("ofertas personalizadas")
|
45
|
+
@page.ofertas_por_pais_element.should visible("ofertas por pais")
|
44
46
|
json = @page.get_results_search_service
|
45
47
|
if json["result"]["data"]["metadata"]["status"]["code"].match("NO_RESULTS|SUCCEEDED")
|
46
48
|
pending("No se encontraron resultados")
|
@@ -93,6 +93,7 @@ Y(/^(?:verifico|valido) el tag de facebook$/) do
|
|
93
93
|
end
|
94
94
|
|
95
95
|
Y(/^(?:verifico|valido) el pixel de e-planning$/) do
|
96
|
+
byebug
|
96
97
|
tag_script = @page.buscar_elemento_html("script[@language='JavaScript']")
|
97
98
|
tag_script.first.inner_html.empty?.should_not be_true
|
98
99
|
(tag_script.length == 1).should be_true
|
@@ -81,7 +81,7 @@ class AllPages
|
|
81
81
|
when 'RESULTS' then "results-f-gui=beta"
|
82
82
|
when 'CHECKOUT' then "chkf-app=beta"
|
83
83
|
when 'LANDING' then "landing-f-gui=beta"
|
84
|
-
when 'FSM' then "fsm-
|
84
|
+
when 'FSM' then "fsm-cheapest=beta|fsm-search=beta"
|
85
85
|
when 'CHAS' then "chas-flight=beta"
|
86
86
|
when 'DEBASE' then "flights-dbs-new=flights-dbs-new-b"
|
87
87
|
when 'PRISM' then "prism=beta"
|
@@ -24,6 +24,7 @@ module Results
|
|
24
24
|
div(:cluster_bussines,:class=>"cluster newCluster not-economy-cluster")
|
25
25
|
div(:actualizar_informacion,:class=>"update-message")
|
26
26
|
div(:actualizar_filtro,:id=>"update-message-overlay")
|
27
|
+
div(:mensaje_cancelacion_en_el_dia,:id=>"last-minute-advice")
|
27
28
|
|
28
29
|
link(:link_mejor_precio,:id=>"best-price")
|
29
30
|
|
@@ -38,6 +39,8 @@ module Results
|
|
38
39
|
elements(:itinerarios, :div, :css=>"#clusters .cluster")
|
39
40
|
elements(:detalle_precio_itinerario, :li, :css=>"#clusters .cluster .fare-detail li")
|
40
41
|
|
42
|
+
element(:ofertas_personalizadas ,:li ,:css=>"")
|
43
|
+
element(:ofertas_por_pais ,:li ,:css=>"")
|
41
44
|
element(:itinerario, :div, :css=>"#clusters .cluster")
|
42
45
|
element(:desglose,:li,:css=>"#clusters .cluster .fare-detail li")
|
43
46
|
element(:precio_itinerario, :span, :css=>".cluster .fare .price-currency")
|
@@ -122,5 +125,9 @@ module Results
|
|
122
125
|
index, permitida = sanear_itinerarios(["DL","Y4","4O","TK"])
|
123
126
|
@datos_de_itinerarios[index]
|
124
127
|
end
|
128
|
+
|
129
|
+
def last_minute?
|
130
|
+
return (manage_data.date_from_1 - Date.today).to_i < 2
|
131
|
+
end
|
125
132
|
end
|
126
133
|
end
|
@@ -9,6 +9,9 @@ Característica: checkout.last_minute
|
|
9
9
|
* ingreso una busqueda '<tipo>' de '<origen>' a '<destino>' de tipo '<cabotage>'
|
10
10
|
* con fecha 'hoy' y estadia '1 semana'
|
11
11
|
Cuando realizo la busqueda
|
12
|
+
Entonces verifico que la pagina no rompa
|
13
|
+
Cuando espero que termine de cargar la pagina de resultados
|
14
|
+
Entonces verifico que traiga resultados
|
12
15
|
Entonces en la página de resultados deben aparecer itinearios con fecha y hora de salida para 'hoy'
|
13
16
|
Y la diferencia horaria respecto del momento de la búsqueda debe ser mayor o igual a '4' 'horas'
|
14
17
|
|
@@ -28,9 +31,17 @@ Característica: checkout.last_minute
|
|
28
31
|
* ingreso una busqueda '<tipo>' de '<origen>' a '<destino>' de tipo '<cabotage>'
|
29
32
|
* con fecha 'hoy' y estadia '1 semana'
|
30
33
|
Cuando realizo la busqueda
|
34
|
+
Entonces verifico que la pagina no rompa
|
35
|
+
Cuando espero que termine de cargar la pagina de resultados
|
36
|
+
Entonces verifico que traiga resultados
|
31
37
|
Entonces en la página de resultados deben aparecer itinearios con fecha y hora de salida para 'hoy'
|
32
|
-
|
33
|
-
|
38
|
+
Cuando elijo un itinerario y paso a checkout
|
39
|
+
Entonces verifico que la pagina no rompa
|
40
|
+
Y espero que termine de cargar la pagina de checkout
|
41
|
+
Y verifico que ingrese al checkout
|
42
|
+
* verifico el mensaje de last minute con texto '¡Apresurate! Este vuelo sale dentro de las proximas 24hs'
|
43
|
+
* verifico el mensaje de last minute con texto '¡Compra, recibe los eTicket y viaja hoy mismo!'
|
44
|
+
|
34
45
|
Ejemplos:
|
35
46
|
|pais |dispositivo |origen |destino |tipo |cabotage|
|
36
47
|
|AR |computadora |BUE |MIA |roundtrip|nil |
|
@@ -45,6 +56,9 @@ Característica: checkout.last_minute
|
|
45
56
|
* ingreso una busqueda '<tipo>' de '<origen>' a '<destino>' de tipo '<cabotage>'
|
46
57
|
* con fecha 'hoy' y estadia '1 semana'
|
47
58
|
Cuando realizo la busqueda
|
59
|
+
Entonces verifico que la pagina no rompa
|
60
|
+
Cuando espero que termine de cargar la pagina de resultados
|
61
|
+
Entonces verifico que traiga resultados
|
48
62
|
Entonces en la página de resultados deben aparecer itinearios con fecha y hora de salida para 'hoy'
|
49
63
|
Cuando selecciona el itinerario mas próximo a salir
|
50
64
|
# de la lista presente tomar el mas cercano, guardar el tiempo de diferencia y hacer un sleep de ese tiempo mas uno/dos minutos e intentar l
|
@@ -52,6 +66,10 @@ Característica: checkout.last_minute
|
|
52
66
|
Y se inicia el proceso de compra
|
53
67
|
# Entonces no se puede completar la operación al llenar los datos
|
54
68
|
Y debe mostrarse al usuario el mensaje '>>>>>>> mensaje a definir <<<<<<<'
|
69
|
+
Cuando elijo un itinerario y paso a checkout
|
70
|
+
Entonces verifico que la pagina no rompa
|
71
|
+
Y espero que termine de cargar la pagina de checkout
|
72
|
+
Y verifico que ingrese al checkout
|
55
73
|
|
56
74
|
Ejemplos:
|
57
75
|
|pais |dispositivo |origen |destino |tipo |cabotage|
|
data/flights_gui_tests.gemspec
CHANGED
@@ -14,7 +14,7 @@ Gem::Specification.new do |gem|
|
|
14
14
|
|
15
15
|
gem.require_paths = ["lib"] # Usualmente es solo lib -> ["lib"]
|
16
16
|
|
17
|
-
gem.version = '0.3.
|
17
|
+
gem.version = '0.3.5' # La version se debe incrementar cada vez que se desea publicar una nueva version del test.
|
18
18
|
|
19
19
|
gem.add_dependency('henry-container', '>= 0.1.39')
|
20
20
|
gem.add_dependency('page-object')
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: flights_gui_tests
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- lgonzalez
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-11-
|
11
|
+
date: 2014-11-26 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: henry-container
|
@@ -211,6 +211,7 @@ files:
|
|
211
211
|
- features/step_definitions/checkout/error_messages_steps.rb
|
212
212
|
- features/step_definitions/checkout/fast_checkout_steps.rb
|
213
213
|
- features/step_definitions/checkout/form_steps.rb
|
214
|
+
- features/step_definitions/checkout/last_minutes_steps.rb
|
214
215
|
- features/step_definitions/checkout/load_steps.rb
|
215
216
|
- features/step_definitions/checkout/price_jump_steps.rb
|
216
217
|
- features/step_definitions/checkout/upselling_steps.rb
|