flights_gui_henry_tests 2.0.4 → 2.0.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 CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- ZGRjOTA1MWIxNTNlYzI4YjQxM2M5ZmIwMTMyZWE2ZjVlZWRiYmNmYQ==
4
+ ZTEzZDViN2I5NzYxYjA5OGY3NjY4ZGEzZTk5OGUxYTAzNjgxODhlNg==
5
5
  data.tar.gz: !binary |-
6
- YjlhZjU2OTExNDYxZWIyOTlhZTA1OGJlYTQxOGRlMmU2MTJkNTk0Zg==
6
+ YjIwNzliZjdkZWZmYjI4ZGJiMDFjYTM0MDg3OGMwYzVmNDU0Y2VjZQ==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- YmVmODMyOTI3NDM4OGI4MThkMzM5ZTVkNDg4YjY0NDdlNTIxNjFhMWU4MDY0
10
- OGIwMzI3OTAyNjExYzJlZTY3Y2FhYjRkYTdkZDVhOTc1NjY2OGZlOTkwOGQ5
11
- MjlhYTIxYmZiYjA3ODg5ZTI0NTRhZTQ2YjU1YjEwNTVlZDMxZDk=
9
+ NGZkZmQ1NzkwMGFiNjRhNzhmMmMyNzZjMDZmODg2YTZhMjgzZDM1MzQzYTc5
10
+ YzBmYjdjYTE3OTBiMTA3ZTFhNGFiNTY2YWRhYzZmYmZiZTBhM2JhZDE3MGY1
11
+ MDE0NWNlNGNkMTMyNmIzMWZjYmFjY2M4YjY5NTA3ZGNlOWExZTU=
12
12
  data.tar.gz: !binary |-
13
- MTJhY2FmYzFhYzA0MmRmNjk5YjZmY2NmZGYzYzU5NTk5M2FmYTc0NjAyZjgz
14
- NDk1NWNlZDg2MGRiMTc3NmMzMTJlNDhlMTA5MzhkMTM5NTc1OWE2ZmU4Y2Q2
15
- NDFkZTg1YWFkNGNmMGUzOGFlNjI3MzQwOWE0NGYzMzdiNjQxYWE=
13
+ NzA5NGIyZDczNjgyYWU5ZjdjMGY5MDJhNjRmOTBjYmFjNDhhODBkZjk4NTU1
14
+ OWUzY2EwODhmNDc1NzEwM2M2OThiMjk5NDM1NThhNGM3Zjc0OTJiODVjZWQx
15
+ NGNhMTQ5YzQ1M2RjMWM4YTdhY2Y1YmI3YzM0ZDBiOWM4YjE3NGM=
@@ -12,6 +12,7 @@ MX:
12
12
  - {code: "MEX", airports: ["MEX", "TLC"], name: "Ciudad de Mexico|Cidade do Mexico"}
13
13
  - {code: "GDL", airports: ["GDL"], name: "Guadalajara"}
14
14
  - {code: "CUN", airports: ["CUN"], name: "Cancun"}
15
+ - {code: "MTY", airports: ["MTY"], name: "Monterrey"}
15
16
  PE:
16
17
  - {code: "LIM", airports: ["LIM"], name: "Lima"}
17
18
  VE:
@@ -12,7 +12,7 @@ When /^verifico que los precios de las cuotas se muestran correctamente$/ do
12
12
  total_2 = doc.inner_text.gsub(/\D/,'').to_i
13
13
  unless radio.attribute_value("data-regular-expressions").nil?
14
14
  keys = JSON.parse(radio.attribute_value("data-regular-expressions")).keys
15
- if interes or keys.select{|key| key.match(/(.*)CREDIT(.*)null/)}.first
15
+ if interes or keys.select{|key| key.match(/(.*)CREDIT(.*)null/)}.first or radio.attribute_value("class").match(/radio-with-interest/)
16
16
  validar_cuota_con_intereses(total_1,total_2)
17
17
  else
18
18
  case keys.first
@@ -314,13 +314,13 @@ end
314
314
 
315
315
  When /^Verifico que el paginado no rompa en la ultima paginas$/ do
