lazyman 0.1.6 → 0.1.7

Sign up to get free protection for your applications and to get access to all the features.
data/Gemfile.lock CHANGED
@@ -1,64 +1,64 @@
1
- GEM
2
- remote: http://ruby.taobao.org/
3
- specs:
4
- active_support (3.0.0)
5
- activesupport (= 3.0.0)
6
- activesupport (3.0.0)
7
- childprocess (0.3.9)
8
- ffi (~> 1.0, >= 1.0.11)
9
- data_magic (0.14)
10
- faker (>= 1.1.2)
11
- yml_reader (>= 0.2)
12
- diff-lcs (1.2.2)
13
- faker (1.1.2)
14
- i18n (~> 0.5)
15
- ffi (1.6.0-x86-mingw32)
16
- git (1.2.5)
17
- i18n (0.6.4)
18
- jeweler (1.8.4)
19
- bundler (~> 1.0)
20
- git (>= 1.2.5)
21
- rake
22
- rdoc
23
- json (1.7.7)
24
- multi_json (1.7.2)
25
- page-object (0.8.6.1)
26
- page_navigation (>= 0.7)
27
- selenium-webdriver (>= 2.31.0)
28
- watir-webdriver (>= 0.6.2)
29
- page_navigation (0.7)
30
- data_magic (>= 0.14)
31
- rake (10.0.4)
32
- rdoc (3.12.2)
33
- json (~> 1.4)
34
- rspec (2.13.0)
35
- rspec-core (~> 2.13.0)
36
- rspec-expectations (~> 2.13.0)
37
- rspec-mocks (~> 2.13.0)
38
- rspec-core (2.13.1)
39
- rspec-expectations (2.13.0)
40
- diff-lcs (>= 1.1.3, < 2.0)
41
- rspec-mocks (2.13.0)
42
- rubyzip (0.9.9)
43
- selenium-webdriver (2.31.0)
44
- childprocess (>= 0.2.5)
45
- multi_json (~> 1.0)
46
- rubyzip
47
- websocket (~> 1.0.4)
48
- thor (0.14.6)
49
- watir-webdriver (0.6.2)
50
- selenium-webdriver (>= 2.18.0)
51
- websocket (1.0.7)
52
- yml_reader (0.2)
53
-
54
- PLATFORMS
55
- x86-mingw32
56
-
57
- DEPENDENCIES
58
- active_support (~> 3.0.0)
59
- bundler (~> 1.0.0)
60
- jeweler (~> 1.8.4)
61
- page-object (~> 0.8.6.1)
62
- rdoc (~> 3.12)
63
- rspec (~> 2.13.0)
64
- thor (~> 0.14.6)
1
+ GEM
2
+ remote: http://ruby.taobao.org/
3
+ specs:
4
+ active_support (3.0.0)
5
+ activesupport (= 3.0.0)
6
+ activesupport (3.0.0)
7
+ childprocess (0.3.9)
8
+ ffi (~> 1.0, >= 1.0.11)
9
+ data_magic (0.14)
10
+ faker (>= 1.1.2)
11
+ yml_reader (>= 0.2)
12
+ diff-lcs (1.2.2)
13
+ faker (1.1.2)
14
+ i18n (~> 0.5)
15
+ ffi (1.6.0-x86-mingw32)
16
+ git (1.2.5)
17
+ i18n (0.6.4)
18
+ jeweler (1.8.4)
19
+ bundler (~> 1.0)
20
+ git (>= 1.2.5)
21
+ rake
22
+ rdoc
23
+ json (1.7.7)
24
+ multi_json (1.7.2)
25
+ page-object (0.8.6.1)
26
+ page_navigation (>= 0.7)
27
+ selenium-webdriver (>= 2.31.0)
28
+ watir-webdriver (>= 0.6.2)
29
+ page_navigation (0.7)
30
+ data_magic (>= 0.14)
31
+ rake (10.0.4)
32
+ rdoc (3.12.2)
33
+ json (~> 1.4)
34
+ rspec (2.13.0)
35
+ rspec-core (~> 2.13.0)
36
+ rspec-expectations (~> 2.13.0)
37
+ rspec-mocks (~> 2.13.0)
38
+ rspec-core (2.13.1)
39
+ rspec-expectations (2.13.0)
40
+ diff-lcs (>= 1.1.3, < 2.0)
41
+ rspec-mocks (2.13.0)
42
+ rubyzip (0.9.9)
43
+ selenium-webdriver (2.31.0)
44
+ childprocess (>= 0.2.5)
45
+ multi_json (~> 1.0)
46
+ rubyzip
47
+ websocket (~> 1.0.4)
48
+ thor (0.14.6)
49
+ watir-webdriver (0.6.2)
50
+ selenium-webdriver (>= 2.18.0)
51
+ websocket (1.0.7)
52
+ yml_reader (0.2)
53
+
54
+ PLATFORMS
55
+ x86-mingw32
56
+
57
+ DEPENDENCIES
58
+ active_support (~> 3.0.0)
59
+ bundler (~> 1.0.0)
60
+ jeweler (~> 1.8.4)
61
+ page-object (~> 0.8.6.1)
62
+ rdoc (~> 3.12)
63
+ rspec (~> 2.13.0)
64
+ thor (~> 0.14.6)
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1.6
1
+ 0.1.7
data/bin/lazyman CHANGED
@@ -1,7 +1,7 @@
1
- #!/usr/bin/env ruby
2
-
3
- lazyman_path = File.expand_path('../../lib', __FILE__)
4
- puts lazyman_path
5
- $:.unshift(lazyman_path)
6
-
7
- require 'Lazyman/cli'
1
+ #!/usr/bin/env ruby
2
+
3
+ lazyman_path = File.expand_path('../../lib', __FILE__)
4
+ puts lazyman_path
5
+ $:.unshift(lazyman_path)
6
+
7
+ require 'Lazyman/cli'
data/lazyman.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "lazyman"
8
- s.version = "0.1.6"
8
+ s.version = "0.1.7"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["easonhan"]
12
- s.date = "2013-04-17"
12
+ s.date = "2013-04-21"
13
13
  s.description = "A test framework using watir-webdriver rspec and page-object"
