flights_gui_tests 0.3.4 → 0.3.5
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 +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
|