316
316
  doc = Hpricot.parse(BROWSER.html)
317
- unless (doc/"div.flights-pagination li.page a").empty?
317
+ unless (doc/"div.flights-pagination li.page a").length==1
318
318
  url_with_filter = BROWSER.url
319
319
  iterator = BROWSER.div(:class,'flights-pagination').lis(:class,'page')[-1].text
320
320
  BROWSER.div(:class,'flights-pagination').lis(:class,'page')[-1].links[0].click
321
321
  Watir::Wait.until(timeout = 5){url_with_filter != BROWSER.url}
322
+ BROWSER.url.should match("(.+)\?pageIndex\=#{iterator}")
322
323
  end
323
- BROWSER.url.should match("(.+)\?pageIndex\=#{iterator}")
324
324
  end
325
325
 
326
326
  And /^Verifico que el mensaje de error en el cluster sea correcto$/ do
@@ -64,4 +64,12 @@ Then /^Verifico ordenamiento TOTALFARE_DESCENDING$/ do
64
64
  after.value.should is_greater_equal_than(cluster.tarifas['total'].value)
65
65
  after = cluster.tarifas['total']
66
66
  end
67
+ end
68
+
69
+ Then /^Verifico ordenamiento DURATION_ASCENDING$/ do
70
+ after = @clusters.first.duracion
71
+ @clusters.each do |cluster|
72
+ after.should_not is_greater_than(cluster.duracion)
73
+ after = cluster.duracion
74
+ end
67
75
  end
@@ -39,6 +39,20 @@ When /^Ingreso a la pagina de resultados en "(.*)" para una busqueda "(.*)" con
39
39
  set_cookies(BROWSER)
40
40
  end
41
41
 
42
+ When /^Ingreso a la pagina de resultados en "(.*)" para una busqueda "(.*)" con salida "(.*)", regreso "(.*)", origen "(.*)" y destino "(.*)" de tipo "(.*)"$/ do |site,type,date_from,date_to,from,to,cabotage|
43
+ set_site(site)
44
+ @search = Class.const_get("MockSearch#{type.capitalize}").new(site,$ENV,cabotage,{"from"=>from.upcase,"to"=>to.upcase})
45
+ @search.set_new_date(Date.parse(date_from),Date.parse(date_to))
46
+ puts @search.generate_url_results_search
47
+ begin
48
+ BROWSER.goto(@search.generate_url_results_search)
49
+ rescue Timeout::Error
50
+ stop_browser(BROWSER)
51
+ end
52
+ set_language(site)
53
+ set_cookies(BROWSER)
54
+ end
55
+
42
56
  When /^Ingreso a la pagina de resultados en "(.*)" para una busqueda "(.*)" que desambigue por "(.*)"$/ do |site,type,city|
43
57
  set_site(site)
44
58
  @search = Class.const_get("MockSearch#{type.capitalize}").new(site,$ENV,"true")
@@ -2,14 +2,14 @@
2
2
  Then /^Verifico cada cluster "(.*)"$/ do |type|
3
3
  json = @search.get_results_search_service
4
4
  i=0
5
- BROWSER.div(:id,'clusters').divs(:class,'cluster flights-cluster oldCluster').each do |cluster|
5
+ BROWSER.div(:id,'clusters').divs(:class,"cluster").each do |cluster|
6
6
  itinerary = ResultsCluster.new(type,Hpricot.parse(cluster.html))
7
7
  validate_cluster_miles(json,type,cluster,i)
8
8
  validate_cluster_details(json,type,cluster,i,itinerary)
9
9
  validate_itins_cluster_details(json,type,cluster,i)
10
10
  validate_fare_detail(json,cluster,i)
11
- validate_cluster_ancillaries(json,type,cluster,i)
12
11
  validate_cluster_payments(cluster)
12
+ validate_cluster_bussines(cluster)
13
13
  i += 1
14
14
  break if i == 2
15
15
  end
@@ -17,7 +17,8 @@ end
17
17
 
18
18
  Then /^Verifico los cluster nuevos con encabezados$/ do
19
19
  i=0