14
14
  s.email = "nbkhic@qq.com"
15
15
  s.executables = ["lazyman"]
@@ -77,7 +77,7 @@ Gem::Specification.new do |s|
77
77
  s.homepage = "https://github.com/easonhan007/lazyman"
78
78
  s.licenses = ["MIT"]
79
79
  s.require_paths = ["lib"]
80
- s.rubygems_version = "1.8.17"
80
+ s.rubygems_version = "1.8.16"
81
81
  s.summary = "A simple web automation test framework"
82
82
 
83
83
  if s.respond_to? :specification_version then
@@ -1,12 +1,12 @@
1
- class String
2
- def lazy_to_hash
3
- hash = { }
4
- return hash if self.empty?
5
- arr = self.split(',').map { |i| i.strip }
6
- arr.each do |key|
7
- hash[key.to_sym] = true
8
- end #each
9
- hash
10
- end
11
-
12
- end
1
+ class String
2
+ def lazy_to_hash
3
+ hash = { }
4
+ return hash if self.empty?
5
+ arr = self.split(',').map { |i| i.strip }
6
+ arr.each do |key|
7
+ hash[key.to_sym] = true
8
+ end #each
9
+ hash
10
+ end
11
+
12
+ end
@@ -1,3 +1,3 @@
1
- --default-path=./app/cases
2
- --format Lazyman::LazymanFormatter
3
- -r ./config/lazyman_formatter.rb
1
+ --default-path=./app/cases
2
+ --format Lazyman::LazymanFormatter
3
+ -r ./config/lazyman_formatter.rb
@@ -1,16 +1,16 @@
1
- #encoding: utf-8
2
- require File.expand_path 'app/cases/spec_helper'
3
-
4
- describe 'Google example show you how to use lazyman', :google do
5
-
6
- before :all do
7
- @keyword = 'watir-webdriver'
8
- end
9
-
10
- it 'should have correct search result' do
11
- google_page = $navi.goto_google_page
12
- result_page = google_page.search_for @keyword
13
- result_page.first_result.should eq 'Watir WebDriver | the most elegant way to use webdriver with ruby'
14
- end
15
-
16
- end
1
+ #encoding: utf-8
2
+ require File.expand_path 'app/cases/spec_helper'
3
+
4
+ describe 'Google example show you how to use lazyman', :google do
5
+
6
+ before :all do
7
+ @keyword = 'watir-webdriver'
8
+ end
9
+
10
+ it 'should have correct search result' do
11
+ google_page = $navi.goto_google_page
12
+ result_page = google_page.search_for @keyword
13
+ result_page.first_result.should eq 'Watir WebDriver | the most elegant way to use webdriver with ruby'
14
+ end
15
+
16
+ end
@@ -1,5 +1,5 @@
1
- lib/**/*.rb
2
- -
3
- README.md
4
- License.txt
5
- Changelog.md
1
+ lib/**/*.rb
2
+ -
3
+ README.md
4
+ License.txt
5
+ Changelog.md
@@ -1,5 +1,5 @@
1
- lib/**/*.rb
2
- -
3
- README.md
4
- License.txt
5
- Changelog.md
1
+ lib/**/*.rb
2
+ -
3
+ README.md
4
+ License.txt
5
+ Changelog.md
@@ -1,18 +1,18 @@
1
- #encoding: utf-8
2
- require File.expand_path 'app/pages/google/google_search_result_page'
3
-
4
- class GooglePage < <%= app_name.camelize%>Page
5
- page_url 'www.google.com.hk'
6
-
7
- text_field 'keyword', name: 'q'
8
- button 'search', name: 'btnK'
9
-
10
- def search_for kw
11
- self.keyword = kw
12
- self.keyword_element.send_keys :return
13
- # example show you how to use wait_until_present
14
- @browser.table(id: 'nav').wait_until_present
15
- turn_to GoogleSearchResultPage
16
- end
17
-
18
- end
1
+ #encoding: utf-8
2
+ require File.expand_path 'app/pages/google/google_search_result_page'
3
+
4
+ class GooglePage < <%= app_name.camelize%>Page
5
+ page_url 'www.google.com.hk'
6
+
7
+ text_field 'keyword', name: 'q'
8
+ button 'search', name: 'btnK'
9
+
10
+ def search_for kw
11
+ self.keyword = kw
12
+ self.keyword_element.send_keys :return
13
+ # example show you how to use wait_until_present
14
+ @browser.table(id: 'nav').wait_until_present
15
+ turn_to GoogleSearchResultPage
16
+ end
17
+
18
+ end
@@ -1,4 +1,4 @@
1
- #encoding: utf-8
2
- class GoogleSearchResultPage < <%= app_name.camelize%>Page
3
- h3 'first_result', index: 0
4
- end
1
+ #encoding: utf-8
2
+ class GoogleSearchResultPage < <%= app_name.camelize%>Page
3
+ h3 'first_result', index: 0
4
+ end
@@ -1,5 +1,5 @@
1
- lib/**/*.rb
2
- -
3
- README.md
4
- License.txt
5
- Changelog.md
1
+ lib/**/*.rb
2
+ -
3
+ README.md
4
+ License.txt
5
+ Changelog.md
@@ -1,7 +1,7 @@
1
- #!/usr/bin/env ruby
2
-
3
- spec_helper = File.expand_path(File.join('.', 'app', 'cases', 'spec_helper.rb'))
4
-
5
- setup = File.join(File.dirname(__FILE__), 'setup.rb')
6
-
7
- exec "irb -r rspec -r #{spec_helper} -r #{setup} -r irb/completion --simple-prompt --readline"
1
+ #!/usr/bin/env ruby
2
+
3
+ spec_helper = File.expand_path(File.join('.', 'app', 'cases', 'spec_helper.rb'))
4
+
5
+ setup = File.join(File.dirname(__FILE__), 'setup.rb')
6
+
7
+ exec "irb -r rspec -r #{spec_helper} -r #{setup} -r irb/completion --simple-prompt --readline"
@@ -1,6 +1,6 @@
1
- @ECHO OFF
2
- IF NOT "%~f0" == "~f0" GOTO :WinNT
3
- @"ruby.exe" "" %1 %2 %3 %4 %5 %6 %7 %8 %9
4
- GOTO :EOF
5
- :WinNT
6
- @"ruby.exe" "%~dpn0" %*
1
+ @ECHO OFF
2
+ IF NOT "%~f0" == "~f0" GOTO :WinNT
3
+ @"ruby.exe" "" %1 %2 %3 %4 %5 %6 %7 %8 %9
4
+ GOTO :EOF
5
+ :WinNT
6
+ @"ruby.exe" "%~dpn0" %*
@@ -1,12 +1,12 @@
1
- def test_data file
2
- content = ''
3
- file_path = File.expand_path(File.join('.', 'app', 'test_data', "#{file}.yml"))
4
- raise "Can not find #{file}.yml" unless File.exists?(file_path)
5
- File.open(file_path, 'r') do |handle|
6
- content = handle.read
7
- end
8
- Psych.load ERB.new(content).result(binding)
9
- end
10
- <% require 'active_support/all' %>
11
- $navi = <%= app_name.camelize %>Navigator.new $config
12
-
1
+ def test_data file
2
+ content = ''
3
+ file_path = File.expand_path(File.join('.', 'app', 'test_data', "#{file}.yml"))
4
+ raise "Can not find #{file}.yml" unless File.exists?(file_path)
5
+ File.open(file_path, 'r') do |handle|
6
+ content = handle.read
7
+ end
8
+ Psych.load ERB.new(content).result(binding)
9
+ end
10
+ <% require 'active_support/all' %>
11
+ $navi = <%= app_name.camelize %>Navigator.new $config
12
+
@@ -3,10 +3,10 @@ module Lazyman
3
3
  def initialize root, app_name
