testgen 0.8.7 → 0.8.8

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: 6efb741ac6e4e2fd8ec3bafb7e86dccc65c2521e
4
- data.tar.gz: 60a2861e958766767ccf505432f132d659a8096b
3
+ metadata.gz: 4e6bbdb1712082df133c636c04d9e4712676e6de
4
+ data.tar.gz: c66e90823e72568fd6145d5f291f4abbae1d5b7f
5
5
  SHA512:
6
- metadata.gz: 98b7131969419b17c53cd7704ed357a2827e49e824b27fce57285fbf295e6f3a7c9814622017cd52c5a31df914167e2354f59faf4f2e606191adac159859e955
7
- data.tar.gz: 72c7cd6a96ace531540d61d3065bae9c56ce6535703da0012b97386077d79271ead8a57af5e4a255c07ca6d709bb6fda33222120d563e032af569c5238b4c9b6
6
+ metadata.gz: 3980e40b53462e491d8b0771de8292614419b9b8d963e318f02375581798d5ec95a6c201d00ec3cbcf6ce21e90cd192e70a199e7cf39db7efa08595f4deb55a5
7
+ data.tar.gz: c0f5fe1818a07d79e74bd1ad99cf1f5c6a639782ab524ebd64f7fb0d70f76f5fbf426dcf072eeb91a87554b1817eb4d472f1636ff49095471f0014c3c88a9f89
data/ChangeLog CHANGED
@@ -1,3 +1,7 @@
1
+ === Version 0.8.8 / 2016-07-31
2
+ * Removed redundant line with rake gem from Gemfile
3
+ * Added support of appium lib (Thanks Kirikami)
4
+
1
5
  === Version 0.8.7 / 2014-12-12
2
6
  * Updated to remove Rake warning (Thanks Paul Clewell)
3
7
 
data/Readme.md CHANGED
@@ -23,6 +23,10 @@ If you are testing an android application in the emulator or on a device, <em>te
23
23
 
24
24
  testgen project <project_name> --with-gametel
25
25
 
26
+ If you want to setup project to use the Appium library
27
+
28
+ testgen project <project_name> --with-appium
29
+
26
30
  ## Native Windows testing
27
31
 
28
32
  If you are testing a native windows application, <em>testgen</em> can setup the project to use the Mohawk gem.
@@ -0,0 +1,46 @@
1
+ Feature: Adding the --with-gametel flag
2
+
3
+ Scenario: Adding the require_all and appium gems to Gemfile
4
+ When I run `testgen project sample --with-appium`
5
+ Then a file named "sample/Gemfile" should exist
6
+ And the file "sample/Gemfile" should contain "gem 'require_all'"
7
+ And the file "sample/Gemfile" should contain "gem 'appium_lib'"
8
+ And the file "sample/Gemfile" should contain "gem 'cucumber'"
9
+
10
+ Scenario: Adding appium to env.rb
11
+ When I run `testgen project sample --with-appium`
12
+ Then a file named "sample/features/support/env.rb" should exist
13
+ And the file "sample/features/support/env.rb" should contain "require 'appium_lib'"
14
+ And the file "sample/features/support/env.rb" should contain "AppiumWorld.new"
15
+
16
+ Scenario: Creating the keystore
17
+ When I run `testgen project sample --with-appium`
18
+ Then a file named "sample/features/support/env.rb" should exist
19
+ And the file "sample/features/support/env.rb" should contain "@desired_caps = {"
20
+ And the file "sample/features/support/env.rb" should contain "caps: {"
21
+ And the file "sample/features/support/env.rb" should contain "platformName: 'android'"
22
+ And the file "sample/features/support/env.rb" should contain "deviceName: ENV['DEVICE_NAME']"
23
+ And the file "sample/features/support/env.rb" should contain "app: '<your_app>'"
24
+ And the file "sample/features/support/env.rb" should contain "},"
25
+ And the file "sample/features/support/env.rb" should contain "appium_lib: {"
26
+ And the file "sample/features/support/env.rb" should contain "port: 4723"
27
+
28
+ Scenario: Creating the Driver and hooks
29
+ When I run `testgen project sample --with-appium`
30
+ Then a file named "sample/features/support/env.rb" should exist
31
+ And the file "sample/features/support/env.rb" should contain "Appium::Driver.new(@desired_caps).start_driver"
32
+ And the file "sample/features/support/env.rb" should contain "Appium.promote_appium_methods Object"
33
+ And the file "sample/features/support/env.rb" should contain "driver_quit"
34
+
35
+
36
+ Scenario: Should not create the hooks file
37
+ When I run `testgen project sample --with-appium`
38
+ Then a file named "sample/features/support/hooks.rb" should not exist
39
+
40
+ Scenario: Creating the screens directory under support
41
+ When I run `testgen project sample --with-appium`
42
+ Then a directory named "sample/features/support/screens" should exist
43
+
44
+ Scenario: Creating the screens directory under lib when using --wth-lib
45
+ When I run `testgen project sample --with-appium --with-lib`
46
+ Then a directory named "sample/lib/screens" should exist
@@ -9,12 +9,15 @@ module TestGen
9
9
  method_option :with_lib, :type => :boolean, :desc => "Place shared objects under lib directory"