20
- BROWSER.div(:id,'clusters').divs(:class,'cluster flights-cluster').each do |cluster|
20
+ class_ = $SITE.match("AR|BR") ? "new" : "old"
21
+ BROWSER.div(:id,'clusters').divs(:class,"cluster flights-cluster #{class_}Cluster").each do |cluster|
21
22
  validate_cluster_with_headers(@search.type,cluster,i) if cluster.li(:class,'itineraries-title').present?
22
23
  end
23
24
  end
@@ -36,7 +37,6 @@ When /^Elijo un itinerario y paso a checkout$/ do
36
37
  end
37
38
 
38
39
  When /^Elijo un itinerario con proveedor "(.*)" y paso a checkout$/ do |prov|
39
- type = $SITE=="US" ? "new" : "old"
40
40
  json = @search.get_results_search_service
41
41
  i = 0
42
42
  page = 1
@@ -47,7 +47,7 @@ When /^Elijo un itinerario con proveedor "(.*)" y paso a checkout$/ do |prov|
47
47
  BROWSER.div(:class,'pagination').li(:class,'pagination-button next').click
48
48
  step "Espero que termine de cargar"
49
49
  end
50
- BROWSER.div(:id,'clusters').divs(:class,"cluster flights-cluster #{type}Cluster").each do |cluster|
50
+ BROWSER.div(:id,'clusters').divs(:class,"cluster").each do |cluster|
51
51
  if json['result']['data']['items'][i]['provider']==prov
52
52
  @item_json = json['result']['data']['items'][i]
53
53
  encontro = true
@@ -46,7 +46,6 @@ Then /^Verifico que se muestren en el header el usuario logueado$/ do
46
46
  Watir::Wait.until(timeout=20){BROWSER.div(:id,'nibbler-common-header').div(:class,'fb-description').present?}
47
47
  sleep(1)
48
48
  BROWSER.div(:id,'nibbler-common-header').div(:class,'fb-description').strong(:class,'social-name').text.should equal("testvuelos@despegar.com")
49
- #BROWSER.div(:id,'nibbler-common-header').li(:class,'nibbler-common-header-favorites nibbler-user nibbler-common-header-favorites-has').should visible("corazon rojo en el header")
50
49
  end
51
50
 
52
51
  Then /^Abro la lista de deseos$/ do
@@ -54,7 +53,6 @@ Then /^Abro la lista de deseos$/ do
54
53
  end
55
54
 
56
55
  Then /^Verifico textos y que no se muestren opciones en la lista de deseos$/ do
57
- #BROWSER.div(:class,'nibbler-popup-wishlist nibbler-header-popup big').div(:class,'nibbler-common-last-searches nibbler-common-header-favorites-list').should visible("lista de elementos vacio")
58
56
  BROWSER.div(:class,'nibbler-popup-wishlist nibbler-header-popup big').div(:class,'nibbler-common-last-searches nibbler-common-with').should_not visible("lista con deseos")
59
57
  end
60
58
 
@@ -6,7 +6,13 @@ class DetailsCluster
6
6
  @tramos = []
7
7
  (p_html/"div.popup-container div.popup-content div.detail").each do |div|
8
8
  tramo = Hash.new
9
- tramo['clase'] = (div/"div.segment span.class").first.inner_text.strip.no_accents
9
+ if (div/"div.segment span.not-economy-segments").first.nil?
10
+ tramo['bussines'] = nil
11
+ tramo['clase'] = (div/"div.segment span.class").first.inner_text.strip.no_accents
12
+ else
13
+ tramo['bussines'] = ((div/"div.segment span.not-economy-segments").first.inner_text.strip.no_accents == "Bussines")
14
+ tramo['clase'] = (div/"div.segment span.not-economy-segments").first.inner_text.strip.no_accents
15
+ end
10
16
  tramo['ciudad_origen'] = (div/"li.departure span.location span.data").first.inner_text.strip.no_accents
11
17
  tramo['fecha_origen'] = Date.parse_new_details((div/"li.departure span.date span.day").first.inner_text.strip.no_accents)
12
18
  tramo['hora_origen'] = Time.parse((div/"li.departure span.date span.hour").first.inner_text.strip.no_accents)