4
4
  @root ||= root
5
5
  @app_name ||= app_name
6
+ load_config
6
7
  load_app_page_and_navigator
7
8
  load_all_components
8
9
  load_all_pages
9
- load_config
10
10
  generate_pathes
11
11
  end
12
12
 
@@ -1,44 +1,44 @@
1
- require 'spec_helper'
2
-
3
- describe Lazyman::Page do
4
- before :all do
5
- @app_name = 'test'
6
- Lazyman::Initializer.new File.dirname(__FILE__), @app_name
7
- end
8
-
9
- before(:each) do
10
- @browser = mock_watir_browser
11
- end
12
-
13
- def mock_watir_browser
14
- watir_browser = double('watir')
15
- watir_browser.stub!(:is_a?).with(anything()).and_return(false)
16
- watir_browser.stub!(:is_a?).with(Watir::Browser).and_return(true)
17
- watir_browser
18
- end
19
-
20
- it 'method missing' do
21
- @browser.stub :close
22
- @browser.should_receive :close
23
- Lazyman::Page.new(@browser).close
24
- end
25
-
26
- it 'should turn to page' do
27
- p = Lazyman::Page.new(@browser).turn_to TestPage
28
- p.is_a?(TestPage).should be_true
29
- end
30
-
31
- it 'should data driven with hash' do
32
- btn = double();
33
- hash = {:one => 'click', :two => 'ok'}
34
-
35
- p = TestPage.new(@browser)
36
- p.stub(:one).and_return(btn)
37
- p.stub(:two=)
38
- btn.should_receive(:click)
39
- p.should_receive(:one)
40
- p.should_receive(:two=).with('ok')
41
- p.data_driven(hash)
42
- end
43
-
44
- end
1
+ require 'spec_helper'
2
+
3
+ describe Lazyman::Page do
4
+ before :all do
5
+ @app_name = 'test'
6
+ Lazyman::Initializer.new File.dirname(__FILE__), @app_name
7
+ end
8
+
9
+ before(:each) do
10
+ @browser = mock_watir_browser
11
+ end
12
+
13
+ def mock_watir_browser
14
+ watir_browser = double('watir')
15
+ watir_browser.stub!(:is_a?).with(anything()).and_return(false)
16
+ watir_browser.stub!(:is_a?).with(Watir::Browser).and_return(true)
17
+ watir_browser
18
+ end
19
+
20
+ it 'method missing' do
21
+ @browser.stub :close
22
+ @browser.should_receive :close
23
+ Lazyman::Page.new(@browser).close
24
+ end
25
+
26
+ it 'should turn to page' do
27
+ p = Lazyman::Page.new(@browser).turn_to TestPage
28
+ p.is_a?(TestPage).should be_true
29
+ end
30
+
31
+ it 'should data driven with hash' do
32
+ btn = double();
33
+ hash = {:one => 'click', :two => 'ok'}
34
+
35
+ p = TestPage.new(@browser)
36
+ p.stub(:one).and_return(btn)
37
+ p.stub(:two=)
38
+ btn.should_receive(:click)
39
+ p.should_receive(:one)
40
+ p.should_receive(:two=).with('ok')
41
+ p.data_driven(hash)
42
+ end
43
+
44
+ end
data/spec/string_spec.rb CHANGED
@@ -1,10 +1,10 @@
1
- require 'spec_helper'
2
-
3
- describe String do
4
-
5
- it 'lazy_to_hash should have correct behavor' do
6
- str = 'a, b, c, d'
7
- str.lazy_to_hash.should eq({a: true, b: true, c: true, d: true})
8
- end
9
-
10
- end
1
+ require 'spec_helper'
2
+
3
+ describe String do
4
+
5
+ it 'lazy_to_hash should have correct behavor' do
6
+ str = 'a, b, c, d'
7
+ str.lazy_to_hash.should eq({a: true, b: true, c: true, d: true})
8
+ end
9
+
10
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lazyman
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.6
4
+ version: 0.1.7
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-04-17 00:00:00.000000000Z
12
+ date: 2013-04-21 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rspec
16
- requirement: &26812656 !ruby/object:Gem::Requirement
16
+ requirement: &23802312 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ~>
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: 2.13.0
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *26812656
24
+ version_requirements: *23802312
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: page-object
27
- requirement: &26812320 !ruby/object:Gem::Requirement
27
+ requirement: &23802024 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ~>
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: 0.8.6.1
33
33
  type: :runtime
