rwebunit 1.0.3 → 1.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rwebunit
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.3
4
+ version: 1.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Zhimin Zhan
@@ -9,7 +9,7 @@ autorequire: rwebunit
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2009-01-24 00:00:00 +10:00
12
+ date: 2009-06-01 00:00:00 +10:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
@@ -20,7 +20,7 @@ dependencies:
20
20
  requirements:
21
21
  - - "="
22
22
  - !ruby/object:Gem::Version
23
- version: 1.1.4
23
+ version: 1.1.12
24
24
  version:
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: commonwatir
@@ -32,6 +32,16 @@ dependencies:
32
32
  - !ruby/object:Gem::Version
33
33
  version: 1.6.2
34
34
  version:
35
+ - !ruby/object:Gem::Dependency
36
+ name: test-unit
37
+ type: :runtime
38
+ version_requirement:
39
+ version_requirements: !ruby/object:Gem::Requirement
40
+ requirements:
41
+ - - ">="
42
+ - !ruby/object:Gem::Version
43
+ version: 2.0.2
44
+ version:
35
45
  description:
36
46
  email: zhimin@agileway.net
37
47
  executables: []
@@ -54,23 +64,18 @@ files:
54
64
  - lib/rwebunit/itest_plugin.rb
55
65
  - lib/rwebunit/matchers
56
66
  - lib/rwebunit/matchers/contains_text.rb
67
+ - lib/rwebunit/popup.rb
57
68
  - lib/rwebunit/rspec_helper.rb
69
+ - lib/rwebunit/test_script.rb
58
70
  - lib/rwebunit/test_utils.rb
71
+ - lib/rwebunit/using_pages.rb
59
72
  - lib/rwebunit/web_browser.rb
60
73
  - lib/rwebunit/web_page.rb
61
74
  - lib/rwebunit/web_testcase.rb
62
75
  - lib/rwebunit.rb
63
76
  - lib/watir_extensions.rb
64
- - test/mock_page.rb
65
- - test/setup.rb
66
- - test/test.html
67
- - test/test_assert.rb
68
- - test/test_driver.rb
69
- - test/test_test_utils.rb
70
- - docs/html
71
- - docs/html/index.html
72
77
  has_rdoc: true
73
- homepage: http://code.google.com/p/rwebunit/
78
+ homepage: http://github.com/zhimin/rwebunit/tree/master
74
79
  post_install_message:
75
80
  rdoc_options: []
76
81
 