@@ -40,8 +40,8 @@ class ResultsCluster
40
40
  aerolinea << aer.attributes['src'].match(/(..).png/)[1].upcase
41
41
  i = i + 1
42
42
  end
43
- hou_sal_ida = Time.parse((div_datos_ida/"li.leave strong").inner_text.strip)
44
- hou_lle_ida = Time.parse((div_datos_ida/"li.arrive strong").inner_text.strip)
43
+ hou_sal_ida = Time.parse((div_datos_ida/"li.leave span.hour").inner_text.strip)
44
+ hou_lle_ida = Time.parse((div_datos_ida/"li.arrive span.hour").inner_text.strip)
45
45
  @idas << DataCluster.new(origen,destino,fecha, aerolinea, escala_to_i(escala),origen_iata,destino_iata,hou_sal_ida,hou_lle_ida,duracion)
46
46
  end
47
47
  @nro_vuelo_ida = 0
@@ -69,8 +69,8 @@ class ResultsCluster
69
69
  aerolinea << aer.attributes['src'].match(/(..).png/)[1].upcase
70
70
  i = i + 1
71
71
  end
72
- hou_sal_ida = Time.parse((div_datos_vuelta/"li.leave strong").inner_text.strip)
73
- hou_lle_ida = Time.parse((div_datos_vuelta/"li.arrive strong").inner_text.strip)
72
+ hou_sal_ida = Time.parse((div_datos_vuelta/"li.leave span.hour").inner_text.strip)
73
+ hou_lle_ida = Time.parse((div_datos_vuelta/"li.arrive span.hour").inner_text.strip)
74
74
  @vueltas << DataCluster.new(origen,destino,fecha, aerolinea, escala_to_i(escala),origen_iata,destino_iata,hou_sal_ida,hou_lle_ida,duracion)
75
75
  end
76
76
  @nro_vuelo_vuelta = 0
@@ -142,4 +142,27 @@ class ResultsCluster
142
142
  (vueltas + @idas.collect{|vuelta| vuelta.escalas}).sort
143
143
  end
144
144
 
145
+ def duracion
146
+ menor_ida = menor_duracion(@idas.collect{|ida| ida.duracion})
147
+ menor_vuelta = @vueltas ? menor_duracion(@vueltas.collect{|ida| ida.duracion}) : 0
148
+
149
+ return menor_vuelta + menor_ida
150
+ end
151
+
152
+ def menor_duracion(rutas)
153
+ totales = []
154
+ rutas.each do |custom|
155
+ if custom.match("^(.*)h (.*)m$")
156
+ total = custom.match("^(.*)h (.*)m$")[1].to_i * 60
157
+ total += custom.match("^(.*)h (.*)m$")[2].to_i
158
+ elsif custom.match("^(.*)h$")
159
+ total = custom.match("^(.*)h$")[1].to_i * 60
160
+ else
161
+ total = custom.match("^(.*)m$")[1].to_i
162
+ end
163
+ totales << total
164
+ end
165
+ return totales.sort.first
166
+ end
167
+
145
168
  end
@@ -102,10 +102,22 @@ end
102
102
 
103
103
  def validar_clase(cluster,route)
104
104
  if cluster.tramos.select{|tramo| tramo['bussines'] }.empty?
105
- route
105
+ puts route.span(:class,'ux-common-icon-rate-star').present?
106
+ route.span(:class,'ux-common-icon-rate-star').should_not visible("icono de bussines")
107
+ else
108
+ puts route.span(:class,'ux-common-icon-rate-star').present?
109
+ route.span(:class,'ux-common-icon-rate-star').should visible("icono de bussines")
106
110
  end
107
111
  end
108
112
 
113
+ def validate_cluster_bussines(cluster)
114
+ if cluster.div(:class,'not-economy-cluster-alert').present?
115
+ cluster.span(:class,'ux-common-icon-rate-star').should visible("icono de bussines")
116
+ else
117
+ cluster.span(:class,'ux-common-icon-rate-star').should_not visible("icono de bussines")
118
+ end
119
+ end
120
+
109
121
  def recorrer_segmentos(route,cluster)