34
34
  prerelease: false
35
- version_requirements: *26812320
35
+ version_requirements: *23802024
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: thor
38
- requirement: &26811840 !ruby/object:Gem::Requirement
38
+ requirement: &23801736 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ~>
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: 0.14.6
44
44
  type: :runtime
45
45
  prerelease: false
46
- version_requirements: *26811840
46
+ version_requirements: *23801736
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: active_support
49
- requirement: &26811468 !ruby/object:Gem::Requirement
49
+ requirement: &23801448 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ~>
@@ -54,10 +54,10 @@ dependencies:
54
54
  version: 3.0.0
55
55
  type: :runtime
56
56
  prerelease: false
57
- version_requirements: *26811468
57
+ version_requirements: *23801448
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: rdoc
60
- requirement: &26811132 !ruby/object:Gem::Requirement
60
+ requirement: &23801160 !ruby/object:Gem::Requirement
61
61
  none: false
62
62
  requirements:
63
63
  - - ~>
@@ -65,10 +65,10 @@ dependencies:
65
65
  version: '3.12'
66
66
  type: :development
67
67
  prerelease: false
68
- version_requirements: *26811132
68
+ version_requirements: *23801160
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: bundler
71
- requirement: &26810796 !ruby/object:Gem::Requirement
71
+ requirement: &23800872 !ruby/object:Gem::Requirement
72
72
  none: false
