flights_gui_tests 2.4.13 → 2.4.14

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 009f648045c6aadc8c8dbed071cddbfdd17d332d
4
- data.tar.gz: efc3ef43d5351dcf87b3727790a843ff3e2976ea
3
+ metadata.gz: c1c24c65ad29d3c2646ee59336e608747fb2a666
4
+ data.tar.gz: 5fec3bd5f7522aef2c1762f55ca4a3cff531245b
5
5
  SHA512:
6
- metadata.gz: 79c7c382419f450ce4cc0e313f0949f4162494891f5d67c29d1edf6a6bc2a7354758173269c2c22f51bac1171f504f76676d43ca92d42ddd7dc05cae823fef9e
7
- data.tar.gz: 92bcc9233ab0aab0dd18a3db78453877c189ff8e88f1ea9a418dc8f5ad3d334154173bd1452921bf46b92d34cb31f95992a1f0f83473e43311084fd78e397a93
6
+ metadata.gz: ca825a887bb19e25d1f659876c511c9a118c9194eb8da4ea25fbab70993f5acd52538fe3b64e3a83de4c43431aadecd838483392b68e42624784f627b48ad495
7
+ data.tar.gz: bbc9d91758a182a06b9329f02a0ba693a44d8892954c5db22916f2331be6baa36fda862fcbb10cdeee3554fd8f370643ac0fedcda8f8b63d449b45043269fe44
@@ -34,3 +34,8 @@ Y(/^acepto y compro$/) do
34
34
  @provider = @page.provider
35
35
  @page.aceptar_y_comprar
36
36
  end
37
+
38
+ Y(/^acepto y compro con seguro incluido$/) do
39
+ @provider = @page.provider
40
+ @page.aceptar_y_comprar_con_seguro_incluido
41
+ end
@@ -17,7 +17,7 @@ end
17
17
 
18
18
  Entonces(/^(?:verifico|valido) que se muestre correctamente la caja de seguro sin chequear$/) do
19
19
  @page.desprotegido_element.should visible("texto de no estoy protegido en la caja de seguro")
20
- @page.desprotegido_element.text.should match("Agregue su asistencia y viaje protegido")
20
+ @page.desprotegido_element.text.no_accents.should match("Agregue su asistencia y viaje protegido|Contrate sua assistencia e viaje protegido")
21
21
  end
22
22
 
23
23
  Entonces(/^(?:verifico|valido) que el precio del seguro no se muestre en el desglose$/) do