110
122
  route.li(:class,'stops').a(:class,'text').click
111
123
  Watir::Wait.until{BROWSER.div(:class,"flights-popup popup-detail").present?}
@@ -141,51 +153,6 @@ def validate_cluster_with_headers(type,cluster,i)
141
153
  end
142
154
  end
143
155
 
144
- def validate_cluster_ancillaries(json,type,cluster,i)
145
- j=0
146
- if type != "multipledestinations"
147
- cluster.div(:class,'itineraries').div(:class,'sub-cluster outbound').ul(:class,'itineraries-group cluster-items-list').lis(:class,'item itinerary cluster-item').each do |route|
148
- puts "entra"
149
- json['result']['data']['items'][i]['itinerariesBox']['outboundRoutes'][j]['ancillaryTypes'].each do |amenity|
150
- puts "paso d"
151
- route.li(:class,'ancillaries').span(:class,"icon-ancillaries icon-ancillaries-#{amenity}").should visible
152
- # (route.li(:class,'ancillaries').span(:class,"icon-ancillaries icon-ancillaries-#{amenity}")).click
153
- # popup = Hpricot.parse(BROWSER.div(:class,'flights-popup popup-ancillary').html)
154
- # if amenity == 'INTERNET_ACCESS'
155
- # popup.div(:class,'popup-header').inner_text.no_accents.strip.should match(/WIFI/)
156
- # else
157
- # if amenity == 'MEALS'
158
- # popup.div(:class,'popup-header').inner_text.no_accents.strip.should match(/Comidas/)
159
- # else amenity == 'BAGGAGE'
160
- # popup.div(:class,'popup-header').inner_text.no_accents.strip.should match(/Equipaje por pasajero/)
161
- # end
162
- # end
163
- end
164
- j += 1
165
- # cerrar_popup
166
- end
167
- if type == "roundtrip"
168
- cluster.div(:class,'itineraries').div(:class,'sub-cluster inbound').ul(:class,'itineraries-group cluster-items-list').lis(:class,'item itinerary cluster-item').each do |route|
169
- puts "entra c"
170
- json['result']['data']['items'][i]['itinerariesBox']['inboundRoutes'][j]['ancillaryTypes'].each do |amenity|
171
- puts "paso"
172
- route.li(:class,'ancillaries').span(:class,"icon-ancillaries icon-ancillaries-#{amenity}").should visible
173
- end
174
- j += 1
175
- end
176
- else
177
- cluster.div(:class,'itineraries').div(:class,'sub-cluster multiple').ul(:class,'itineraries-group cluster-items-list').lis(:class,'item itinerary cluster-item').each do |route|
178
- puts "entra"
179
- json['result']['data']['items'][i]['itinerary']['routes'][j]['ancillaryTypes'].each do |amenity|
180
- puts "paso a"
181
- route.li(:class,'ancillaries').span(:class,"icon-ancillaries icon-ancillaries-#{amenity}").should visible
182
- end
183
- j += 1
184
- end
185
- end
186
- end
187
- end
188
-
189
156
  def validate_cluster_payments(cluster)
190
157
  if(cluster.div(:class,'actions').link(:class,'payments').present?)
191
158
  cluster.div(:class,'actions').link(:class,'payments').click