73
73
  requirements:
74
74
  - - ~>
@@ -76,10 +76,10 @@ dependencies:
76
76
  version: 1.0.0
77
77
  type: :development
78
78
  prerelease: false
79
- version_requirements: *26810796
79
+ version_requirements: *23800872
80
80
  - !ruby/object:Gem::Dependency
81
81
  name: jeweler
82
- requirement: &26810400 !ruby/object:Gem::Requirement
82
+ requirement: &23800584 !ruby/object:Gem::Requirement
83
83
  none: false
84
84
  requirements:
85
85
  - - ~>
@@ -87,10 +87,10 @@ dependencies:
87
87
  version: 1.8.4
88
88
  type: :development
89
89
  prerelease: false
90
- version_requirements: *26810400
90
+ version_requirements: *23800584
91
91
  - !ruby/object:Gem::Dependency
92
92
  name: rspec
93
- requirement: &26810064 !ruby/object:Gem::Requirement
93
+ requirement: &23800296 !ruby/object:Gem::Requirement
94
94
  none: false
95
95
  requirements:
96
96
  - - ~>
@@ -98,10 +98,10 @@ dependencies:
98
98
  version: 2.13.0
99
99
  type: :development
100
100
  prerelease: false
101
- version_requirements: *26810064
101
+ version_requirements: *23800296
102
102
  - !ruby/object:Gem::Dependency