@@ -25,9 +25,10 @@ Entonces(/^(?:verifico|valido) que el precio del seguro no se muestre en el desg
25
25
  end
26
26
 
27
27
  Entonces(/^(?:verifico|valido) que se muestre correctamente la caja de seguro chequeada$/) do
28
+ @page.protegido_element.when_visible(timeout=5)
28
29
  @page.cobertura_element.should visible("link de cobertura en la caja de seguro")
29
30
  @page.protegido_element.should visible("texto de estoy protegido en la caja de seguro")
30
- @page.protegido_element.text.should match("¡Listo! Viaja protegido")
31
+ @page.protegido_element.text.no_accents.should match("¡Listo! Viaja protegido|Pronto! Voce viajara seguro")
31
32
  end
32
33
 
33
34
  Entonces(/^(?:verifico|valido) que el precio del seguro se muestre correctamente en el desglose$/) do
@@ -60,7 +60,6 @@ require_relative 'pages/results/desambiguation_airports_page'
60
60
  require_relative 'pages/results/desambiguation_city_page'
61
61
  require_relative 'pages/results/search_page'
62
62
  require_relative 'pages/checkout/checkout_page'
63
- require_relative 'pages/checkout/checkout_page/old_checkout_page'
64
63
  require_relative 'pages/checkout/checkout_page/new_checkout_page'
65
64
  require_relative 'pages/checkout/popup_results_page'
66
65
  require_relative 'pages/thanks/thanks_page'
@@ -1,12 +1,4 @@
1
1
  # encoding: utf-8
2
- require_relative 'old_checkout/pasajeros'
3
- require_relative 'old_checkout/tarjeta'
4
- require_relative 'old_checkout/reviews'
5
- require_relative 'old_checkout/popup'
6
- require_relative 'old_checkout/errores'
7
- require_relative 'old_checkout/fast_checkout'
8
- require_relative 'old_checkout/datos_de_facturacion'
9
- require_relative 'old_checkout/informacion_de_contacto'
10
2
  require_relative 'new_checkout/pasajeros'
11
3
  require_relative 'new_checkout/tarjeta'
12
4
  require_relative 'new_checkout/reviews'
@@ -3,15 +3,23 @@ module Pages
3
3
  module Cookies
4
4
  #modifico el valor del abtesting requerido
5
5
  def modificar_abtesting(nombre,valor)
6
- cookie = self.recuperar_cookie("abzTestingId")
7
- nuevo_valor = cookie[:value].gsub(/#{self.recuperar_valor_abtesting(nombre)}/,valor.to_s)
8
- self.eliminar_cookie("abzTestingId")
9
- self.agregar_cookie("abzTestingId",nuevo_valor,{:expires => cookie[:expires],:domain=>cookie[:domain]})
10
- self.recuperar_cookie("abzTestingId")
6
+ unless recuperar_valor_abtesting(nombre)
7
+ cookie = self.recuperar_cookie("abzTestingId",1)
8
+ nuevo_valor = cookie[:value].gsub(/#{self.recuperar_valor_abtesting(nombre,1)}/,valor.to_s)
9
+ self.eliminar_cookie("abzTestingId")
10
+ self.agregar_cookie("abzTestingId",nuevo_valor,{:expires => cookie[:expires],:domain=>cookie[:domain]})
11
+ self.recuperar_cookie("abzTestingId")
12
+ else
13
+ cookie = self.recuperar_cookie("abzTestingId")
14
+ nuevo_valor = cookie[:value].gsub(/#{self.recuperar_valor_abtesting(nombre)}/,valor.to_s)
15
+ self.eliminar_cookie("abzTestingId")
16
+ self.agregar_cookie("abzTestingId",nuevo_valor,{:expires => cookie[:expires],:domain=>cookie[:domain]})
17
+ self.recuperar_cookie("abzTestingId")
18
+ end
11
19
  end
12
20
  #recupero una cookie
13
- def recuperar_cookie(nombre)
14
- return @browser.cookies.to_a.select{|cookie| cookie[:name]==nombre}.first
21
+ def recuperar_cookie(nombre,index=0)
22
+ return @browser.cookies.to_a.select{|cookie| cookie[:name]==nombre}[index]
15
23
  end
16
24
  #elimino una cookie
17
25
  def eliminar_cookie(nombre)
@@ -22,11 +30,11 @@ module Pages
22
30
  @browser.cookies.add(nombre,valor,opciones)
23
31
  end
24
32
  #recupero el valor de un abtesting
25
- def recuperar_valor_abtesting(nombre)
33
+ def recuperar_valor_abtesting(nombre,index=0)
26
34
  begin
27
- return self.recuperar_cookie("abzTestingId")[:value].split(',').select{|option| option.match(/#{nombre}/)}.first.gsub(/\D/,'').to_i
35
+ return self.recuperar_cookie("abzTestingId",index)[:value].split(',').select{|option| option.match(/#{nombre}/)}.first.gsub(/\D/,'').to_i
28
36
  rescue NoMethodError
29
- return 0
37
+ return nil
30
38
  end
31
39
  end
32
40
  def cargar_valores_abtesting
@@ -86,6 +86,17 @@ module Checkout
86
86
  end
87
87
  end
88
88
 
89
+ def aceptar_y_comprar_con_seguro_incluido
90
+ unless condiciones_de_compra_checked?
91
+ @browser.execute_script("javascript:void($('#read-agreement').click());")
92
+ end
93
+ begin
94
+ @browser.execute_script("javascript:void($('#submitWithInsurance').click());")
95
+ rescue Net::ReadTimeout
96
+ @browser.send_keys :escape
97
+ end
98
+ end
99
+
89
100
  def last_minute?
90
101
  return (manage_data.date_from_1 - Date.today).to_i < 2
91
102
  end
@@ -1,3 +1,3 @@
1
1
  module FlightsGui
2
- VERSION = "2.4.13"
2
+ VERSION = "2.4.14"
3
3
  end
@@ -15,6 +15,7 @@ Característica: checkout.seguros
15
15
  Entonces verifico que la pagina no rompa
16
16
  Y espero que termine de cargar la pagina de checkout
17
17
  Y verifico que ingrese al checkout
18
+ Entonces ingreso al checkout con cookie "showTwoButtonsInsurance" al "20"
18
19
  Cuando existe la opcion de cobertura
19
20
  Entonces elijo "no_chequear" si quiero cobertura
20
21
  Entonces verifico que se muestre correctamente la caja de seguro sin chequear
@@ -46,4 +47,126 @@ Característica: checkout.seguros
46
47
  @ar
47
48
  Ejemplos:
48
49
  |pais|prov|tipo|seguro|origen|destino|cabotage|
49
- |AR|GDS|roundtrip|chequear|BUE|MIA|nil|
50
+ |AR|GDS|roundtrip|chequear|BUE|MIA|nil|
51
+
52
+ @seguros
53
+ Esquema del escenario: Se realiza un book con seguro incluido.
54
+ Dado como un usuario de '<pais>'
55
+ * ingreso una busqueda '<tipo>' de '<origen>' a '<destino>' de tipo '<cabotage>'
56
+ Cuando realizo la busqueda
57
+ Entonces verifico que la pagina no rompa
58
+ Cuando espero que termine de cargar la pagina de resultados
59
+ Entonces verifico que traiga resultados
60
+ Cuando elijo un itinerario y paso a checkout
61
+ Entonces verifico que la pagina no rompa
62
+ Y espero que termine de cargar la pagina de checkout
63
+ Y verifico que ingrese al checkout
64
+ Entonces ingreso al checkout con cookie "showTwoButtonsInsurance" al "61"
65
+ Cuando existe la opcion de cobertura
66
+ Entonces verifico que se muestre correctamente la caja de seguro sin chequear
67
+ Y verifico que el precio del seguro no se muestre en el desglose
68
+ Cuando muestro el popup de la cobertura completa
69
+ Entonces verifico que se muestre correctamente el popup de la cobertura completa para destino "<destino>"
70
+ Y elijo "<seguro>" si quiero cobertura
71
+ Entonces cargo los pasajeros
72
+ Y cargo los datos de la tarjeta
73
+ Y si el site es "AR|MX|PE|BR", cargo los datos de facturacion
74
+ Y cargo los datos de contacto
75
+ Cuando acepto y compro con seguro incluido
76
+ Entonces espero que termine el pedido de compra
77
+ Y verifico si no trae errores
78
+ Entonces si aparece el popup de no disponibilidad, elijo un itinerario del popup de no disponibilidad
79
+ Entonces espero que termine de cargar la pagina de gracias
80
+ Y verifico que ingrese a la pagina de gracias
81
+ Y verifico el popup de asistencia al viajero
82
+ Y verifico el tag de datalayer
83
+ #Y cancelo la reserva en el proveedor
84
+
85
+ @mx
86
+ Ejemplos:
87
+ |pais|prov|tipo|seguro|origen|destino|cabotage|
88
+ |MX|GDS|roundtrip|chequear|MEX|MIA|nil|
89
+ @ar
90
+ Ejemplos:
91
+ |pais|prov|tipo|seguro|origen|destino|cabotage|
92
+ |AR|GDS|roundtrip|chequear|BUE|MIA|nil|
93
+
94
+ @seguros
95
+ Esquema del escenario: Se realiza un book con seguro incluido.
96
+ Dado como un usuario de '<pais>'
97
+ * ingreso una busqueda '<tipo>' de '<origen>' a '<destino>' de tipo '<cabotage>'
98
+ Cuando realizo la busqueda
99
+ Entonces verifico que la pagina no rompa
100
+ Cuando espero que termine de cargar la pagina de resultados
101
+ Entonces verifico que traiga resultados
102
+ Cuando elijo un itinerario y paso a checkout
103
+ Entonces verifico que la pagina no rompa
104
+ Y espero que termine de cargar la pagina de checkout
105
+ Y verifico que ingrese al checkout
106
+ Entonces ingreso al checkout con cookie "showTwoButtonsInsurance" al "20"
107
+ Cuando existe la opcion de cobertura
108
+ Entonces elijo "no_chequear" si quiero cobertura
109
+ Entonces verifico que se muestre correctamente la caja de seguro sin chequear
110
+ Y verifico que el precio del seguro no se muestre en el desglose
111
+ Cuando elijo "chequear" si quiero cobertura
112
+ Entonces verifico que se muestre correctamente la caja de seguro chequeada
113
+ Y verifico que el precio del seguro se muestre correctamente en el desglose
114
+ Cuando muestro el popup de la cobertura completa
115
+ Entonces verifico que se muestre correctamente el popup de la cobertura completa para destino "<destino>"
116
+ Y elijo "<seguro>" si quiero cobertura
117
+ Entonces cargo los pasajeros
118
+ Y cargo los datos de la tarjeta en el nuevo formulario
119
+ Y si el site es "AR|MX|PE|BR", cargo los datos de facturacion
120
+ Y cargo los datos de contacto
121
+ Cuando acepto y compro
122
+ Entonces espero que termine el pedido de compra
123
+ Y verifico si no trae errores
124
+ Entonces si aparece el popup de no disponibilidad, elijo un itinerario del popup de no disponibilidad
125
+ Entonces espero que termine de cargar la pagina de gracias
126
+ Y verifico que ingrese a la pagina de gracias
127
+ Y verifico el popup de asistencia al viajero
128
+ Y verifico el tag de datalayer
129
+ Y cancelo la reserva en el proveedor
130
+
131
+ @br
132
+ Ejemplos:
133
+ |pais|prov|tipo|seguro|origen|destino|cabotage|
134
+ |BR|GDS|roundtrip|chequear|SAO|MIA|nil|
135
+
136
+ @seguros
137
+ Esquema del escenario: Se realiza un book con seguro incluido.
138
+ Dado como un usuario de '<pais>'
139
+ * ingreso una busqueda '<tipo>' de '<origen>' a '<destino>' de tipo '<cabotage>'
140
+ Cuando realizo la busqueda
141
+ Entonces verifico que la pagina no rompa
142
+ Cuando espero que termine de cargar la pagina de resultados
143
+ Entonces verifico que traiga resultados
144
+ Cuando elijo un itinerario y paso a checkout
145
+ Entonces verifico que la pagina no rompa
146
+ Y espero que termine de cargar la pagina de checkout
147
+ Y verifico que ingrese al checkout
148
+ Entonces ingreso al checkout con cookie "showTwoButtonsInsurance" al "61"
149
+ Cuando existe la opcion de cobertura
150
+ Entonces verifico que se muestre correctamente la caja de seguro sin chequear
151
+ Y verifico que el precio del seguro no se muestre en el desglose
152
+ Cuando muestro el popup de la cobertura completa
153
+ Entonces verifico que se muestre correctamente el popup de la cobertura completa para destino "<destino>"
154
+ Y elijo "<seguro>" si quiero cobertura
155
+ Entonces cargo los pasajeros
156
+ Y cargo los datos de la tarjeta en el nuevo formulario
157
+ Y si el site es "AR|MX|PE|BR", cargo los datos de facturacion
158
+ Y cargo los datos de contacto
159
+ Cuando acepto y compro con seguro incluido
160
+ Entonces espero que termine el pedido de compra
161
+ Y verifico si no trae errores
162
+ Entonces si aparece el popup de no disponibilidad, elijo un itinerario del popup de no disponibilidad
163
+ Entonces espero que termine de cargar la pagina de gracias
164
+ Y verifico que ingrese a la pagina de gracias
165
+ Y verifico el popup de asistencia al viajero
166
+ Y verifico el tag de datalayer
167
+ #Y cancelo la reserva en el proveedor
168
+
169
+ @br
170
+ Ejemplos:
171
+ |pais|prov|tipo|seguro|origen|destino|cabotage|
172
+ |BR|GDS|roundtrip|chequear|SAO|MIA|nil|
data/henry-context.yml CHANGED
@@ -3604,13 +3604,13 @@ tasks:
3604
3604
  recipients:
3605
3605
  - estebanldh@gmail.com
3606
3606
  - nsimean@despegar.com
3607
- - name: results.itineraries.br
3607
+ - name: results.itineraries.co
3608
3608
  class_name: Henry::Task::CucumberTask
3609
3609
  options:
3610
3610
  tags:
3611
3611
  - results
3612
3612
  - itineraries
3613
- - br
3613
+ - co
3614
3614
  expand: true
3615
3615
  no-source: true
3616
3616
  reports:
@@ -3619,13 +3619,13 @@ tasks:
3619
3619
  recipients:
3620
3620
  - estebanldh@gmail.com
3621
3621
  - nsimean@despegar.com
3622
- - name: results.itineraries.co
3622
+ - name: results.itineraries.mx
3623
3623
  class_name: Henry::Task::CucumberTask
3624
3624
  options:
3625
3625
  tags:
3626
3626
  - results
3627
3627
  - itineraries
3628
- - co
3628
+ - mx
3629
3629
  expand: true
3630
3630
  no-source: true
3631
3631
  reports:
@@ -3634,13 +3634,13 @@ tasks:
3634
3634
  recipients:
3635
3635
  - estebanldh@gmail.com
3636
3636
  - nsimean@despegar.com
3637
- - name: results.itineraries.mx
3637
+ - name: results.itineraries.cl
3638
3638
  class_name: Henry::Task::CucumberTask
3639
3639
  options:
3640
3640
  tags:
3641
3641
  - results
3642
3642
  - itineraries
3643
- - mx
3643
+ - cl
3644
3644
  expand: true
3645
3645
  no-source: true
3646
3646
  reports:
@@ -3649,13 +3649,13 @@ tasks:
3649
3649
  recipients:
3650
3650
  - estebanldh@gmail.com
3651
3651
  - nsimean@despegar.com
3652
- - name: results.itineraries.ve
3652
+ - name: results.itineraries.cr
3653
3653
  class_name: Henry::Task::CucumberTask
3654
3654
  options:
3655
3655
  tags:
3656
3656
  - results
3657
3657
  - itineraries
3658
- - ve
3658
+ - cr
3659
3659
  expand: true
3660
3660
  no-source: true
3661
3661
  reports:
@@ -3664,13 +3664,13 @@ tasks:
3664
3664
  recipients:
3665
3665
  - estebanldh@gmail.com
3666
3666
  - nsimean@despegar.com
3667
- - name: results.itineraries.cl
3667
+ - name: results.itineraries.ec
3668
3668
  class_name: Henry::Task::CucumberTask
3669
3669
  options:
3670
3670
  tags:
3671
3671
  - results
3672
3672
  - itineraries
3673
- - cl
3673
+ - ec
3674
3674
  expand: true
3675
3675
  no-source: true
3676
3676
  reports:
@@ -3679,13 +3679,13 @@ tasks:
3679
3679
  recipients:
3680
3680
  - estebanldh@gmail.com
3681
3681
  - nsimean@despegar.com
3682
- - name: results.itineraries.cr
3682
+ - name: results.itineraries.pa
3683
3683
  class_name: Henry::Task::CucumberTask
3684
3684
  options:
3685
3685
  tags:
3686
3686
  - results
3687
3687
  - itineraries
3688
- - cr
3688
+ - pa
3689
3689
  expand: true
3690
3690
  no-source: true
3691
3691
  reports:
@@ -3694,13 +3694,13 @@ tasks:
3694
3694
  recipients:
3695
3695
  - estebanldh@gmail.com
3696
3696
  - nsimean@despegar.com
3697
- - name: results.itineraries.ec
3697
+ - name: results.itineraries.pe
3698
3698
  class_name: Henry::Task::CucumberTask
3699
3699
  options:
3700
3700
  tags:
3701
3701
  - results
3702
3702
  - itineraries
3703
- - ec
3703
+ - pe
3704
3704
  expand: true
3705
3705
  no-source: true
3706
3706
  reports:
@@ -3709,13 +3709,13 @@ tasks:
3709
3709
  recipients:
3710
3710
  - estebanldh@gmail.com
3711
3711
  - nsimean@despegar.com
3712
- - name: results.itineraries.pa
3712
+ - name: results.itineraries.us
3713
3713
  class_name: Henry::Task::CucumberTask
3714
3714
  options:
3715
3715
  tags:
3716
3716
  - results
3717
3717
  - itineraries
3718
- - pa
3718
+ - us
3719
3719
  expand: true
3720
3720
  no-source: true
3721
3721
  reports:
@@ -3724,13 +3724,13 @@ tasks:
3724
3724
  recipients:
3725
3725
  - estebanldh@gmail.com
3726
3726
  - nsimean@despegar.com
3727
- - name: results.itineraries.pe
3727
+ - name: results.itineraries.uy
3728
3728
  class_name: Henry::Task::CucumberTask
3729
3729
  options:
3730
3730
  tags:
3731
3731
  - results
3732
3732
  - itineraries
3733
- - pe
3733
+ - uy
3734
3734
  expand: true
3735
3735
  no-source: true
3736
3736
  reports:
@@ -3739,13 +3739,13 @@ tasks:
3739
3739
  recipients:
3740
3740
  - estebanldh@gmail.com
3741
3741
  - nsimean@despegar.com
3742
- - name: results.itineraries.us
3742
+ - name: results.itineraries.pr
3743
3743
  class_name: Henry::Task::CucumberTask
3744
3744
  options:
3745
3745
  tags:
3746
3746
  - results
3747
3747
  - itineraries
3748
- - us
3748
+ - pr
3749
3749
  expand: true
3750
3750
  no-source: true
3751
3751
  reports:
@@ -3754,13 +3754,13 @@ tasks:
3754
3754
  recipients:
3755
3755
  - estebanldh@gmail.com
3756
3756
  - nsimean@despegar.com
3757
- - name: results.itineraries.uy
3757
+ - name: results.itineraries.br
3758
3758
  class_name: Henry::Task::CucumberTask
3759
3759
  options:
3760
3760
  tags:
3761
3761
  - results
3762
3762
  - itineraries
3763
- - uy
3763
+ - br
3764
3764
  expand: true
3765
3765
  no-source: true
3766
3766
  reports:
@@ -3769,13 +3769,13 @@ tasks:
3769
3769
  recipients:
3770
3770
  - estebanldh@gmail.com
3771
3771
  - nsimean@despegar.com
3772
- - name: results.itineraries.pr
3772
+ - name: results.itineraries.ve
3773
3773
  class_name: Henry::Task::CucumberTask
3774
3774
  options:
3775
3775
  tags:
3776
3776
  - results
3777
3777
  - itineraries
3778
- - pr
3778
+ - ve
3779
3779
  expand: true
3780
3780
  no-source: true
3781
3781
  reports:
@@ -13519,21 +13519,6 @@ tasks:
13519
13519
  recipients:
13520
13520
  - estebanldh@gmail.com
13521
13521
  - nsimean@despegar.com
13522
- - name: checkout.multipleoneway.co
13523
- class_name: Henry::Task::CucumberTask
13524
- options:
13525
- tags:
13526
- - checkout
13527
- - multipleoneway
13528
- - co
13529
- expand: true
13530
- no-source: true
13531
- reports:
13532
- - format: html
13533
- name: ${DATE}_${TASK_NAME}.html
13534
- recipients:
13535
- - estebanldh@gmail.com
13536
- - nsimean@despegar.com
13537
13522
  - name: checkout.braspag
13538
13523
  class_name: Henry::Task::CucumberTask
13539
13524
  options:
@@ -16505,6 +16490,21 @@ tasks:
16505
16490
  recipients:
16506
16491
  - estebanldh@gmail.com
16507
16492
  - nsimean@despegar.com
16493
+ - name: checkout.seguros.br
16494
+ class_name: Henry::Task::CucumberTask
16495
+ options:
16496
+ tags:
16497
+ - checkout
16498
+ - seguros
16499
+ - br
16500
+ expand: true
16501
+ no-source: true
16502
+ reports:
16503
+ - format: html
16504
+ name: ${DATE}_${TASK_NAME}.html
16505
+ recipients:
16506
+ - estebanldh@gmail.com
16507
+ - nsimean@despegar.com
16508
16508
  - name: results
16509
16509
  class_name: Henry::Task::CucumberTask
16510
16510
  options:
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: 2.4.13
4
+ version: 2.4.14
5
5
  platform: ruby
6
6
  authors:
7
7
  - lgonzalez
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-01-05 00:00:00.000000000 Z
11
+ date: 2016-01-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: henry-container
@@ -340,14 +340,6 @@ files:
340
340
  - features/support/modules/checkout/new_checkout/popup.rb
341
341
  - features/support/modules/checkout/new_checkout/reviews.rb
342
342
  - features/support/modules/checkout/new_checkout/tarjeta.rb
343
- - features/support/modules/checkout/old_checkout/datos_de_facturacion.rb
344
- - features/support/modules/checkout/old_checkout/errores.rb
345
- - features/support/modules/checkout/old_checkout/fast_checkout.rb
346
- - features/support/modules/checkout/old_checkout/informacion_de_contacto.rb
347
- - features/support/modules/checkout/old_checkout/pasajeros.rb
348
- - features/support/modules/checkout/old_checkout/popup.rb
349
- - features/support/modules/checkout/old_checkout/reviews.rb
350
- - features/support/modules/checkout/old_checkout/tarjeta.rb
351
343
  - features/support/modules/devtools.rb
352
344
  - features/support/modules/element.rb
353
345
  - features/support/modules/helpers.rb
@@ -371,7 +363,6 @@ files:
371
363
  - features/support/pages/all_pages.rb
372
364
  - features/support/pages/checkout/checkout_page.rb
373
365
  - features/support/pages/checkout/checkout_page/new_checkout_page.rb
374
- - features/support/pages/checkout/checkout_page/old_checkout_page.rb
375
366
  - features/support/pages/checkout/popup_results_page.rb
376
367
  - features/support/pages/flights_tracker/search_page.rb
377
368
  - features/support/pages/landing/new_landing_page.rb
@@ -1,78 +0,0 @@
1
- # encoding: utf-8
2
- module OldCheckout
3
- module DatosDeFacturacion
4
- include PageObject
5
-
6
- select_list(:situacion_fiscal,:id=>"invoice-fiscal-status")
7
- select_list(:provincia_facturacion,:id=>"invoice-state")
8
-
9
- element(:formulario_facturacion,:fieldset,:id=>"invoice")
10
-
11
- text_field(:cuil,:id=>"invoice-fiscal-id")
12
- text_field(:domicilio_facturacion,:id=>"invoice-address")
13
- text_field(:nombre_facturacion,:id=>"invoice-card-holder-name")
14
- text_field(:ciudad_facturacion_custom,:id=>"invoice-city-custom")
15
- text_field(:ciudad_facturacion,:id=>"invoice-city")
16
- text_field(:calle_facturacion,:id=>"invoice-street")
17
- text_field(:numero_facturacion,:id=>"invoice-address-number")
18
- text_field(:piso_facturacion,:id=>"invoice-address-floor")
19
- text_field(:departamento_facturacion,:id=>"invoice-address-deparment")
20
- text_field(:codigo_postal_facturacion,:id=>"invoice-postal-code")
21
- text_field(:otro_estado_facturacion,:id=>"invoice-other-state")
22
- text_field(:mail_facturacion,:id=>"invoice-mail")
23
- text_field(:barrio_facturacion,:id=>"invoice-neighbourhood")
24
- text_field(:municipal_facturacion,:id=>"invoice-townRegistration")
25
-
26
- checkbox(:invoice_check,:id=>"invoice-check")
27
-
28
- link(:buscar_codigo_postal,:class=>"search-postal-code")
29
-
30
- def cargar_datos_facturacion
31
- if AllPages.site=="AR"
32
- option = ["FINAL","INSCR","EXENT","MONOTRIBUTO"][rand(4)]
33
- situacion_fiscal_element.select_value(option)
34
- #lleno los campos requeridos
35
- cuil_element.set("30643063936")
36
- nombre_facturacion_element.set("diego qa romero") if nombre_facturacion_element.present?
37
- provincia_facturacion_element.select_value("C")
38
- set_autocomplete("ciudad_facturacion_custom","buenos ")
39
- calle_facturacion_element.set("corrientes")
40
- codigo_postal_facturacion_element.set("7111")
41
- numero_facturacion_element.set("123")
42
- piso_facturacion_element.set("1")
43
- departamento_facturacion_element.set("1")
44
- elsif AllPages.site=="BR"
45
- # option = ["CPF","CNPJ"][rand(2)]
46
- # situacion_fiscal_element.select_value(option)
47
- # #lleno los campos requeridos
48
- # option=="CPF" ? cuil_element.set("22233366638") : cuil_element.set("54651716001150")
49
- # nombre_facturacion_element.set("diego qa romero") if nombre_facturacion_element.present?
50
- # provincia_facturacion_element.select_value("AC")
51
- # municipal_facturacion_element.set("municipal") if municipal_facturacion_element.present?
52
- # set_autocomplete("ciudad_facturacion_custom","rio ")
53
- # calle_facturacion_element.set("corrientes")
54
- # barrio_facturacion_element.set("san jose")
55
- # codigo_postal_facturacion_element.set("7111")
56
- # numero_facturacion_element.set("123")
57
- # piso_facturacion_element.set("1")
58
- # departamento_facturacion_element.set("1")
59
- else
60
- check_invoice_check if invoice_check?
61
- cuil_element.set("33344455561") if cuil_element.present?
62
- nombre_facturacion_element.set("diego qa romero") if nombre_facturacion_element.present?
63
- provincia_facturacion_element.select(provincia_facturacion_options[2]) if provincia_facturacion_element.present?
64
- ciudad_facturacion_element.set("Rosario") if ciudad_facturacion_element.present?
65
- ciudad_facturacion_custom_element.set("Rosario") if ciudad_facturacion_custom_element.present?
66
- calle_facturacion_element.set("corrientes") if calle_facturacion_element.present?
67
- if AllPages.site=="MX"
68
- otro_estado_facturacion_element.set("Chiapas") if otro_estado_facturacion_element.present?
69
- codigo_postal_facturacion_element.set("7111") if codigo_postal_facturacion_element.present?
70
- numero_facturacion_element.set("123") if numero_facturacion_element.present?
71
- piso_facturacion_element.set("1") if piso_facturacion_element.present?
72
- departamento_facturacion_element.set("1") if departamento_facturacion_element.present?
73
- end
74
- end
75
- end
76
-
77
- end
78
- end
@@ -1,35 +0,0 @@
1
- # encoding: utf-8
2
- module OldCheckout
3
- module Errores
4
- include PageObject
5
-
6
- span(:error_nacionalidad_invalida,:id=>"nationality-0-invalid_custom_nationality")
7
- span(:error_numero_tarjeta_vacio,:id=>"card-number-missing_field")
8
- span(:error_fecha_tarjeta_vacio,:id=>"expiration-date-missing_field")
9
- span(:error_codigo_seguridad_vacio,:id=>"security-code-missing_field")
10
- span(:error_usuario_tarjeta_vacio,:id=>"owner-name-missing_field")
11
- span(:error_mail_vacio,:id=>"contact-email-missing_field")
12
- span(:error_repetir_mail_vacio,:id=>"contact-email-repeat-missing_field")
13
- span(:error_telefono_vacio,:id=>"phone-0-missing_field")
14
- span(:error_cuit_erroneo,:id=>"invoice-fiscal-id-invalid_cuit")
15
-
16
- span(:error_razon_social_vacio,:id=>"invoice-card-holder-name-missing_field")
17
- span(:error_mail_facturacion_vacio,:id=>"invoice-email-missing_field")
18
- span(:error_ciudad_facturacion_vacio,:id=>"invoice-city-missing_field")
19
- span(:error_codigo_postal_facturacion_vacio,:id=>"invoice-postal-code-missing_field")
20
- span(:error_direccion_facturacion_vacio,:id=>"invoice-address-missing_field")
21
- span(:error_cuit_vacio,:id=>"invoice-fiscal-id-missing_field")
22
-
23
- span(:error_ruc_erroneo,:id=>"invoice-fiscal-id-invalid_ruc")
24
- span(:error_mail_facturacion,:id=>"invoice-email-invalid_email")
25
- span(:error_codigo_seguridad_invalido,:id=>"security-code-invalid_card_security_code")
26
- span(:error_usuario_tarjeta_invalido,:id=>"owner-name-invalid_card_owner_name")
27
- span(:error_mail_erroneo,:id=>"contact-email-invalid_email")
28
- span(:error_repetir_mail_erroneo,:id=>"contact-email-repeat-invalid_email")
29
-
30
- spans(:error_primer_nombre_vacio,:css=>".passenger-first-name-container .error-missing_field-message")
31
- spans(:error_primer_nombre_erroneo,:css=>".passenger-first-name-container .error-invalid_name-message")
32
- spans(:error_apellido_erroneo,:css=>".passenger-last-name-container .error-invalid_name-message")
33
-
34
- end
35
- end
@@ -1,32 +0,0 @@
1
- # encoding: utf-8
2
- module OldCheckout
3
-
4
- module FastCheckout
5
-
6
- include PageObject
7
-
8
- div(:checkout_login,:id=>"checkout-login")
9
- div(:tarjetas_guardadas,:id=>"stored-cards")
10
- div(:nueva_tarjeta,:class=>"new-card-container")
11
- div(:datos_tarjeta_guardada,:id=>"paymentDefinition.billingAddressDefinition")
12
- div(:login_usuario_nibbler,:class=>"box-main-account")
13
-
14
- link(:log_out_checkout,:css=>"#checkout-login .log-out")
15
- link(:log_in_checkout,:css=>"#checkout-login .log-in")
16
- link(:mostrar_cartas_guardadas,:class=>"display-cards")
17
-
18
- elements(:container_tarjetas,:ul,:class=>"card-container")
19
-
20
- p(:usuario_logueado_checkout,:css=>"#checkout-login .logged-in")
21
-
22
- radio_button(:opcion_tarjeta_guardada,:css=>"#stored-cards .radio")
23
-
24
- text_field(:codigo_seguridad_tarjeta_guardada,:id=>"stored-card-0-security-code")
25
-
26
- text_field(:mail_usuario_nibbler,:id=>"signin-email")
27
- text_field(:pass_usuario_nibbler,:id=>"signin-pass")
28
-
29
- button(:boton_usuario_nibbler,:class=>"social-comp-common-button social-comp-common-button-primary social-comp-common-button-medium")
30
-
31
- end
32
- end
@@ -1,30 +0,0 @@
1
- # encoding: utf-8
2
- module OldCheckout
3
- module InformacionDeContacto
4
- include PageObject
5
-
6
- text_field(:mail_contacto,:id=>"contact-email")
7
- text_field(:mail_contacto_confimacion,:id=>"contact-email-repeat")
8
- text_field(:pais_contacto,:id=>"country-code-0")
9
- text_field(:area_contacto,:id=>"area-code-0")
10
- text_field(:numero_contacto,:id=>"phone-number-0")
11
-
12
- select_list(:telefono_contacto,:id=>"phone-type-0")
13
-
14
- checkbox(:opcion_ofertas,:id=>"offers")
15
-
16
- elements(:bandera_argentina,:span,:class=>"flagIcon flag-ar")
17
-
18
- def cargar_datos_de_contacto
19
- uncheck_opcion_ofertas
20
- mail_contacto_element.set "bookingvuelos@despegar.com"
21
- mail_contacto_confimacion_element.set "bookingvuelos@despegar.com"
22
- telefono_contacto_element.select_value("HOME")
23
- pais_contacto_element.set "Argentina (54)"
24
- sleep 0.5
25
- area_contacto_element.set "055"
26
- numero_contacto_element.set "123456"
27
- end
28
-
29
- end
30
- end
@@ -1,72 +0,0 @@
1
- #encoding: utf-8
2
- module OldCheckout
3
- module Pasajeros
4
- include PageObject
5
-
6
- elements(:nombre,:text_field,:css=>"#passengers .input-passenger-first-name")
7
- elements(:apellido,:text_field,:css=>"#passengers .input-passenger-last-name")
8
- elements(:documento,:text_field,:css=>"#passengers .input-document-number")
9
- elements(:nacionalidad,:select_list,:css=>"#passengers .select-nationality")
10
- elements(:tipo_documento,:select_list,:css=>"#passengers .select-document-type")
11
- elements(:sexo,:select_list,:css=>"#passengers .select-passenger-gender")
12
- elements(:dia_nacimiento,:select_list,:css=>"#passengers .select-day")
13
- elements(:mes_nacimiento,:select_list,:css=>"#passengers .select-month")
14
- elements(:ano_nacimiento,:select_list,:css=>"#passengers .select-year")
15
- elements(:campos_pasajeros,:fieldset,:id=>"passengers")
16
-
17
- div(:edades_adultos,:id=>"birthday-group-0")
18
-
19
- PLUS_NAME = ["A","B","C","D","E","F","G","H","I","J","k"]
20
-
21
- def cargar_adultos
22
- @index = 0
23
- @index_menores = 0
24
- self.manage_data.adt.times do |adulto|
25
- nombre_elements[@index].set "Diego QA#{PLUS_NAME[@index]}"
26
- apellido_elements[@index].set "Romero#{PLUS_NAME[@index]}"
27
- documento_elements[@index].set "3245673#{@index}" if documento_elements[@index]
28
- nacionalidad_elements[@index].select_value(AllPages.site) if nacionalidad_elements[@index]
29
- tipo_documento_elements[@index].select_value(AllPages.site.match("AR|BR") ? "LOCAL" : "PASSPORT") if tipo_documento_elements[@index]
30
- sexo_elements[@index].select_value("MALE") if sexo_elements[@index]
31
- if edades_adultos?
32
- dia_nacimiento_elements[@index_menores].select(@index+1)
33
- mes_nacimiento_elements[@index_menores].select(3)
34
- ano_nacimiento_elements[@index_menores].select_value("197#{@index}")
35
- @index_menores += 1
36
- end
37
- @index += 1
38
- end
39
- end
40
- def cargar_ninos
41
- self.manage_data.cnn.times do |nino|
42
- nombre_elements[@index].set "Martin QA#{PLUS_NAME[@index]}"
43
- apellido_elements[@index].set "Diez jr#{PLUS_NAME[@index]}"
44
- documento_elements[@index].set "4245663#{@index}" if documento_elements[@index]
45
- nacionalidad_elements[@index].select_value(AllPages.site) if nacionalidad_elements[@index]
46
- tipo_documento_elements[@index].select_value(AllPages.site.match("AR|BR") ? "LOCAL" : "PASSPORT") if tipo_documento_elements[@index]
47
- sexo_elements[@index].select_value("MALE") if sexo_elements[@index]
48
- dia_nacimiento_elements[@index_menores].select(@index+1)
49
- mes_nacimiento_elements[@index_menores].select(3)
50
- ano_nacimiento_elements[@index_menores].select_value("2009")
51
- @index += 1
52
- @index_menores += 1
53
- end
54
- end
55
- def cargar_bebes
56
- self.manage_data.inf.times do |bebe|
57
- nombre_elements[@index].set "Maribel QA#{PLUS_NAME[@index]}"
58
- apellido_elements[@index].set "Dias Herr jrb#{PLUS_NAME[@index]}"
59
- documento_elements[@index].set "4249966#{@index}" if documento_elements[@index]
60
- nacionalidad_elements[@index].select_value(AllPages.site) if nacionalidad_elements[@index]
61
- tipo_documento_elements[@index].select_value(AllPages.site.match("AR|BR") ? "LOCAL" : "PASSPORT") if tipo_documento_elements[@index]
62
- sexo_elements[@index].select_value("MALE") if sexo_elements[@index]
63
- dia_nacimiento_elements[@index_menores].select(@index+1)
64
- mes_nacimiento_elements[@index_menores].select(3)
65
- ano_nacimiento_elements[@index_menores].select_value("2014")
66
- @index += 1
67
- @index_menores += 1
68
- end
69
- end
70
-
71
- end
72
- end
@@ -1,32 +0,0 @@
1
- #encoding: utf-8
2
- module OldCheckout
3
- module PopUp
4
- include PageObject
5
-
6
- div(:popup_transicion_inicial,:id=>"popup-initial-transition")
7
- div(:popup_transicion_compra,:id=>"popup-checkout-transition-template")
8
- div(:popup_nuevo_precio,:id=>"popup-price-difference-template")
9
- div(:popup_nuevo_vuelo,:id=>"popup-new-flight")
10
- div(:popup_confirmacion_pago,:id=>"confirm-payment-popup")
11
- div(:popup_chat,:id=>"dtalk-container")
12
- div(:popup_cobertura,:id=>"popup-upselling-coverage-template")
13
- div(:popup_compra_duplicada,:id=>"popup-duplicated-transaction")
14
- div(:opcion_no_compra_duplicada,:css=>"#popup-duplicated-transaction .button-no")
15
- div(:opcion_si_compra_duplicada,:css=>"#popup-duplicated-transaction .button-yes")
16
- div(:popup_price_jump,:id=>"popup-price-difference")
17
- div(:opcion_si_price_jump,:css=>"#popup-price-difference .button-yes")
18
- div(:cerrar_popup_chat,:css=>"#dtalk-container .ux-header-close")
19
- span(:cerrar_popup_cobertura,:css=>".popup-upselling-coverage .popup-close-button")
20
- span(:cerrar_popup_cantidad_visitantes,:css=>"#searches-count-alert-popup .popup-close-button")
21
-
22
- def cerrar_popups
23
- begin
24
- cerrar_popup_cantidad_visitantes_element.click if cerrar_popup_cantidad_visitantes_element.present?
25
- cerrar_popup_chat_element.click if popup_chat_element.present?
26
- rescue Selenium::WebDriver::Error::UnknownError
27
- puts "Error al cerrar chat"
28
- end
29
- end
30
-
31
- end
32
- end
@@ -1,16 +0,0 @@
1
- #encoding: utf-8
2
- module OldCheckout
3
- module Reviews
4
- include PageObject
5
-
6
- div(:popup_reviews_aerolineas,:id=>"popup-reviews")
7
- span(:close_popup_reviews_aerolineas,:css=>"#popup-reviews .popup-close-button")
8
- elements(:reviews_aerolineas,:link,:css=>"#itinerary .segments .airline")
9
- elements(:logos_aerolineas,:image,:css=>"#itinerary .segments .airline-logo img")
10
-
11
- def logo_aerolinea_en_matriz(index)
12
- self.logos_aerolineas_elements[index].attribute("src").strip.downcase
13
- end
14
-
15
- end
16
- end
@@ -1,281 +0,0 @@
1
- #encoding: utf-8
2
- module OldCheckout
3
- module Tarjeta
4
- include PageObject
5
-
6
- select_list(:tarjeta,:id=>"card-installment-select")
7
- select_list(:cuotas,:id=>"card-installment-select")
8
- select_list(:mes_vencimiento_tarjeta,:id=>"card-expiration-month")
9
- select_list(:ano_vencimiento_tarjeta,:id=>"card-expiration-year")
10
- select_list(:tipo_titular_tarjeta,:id=>"owner-type")
11
- select_list(:sexo_titular_tarjeta,:id=>"owner-gender")
12
- select_list(:estado_entrega_tarjeta,:id=>"billing-address-state")
13
- select_list(:sexo_offline,:id=>"offline-owner-gender")
14
-
15
- text_field(:cp_entrega_tarjeta,:id=>"billing-address-postal-code")
16
- text_field(:piso_entrega_tarjeta,:id=>"billing-address-floor")
17
- text_field(:depto_entrega_tarjeta,:id=>"billing-address-deparment")
18
- text_field(:numero_entrega_tarjeta,:id=>"billing-address-number")
19
- text_field(:ciudad_entrega_tarjeta,:id=>"billing-address-city")
20
- text_field(:calle_entrega_tarjeta,:id=>"billing-address-street")
21
- text_field(:numero_tarjeta,:id=>"card-number")
22
- text_field(:codigo_seguridad_tarjeta,:id=>"security-code")
23
- text_field(:nombre_titular_tarjeta,:id=>"owner-name")
24
- text_field(:documento_titular_tarjeta,:id=>"owner-document-number")
25
- text_field(:banco_emisor,:id=>"other-bank-name")
26
- text_field(:documento_offline,:id=>"offline-owner-document-number")
27
- text_field(:nombre_completo_contacto,:id=>"contact-contact-full-name")
28
- text_field(:cuit_empresa,:id=>"owner-fiscal-document-number")
29
-
30
- div(:debito,:class=>"installment-info")
31
- div(:warning_deposito,:css=>"#cash-installment .ux-common-message-warning")
32
- div(:con_intereses,:class=>"installments-with-interest")
33
-
34
- radio_button(:un_pago,:id=>"installment-0")
35
- radio_button(:un_pago_visa,:value=>"_VI")
36
- radio_button(:un_pago_argentina,:class=>"radio main-radio ")
37
- radio_button(:un_pago_debito,:id=>"installment-1")
38
- radio_button(:un_pago_peru,:id=>"installment-3")
39
- radio_button(:deposito_ar,:css=>"#cash-installment .main-radio")
40
- radio_button(:deposito_pe,:css=>"#multiple-card-cash-installment .main-radio")
41
- radio_button(:pago_online_ar,:css=>"#homebanking-installment .main-radio")
42
- radio_button(:pago_online_pe,:css=>"#multiple-card-homebanking-installment .main-radio")
43
- radio_button(:opcion_cac,:css=>"#cac-installment .main-radio")
44
- radio_button(:pago_con_intereses,:class=>"radio main-radio radio-with-interest")
45
-
46
-
47
- elements(:tipos_de_pago,:radio,:css=>"#paymentDefinition input.radio")
48
-
49
- span(:desc_fecha_deposito,:css=>"#cash-installment .installment-description-info")
50
- span(:desc_pasos_deposito,:css=>"#cash-installment .installment-detail-text")
51
- span(:precio_final,:id=>"total-price")
52
- span(:precio_final_combo,:css=>"#installments-price .total")
53
- span(:desglose_de_cuotas,:css=>"#installments-price .installments-detail")
54
-
55
- li(:medio_de_pago_seleccionado,:css=>"#paymentDefinition .selected")
56
- li(:medio_de_subpago_seleccionado,:css=>".list .sub-selected")
57
-
58
- def cargar_datos_tarjeta
59
- data = self.get_results_search_service
60
- provider = data["result"]["data"]["items"][0]["provider"]
61
- @provider = provider
62
- if AllPages.site=="AR"
63
- select_un_pago_argentina
64
- elsif AllPages.site=="PE"
65
- select_un_pago_peru
66
- else
67
- if debito.downcase.no_accents.match(/debito/)
68
- select_un_pago_debito
69
- else
70
- select_un_pago
71
- end
72
- end
73
- if provider == "VOL"
74
- tarjeta_element.select("American Express")
75
- numero_tarjeta_element.set("345678000000007")
76
- codigo_seguridad_tarjeta_element.set("1234")
77
- mes_vencimiento_tarjeta_element.select('10')
78
- ano_vencimiento_tarjeta_element.select(Date.today.year+1)
79
- elsif provider == "AIJ"
80
- tarjeta_element.select("Visa")
81
- numero_tarjeta_element.set("4012001021000605")
82
- codigo_seguridad_tarjeta_element.set("989")
83
- mes_vencimiento_tarjeta_element.select('12')
84
- ano_vencimiento_tarjeta_element.select('2015')
85
- else
86
- tarjeta_element.select "Visa"
87
- numero_tarjeta_element.set "4242424242424242"
88
- mes_vencimiento_tarjeta_element.select 5
89
- ano_vencimiento_tarjeta_element.select(Date.today.year+1)
90
- codigo_seguridad_tarjeta_element.set "123"
91
- end
92
- banco_emisor_element.set "galicia" if banco_emisor_element.present?
93
- self.elegir_tipo_titular_tarjeta if tipo_titular_tarjeta_element.present?
94
- nombre_titular_tarjeta_element.set "Martin qa diez"
95
- if documento_titular_tarjeta_element.present?
96
- number = case AllPages.site
97
- when "CL" then "7028168-6"
98
- when "BR" then "22233366638"
99
- else "32456324"
100
- end
101
- documento_titular_tarjeta_element.set number
102
- end
103
- sexo_titular_tarjeta_element.select_value "MALE" if sexo_titular_tarjeta_element.present?
104
- #datos extras de tarjeta
105
- self.cargar_datos_extras_de_tarjeta
106
- end
107
-
108
- def cargar_datos_tarjeta_nuevo_formulario
109
- data = self.get_results_search_service
110
- provider = data["result"]["data"]["items"][0]["provider"]
111
- @provider = provider
112
- un_pago_visa_element.click
113
- sleep(1)
114
- cuotas_element.select_value("1_CREDIT_VI_null")
115
- numero_tarjeta_element.set "4242424242424242"
116
- mes_vencimiento_tarjeta_element.select 5
117
- ano_vencimiento_tarjeta_element.select(Date.today.year+1)
118
- codigo_seguridad_tarjeta_element.set "123"
119
- banco_emisor_element.set "galicia" if banco_emisor_element.present?
120
- tipo_titular_tarjeta_value = "PERSON" if tipo_titular_tarjeta_element.present?
121
- nombre_titular_tarjeta_element.set "Martin qa diez"
122
- if documento_titular_tarjeta_element.present?
123
- number = case AllPages.site
124
- when "CL" then "7028168-6"
125
- when "BR" then "22233366638"
126
- else "32456324"
127
- end
128
- documento_titular_tarjeta_element.set number
129
- end
130
- sexo_titular_tarjeta_element.select_value "MALE" if sexo_titular_tarjeta_element.present?
131
- self.cargar_datos_extras_de_tarjeta
132
- end
133
-
134
- def cargar_datos_tarjeta_guardada
135
- @browser.execute_script("javascript:void($('#stored-cards .display-cards').click())") if mostrar_cartas_guardadas_element.text.no_accents.downcase.match("mas|mais|more")
136
- if AllPages.site=="BR"
137
- ul = container_tarjetas_elements.to_a.select{|ul| ul.li(:class,'item owner-name').text.match(/BR/)}.first
138
- pending("no se encontro usuario de tarjeta para brasil") unless ul
139
- ul.radio(:class,'radio').click
140
- ul.text_fields[0].set("123")
141
- else
142
- ul = container_tarjetas_elements.to_a.select{|ul| ul.li(:class,'item owner-name').text.match(/Diego QA Romero/)}.first
143
- ul.radio(:class,'radio').click
144
- ul.text_fields[0].set("123")
145
- end
146
- if datos_tarjeta_guardada_element.present?
147
- self.cargar_datos_extras_de_tarjeta
148
- end
149
- end
150
-
151
- def cargar_datos_extras_de_tarjeta
152
- data = self.get_results_search_service
153
- provider = data["result"]["data"]["items"][0]["provider"]
154
- @provider = provider
155
- if provider == "VOL"
156
- ciudad_entrega_tarjeta_element.set "Y Ciudad" if ciudad_entrega_tarjeta_element.present?
157
- calle_entrega_tarjeta_element.set "Y Calle" if calle_entrega_tarjeta_element.present?
158
- elsif provider == "AIJ"
159
- ciudad_entrega_tarjeta_element.set "ciudad" if ciudad_entrega_tarjeta_element.present?
160
- calle_entrega_tarjeta_element.set "calle" if calle_entrega_tarjeta_element.present?
161
- else
162
- ciudad_entrega_tarjeta_element.set "capital" if ciudad_entrega_tarjeta_element.present?
163
- calle_entrega_tarjeta_element.set "corrientes" if calle_entrega_tarjeta_element.present?
164
- end
165
- estado_entrega_tarjeta_element.select(estado_entrega_tarjeta_options[3]) if estado_entrega_tarjeta_element.present?
166
- numero_entrega_tarjeta_element.set "1234" if numero_entrega_tarjeta_element.present?
167
- piso_entrega_tarjeta_element.set "3" if piso_entrega_tarjeta_element.present?
168
- depto_entrega_tarjeta_element.set "A" if depto_entrega_tarjeta_element.present?
169
- if AllPages.site=~/US|MX/
170
- cp_entrega_tarjeta_element.set "11823" if cp_entrega_tarjeta_element.present?
171
- else
172
- cp_entrega_tarjeta_element.set "1182" if cp_entrega_tarjeta_element.present?
173
- end
174
- end
175
-
176
- def verificar_tipos_de_pago
177
- interes = nil
178
- doc=Hpricot.parse(precio_final_element.html)
179
- total_1 = doc.inner_text.gsub(/\D/,'').to_i
180
- radios = tipos_de_pago_elements
181
- i=0
182
- radios.each do |radio|
183
- if radio.present? and !radio.disabled?
184
- radio.click
185
- sleep(0.5)
186
- doc=Hpricot.parse(precio_final_element.html)
187
- total_2 = doc.inner_text.gsub(/\D/,'').to_i
188
- unless radio.attribute_value("data-regular-expressions").nil?
189
- keys = JSON.parse(radio.attribute_value("data-regular-expressions")).keys
190
- if interes or radio.attribute_value("class").match(/radio-with-interest/)
191
- validar_cuota_con_intereses(total_1,total_2)
192
- else
193
- case keys.first
194
- when /1(.*)CREDIT(.*)null$/ then validar_cuota_un_pago()
195
- when /(.*)CREDIT(.*)null$/ then validar_cuota_con_intereses(total_1,total_2)
196
- when /(.*)CREDIT(.*)$/ then validar_cuota_sin_intereses(total_1,total_2)
197
- end
198
- keys.uniq.length.should equal(keys.length)
199
- end
200
- else
201
- interes = true
202
- end
203
- end
204
- if i > 17
205
- break
206
- end
207
- i = i + 1
208
- end
209
- end
210
-
211
- def validar_cuota_un_pago()
212
-
213
- end
214
-
215
- def validar_cuota_sin_intereses(total_1,total_2)
216
- if medio_de_pago_seleccionado_element.div(:class,"installments-price").present?
217
- doc = Hpricot.parse(medio_de_pago_seleccionado_element.div(:class,"installments-price").html)
218
- inicial = (doc/"span.first-installment").inner_text.downstrip.gsub(/\./,'').match(/(\d+)$/)[1].to_i
219
- valor_restantes = (doc/"span.all-installments/span.currency/span.amount").inner_text.gsub(/\./,'').to_i
220
- cant_restantes = (doc/"span.all-installments").inner_text.gsub(/\./,'').match(/\+ (\d+)/)[1].to_i
221
- (inicial + (cant_restantes * valor_restantes)).should be_within(3).of(total_2)
222
- total_1.should equal(total_2)
223
- else
224
- total_1.should equal(total_2)
225
- end
226
- end
227
-
228
- def validar_cuota_con_intereses(total_1,total_2)
229
- if medio_de_subpago_seleccionado_element.present?
230
- doc = Hpricot.parse(medio_de_subpago_seleccionado_element.html)
231
- unless (doc/"span.interest").inner_text.empty?
232
- costo_financiero = (doc/"span.interest").inner_text.downstrip.gsub(/\./,'').match(/(\d+)$/)[1].to_i
233
- inicial = (doc/"span.first-installment").inner_text.downstrip.gsub(/\./,'').match(/(\d+)$/)[1].to_i
234
- cant_restantes = (doc/"span.all-installments").inner_text.downstrip.gsub(/\./,'').match(/\+ (\d{1,2})/)[1].to_i
235
- valor_restantes = (doc/"span.all-installments/span.price/span.currency/span.amount").inner_text.gsub(/\./,'').to_i
236
- ((total_2 - (inicial + (cant_restantes * valor_restantes))).abs <= 2).should be_true
237
- costo_financiero.should equal(total_2 - total_1)
238
- end
239
- end
240
- end
241
-
242
- def verificar_nuevos_tipos_de_pago
243
- doc = Hpricot.parse(@browser.html)
244
- (doc/"ul.new-installments li.purchase-installment").each do |li|
245
- @browser.radio(:id,(li/"input").first.attributes['id']).click
246
- sleep(1)
247
- doc = Hpricot.parse(@browser.html)
248
- (doc/"select#card-installment-select option").each do |option|
249
- @browser.select_list(:id,'card-installment-select').select_value(option.attributes['value'])
250
- total_desglose = Hpricot.parse(precio_final_element.html).inner_text.gsub(/\D/,'').to_i
251
- if desglose_de_cuotas_element.present?
252
- doc = Hpricot.parse(desglose_de_cuotas_element.html)
253
- inicial = (doc/"span.first-price").inner_text.downstrip.gsub(/\./,'').match(/(\d+)$/)[1].to_i
254
- valor_restantes = (doc/"span.others-price").inner_text.downstrip.gsub(/\./,'').match(/(\d+)$/)[1].to_i
255
- cant_restantes = (doc/"span.others-quantity").inner_text.to_i
256
- (inicial + (cant_restantes * valor_restantes)).should be_within(3).of(total_desglose)
257
- end
258
- end
259
- end
260
- end
261
-
262
- def elegir_tipo_titular_tarjeta
263
- tipo = ["PERSON","COMPANY"][rand(2)]
264
- tipo_titular_tarjeta_element.select_value tipo
265
- if tipo=="COMPANY"
266
- puts tipo
267
- sleep(0.5)
268
- cuit_empresa_element.set "20-32454321-0"
269
- end
270
- end
271
-
272
- def deposito()
273
- eval "deposito_#{AllPages.site.downcase}_element"
274
- end
275
-
276
- def pago_online()
277
- eval "pago_online_#{AllPages.site.downcase}_element"
278
- end
279
-
280
- end
281
- end
@@ -1,62 +0,0 @@
1
- # encoding: utf-8
2
- module Checkout
3
- class OldCheckoutPage < CheckoutPage
4
-
5
- include OldCheckout::Pasajeros
6
- include OldCheckout::PopUp
7
- include OldCheckout::Tarjeta
8
- include OldCheckout::Reviews
9
- include OldCheckout::Errores
10
- include OldCheckout::FastCheckout
11
- include OldCheckout::DatosDeFacturacion
12
- include OldCheckout::InformacionDeContacto
13
-
14
- div(:seccion_preguntas_riesgo,:css=>"#form .radio-group")
15
- div(:opcion_no_deposito,:css=>"#confirm-payment-popup .flights-button-no")
16
- div(:opcion_si_deposito,:css=>"#confirm-payment-popup .flights-button-yes")
17
- div(:notificacion_error,:class=>"notification-box error-box")
18
- div(:notificacion_warning,:class=>"notification-box warn-box")
19
- div(:notificacion_warning_ux,:class=>"ux-common-message ux-common-message-warning ")
20
- div(:mensaje_error_ux,:class=>"ux-common-message ux-common-message-error ")
21
- div(:notificacion_error_ux,:class=>"ux-common-error")
22
- div(:boton_si_cambio_precio,:class=>"button-yes")
23
- div(:agencia_afiliada,:id=>"agency")
24
- div(:cobertura,:id=>'upselling')
25
- div(:cobertura_deshabilitada,:class=>"upselling upselling-disabled")
26
- div(:itinerario,:id=>"detail")
27
- div(:cupon_error,:id=>"coupon-error")
28
- div(:cupon_exito,:id=>"voucher-success")
29
- div(:clientes_felices,:id=>"happy-clients")
30
- div(:link_price_jump,:css=>"#popup-price-difference .popup-link")
31
- div(:mensaje_cancelacion,:id=>"cancellation-advice")
32
- div(:mensaje_cancelacion_en_el_dia,:id=>"last-minute-advice")
33
- div(:mensaje_error_emision_last_minute,:class=>"ux-common-message ux-common-message-error ")
34
- link(:link_mensaje_error_emision_last_minute,:css=>".ux-common-message-error a")
35
-
36
- checkbox(:opcion_seguros,:id=>"upselling-checkbox")
37
- checkbox(:condiciones_de_compra,:id=>"read-agreement")
38
- checkbox(:cupones,:id=>"vouchers")
39
-
40
- span(:elegir_otro_vuelo,:class=>"choose-another")
41
- span(:error_datos,:class=>"error-message")
42
- span(:carga,:css=>".loading .img")
43
- span(:protegido,:css=>".protected")
44
- span(:desprotegido,:css=>".unprotected")
45
- span(:precio_seguro,:css=>"#upselling .description .bold")
46
-
47
- text_field(:cupon_email,:id=>"voucher-email")
48
- text_field(:cupon_voucher,:id=>"voucher-code-0")
49
-
50
- li(:precio_seguro_desglose,:class=>"item destination_service_insurance")
51
-
52
- p(:id_reserva_compra_duplicada,:css=>"#popup-duplicated-transaction .paragraph")
53
-
54
- def datos_itinerario()
55
- return OldCheckout::Cluster.new(tipo_de_busqueda,Hpricot.parse(itinerario_element.html))
56
- end
57
-
58
- def opcion_seguros(opcion)
59
- opcion_seguros_element.set(opcion)
60
- end
61
- end
62
- end