10
10
  method_option :with_gametel, :type => :boolean, :desc => "Add support for gametel gem"
11
11
  method_option :with_mohawk, :type => :boolean, :desc => 'Adds support for mohawk gem'
12
+ method_option :with_appium, :type => :boolean, :desc => 'Add support for appium'
13
+
12
14
  def project(name)
13
15
  driver = options[:pageobject_driver].nil? ? 'none' : options[:pageobject_driver]
14
16
  with_lib = options[:with_lib] ? 'true' : 'false'
15
17
  with_gametel = options[:with_gametel] ? 'true' : 'false'
16
18
  with_mohawk = options[:with_mohawk] ? 'true' : 'false'
17
- TestGen::Generators::Project.start([name, driver, with_lib, with_gametel, with_mohawk])
19
+ with_appium = options[:with_appium] ? 'true' : 'false'
20
+ TestGen::Generators::Project.start([name, driver, with_lib, with_gametel, with_mohawk, with_appium])
18
21
  end
19
22
 
20
23
  end
@@ -10,6 +10,8 @@ module TestGen
10
10
  argument :with_lib, :type => :string, :desc => 'Place all shared objects in the lib directory'
11
11
  argument :with_gametel, :type => :string, :desc => 'Add support for the gametel gem'
12
12
  argument :with_mohawk, :type => :string, :desc => 'Add support for the mohawk gem'
13
+ argument :with_appium, :type => :string, :desc => 'Add support for appium gem'
14
+
13
15
  desc "Generates a project structure for testing with Cucumber"
14
16
 
15
17
  def self.source_root
@@ -53,10 +55,10 @@ module TestGen
53
55
  def create_pages_directory
54
56
  if gen_lib
55
57
  empty_directory("#{name}/lib/pages") unless no_driver_selected
56
- empty_directory("#{name}/lib/screens") if with_gametel == 'true' or with_mohawk == 'true'
58
+ empty_directory("#{name}/lib/screens") if with_gametel == 'true'|| with_mohawk == 'true' || with_appium == 'true'
57
59
  else
58
60
  empty_directory("#{name}/features/support/pages") unless no_driver_selected
59
- empty_directory("#{name}/features/support/screens") if with_gametel == 'true' or with_mohawk == 'true'
61
+ empty_directory("#{name}/features/support/screens") if with_gametel == 'true' || with_mohawk == 'true' || with_appium == 'true'
60
62
  end
61
63
  end
62
64
 
@@ -6,16 +6,18 @@ gem 'rake'
6
6
  <% unless pageobject_driver.downcase == 'none' -%>
7
7
  gem 'page-object'
8
8
  <% end -%>
9
- <% if with_lib == 'true' or with_gametel == 'true' -%>
9
+ <% if with_lib == 'true' or with_gametel == 'true' or with_appium == 'true' -%>
10
10
  gem 'require_all'
11
11
  <% end -%>
12
12
  <% if with_gametel == 'true' -%>
13
13
  gem 'gametel'
14
- gem 'rake'
15
14
  <% end -%>
16
15
  <% if with_mohawk == 'true' -%>
17
16
  gem 'mohawk', '~> 0.1'
18
17
  gem 'ffi', '1.9.0'
19
18
  gem 'win32screenshot'
20
- gem 'rake'
19
+ <% end -%>
20
+ <% if with_appium =='true' -%>
21
+ gem 'appium_lib'
22
+ gem 'selenium-cucumber'
21
23
  <% end -%>
@@ -40,6 +40,36 @@ After do
40
40
  Gametel.stop
41
41
  end
42
42
  <% end -%>