103
103
  name: page-object
104
- requirement: &26809704 !ruby/object:Gem::Requirement
104
+ requirement: &23800008 !ruby/object:Gem::Requirement
105
105
  none: false
106
106
  requirements:
107
107
  - - ~>
@@ -109,10 +109,10 @@ dependencies:
109
109
  version: 0.8.6.1
110
110
  type: :development
111
111
  prerelease: false
112
- version_requirements: *26809704
112
+ version_requirements: *23800008
113
113
  - !ruby/object:Gem::Dependency
114
114
  name: thor
115
- requirement: &26809356 !ruby/object:Gem::Requirement
115
+ requirement: &23799720 !ruby/object:Gem::Requirement
116
116
  none: false
117
117
  requirements:
118
118
  - - ~>
@@ -120,10 +120,10 @@ dependencies:
120
120
  version: 0.14.6
121
121
  type: :development
122
122
  prerelease: false
123
- version_requirements: *26809356
123
+ version_requirements: *23799720
124
124
  - !ruby/object:Gem::Dependency
125
125
  name: active_support
126
- requirement: &26809020 !ruby/object:Gem::Requirement
126
+ requirement: &23799432 !ruby/object:Gem::Requirement
127
127
  none: false
128
128
  requirements:
129
129
  - - ~>
@@ -131,7 +131,7 @@ dependencies:
131
131
  version: 3.0.0
132
132
  type: :development
133
133
  prerelease: false
134
- version_requirements: *26809020
134
+ version_requirements: *23799432
135
135
  description: A test framework using watir-webdriver rspec and page-object
136
136
  email: nbkhic@qq.com
137
137
  executables:
@@ -211,7 +211,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
211
211
  version: '0'
212
212
  segments:
213
213
  - 0
214
- hash: 890707955
214
+ hash: 149027887
215
215
  required_rubygems_version: !ruby/object:Gem::Requirement
216
216
  none: false
217
217
  requirements:
@@ -220,7 +220,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
220
220
  version: '0'
221
221
  requirements: []
222
222
  rubyforge_project:
223
- rubygems_version: 1.8.17
223
+ rubygems_version: 1.8.16
224
224
  signing_key:
225
225
  specification_version: 3
226
226
  summary: A simple web automation test framework