@@ -0,0 +1,49 @@
1
+ #language: es
2
+ @checkout
3
+ Característica: checkout.aij
4
+ Se verifica la correcta carga y funcionamiento de la pagina de resultados
5
+
6
+ @aij
7
+ Esquema del escenario: Ingresar a la pagina de resultados
8
+ Cuando Ingreso a la pagina de resultados en "<pais>" para una busqueda "<tipo>" con salida "<date_from>", regreso "<date_to>", origen "<from>" y destino "<to>" de tipo "<cabotage>"
9
+ Cuando Espero que termine de cargar
10
+ Entonces Verifico que traiga resultados
11
+ Cuando Elijo un itinerario con proveedor "<prov>" y paso a checkout
12
+ Cuando Verifico que ingrese al checkout
13
+ Y Verifico el pixel de Efrontier
14
+ Y Verifico el pixel de trackeame en checkout
15
+ Y Verifico el tag de remarketing de facebook
16
+ Entonces verifico que los precios de las cuotas se muestran correctamente
17
+ Y Verifico que se muestren la caja de clientes felices
18
+ Entonces Completo el formulario de pasajeros
19
+ Y Completo el formulario de tarjeta
20
+ Y Completo los datos de resolucion AFIP
21
+ Y Completo los datos de contacto
22
+ Y Si pide factura fiscal, Completo los campos de factura fiscal
23
+ Y Realizo la compra
24
+ Entonces Verifico que dirija a la pagina de gracias
25
+ Entonces Si el checkout me pide mas datos de tarjeta, lleno los datos de tarjeta adicionales
26
+ Entonces Si se muestra el popup de no disponibilidad, elijo otro vuelo
27
+ Entonces Si debo completar de vuelta el formulario, completo el formulario
28
+ Y Verifico que genere id cro
29
+ Y Verifico el pixel de trackeame en gracias
30
+ Y Verifico el pixel de Efrontier
31
+ Y Verifico el segundo tag de google en resultado de checkout
32
+ #Y Si cumple para pruebas en fenix, Levanto los datos del vuelo
33
+ #Cuando Si cumple para pruebas en fenix, Inicializo las pruebas en fenix
34
+ #Entonces Si cumple para pruebas en fenix, Verifico que las pruebas en fenix esten correctas
35
+
36
+ @us
37
+ Ejemplos:
38
+ |pais|tipo|cabotage|prov|from|to|date_from|date_to|
39
+ |US|roundtrip|true|AIJ|MEX|GDL|2014-02-28|2014-03-17|
40
+ |US|oneway|true|AIJ|MEX|MTY|2014-03-28|2014-04-17|
41
+ |US|roundtrip|true|AIJ|MEX|MTY|2014-03-01|2014-03-15|
42
+ |US|oneway|true|AIJ|MEX|CUN|2014-02-19|2014-02-27|
43
+ @mx
44
+ Ejemplos:
45
+ |pais|tipo|cabotage|prov|from|to|date_from|date_to|
46
+ |MX|roundtrip|true|AIJ|MEX|MTY|2014-02-28|2014-03-17|
47
+ |MX|oneway|true|AIJ|MEX|GDL|2014-03-28|2014-04-17|
48
+ |MX|roundtrip|true|AIJ|MEX|CUN|2014-03-01|2014-03-15|
49
+ |MX|oneway|true|AIJ|MEX|CUN|2014-02-19|2014-02-27|
@@ -52,18 +52,4 @@ Característica: checkout.low_cost
52
52
  #|US|roundtrip|nil|VOL|MEX|LAS|
53
53
  #|US|oneway|nil|VOL|CUN|LAS|
54
54
  #|US|roundtrip|true|VOL|GDL|MEX|
55
- #|US|oneway|nil|VOL|LAX|MEX|
56
- @us
57
- Ejemplos:
58
- |pais|tipo|cabotage|prov|from|to|
59
- |US|roundtrip|true|AIJ|MEX|GDL|
60
- |US|oneway|true|AIJ|MEX|GDL|
61
- |US|roundtrip|true|AIJ|MEX|CUN|
62
- |US|oneway|true|AIJ|MEX|CUN|
63
- @mx
64
- Ejemplos:
65
- |pais|tipo|cabotage|prov|from|to|
66
- |MX|roundtrip|true|AIJ|MEX|GDL|
67
- |MX|oneway|true|AIJ|MEX|GDL|
68
- |MX|roundtrip|true|AIJ|MEX|CUN|
69
- |MX|oneway|true|AIJ|MEX|CUN|
55
+ #|US|oneway|nil|VOL|LAX|MEX|
@@ -25,7 +25,12 @@ Característica: landing.positive
25
25
  Y Verifico que traiga aeropuertos y concuerden con la ciudad buscada
26
26
  Y Verifico que traiga fechas en formato correcto
27
27
  Cuando Elijo un ticket e ingreso a la pagina de resultados