data/docs/html/index.html DELETED
@@ -1,129 +0,0 @@
1
- <html>
2
- <head>
3
- <title>rWebUnit </title>
4
- </head>
5
- <body>
6
- <p></p>
7
-
8
- <table class="bodyTable">
9
- <tr class="a">
10
- <th>Watir Test</th>
11
- <th>rWebUnit Test</th>
12
- </tr>
13
- <tr class="b">
14
- <td valign="top" nowrap="nowrap">
15
- <div class="source">
16
- <pre>
17
- require 'watir'
18
- require 'test/unit'
19
-
20
- class WatirSearchExample < Test::Unit::TestCase
21
-
22
- def test_search
23
- ie= Watir::IE.new
24
- ie.goto("http://www.google.com")
25
- ie.text_field( :name, "q"). set("httpunit")
26
- ie.button( :name, "btnG"). click
27
- ie.link( :text, "HttpUnit Home"). click
28
- assert_equal("HttpUnit Home", ie.document.title)
29
- assert( ie.contains_text("User' s Manual"))
30
- end
31
-
32
- end
33
- </pre>
34
- </div>
35
- </td>
36
- <td valign="top" nowrap="nowrap">
37
- <div class="source">
38
- <pre>
39
-
40
- require 'rwebunit'
41
-
42
- class RWebUnitSearchExample < RWebUnit::WebTestCase
43
-
44
- def test_search()
45
- getTestContext().base_url="http://www.google.com"
46
- beginAt("/")
47
- setFormElement("q", "httpunit")
48
- clickButtonWithValue("Google Search")
49
- clickLinkWithText("HttpUnit Home")
50
- assertTitleEquals("HttpUnit Home")
51
- assertLinkPresentWithText("User' s Manual")
52
- end
53
-
54
- end
55
- </pre>
56
- </div>
57
- </td>
58
- </tr>
59
- </table>
60
- <br/>
61
- <table class="bodyTable">
62
- <tr class="a">
63
- <th>jWebUnit TestCase</th>
64
- <th>rWebUnit TestCase</th>
65
- </tr>
66
- <tr class="b">
67
- <td valign="top" nowrap="nowrap">
68
- <div class="source">
69
- <pre>
70
- import net.sourceforge.jwebunit.WebTestCase;
71
-
72
- public class JWebUnitSearchExample extends WebTestCase {
73
-
74
- public JWebUnitSearchExample(String name) {
75
- super(name);
76
- }
77
-
78
- public void setUp() {
79
- getTestContext().setBaseUrl("http://www.google.com");
80
- }
81
-
82
- public void testSearch() {
83
- beginAt("/");
84
- setFormElement("q", "httpunit");
85
- submit("btnG");
86
- clickLinkWithText("HttpUnit");
87
- assertTitleEquals("HttpUnit");
88
- assertLinkPresentWithText("User's Manual");
89
- }
90
- }
91
- </pre>
92
- </div>
93
- </td>
94
-
95
- <td valign="top" nowrap="nowrap">
96
-
97
- <div class="source">
98
- <pre>
99
- require 'rwebunit'
100
-
101
- class RWebUnitSearchExample < RWebUnit::WebTestCase
102
-
103
- def initialize(name)
104
- super(name)
105
- end
106
-
107
- def setup
108
- getTestContext().setBaseUrl("http:// www.google.com")
109
- end
110
-
111
- def test_search
112
- beginAt("/")
113
- setFormElement("q", "httpunit")
114
- submit("btnG")
115
- clickLinkWithText("HttpUnit Home")
116
- assertTitleEquals("HttpUnit Home")
117
- assertLinkPresentWithText("User' s Manual")
118
- end
119
- end
120
- </pre>
121
- </div>
122
-
123
- </td>
124
- </tr>
125
- </table>
126
-
127
-
128
- </body>
129
- </html>
data/test/mock_page.rb DELETED
@@ -1,8 +0,0 @@
1
- require 'rwebunit'
2
-
3
- class MockPage < RWebUnit::AbstractWebPage
4
-
5
- def initialize(browser)
6
- super(browser, "")
7
- end
8
- end
data/test/setup.rb DELETED
@@ -1,10 +0,0 @@
1
- require 'firewatir'
2
-
3
- $loaded = false
4
- unless $loaded
5
- sample_html = "file://" + File.expand_path(File.dirname(__FILE__) + "/test.html")
6
- $firefox = FireWatir::Firefox.new
7
- $firefox.goto(sample_html)
8
- $web_browser = RWebUnit::WebBrowser.new("test", $firefox, :firefox => true)
9
- $loaded = true
10
- end
data/test/test.html DELETED
@@ -1,129 +0,0 @@
1
- <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
2
- <html>
3
- <head>
4
- <title>
5
- For Testing Recorder
6
- </title>
7
- <style type="text/css">
8
- body {
9
- margin: 5px;
10
- padding: 0;
11
- font-family: "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", Helvetica, Arial, sans-serif;
12
- font-size: small;
13
- background: #f4f4ed;
14
- }
15
-
16
- h1, h2, h3, h4, h5, h6 {
17
- margin-top: 0;
18
- color: black;
19
- font-family: Georgia, "Times New Roman", Times, serif;
20
- font-weight: normal
21
- }
22
-
23
- a:link {
24
- color: #005f96
25
- }
26
-
27
- a:visited {
28
- color: #484848
29
- }
30
-
31
- a:hover, a:active {
32
- color: #c30
33
- }
34
-
35
- td {
36
- font-size: small;
37
- }
38
- </style>
39
- </head>
40
- <body>
41
- <form action="test">
42
- <h1>
43
- iTest2/Watir Recorder Test Page
44
- </h1>
45
- <h2>
46
- Links
47
- </h2>
48
- <p>
49
- <a href="http://www.itest2.com">iTest2</a> &nbsp; <a id="link_itest2" href="http://www.itest2.com" name="link_itest2">iTest2 with Id</a>
50
- </p>
51
- <h2>
52
- Checkboxes
53
- </h2>
54
- <p>
55
- <input name="checkbox1" type="checkbox"> No Value &nbsp; <input name="checkbox2" type="checkbox" value="true"> With value true &nbsp; <input id="checkbox3" type="checkbox"> Id but no name
56
- </p>
57
- <h2>
58
- Buttons
59
- </h2>
60
- <p>
61
- <input type="button" id="login-btn" value="Login"> &nbsp; <input type="button" value="Login"> &nbsp; <input type="submit" value="Submit without id">
62
- </p>
63
- <h2>
64
- Radio buttons
65
- </h2>
66
- <p>
67
- <input type="radio" checked="true" name="os" value="Apple"> Apple &nbsp; <input type="radio" name="os" value="Linux"> Linux
68
- </p>
69
- <h2>
70
- Text fields
71
- </h2>
72
- <table>
73
- <tr>
74
- <td>
75
- Text (single line):
76
- </td>
77
- <td>
78
- <input type="text" name="text1" value="text already there"> <i>Right click to verify textfield</i>
79
- </td>
80
- </tr>
81
- <tr>
82
- <td>
83
- Text (with name, just id):
84
- </td>
85
- <td>
86
- <input type="text" id="text_without_id" value=""> <i>Right click to verify textfield</i>
87
- </td>
88
- </tr>
89
- <tr>
90
- <td>
91
- Password:
92
- </td>
93
- <td>
94
- <input type="password" name="password1">
95
- </td>
96
- </tr>
97
- <tr>
98
- <td valign="top">
99
- TextArea:
100
- </td>
101
- <td>
102
- <textarea name="textarea" cols="10" rows="2">
103
- </textarea>
104
- </td>
105
- </tr>
106
- </table>
107
- <h2>
108
- Select (combobox)
109
- </h2>
110
- <p>
111
- By Name: <select name="testing_tool">
112
- <option value="iTest2">
113
- iTest2 display
114
- </option>
115
- <option value="Watir">
116
- Watir
117
- </option>
118
- </select> &nbsp; &nbsp; By Id: <select id="methodology">
119
- <option value="XP">
120
- Agile way
121
- </option>
122
- <option value="Waterfall">
123
- Water way
124
- </option>
125
- </select>
126
- </p>
127
- </form>
128
- </body>
129
- </html>
data/test/test_assert.rb DELETED
@@ -1,64 +0,0 @@
1
- require 'rubygems'
2
- require 'firewatir'
3
-
4
- $:.unshift File.join(File.dirname(__FILE__), "..", "lib/rwebunit")
5
- $:.unshift File.dirname(__FILE__)
6
-
7
- require "test_utils"
8
- require "web_page"
9
- require "assert"
10
- require "itest_plugin"
11
- require "web_browser"
12
- require "driver"
13
- require "context"
14
- require "driver"
15
- require "rspec_helper"
16
- require 'test/unit'
17
- require 'setup'
18
-
19
- class TestDriver < Test::Unit::TestCase
20
- include RWebUnit::Utils
21
- include RWebUnit::RSpecHelper
22
-
23
- def setup
24
- @web_browser = $web_browser
25
- end
26
-
27
- def teardown
28
- end
29
-
30
- def test_assert_text
31
- assert_text_present("iTest2/Watir Recorder Test Page")
32
- assert_text_not_present("iTest3/Watir Recorder Test Page")
33
- end
34
-
35
- def test_assert_link
36
- assert_link_present_with_text("iTest2 with Id")
37
- assert_link_not_present_with_text("iTest2 with id")
38
- assert_link_not_present_with_text("XX")
39
- end
40
-
41
- def test_checkbox
42
- assert_checkbox_not_selected("checkbox1")
43
- check_checkbox("checkbox1")
44
- assert_checkbox_selected("checkbox1")
45
- uncheck_checkbox("checkbox1")
46
- assert_checkbox_not_selected("checkbox1")
47
- end
48
-
49
- def test_radiobutton
50
- assert_radio_option_present("os", "Linux")
51
- assert_radio_option_present("os","Apple")
52
- assert_radio_option_not_present("os","Windows")
53
- click_radio_option("os", "Linux")
54
- assert_radio_option_selected("os", "Linux")
55
- end
56
-
57
- def test_button
58
- assert_button_present("login-btn")
59
- assert_button_not_present("login-Btn")
60
- assert_button_present_with_text("Login")
61
- assert_button_not_present_with_text("login")
62
- end
63
-
64
- end
data/test/test_driver.rb DELETED
@@ -1,57 +0,0 @@
1
- require 'firewatir'
2
-
3
- $:.unshift File.join(File.dirname(__FILE__), "..", "lib/rwebunit")
4
- $:.unshift File.dirname(__FILE__)
5
-
6
- require "test_utils"
7
- require "web_page"
8
- require "assert"
9
- require "itest_plugin"
10
- require "web_browser"
11
- require "driver"
12
- require "context"
13
- require "driver"
14
- require "rspec_helper"
15
- require 'test/unit'
16
- require 'setup'
17
- require 'mock_page'
18
-
19
- class TestDriver < Test::Unit::TestCase
20
- include RWebUnit::Driver
21
-
22
- def setup
23
- @web_browser = $web_browser
24
- end
25
-
26
- def teardown
27
- end
28
-
29
- def test_fail_safe
30
- fail_safe {raise "X"}
31
- end
32
-
33
- def test_expect_page
34
- new_page = expect_page MockPage
35
- assert_equal("dummy", new_page)
36
- end
37
-
38
- def test_on
39
- page = []
40
- on(page) do |i|
41
- i << "0"
42
- i << "1"
43
- end
44
- assert_equal(["0", "1"], page)
45
- end
46
-
47
- def test_shall_not_allow
48
- shall_not_allow {1 / 0}
49
- end
50
-
51
- def test_symbol_to_sequence
52
- assert_equal 1, symbol_to_sequence(:first)
53
- assert_equal 2, symbol_to_sequence(:second)
54
- assert_equal 11, symbol_to_sequence(11)
55
- end
56
-
57
- end
@@ -1,76 +0,0 @@
1
- $:.unshift File.join(File.dirname(__FILE__), "..", "lib/rwebunit")
2
- $:.unshift File.dirname(__FILE__)
3
-
4
- require "test_utils.rb"
5
- require 'test/unit'
6
-
7
- class TestWebTestCase < Test::Unit::TestCase
8
- include RWebUnit::Utils
9
-
10
- def setup
11
- end
12
-
13
- def teardown
14
- end
15
-
16
- def test_getToday
17
- today_str = sprintf("%02d/%02d/%04d", Time.now.day, Time.now.month, Time.now.year)
18
- assert_equal(today_str, getToday)
19
- assert_equal(today_str, today)
20
- assert_equal(sprintf("%04d-%02d-%02d", Time.now.year, Time.now.month, Time.now.day), today("blah"))
21
- assert_equal(sprintf("%02d/%02d/%04d", Time.now.month, Time.now.day, Time.now.year), today("%m/%d/%Y"))
22
- end
23
-
24
- def test_getDaysBefore
25
- yesterday_date = Time.now - 24 * 3600 * 1
26
- yesterday_str = sprintf("%02d/%02d/%04d", yesterday_date.day, yesterday_date.month, yesterday_date.year)
27
- assert_equal(yesterday_str, days_before(1))
28
- assert_equal(yesterday_str, yesterday)
29
- end
30
-
31
- def test_future_date
32
- tomorrow_date = Time.now + 24 * 3600 * 1
33
- tomorrow_str = sprintf("%02d/%02d/%04d", tomorrow_date.day, tomorrow_date.month, tomorrow_date.year)
34
- assert_equal(tomorrow_str, days_from_now(1))
35
- assert_equal(tomorrow_str, tomorrow)
36
- end
37
-
38
- def test_randomBoolean
39
- true_count = 0
40
- false_count = 0
41
- 100.times {
42
- obj = random_boolean
43
- assert(obj.instance_of?(TrueClass) || obj.instance_of?(FalseClass), "can only be true or false")
44
- true_count += 1 if obj
45
- false_count += 1 if !obj
46
- }
47
- assert(true_count > 0, "it is not random")
48
- assert(false_count > 0, "it is not random")
49
- end
50
-
51
- def test_random_number
52
- tmp_array = []
53
- 1000.times {
54
- num = random_number(1,10)
55
- assert(num.instance_of?(Fixnum), "can only be number")
56
- tmp_array << num
57
- }
58
- uniq_numbers = tmp_array.uniq.sort
59
- assert_equal(10, uniq_numbers.length)
60
- assert_equal(1, uniq_numbers[0])
61
- assert_equal(10, uniq_numbers[9])
62
- end
63
-
64
- def test_random_digit
65
- tmp_array = []
66
- 1000.times {
67
- dc = random_digit
68
- tmp_array << dc
69
- }
70
- uniq_digits = tmp_array.uniq.sort
71
- assert_equal(10, uniq_digits.length)
72
- assert_equal('0', uniq_digits[0])
73
- assert_equal('9', uniq_digits[9])
74
- end
75
-
76
- end