flights_gui_henry_tests 2.4.7 → 2.5.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +8 -8
- data/features/step_definitions/checkout/checkout_steps.rb +3 -3
- data/features/step_definitions/checkout/cupones_steps.rb +18 -17
- data/features/step_definitions/checkout/price_difference_steps.rb +50 -2
- data/features/step_definitions/filter/matrix_steps.rb +0 -1
- data/features/step_definitions/search/flight_gui_steps.rb +24 -14
- data/features/support/env.rb +1 -1
- data/features/support/lib/clusters/checkout_cluster.rb +56 -59
- data/features/support/lib/helpers/browser.rb +6 -14
- data/features/tests/checkout/cupones.feature +4 -4
- data/features/tests/checkout/low_cost.feature +1 -4
- data/features/tests/checkout/price_difference.feature +7 -140
- data/features/tests/checkout/providers.feature +2 -19
- data/features/tests/checkout/seguros.feature +20 -1
- data/features/tests/search/searches.feature +2 -3
- data/flights_gui_henry_tests.gemspec +1 -1
- data/henry-context.yml +36 -6
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
ZmIyZmE3NDhjZmVhODRiNGU3ZmFjYmUxZWJmYjNiYjNhODA3OGY1OA==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
ZjRlN2UzYzdiMGFhODQwYzFiMmQxOTZmYTU5ODIwZTNjODUwYjI3MA==
|
7
7
|
SHA512:
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
YWU5ZTJhZGJmOGYwYmVhMzE2ZGM5ODRkZjkyMTI5MDk1ZDVjMmY0N2Y3MWI2
|
10
|
+
OWE2NTgxZWQyZmUzMjQ4OGQzNDEwMTcyZGQ3MWNkODFlM2ExN2ZmN2FjMTI2
|
11
|
+
MGI1OWNmZDBlZDNkMTUxYTQ1NDAxN2E0N2M5ZDMxNDE3Yjg4ZTI=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
NDMxNmM4YTc2NjBkNTI2YTQ4NDBkNDdlMzkyYzZjZjBhMDAzZTVlODNkYjhk
|
14
|
+
YzUzOGEzZTcxNmE3NTFjZWRhM2NmYmIzNTYyMDg1MWI4MDE1ZDliNTY1Yjc5
|
15
|
+
MGQ5ZTJiODQ2YzZhMjUwYmJlODE4OWMyOTg0NzRmZDdlOTI5NjM=
|
@@ -139,11 +139,11 @@ Then /^Valido los valores del desglose del checkout$/ do
|
|
139
139
|
@itinerario_checkout = CheckoutCluster.new(@search.description,Hpricot.parse(BROWSER.div(:id,'detail').html))
|
140
140
|
@itinerario_checkout.validarSumaDesgloce.should be_within(4).of(@itinerario_checkout.tarifas['total'].value)
|
141
141
|
unless @itinerario_checkout.tarifas['adt'].valor.zero?
|
142
|
-
@itinerario_checkout.tarifas['adt'].valor.should
|
142
|
+
@itinerario_checkout.tarifas['adt'].valor.should be_within(4).of(@itinerario_checkout.tarifas['tarifa_adulto'].valor * @search.adt)
|
143
143
|
end
|
144
144
|
@itinerario.tarifas.each_pair do |key,value|
|
145
145
|
if @itinerario_checkout.tarifas[key] and !value.zero? and value.currency == @itinerario_checkout.tarifas[key].currency
|
146
|
-
value.should
|
146
|
+
value.value.should be_within(4).of(@itinerario_checkout.tarifas[key].value)
|
147
147
|
end
|
148
148
|
end
|
149
149
|
end
|
@@ -193,7 +193,7 @@ When /^Verifico que se muestre el banner de cancelacion$/ do
|
|
193
193
|
BROWSER.div(:id,'cancellation-advice').should visible("banner de cancelacion")
|
194
194
|
BROWSER.div(:id,'cancellation-advice').div(:class,'ux-common-message-content').p(:index,0).text.strip.should equal("¡Compre tranquilo!")
|
195
195
|
BROWSER.div(:id,'cancellation-advice').div(:class,'ux-common-message-content').p(:index,1).text.no_accents.strip.should equal("Si necesita cancelar su compra puede hacerlo gratis desde Mi Despegar hasta las 22 hs. del dia de hoy.")
|
196
|
-
elsif $SITE=="BR" and value < 50 and provider=="
|
196
|
+
elsif $SITE=="BR" and value < 50 and provider=="TAM"
|
197
197
|
BROWSER.div(:id,'cancellation-advice').should visible("banner de cancelacion")
|
198
198
|
BROWSER.div(:id,'cancellation-advice').div(:class,'ux-common-message-content').p(:index,0).text.strip.should equal("Compre tranquilo! Cancele no mesmo dia sem custo*!")
|
199
199
|
BROWSER.div(:id,'cancellation-advice').div(:class,'ux-common-message-content').p(:index,1).text.no_accents.strip.should equal("* Caso necessite cancelar sua compra, voce podera cancelar sem nenhum custo desde MeuDecolar ate as 20 hrs do mesmo dia da compra.")
|
@@ -3,29 +3,30 @@ And /^permite cupon de descuento$/ do
|
|
3
3
|
($SITE=="AR" and $ENV.match("produccion|beta")).should be_true
|
4
4
|
end
|
5
5
|
|
6
|
-
And /^Completo con un cupon de descuento
|
6
|
+
And /^Completo con un cupon de descuento con numero "(.*)"$/ do |num|
|
7
7
|
container = BROWSER.fieldset(:id,'additionals')
|
8
8
|
container.checkbox(:id,'vouchers').set(true)
|
9
|
-
container.text_field(:id,'voucher-
|
9
|
+
container.text_field(:id,'voucher-email').set("bookingvuelos@despegar.com")
|
10
|
+
container.text_field(:id,'voucher-code-0').set(num)
|
11
|
+
container.link(:id,'validate-voucher').click
|
10
12
|
end
|
11
13
|
|
12
|
-
And /^
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
14
|
+
And /^Verifico el mensaje de cupon invalido$/ do
|
15
|
+
begin
|
16
|
+
Watir::Wait.until(timeout = 30){BROWSER.div(:id,'coupon-error').present?}
|
17
|
+
rescue Timeout::Error
|
18
|
+
|
17
19
|
end
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
end
|
20
|
+
BROWSER.div(:id,'coupon-error').should visible("error de cupon invalido")
|
21
|
+
BROWSER.div(:id,'coupon-error').text.no_accents.should match("El codigo ingresado no existe|That is not a valid code|O codigo inserido nao existe")
|
22
|
+
end
|
22
23
|
|
23
|
-
And /^Verifico
|
24
|
-
step "Verifico que la pagina no rompa"
|
24
|
+
And /^Verifico el mensaje de cupon valido$/ do
|
25
25
|
begin
|
26
|
-
Watir::Wait.until(timeout =
|
26
|
+
Watir::Wait.until(timeout = 30){BROWSER.div(:id,'coupon-error').present?}
|
27
27
|
rescue Timeout::Error
|
28
|
-
|
28
|
+
|
29
29
|
end
|
30
|
-
BROWSER.div(:
|
31
|
-
|
30
|
+
BROWSER.div(:id,'coupon-error').should visible("error de cupon invalido")
|
31
|
+
BROWSER.div(:id,'coupon-error').text.no_accents.should match("El codigo ingresado no existe|That is not a valid code|O codigo inserido nao existe")
|
32
|
+
end
|
@@ -1,7 +1,55 @@
|
|
1
1
|
# -*- encoding : utf-8 -*-
|
2
2
|
Then /^completo el mail de contacto para forzar cambio de precio$/ do
|
3
|
-
|
3
|
+
itinerario = CheckoutCluster.new(@search.description,Hpricot.parse(BROWSER.div(:id,'detail').html))
|
4
|
+
price = (itinerario.tarifas["total"].valor * 0.1).to_i
|
5
|
+
puts price
|
4
6
|
container = BROWSER.fieldset(:id,'contact')
|
5
7
|
container.text_field(:id,"contact-email").set("mockedbooking_priceDifference_#{price}_#{price}@despegar.com")
|
6
8
|
container.text_field(:id,"contact-email-repeat").set("mockedbooking_priceDifference_#{price}_#{price}@despegar.com")
|
7
|
-
end
|
9
|
+
end
|
10
|
+
|
11
|
+
Then /^Verifico el popup de cambio de precio$/ do
|
12
|
+
@popup.div(:class,'popup-button button-yes').should visible("boton aceptar cambio de precio")
|
13
|
+
@popup.div(:class,'popup-link').should visible("boton ver otros vuelos")
|
14
|
+
doc = Hpricot.parse(@popup.div(:id,'popup-price-difference-template').html)
|
15
|
+
@precio_final = Price.new((doc/"p.paragraph span.currency").last.inner_text.strip + " " + (doc/"p.paragraph span.amount").last.inner_text.strip)
|
16
|
+
end
|
17
|
+
|
18
|
+
When /^Espero que cargue el popup de cambio de precio$/ do
|
19
|
+
begin
|
20
|
+
Watir::Wait.until(timeout=20){BROWSER.div(:id,'popup-price-difference').present?}
|
21
|
+
rescue Watir::Wait::TimeoutError
|
22
|
+
pending("No se mostro el popup de cambio de precio")
|
23
|
+
end
|
24
|
+
@popup = BROWSER.div(:id,'popup-price-difference')
|
25
|
+
end
|
26
|
+
|
27
|
+
And /^Elijo el mismo vuelo que cambio de precio$/ do
|
28
|
+
@popup.div(:class,'popup-button button-yes').click
|
29
|
+
end
|
30
|
+
|
31
|
+
And /^Verifico que el nuevo precio final sea el correcto$/ do
|
32
|
+
BROWSER.div(:id,'ticket').link(:class,'ux-shared-checkout-thanks-more').should visible("Link para popup de detalle de vuelo")
|
33
|
+
BROWSER.div(:id,'ticket').link(:class,'ux-shared-checkout-thanks-more').click
|
34
|
+
Watir::Wait.until(timeout = 20){BROWSER.div(:id,'popup-booking-details').present?}
|
35
|
+
popup_detalle_vuelo = Hpricot.parse(BROWSER.div(:id,'popup-booking-details').html)
|
36
|
+
popup_detalle_vuelo.inner_text.empty?.should_not be_true
|
37
|
+
@monto_total=(popup_detalle_vuelo/"span#total-price span.amount").inner_text.gsub(/\.|\,/,'').to_i
|
38
|
+
@precio_final.value.should be_within(3).of(@monto_total)
|
39
|
+
end
|
40
|
+
|
41
|
+
And /^Espero que cargue las preguntas de riesgo$/ do
|
42
|
+
Watir::Wait.until(timeout=300){(BROWSER.form(:id,'form').present? and BROWSER.form(:id,'form').div(:class,/item section radio-group group/).present?) or BROWSER.em(:class =>'checkout-id').present?}
|
43
|
+
sleep(1)
|
44
|
+
end
|
45
|
+
|
46
|
+
And /^se muestran las preguntas de riesgo$/ do
|
47
|
+
BROWSER.form(:id,'form').should visible
|
48
|
+
end
|
49
|
+
|
50
|
+
And /^Completo las preguntas de riesgo$/ do
|
51
|
+
BROWSER.divs(:class,/item section radio-group group/).to_a.each do |section|
|
52
|
+
section.radio(:class,'radio checkout-radio').set()
|
53
|
+
end
|
54
|
+
BROWSER.link(:id,'submit').click
|
55
|
+
end
|
@@ -115,7 +115,6 @@ end
|
|
115
115
|
|
116
116
|
#Se verifica la existencia de otra fecha con precio y se levantan las fechas
|
117
117
|
And /^Verifico que exista otra fecha con precio en la matriz de precios$/ do
|
118
|
-
debugger
|
119
118
|
doc = Hpricot.parse(BROWSER.div(:id,'price-suggestion-matrix').html)
|
120
119
|
if (doc/"li.price-suggestion-matrix-price-CHEAPEST").first
|
121
120
|
option="price-suggestion-matrix-price-CHEAPEST"
|
@@ -1,17 +1,18 @@
|
|
1
1
|
# -*- encoding : utf-8 -*-
|
2
2
|
When /^Elijo un itinerario y paso a checkout$/ do
|
3
3
|
json = @search.get_results_search_service
|
4
|
-
|
5
|
-
@
|
6
|
-
|
7
|
-
|
4
|
+
index = BROWSER.div(:id,'clusters').divs(:class,'cluster')[1].present? ? 1 : 0
|
5
|
+
@item_json = json['result']['data']['items'][index]
|
6
|
+
@itinerario = ResultsCluster.new(@search.description,Hpricot.parse(BROWSER.div(:id,'clusters').divs(:class,'cluster')[index].html))
|
7
|
+
if BROWSER.div(:id,'clusters').divs(:class,'cluster')[index].span(:class,'tickets-left-text').present?
|
8
|
+
@ultimos_lugares = BROWSER.div(:id,'clusters').divs(:class,'cluster')[index].span(:class,'tickets-left-text').text.strip.no_accents.match(/(\d)/) ? BROWSER.div(:id,'clusters').divs(:class,'cluster')[index].span(:class,'tickets-left-text').text.strip.no_accents.match(/(\d)/)[0].to_i : 1
|
8
9
|
else
|
9
10
|
@ultimos_lugares = nil
|
10
11
|
end
|
11
|
-
BROWSER.div(:id,'clusters').divs(:class,'cluster')[
|
12
|
-
BROWSER.div(:id,'clusters').divs(:class,'cluster')[
|
12
|
+
BROWSER.div(:id,'clusters').divs(:class,'cluster')[index].radio(:id,"#{index}-outbound-0").click if BROWSER.div(:id,'clusters').divs(:class,'cluster')[index].radio(:id,"#{index}-outbound-0").present?
|
13
|
+
BROWSER.div(:id,'clusters').divs(:class,'cluster')[index].radio(:id,"#{index}-inbound-0").click if BROWSER.div(:id,'clusters').divs(:class,'cluster')[index].radio(:id,"#{index}-inbound-0").present?
|
13
14
|
begin
|
14
|
-
BROWSER.div(:id,'clusters').divs(:class,'cluster')[
|
15
|
+
BROWSER.div(:id,'clusters').divs(:class,'cluster')[index].link(:class,'buy btn-buy flights-button').click
|
15
16
|
rescue Timeout::Error
|
16
17
|
stop_browser(BROWSER)
|
17
18
|
end
|
@@ -130,13 +131,24 @@ Then /^Completo el formulario de pasajeros$/ do
|
|
130
131
|
end
|
131
132
|
|
132
133
|
And /^Completo el formulario de tarjeta$/ do
|
133
|
-
|
134
|
+
provider = @item_json ? @item_json["provider"] : data["result"]["data"]["items"][0]["provider"]
|
135
|
+
container = BROWSER.fieldset(:id,'payment')
|
134
136
|
container.div(:class,"installment-info").text.downcase.no_accents.match(/debito/) ? container.radio(:id,"installment-1").click : container.radio(:id,"installment-0").click
|
135
|
-
|
136
|
-
|
137
|
-
|
137
|
+
if provider == "VOL"
|
138
|
+
container.select_list(:id,'card-brand').select("American Express")
|
139
|
+
container.text_field(:id,'card-number').set("345678000000007")
|
140
|
+
container.text_field(:id,'security-code').set("1234")
|
141
|
+
container.text_field(:id,"billing-address-city").set("Y Ciudad") if container.text_field(:id,"billing-address-city").present?
|
142
|
+
container.text_field(:id,"billing-address-street").set("Y Calle") if container.text_field(:id,"billing-address-street").present?
|
143
|
+
else
|
144
|
+
container.select_list(:id,'card-brand').select("Visa")
|
145
|
+
container.text_field(:id,'card-number').set("4242424242424242")
|
146
|
+
container.text_field(:id,'security-code').set("123")
|
147
|
+
container.text_field(:id,"billing-address-city").set("Ciudad") if container.text_field(:id,"billing-address-city").present?
|
148
|
+
container.text_field(:id,"billing-address-street").set("Calle") if container.text_field(:id,"billing-address-street").present?
|
149
|
+
end
|
150
|
+
container.select_list(:id,'card-expiration-month').select('10')
|
138
151
|
container.select_list(:id,'card-expiration-year').select(Date.today.year+1)
|
139
|
-
container.text_field(:id,'security-code').set("123")
|
140
152
|
container.text_field(:id,"other-bank-name").set("/Banco Emisor/") if container.text_field(:id,"other-bank-name").present?
|
141
153
|
container.text_field(:id,"owner-name").set("Diego Qa Romero") if container.text_field(:id,"owner-name").present?
|
142
154
|
container.select_list(:id,'owner-gender').select_value("MALE") if container.select_list(:id,'owner-gender').present?
|
@@ -150,9 +162,7 @@ And /^Completo el formulario de tarjeta$/ do
|
|
150
162
|
end
|
151
163
|
###############BillingAddressDefinition############################################################################################
|
152
164
|
container.select_list(:id,'billing-address-state').options[4].select if container.select_list(:id,"billing-address-state").present?
|
153
|
-
container.text_field(:id,"billing-address-city").set("Ciudad") if container.text_field(:id,"billing-address-city").present?
|
154
165
|
container.text_field(:id,"billing-address-postal-code").set("12345") if container.text_field(:id,"billing-address-postal-code").present?
|
155
|
-
container.text_field(:id,"billing-address-street").set("Calle") if container.text_field(:id,"billing-address-street").present?
|
156
166
|
container.text_field(:id,"billing-address-number").set("470") if container.text_field(:id,"billing-address-number").present?
|
157
167
|
end
|
158
168
|
|
data/features/support/env.rb
CHANGED
@@ -42,7 +42,7 @@ def add_cookie(type)
|
|
42
42
|
when 'FSM' then "fsm-rest=beta"
|
43
43
|
when 'CHAS' then "chas-flight=beta"
|
44
44
|
when 'DEBASE' then "flights-dbs-new=flights-dbs-new-b"
|
45
|
-
else "landing-f-gui=beta|results-f-gui=beta|chkf-app=beta
|
45
|
+
else "landing-f-gui=beta|results-f-gui=beta|chkf-app=beta"
|
46
46
|
end
|
47
47
|
end
|
48
48
|
|
@@ -4,75 +4,72 @@ class CheckoutCluster
|
|
4
4
|
|
5
5
|
def initialize(itinerario,html,page = 0)
|
6
6
|
self.load_prices((html/"div.price-info"))
|
7
|
-
|
7
|
+
eval "#{itinerario.downcase}(html)"
|
8
8
|
end
|
9
9
|
def roundtrip(html)
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
10
|
+
self.load_data_from((html/"div#itinerary div[@class='route outbound-route row-col']"))
|
11
|
+
self.load_data_to((html/"div#itinerary div[@class='route inbound-route row-col']"))
|
12
|
+
end
|
13
|
+
def oneway(html)
|
14
|
+
self.load_data_from((html/"div#itinerary div[@class='route outbound-route row-col']"))
|
15
|
+
@nro_vuelo_vuelta = -1
|
16
|
+
end
|
17
|
+
def multipledestinations(html)
|
18
|
+
self.load_data_from((html/"div#itinerary div[@class='route outbound-route row-col']"))
|
19
|
+
self.load_data_to((html/"div#itinerary div[@class='route outbound-route row-col']").last)
|
20
|
+
end
|
21
|
+
def load_data_from(div_datos)
|
22
22
|
@idas = Array.new
|
23
23
|
(div_datos/"div.segment").each do |div_datos_ida|
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
def load_data_to(div_datos)
|
24
|
+
origen = (div_datos/"span.cities").first.inner_html.to_s.match("(.*)\<span class=\"separator\"\>\<\/span\>(.*)")[1].strip.no_accents
|
25
|
+
destino= (div_datos/"span.cities").last.inner_html.to_s.match("(.*)\<span class=\"separator\"\>\<\/span\>(.*)")[2].strip.no_accents
|
26
|
+
origen_iata = (div_datos/"li.outbound a")[0].inner_text.strip
|
27
|
+
destino_iata = (div_datos/"li.inbound a")[-1].inner_text.strip
|
28
|
+
fecha = (div_datos_ida/"li.outbound span.date")[0] ? (div_datos_ida/"li.outbound span.date")[0].inner_text.strip.no_accents : (div_datos_ida/"li.inbound span.date")[0].inner_text.strip.no_accents
|
29
|
+
escala = (div_datos/"span.stops a").inner_text.strip.empty? ? "Sin escalas" : (div_datos/"span.stops a").inner_text.to_i
|
30
|
+
aerolinea = Array.new
|
31
|
+
i = 0
|
32
|
+
(div_datos_ida/"span.airline-logo//img").each do |aer|
|
33
|
+
aerolinea << aer.attributes['src'].match(/(..).png/)[1].upcase
|
34
|
+
i = i + 1
|
35
|
+
end
|
36
|
+
hou_sal_ida = Time.parse((div_datos/"li.outbound").first.inner_html.to_s.match("(.*)\<\/span\>(.*)hs(.*)\<a(.*)") ? (div_datos/"li.outbound").first.inner_html.to_s.match("(.*)\<\/span\>(.*)hs(.*)\<a(.*)")[2].strip.no_accents : (div_datos/"li.outbound").last.inner_html.to_s.match("(.*)\<\/span\>(.*)hs(.*)\<a(.*)")[2].strip.no_accents)
|
37
|
+
hou_lle_ida = Time.parse((div_datos/"li.outbound").last.inner_html.to_s.match("(.*)\<\/span\>(.*)hs(.*)\<a(.*)") ? (div_datos/"li.outbound").last.inner_html.to_s.match("(.*)\<\/span\>(.*)hs(.*)\<a(.*)")[2].strip.no_accents : (div_datos/"li.outbound").first.inner_html.to_s.match("(.*)\<\/span\>(.*)hs(.*)\<a(.*)")[2].strip.no_accents)
|
38
|
+
@idas << DataCluster.new(origen,destino,fecha, aerolinea, escala_to_i(escala),origen_iata,destino_iata,hou_sal_ida,hou_lle_ida)
|
39
|
+
end
|
40
|
+
@nro_vuelo_ida = 0
|
41
|
+
@ida = @idas[@nro_vuelo_ida]
|
42
|
+
end
|
43
|
+
def load_data_to(div_datos)
|
45
44
|
@vueltas = Array.new
|
46
45
|
(div_datos/"div.segment").each do |div_datos_vuelta|
|
47
46
|
origen = (div_datos/"span.cities").first.inner_html.to_s.match("(.*)\<span class=\"separator\"\>\<\/span\>(.*)")[1].strip.no_accents
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
47
|
+
destino= (div_datos/"span.cities").last.inner_html.to_s.match("(.*)\<span class=\"separator\"\>\<\/span\>(.*)")[2].strip.no_accents
|
48
|
+
origen_iata = (div_datos/"li.outbound a")[0].inner_text.strip
|
49
|
+
destino_iata = (div_datos/"li.inbound a")[-1].inner_text.strip
|
50
|
+
fecha = (div_datos_vuelta/"li.outbound span.date")[0] ? (div_datos_vuelta/"li.outbound span.date")[0].inner_text.strip.no_accents : (div_datos_vuelta/"li.inbound span.date")[0].inner_text.strip.no_accents
|
51
|
+
escala = (div_datos/"span.stops a").inner_text.strip.empty? ? "Sin escalas" : (div_datos/"span.stops a").inner_text.to_i
|
52
|
+
aerolinea = Array.new
|
53
|
+
i = 0
|
54
|
+
(div_datos_vuelta/"span.airline-logo//img").each do |aer|
|
55
|
+
aerolinea << aer.attributes['src'].match(/(..).png/)[1].upcase
|
56
|
+
i = i + 1
|
57
|
+
end
|
58
|
+
hou_sal_ida = Time.parse((div_datos/"li.outbound").first.inner_html.to_s.match("(.*)\<\/span\>(.*)hs(.*)\<a(.*)") ? (div_datos/"li.outbound").first.inner_html.to_s.match("(.*)\<\/span\>(.*)hs(.*)\<a(.*)")[2].strip.no_accents : (div_datos/"li.outbound").last.inner_html.to_s.match("(.*)\<\/span\>(.*)hs(.*)\<a(.*)")[2].strip.no_accents)
|
59
|
+
hou_lle_ida = Time.parse((div_datos/"li.outbound").last.inner_html.to_s.match("(.*)\<\/span\>(.*)hs(.*)\<a(.*)") ? (div_datos/"li.outbound").last.inner_html.to_s.match("(.*)\<\/span\>(.*)hs(.*)\<a(.*)")[2].strip.no_accents : (div_datos/"li.outbound").first.inner_html.to_s.match("(.*)\<\/span\>(.*)hs(.*)\<a(.*)")[2].strip.no_accents)
|
60
|
+
@vueltas << DataCluster.new(origen,destino,fecha, aerolinea, escala_to_i(escala),origen_iata,destino_iata,hou_sal_ida,hou_lle_ida)
|
62
61
|
end
|
63
62
|
@nro_vuelo_vuelta = 0
|
64
63
|
@vuelta = @vueltas[@nro_vuelo_vuelta]
|
65
|
-
|
66
|
-
|
67
|
-
def load_prices(p_html)
|
68
|
-
|
64
|
+
end
|
65
|
+
def load_prices(p_html)
|
69
66
|
@tarifas = Hash.new
|
70
67
|
if (p_html/"span#secondary-currency").empty?
|
71
68
|
@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)
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
69
|
+
else
|
70
|
+
@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)
|
71
|
+
end
|
72
|
+
|
76
73
|
adt = (p_html/"li.adult_fare").select{|li| li.inner_text.no_accents.downcase =~ /adulto|adult/}.first
|
77
74
|
@tarifas['adt'] = adt ? Price.new((adt/"span.currency").first.inner_text.strip + " " + (adt/"span.amount").first.inner_text.strip) : Price.new("$ 0",true)
|
78
75
|
|
@@ -98,8 +95,8 @@ class CheckoutCluster
|
|
98
95
|
@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)
|
99
96
|
end
|
100
97
|
|
101
|
-
|
102
|
-
|
98
|
+
def validarSumaDesgloce(linea = "total|tarifa_adulto|tarifa_adulto_dolar")
|
99
|
+
|
103
100
|
sumaTarifas = 0
|
104
101
|
@tarifas.each_pair do |key,tarifa|
|
105
102
|
if key !~ /#{linea}/
|
@@ -109,6 +106,6 @@ class CheckoutCluster
|
|
109
106
|
|
110
107
|
return sumaTarifas.to_i
|
111
108
|
|
112
|
-
|
109
|
+
end
|
113
110
|
|
114
111
|
end
|
@@ -139,24 +139,16 @@ end
|
|
139
139
|
def set_language(site)
|
140
140
|
begin
|
141
141
|
if site=="US"
|
142
|
-
if BROWSER.li(:class,'nibbler-common-header-language
|
143
|
-
BROWSER.li(:class,'nibbler-common-header-language
|
144
|
-
BROWSER.
|
145
|
-
end
|
146
|
-
if BROWSER.li(:class,'ux-common-header-language nibbler-user').image(:src,/es.png/).present?
|
147
|
-
BROWSER.li(:class,'ux-common-header-language nibbler-user').links[0].click
|
148
|
-
BROWSER.div(:class,'popup-languages nibbler-header-popup big').image(:src,/en.png/).click
|
142
|
+
if BROWSER.li(:class,'nibbler-common-header-language').image(:src,/es.png/).present?
|
143
|
+
BROWSER.li(:class,'nibbler-common-header-language').links[0].click
|
144
|
+
BROWSER.execute_script("javascript:void($(\".nibbler-common-header-language-popup a\").click());")
|
149
145
|
end
|
150
146
|
end
|
151
147
|
rescue Selenium::WebDriver::Error::UnknownError
|
152
148
|
if site=="US"
|
153
|
-
if BROWSER.li(:class,'nibbler-common-header-language
|
154
|
-
BROWSER.li(:class,'nibbler-common-header-language
|
155
|
-
BROWSER.
|
156
|
-
end
|
157
|
-
if BROWSER.li(:class,'ux-common-header-language nibbler-user').image(:src,/es.png/).present?
|
158
|
-
BROWSER.li(:class,'ux-common-header-language nibbler-user').links[0].click
|
159
|
-
BROWSER.div(:class,'popup-languages nibbler-header-popup big').image(:src,/en.png/).click
|
149
|
+
if BROWSER.li(:class,'nibbler-common-header-language').image(:src,/es.png/).present?
|
150
|
+
BROWSER.li(:class,'nibbler-common-header-language').links[0].click
|
151
|
+
BROWSER.execute_script("javascript:void($(\".nibbler-common-header-language-popup a\").click());")
|
160
152
|
end
|
161
153
|
end
|
162
154
|
rescue Timeout::Error
|
@@ -15,10 +15,10 @@ Característica: checkout.cupones
|
|
15
15
|
Y Completo los datos de resolucion AFIP
|
16
16
|
Y Completo los datos de contacto
|
17
17
|
Y Si pide factura fiscal, Completo los campos de factura fiscal
|
18
|
-
Y Completo con un cupon de descuento
|
19
|
-
Y
|
20
|
-
|
21
|
-
Y
|
18
|
+
Y Completo con un cupon de descuento con numero "XXXXXXXXXX"
|
19
|
+
Y Verifico el mensaje de cupon invalido
|
20
|
+
Y Si permite cupon de descuento, Completo con un cupon de descuento con numero "H82IRUHC1E"
|
21
|
+
Y Verifico el mensaje de cupon valido
|
22
22
|
Y Realizo la compra
|
23
23
|
Entonces Verifico que dirija a la pagina de gracias
|
24
24
|
Entonces Si el checkout me pide mas datos de tarjeta, lleno los datos de tarjeta adicionales
|
@@ -16,7 +16,7 @@ Característica: checkout.low_cost
|
|
16
16
|
Y Verifico el pixel de Efrontier
|
17
17
|
Y Verifico el pixel de trackeame en checkout
|
18
18
|
Y Verifico el tag de remarketing de facebook
|
19
|
-
|
19
|
+
Entonces verifico que los precios de las cuotas se muestran correctamente
|
20
20
|
Y Verifico que se muestren la caja de clientes felices
|
21
21
|
Entonces Completo el formulario de pasajeros
|
22
22
|
Y Completo el formulario de tarjeta
|
@@ -32,9 +32,6 @@ Característica: checkout.low_cost
|
|
32
32
|
Y Verifico el pixel de trackeame en gracias
|
33
33
|
Y Verifico el pixel de Efrontier
|
34
34
|
Y Verifico el segundo tag de google en resultado de checkout
|
35
|
-
#Y Si cumple para pruebas en fenix, Levanto los datos del vuelo
|
36
|
-
#Cuando Si cumple para pruebas en fenix, Inicializo las pruebas en fenix
|
37
|
-
#Entonces Si cumple para pruebas en fenix, Verifico que las pruebas en fenix esten correctas
|
38
35
|
|
39
36
|
@br
|
40
37
|
Ejemplos:
|
@@ -17,14 +17,17 @@ Característica: checkout.price_difference
|
|
17
17
|
Y Si pide factura fiscal, Completo los campos de factura fiscal
|
18
18
|
Y completo el mail de contacto para forzar cambio de precio
|
19
19
|
Y Realizo la compra
|
20
|
+
Cuando Espero que cargue el popup de cambio de precio
|
21
|
+
Entonces Verifico el popup de cambio de precio
|
22
|
+
Y Elijo el mismo vuelo que cambio de precio
|
23
|
+
Y Espero que cargue las preguntas de riesgo
|
24
|
+
Y Si se muestran las preguntas de riesgo, Completo las preguntas de riesgo
|
20
25
|
Entonces Verifico que dirija a la pagina de gracias
|
21
26
|
Entonces Si el checkout me pide mas datos de tarjeta, lleno los datos de tarjeta adicionales
|
22
27
|
Entonces Si se muestra el popup de no disponibilidad, elijo otro vuelo
|
23
28
|
Entonces Si debo completar de vuelta el formulario, completo el formulario
|
24
29
|
Y Verifico que genere id cro
|
25
|
-
Y
|
26
|
-
#Cuando Si cumple para pruebas en fenix, Inicializo las pruebas en fenix
|
27
|
-
#Entonces Si cumple para pruebas en fenix, Verifico que las pruebas en fenix esten correctas
|
30
|
+
Y Verifico que el nuevo precio final sea el correcto
|
28
31
|
|
29
32
|
@ar
|
30
33
|
@roundtrip
|
@@ -85,140 +88,4 @@ Característica: checkout.price_difference
|
|
85
88
|
@multipledestinations
|
86
89
|
Ejemplos:
|
87
90
|
|pais|tipo|cabotage|
|
88
|
-
|US |multipledestinations|nil|
|
89
|
-
@uy
|
90
|
-
@roundtrip
|
91
|
-
Ejemplos:
|
92
|
-
|pais|tipo|cabotage|
|
93
|
-
|UY |roundtrip|nil|
|
94
|
-
@uy
|
95
|
-
@oneway
|
96
|
-
Ejemplos:
|
97
|
-
|pais|tipo|cabotage|
|
98
|
-
|UY |oneway|nil|
|
99
|
-
@uy
|
100
|
-
@multipledestinations
|
101
|
-
Ejemplos:
|
102
|
-
|pais|tipo|cabotage|
|
103
|
-
|UY |multipledestinations|nil|
|
104
|
-
@pe
|
105
|
-
@roundtrip
|
106
|
-
Ejemplos:
|
107
|
-
|pais|tipo|cabotage|
|
108
|
-
|PE |roundtrip|nil|
|
109
|
-
@pe
|
110
|
-
@oneway
|
111
|
-
Ejemplos:
|
112
|
-
|pais|tipo|cabotage|
|
113
|
-
|PE |oneway|nil|
|
114
|
-
@pe
|
115
|
-
@multipledestinations
|
116
|
-
Ejemplos:
|
117
|
-
|pais|tipo|cabotage|
|
118
|
-
|PE |multipledestinations|nil|
|
119
|
-
@co
|
120
|
-
@roundtrip
|
121
|
-
Ejemplos:
|
122
|
-
|pais|tipo|cabotage|
|
123
|
-
|CO |roundtrip|nil|
|
124
|
-
@co
|
125
|
-
@oneway
|
126
|
-
Ejemplos:
|
127
|
-
|pais|tipo|cabotage|
|
128
|
-
|CO |oneway|nil|
|
129
|
-
@co
|
130
|
-
@multipledestinations
|
131
|
-
Ejemplos:
|
132
|
-
|pais|tipo|cabotage|
|
133
|
-
|CO |multipledestinations|nil|
|
134
|
-
@cr
|
135
|
-
@roundtrip
|
136
|
-
Ejemplos:
|
137
|
-
|pais|tipo|cabotage|
|
138
|
-
|CR |roundtrip|nil|
|
139
|
-
@cr
|
140
|
-
@oneway
|
141
|
-
Ejemplos:
|
142
|
-
|pais|tipo|cabotage|
|
143
|
-
|CR |oneway|nil|
|
144
|
-
@cr
|
145
|
-
@multipledestinations
|
146
|
-
Ejemplos:
|
147
|
-
|pais|tipo|cabotage|
|
148
|
-
|CR |multipledestinations|nil|
|
149
|
-
@ve
|
150
|
-
@roundtrip
|
151
|
-
Ejemplos:
|
152
|
-
|pais|tipo|cabotage|
|
153
|
-
|VE |roundtrip|nil|
|
154
|
-
@ve
|
155
|
-
@oneway
|
156
|
-
Ejemplos:
|
157
|
-
|pais|tipo|cabotage|
|
158
|
-
|VE |oneway|nil|
|
159
|
-
@ve
|
160
|
-
@multipledestinations
|
161
|
-
Ejemplos:
|
162
|
-
|pais|tipo|cabotage|
|
163
|
-
|VE |multipledestinations|nil|
|
164
|
-
@pa
|
165
|
-
@roundtrip
|
166
|
-
Ejemplos:
|
167
|
-
|pais|tipo|cabotage|
|
168
|
-
|PA |roundtrip|nil|
|
169
|
-
@pa
|
170
|
-
@oneway
|
171
|
-
Ejemplos:
|
172
|
-
|pais|tipo|cabotage|
|
173
|
-
|PA |oneway|nil|
|
174
|
-
@pa
|
175
|
-
@multipledestinations
|
176
|
-
Ejemplos:
|
177
|
-
|pais|tipo|cabotage|
|
178
|
-
|PA |multipledestinations|nil|
|
179
|
-
@ec
|
180
|
-
@roundtrip
|
181
|
-
Ejemplos:
|
182
|
-
|pais|tipo|cabotage|
|
183
|
-
|EC |roundtrip|nil|
|
184
|
-
@ec
|
185
|
-
@oneway
|
186
|
-
Ejemplos:
|
187
|
-
|pais|tipo|cabotage|
|
188
|
-
|EC |oneway|nil|
|
189
|
-
@ec
|
190
|
-
@multipledestinations
|
191
|
-
Ejemplos:
|
192
|
-
|pais|tipo|cabotage|
|
193
|
-
|EC |multipledestinations|nil|
|
194
|
-
@cl
|
195
|
-
@roundtrip
|
196
|
-
Ejemplos:
|
197
|
-
|pais|tipo|cabotage|
|
198
|
-
|CL |roundtrip|nil|
|
199
|
-
@cl
|
200
|
-
@oneway
|
201
|
-
Ejemplos:
|
202
|
-
|pais|tipo|cabotage|
|
203
|
-
|CL |oneway|nil|
|
204
|
-
@cl
|
205
|
-
@multipledestinations
|
206
|
-
Ejemplos:
|
207
|
-
|pais|tipo|cabotage|
|
208
|
-
|CL |multipledestinations|nil|
|
209
|
-
@pr
|
210
|
-
@roundtrip
|
211
|
-
Ejemplos:
|
212
|
-
|pais|tipo|cabotage|
|
213
|
-
|PR |roundtrip|nil|
|
214
|
-
@pr
|
215
|
-
@oneway
|
216
|
-
Ejemplos:
|
217
|
-
|pais|tipo|cabotage|
|
218
|
-
|PR |oneway|nil|
|
219
|
-
@pr
|
220
|
-
@multipledestinations
|
221
|
-
Ejemplos:
|
222
|
-
|pais|tipo|cabotage|
|
223
|
-
|PR |multipledestinations|nil|
|
224
|
-
|
91
|
+
|US |multipledestinations|nil|
|
@@ -13,7 +13,6 @@ Característica: checkout.providers
|
|
13
13
|
Entonces Verifico que traiga resultados
|
14
14
|
Cuando Elijo un itinerario y paso a checkout
|
15
15
|
Cuando Verifico que ingrese al checkout
|
16
|
-
#Y Verifico que se muestre el banner de cancelacion
|
17
16
|
Y Valido los valores del desglose del checkout
|
18
17
|
Y Verifico el pixel de Efrontier
|
19
18
|
Y Verifico el pixel de trackeame en checkout
|
@@ -36,10 +35,7 @@ Característica: checkout.providers
|
|
36
35
|
Y Verifico el segundo tag de google en resultado de checkout
|
37
36
|
Y Verifico el link de mi despegar
|
38
37
|
Y Levanto los datos del vuelo
|
39
|
-
|
40
|
-
#Cuando Si cumple para pruebas en fenix, Inicializo las pruebas en fenix
|
41
|
-
#Entonces Si cumple para pruebas en fenix, Verifico que las pruebas en fenix esten correctas
|
42
|
-
|
38
|
+
|
43
39
|
@us
|
44
40
|
Ejemplos:
|
45
41
|
|pais|tipo|cabotage|prov|from|to|date_from|date_to|
|
@@ -53,17 +49,4 @@ Característica: checkout.providers
|
|
53
49
|
|MX|roundtrip|true|VOL|MEX|MTY|2014-02-28|2014-03-17|
|
54
50
|
|MX|oneway|true|VOL|MEX|GDL|2014-03-28|2014-04-17|
|
55
51
|
|MX|roundtrip|true|VOL|MEX|CUN|2014-03-01|2014-03-15|
|
56
|
-
|MX|oneway|true|VOL|MEX|CUN|2014-02-19|2014-02-27|
|
57
|
-
@br
|
58
|
-
Ejemplos:
|
59
|
-
|pais|tipo|cabotage|prov|from|to|
|
60
|
-
|BR|roundtrip|nil|GDS|RIO|BUE|
|
61
|
-
|BR|oneway|nil|GDS|SAO|BUE|
|
62
|
-
|BR|roundtrip|nil|GDS|BUE|RIO|
|
63
|
-
|BR|oneway|nil|GDS|MIA|RIO|
|
64
|
-
|BR|roundtrip|nil|GDS|SAO|MIA|
|
65
|
-
|BR|oneway|nil|GDS|SAO|WAS|
|
66
|
-
|BR|roundtrip|nil|GDS|SCL|RIO|
|
67
|
-
|BR|oneway|nil|GDS|SAO|BUE|
|
68
|
-
|BR|roundtrip|nil|GDS|SAO|BCN|
|
69
|
-
|BR|oneway|nil|GDS|BCN|RIO|
|
52
|
+
|MX|oneway|true|VOL|MEX|CUN|2014-02-19|2014-02-27|
|
@@ -8,6 +8,9 @@ Característica: checkout.seguros
|
|
8
8
|
Cuando Ingreso a la pagina de resultados en "<pais>" para una busqueda "<tipo>" con origen "<from>" y destino "<to>" de tipo "<cabotage>"
|
9
9
|
Cuando Espero que termine de cargar
|
10
10
|
Entonces Verifico que traiga resultados
|
11
|
+
Cuando Seteo el proveedor "<prov>"
|
12
|
+
Cuando Espero que termine de cargar
|
13
|
+
Entonces Verifico que traiga resultados
|
11
14
|
Cuando Elijo un itinerario y paso a checkout
|
12
15
|
Cuando Verifico que ingrese al checkout
|
13
16
|
Cuando Se encuentra la opcion de cobertura
|
@@ -22,6 +25,7 @@ Característica: checkout.seguros
|
|
22
25
|
Y Elijo "<seguro>" si quiero cobertura
|
23
26
|
Entonces Completo el formulario de pasajeros
|
24
27
|
Y Completo el formulario de tarjeta
|
28
|
+
Y Si pide factura fiscal, Completo los campos de factura fiscal
|
25
29
|
Y Completo los datos de contacto
|
26
30
|
Y Realizo la compra
|
27
31
|
Entonces Verifico que dirija a la pagina de gracias
|
@@ -34,4 +38,19 @@ Característica: checkout.seguros
|
|
34
38
|
Ejemplos:
|
35
39
|
|pais|prov|tipo|seguro|from|to|cabotage|
|
36
40
|
|MX|GDS|roundtrip|chequear|BUE|MIA|nil|
|
37
|
-
|MX|GDS|roundtrip|no_chequear|BUE|BCN|nil|
|
41
|
+
|MX|GDS|roundtrip|no_chequear|BUE|BCN|nil|
|
42
|
+
@ar
|
43
|
+
Ejemplos:
|
44
|
+
|pais|prov|tipo|seguro|from|to|cabotage|
|
45
|
+
|AR|GDS|roundtrip|chequear|BUE|MIA|nil|
|
46
|
+
|AR|GDS|roundtrip|no_chequear|BUE|BCN|nil|
|
47
|
+
@br
|
48
|
+
Ejemplos:
|
49
|
+
|pais|prov|tipo|seguro|from|to|cabotage|
|
50
|
+
|BR|GDS|roundtrip|chequear|BUE|MIA|nil|
|
51
|
+
|BR|GDS|roundtrip|no_chequear|BUE|BCN|nil|
|
52
|
+
@us
|
53
|
+
Ejemplos:
|
54
|
+
|pais|prov|tipo|seguro|from|to|cabotage|
|
55
|
+
|US|GDS|roundtrip|chequear|BUE|MIA|nil|
|
56
|
+
|US|GDS|roundtrip|no_chequear|BUE|BCN|nil|
|
@@ -31,9 +31,8 @@ Característica: search.searches
|
|
31
31
|
Cuando Verifico que ingrese al checkout
|
32
32
|
Entonces Verifico que la pagina no rompa
|
33
33
|
Y Verifico si se muestran los beneficios en checkout
|
34
|
-
|
35
|
-
|
36
|
-
#Y Verifico que se muestren la caja de clientes felices
|
34
|
+
Y Verifico el banner de ultimos lugares en checkout
|
35
|
+
Y Verifico que se muestren la caja de clientes felices
|
37
36
|
|
38
37
|
|
39
38
|
@ar
|
@@ -15,7 +15,7 @@
|
|
15
15
|
|
16
16
|
gem.require_paths = ["lib"] #Usualmente es solo lib -> ["lib"]
|
17
17
|
|
18
|
-
gem.version = '2.
|
18
|
+
gem.version = '2.5.0' #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
@@ -16861,13 +16861,12 @@ tasks:
|
|
16861
16861
|
recipients:
|
16862
16862
|
- estebanldh@gmail.com
|
16863
16863
|
- nsimean@despegar.com
|
16864
|
-
- name: checkout.
|
16864
|
+
- name: checkout.seguros
|
16865
16865
|
class_name: Henry::Task::CucumberTask
|
16866
16866
|
options:
|
16867
16867
|
tags:
|
16868
16868
|
- checkout
|
16869
|
-
-
|
16870
|
-
- br
|
16869
|
+
- seguros
|
16871
16870
|
expand: true
|
16872
16871
|
no-source: true
|
16873
16872
|
reports:
|
@@ -16876,12 +16875,13 @@ tasks:
|
|
16876
16875
|
recipients:
|
16877
16876
|
- estebanldh@gmail.com
|
16878
16877
|
- nsimean@despegar.com
|
16879
|
-
- name: checkout.seguros
|
16878
|
+
- name: checkout.seguros.mx
|
16880
16879
|
class_name: Henry::Task::CucumberTask
|
16881
16880
|
options:
|
16882
16881
|
tags:
|
16883
16882
|
- checkout
|
16884
16883
|
- seguros
|
16884
|
+
- mx
|
16885
16885
|
expand: true
|
16886
16886
|
no-source: true
|
16887
16887
|
reports:
|
@@ -16890,13 +16890,43 @@ tasks:
|
|
16890
16890
|
recipients:
|
16891
16891
|
- estebanldh@gmail.com
|
16892
16892
|
- nsimean@despegar.com
|
16893
|
-
- name: checkout.seguros.
|
16893
|
+
- name: checkout.seguros.ar
|
16894
16894
|
class_name: Henry::Task::CucumberTask
|
16895
16895
|
options:
|
16896
16896
|
tags:
|
16897
16897
|
- checkout
|
16898
16898
|
- seguros
|
16899
|
-
-
|
16899
|
+
- ar
|
16900
|
+
expand: true
|
16901
|
+
no-source: true
|
16902
|
+
reports:
|
16903
|
+
- format: html
|
16904
|
+
name: ${DATE}_${TASK_NAME}.html
|
16905
|
+
recipients:
|
16906
|
+
- estebanldh@gmail.com
|
16907
|
+
- nsimean@despegar.com
|
16908
|
+
- name: checkout.seguros.br
|
16909
|
+
class_name: Henry::Task::CucumberTask
|
16910
|
+
options:
|
16911
|
+
tags:
|
16912
|
+
- checkout
|
16913
|
+
- seguros
|
16914
|
+
- br
|
16915
|
+
expand: true
|
16916
|
+
no-source: true
|
16917
|
+
reports:
|
16918
|
+
- format: html
|
16919
|
+
name: ${DATE}_${TASK_NAME}.html
|
16920
|
+
recipients:
|
16921
|
+
- estebanldh@gmail.com
|
16922
|
+
- nsimean@despegar.com
|
16923
|
+
- name: checkout.seguros.us
|
16924
|
+
class_name: Henry::Task::CucumberTask
|
16925
|
+
options:
|
16926
|
+
tags:
|
16927
|
+
- checkout
|
16928
|
+
- seguros
|
16929
|
+
- us
|
16900
16930
|
expand: true
|
16901
16931
|
no-source: true
|
16902
16932
|
reports:
|
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.
|
4
|
+
version: 2.5.0
|
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-
|
11
|
+
date: 2014-06-03 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: henry-container
|