43
+ <% if with_appium == 'true' -%>
44
+ require 'appium_lib'
45
+
46
+
47
+ class AppiumWorld
48
+ end
49
+
50
+ PROJECT_DIR = File.expand_path(File.dirname(__FILE__) + '../../..')
51
+
52
+ @desired_caps = {
53
+ caps: {
54
+ platformName: 'android',
55
+ deviceName: ENV['DEVICE_NAME'],
56
+ app: '<your_app>',
57
+ },
58
+ appium_lib: {
59
+ port: 4723
60
+ }
61
+ }
62
+ Appium::Driver.new(@desired_caps).start_driver
63
+ Appium.promote_appium_methods Object
64
+
65
+ World do
66
+ AppiumWorld.new
67
+ end
68
+
69
+ at_exit do
70
+ driver_quit
71
+ end
72
+ <% end -%>
43
73
  <% unless pageobject_driver.downcase == 'none' -%>
44
74
  World(PageObject::PageFactory)
45
75
  <% end -%>
@@ -1,3 +1,3 @@
1
1
  module TestGen
2
- VERSION = "0.8.7"
2
+ VERSION = "0.8.8"
3
3
  end
metadata CHANGED
@@ -1,83 +1,83 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: testgen
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.7
4
+ version: 0.8.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jeffrey S. Morgan
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-12-12 00:00:00.000000000 Z
11
+ date: 2016-07-31 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: thor
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - '>='
17
+ - - ">="
18
18
  - !ruby/object:Gem::Version
19
19
  version: 0.17.0
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - '>='
24
+ - - ">="
25
25
  - !ruby/object:Gem::Version
26
26
  version: 0.17.0
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: cucumber
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - '>='
31
+ - - ">="
32
32
  - !ruby/object:Gem::Version
33
33
  version: 1.2.0
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - '>='
38
+ - - ">="
39
39
  - !ruby/object:Gem::Version
40
40
  version: 1.2.0
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rspec
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - '>='
45
+ - - ">="
46
46
  - !ruby/object:Gem::Version
47
47
  version: 2.13.0
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - '>='
52
+ - - ">="
53
53
  - !ruby/object:Gem::Version
54
54
  version: 2.13.0
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: require_all
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - '>='
59
+ - - ">="
60
60
  - !ruby/object:Gem::Version
61
61
  version: '0'
62
62
  type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - '>='
66
+ - - ">="
67
67
  - !ruby/object:Gem::Version
68
68
  version: '0'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: aruba
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
- - - '>='
73
+ - - ">="
74
74
  - !ruby/object:Gem::Version
75
75
  version: '0'
76
76
  type: :development
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
- - - '>='
80
+ - - ">="
81
81
  - !ruby/object:Gem::Version
82
82
  version: '0'
83
83
  description: A collection of generators build things for testers using Cucumber
@@ -88,9 +88,9 @@ executables:
88
88
  extensions: []
89
89
  extra_rdoc_files: []
90
90
  files:
91
- - .gitignore
92
- - .ruby-gemset
93
- - .ruby-version
91
+ - ".gitignore"
92
+ - ".ruby-gemset"
93
+ - ".ruby-version"
94
94
  - ChangeLog
95
95
  - Gemfile
96
96
  - Guardfile
@@ -102,6 +102,7 @@ files:
102
102
  - features/support/hooks.rb
103
103
  - features/testgen_project.feature
104
104
  - features/testgen_with_pageobject.feature
105
+ - features/with_appium.feature
105
106
  - features/with_gametel_option.feature
106
107
  - features/with_lib_option.feature
107
108
  - features/with_mohawk_option.feature
@@ -125,17 +126,17 @@ require_paths:
125
126
  - lib
126
127
  required_ruby_version: !ruby/object:Gem::Requirement
127
128
  requirements:
128
- - - '>='
129
+ - - ">="
129
130
  - !ruby/object:Gem::Version
130
131
  version: '0'
131
132
  required_rubygems_version: !ruby/object:Gem::Requirement
132
133
  requirements:
133
- - - '>='
134
+ - - ">="
134
135
  - !ruby/object:Gem::Version
135
136
  version: '0'
136
137
  requirements: []
137
138
  rubyforge_project: testgen
138
- rubygems_version: 2.0.14
139
+ rubygems_version: 2.5.1
139
140
  signing_key:
140
141
  specification_version: 4
141
142
  summary: Generators for testers using Cucumber
@@ -144,6 +145,7 @@ test_files:
144
145
  - features/support/hooks.rb
145
146
  - features/testgen_project.feature
146
147
  - features/testgen_with_pageobject.feature
148
+ - features/with_appium.feature
147
149
  - features/with_gametel_option.feature
148
150
  - features/with_lib_option.feature
149
151
  - features/with_mohawk_option.feature