28
-
28
+ Cuando Verifico la pagina donde ingresa
29
+ Cuando Si ingreso resultados, Espero que termine de cargar
30
+ Entonces Si ingreso resultados, Verifico que sea la pagina de resultados correcta
31
+ Y Si ingreso resultados, Verifico que traiga resultados
32
+ Y Si ingreso resultados, Verifico que el valor elejido en landing se encuentre en la lista de resultados
33
+ Y Si ingreso checkout, Verifico que ingrese al checkout
29
34
 
30
35
  @ar
31
36
  @roundtrip
@@ -19,58 +19,70 @@ Característica: search.orders
19
19
  |pais|tipo|order|
20
20
  |AR |roundtrip|STOPSCOUNT_ASCENDING|
21
21
  |AR |oneway|TOTALFARE_ASCENDING|
22
+ |AR |roundtrip|DURATION_ASCENDING|
22
23
  @br
23
24
  Ejemplos:
24
25
  |pais|tipo|order|
25
26
  |BR |roundtrip|STOPSCOUNT_ASCENDING|
26
27
  |BR |oneway|TOTALFARE_ASCENDING|
28
+ |BR |oneway|DURATION_ASCENDING|
27
29
  @cl
28
30
  Ejemplos:
29
31
  |pais|tipo|order|
30
32
  |CL |roundtrip|STOPSCOUNT_ASCENDING|
31
33
  |CL |oneway|TOTALFARE_ASCENDING|
34
+ |CL |roundtrip|DURATION_ASCENDING|
32
35
  @co
33
36
  Ejemplos:
34
37
  |pais|tipo|order|
35
38
  |CO |roundtrip|STOPSCOUNT_ASCENDING|
36
39
  |CO |oneway|TOTALFARE_ASCENDING|
40
+ |CO |oneway|DURATION_ASCENDING|
37
41
  @cr
38
42
  Ejemplos:
39
43
  |pais|tipo|order|
40
44
  |CR |roundtrip|STOPSCOUNT_ASCENDING|
41
45
  |CR |oneway|TOTALFARE_ASCENDING|
46
+ |CR |roundtrip|DURATION_ASCENDING|
42
47
  @pa
43
48
  Ejemplos:
44
49
  |pais|tipo|order|
45
50
  |PA |roundtrip|STOPSCOUNT_ASCENDING|
46
51
  |PA |oneway|TOTALFARE_ASCENDING|
52
+ |PA |oneway|DURATION_ASCENDING|
47
53
  @ec
48
54
  Ejemplos:
49
55
  |pais|tipo|order|
50
56
  |EC |roundtrip|STOPSCOUNT_ASCENDING|
51
57
  |EC |oneway|TOTALFARE_ASCENDING|
58
+ |EC |roundtrip|DURATION_ASCENDING|
52
59
  @mx
53
60
  Ejemplos:
54
61
  |pais|tipo|order|
55
62
  |MX |roundtrip|STOPSCOUNT_ASCENDING|
56
63
  |MX |oneway|TOTALFARE_ASCENDING|
64
+ |MX |oneway|DURATION_ASCENDING|
57
65
  @pe
58
66
  Ejemplos:
59
67
  |pais|tipo|order|
60
68
  |PE |roundtrip|STOPSCOUNT_ASCENDING|
61
69
  |PE |oneway|TOTALFARE_ASCENDING|
70
+ |PE |roundtrip|DURATION_ASCENDING|
62
71
  @uy
63
72
  Ejemplos:
64
73
  |pais|tipo|order|
65
74
  |UY |roundtrip|STOPSCOUNT_ASCENDING|
66
75
  |UY |oneway|TOTALFARE_ASCENDING|
76
+ |UY |oneway|DURATION_ASCENDING|
67
77
  @us
68
78
  Ejemplos:
69
79
  |pais|tipo|order|
70
80
  |US |roundtrip|STOPSCOUNT_ASCENDING|
71
81
  |US |oneway|TOTALFARE_ASCENDING|
82
+ |US |roundtrip|DURATION_ASCENDING|
72
83
  @ve
73
84
  Ejemplos:
74
85
  |pais|tipo|order|
75
86
  |VE |roundtrip|STOPSCOUNT_ASCENDING|
76
87
  |VE |oneway|TOTALFARE_ASCENDING|
88
+ |VE |oneway|DURATION_ASCENDING|
@@ -15,7 +15,7 @@
15
15
 
16
16
  gem.require_paths = ["lib"] #Usualmente es solo lib -> ["lib"]
17
17
 
18
- gem.version = '2.0.4' #La version se debe incrementar cada vez que se desea publicar una nueva version del test.
18
+ gem.version = '2.0.5' #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')
data/henry-context.yml CHANGED
@@ -13921,36 +13921,6 @@ tasks:
13921
13921
  recipients:
13922
13922
  - estebanldh@gmail.com
13923
13923
  - nsimean@despegar.com
13924
- - name: checkout.low_cost.us
13925
- class_name: Henry::Task::CucumberTask
13926
- options:
13927
- tags:
13928
- - checkout
13929
- - low_cost
13930
- - us
13931
- expand: true
13932
- no-source: true
13933
- reports:
13934
- - format: html
13935
- name: ${DATE}_${TASK_NAME}.html
13936
- recipients:
13937
- - estebanldh@gmail.com
13938
- - nsimean@despegar.com
13939
- - name: checkout.low_cost.mx
13940
- class_name: Henry::Task::CucumberTask
13941
- options:
13942
- tags:
13943
- - checkout
13944
- - low_cost
13945
- - mx
13946
- expand: true
13947
- no-source: true
13948
- reports:
13949
- - format: html
13950
- name: ${DATE}_${TASK_NAME}.html
13951
- recipients:
13952
- - estebanldh@gmail.com
13953
- - nsimean@despegar.com
13954
13924
  - name: checkout.error_messages
13955
13925
  class_name: Henry::Task::CucumberTask
13956
13926
  options:
@@ -15015,6 +14985,50 @@ tasks:
15015
14985
  recipients:
15016
14986
  - estebanldh@gmail.com
15017
14987
  - nsimean@despegar.com
14988
+ - name: checkout.aij
14989
+ class_name: Henry::Task::CucumberTask
14990
+ options:
14991
+ tags:
14992
+ - checkout
14993
+ - aij
14994
+ expand: true
14995
+ no-source: true
14996
+ reports:
14997
+ - format: html
14998
+ name: ${DATE}_${TASK_NAME}.html
14999
+ recipients:
15000
+ - estebanldh@gmail.com
15001
+ - nsimean@despegar.com
15002
+ - name: checkout.aij.us
15003
+ class_name: Henry::Task::CucumberTask
15004
+ options:
15005
+ tags:
15006
+ - checkout
15007
+ - aij
15008
+ - us
15009
+ expand: true
15010
+ no-source: true
15011
+ reports:
15012
+ - format: html
15013
+ name: ${DATE}_${TASK_NAME}.html
15014
+ recipients:
15015
+ - estebanldh@gmail.com
15016
+ - nsimean@despegar.com
15017
+ - name: checkout.aij.mx
15018
+ class_name: Henry::Task::CucumberTask
15019
+ options:
15020
+ tags:
15021
+ - checkout
15022
+ - aij
15023
+ - mx
15024
+ expand: true
15025
+ no-source: true
15026
+ reports:
15027
+ - format: html
15028
+ name: ${DATE}_${TASK_NAME}.html
15029
+ recipients:
15030
+ - estebanldh@gmail.com
15031
+ - nsimean@despegar.com
15018
15032
  - name: checkout.chat
15019
15033
  class_name: Henry::Task::CucumberTask
15020
15034
  options:
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: 2.0.4
4
+ version: 2.0.5
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-02-06 00:00:00.000000000 Z
11
+ date: 2014-02-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: henry-container
@@ -294,6 +294,7 @@ files:
294
294
  - features/tests/checkout/error_messages.feature
295
295
  - features/tests/checkout/integration.feature
296
296
  - features/tests/checkout/cupones.feature
297
+ - features/tests/checkout/aij.feature
297
298
  - features/tests/checkout/chat.feature
298
299
  - features/tests/checkout/seguros.feature
299
300
  - features/tests/checkout/button_cac.feature