makevoid-taza 0.8.6

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.
Files changed (70) hide show
  1. data/History.txt +74 -0
  2. data/Manifest.txt +61 -0
  3. data/README +79 -0
  4. data/README.textile +1 -0
  5. data/VERSION.yml +4 -0
  6. data/bin/taza +17 -0
  7. data/generators/flow/flow_generator.rb +57 -0
  8. data/generators/flow/templates/flow.rb.erb +9 -0
  9. data/generators/page/page_generator.rb +58 -0
  10. data/generators/page/templates/functional_page_spec.rb.erb +8 -0
  11. data/generators/page/templates/page.rb.erb +8 -0
  12. data/generators/partial/partial_generator.rb +57 -0
  13. data/generators/partial/templates/partial.rb.erb +7 -0
  14. data/generators/site/site_generator.rb +56 -0
  15. data/generators/site/templates/site.rb.erb +10 -0
  16. data/generators/site/templates/site.yml.erb +3 -0
  17. data/lib/app_generators/taza/taza_generator.rb +74 -0
  18. data/lib/app_generators/taza/templates/config.yml.erb +3 -0
  19. data/lib/app_generators/taza/templates/rakefile.rb.erb +10 -0
  20. data/lib/app_generators/taza/templates/spec_helper.rb.erb +11 -0
  21. data/lib/extensions/array.rb +10 -0
  22. data/lib/extensions/hash.rb +15 -0
  23. data/lib/extensions/object.rb +33 -0
  24. data/lib/extensions/string.rb +11 -0
  25. data/lib/taza.rb +24 -0
  26. data/lib/taza/browser.rb +53 -0
  27. data/lib/taza/entity.rb +55 -0
  28. data/lib/taza/fixture.rb +68 -0
  29. data/lib/taza/fixtures.rb +24 -0
  30. data/lib/taza/flow.rb +40 -0
  31. data/lib/taza/page.rb +128 -0
  32. data/lib/taza/settings.rb +33 -0
  33. data/lib/taza/site.rb +150 -0
  34. data/lib/taza/tasks.rb +54 -0
  35. data/spec/array_spec.rb +17 -0
  36. data/spec/browser_spec.rb +86 -0
  37. data/spec/entity_spec.rb +35 -0
  38. data/spec/fixture_spec.rb +51 -0
  39. data/spec/fixtures_spec.rb +47 -0
  40. data/spec/flow_generator_spec.rb +50 -0
  41. data/spec/hash_spec.rb +15 -0
  42. data/spec/object_spec.rb +29 -0
  43. data/spec/page_generator_spec.rb +56 -0
  44. data/spec/page_module_spec.rb +165 -0
  45. data/spec/page_spec.rb +105 -0
  46. data/spec/partial_generator_spec.rb +38 -0
  47. data/spec/project_generator_spec.rb +56 -0
  48. data/spec/sandbox/config.yml +3 -0
  49. data/spec/sandbox/config/config.yml +1 -0
  50. data/spec/sandbox/config/site_name.yml +5 -0
  51. data/spec/sandbox/fixtures/examples.yml +15 -0
  52. data/spec/sandbox/fixtures/foo_site/bars.yml +2 -0
  53. data/spec/sandbox/fixtures/foos.yml +3 -0
  54. data/spec/sandbox/fixtures/users.yml +3 -0
  55. data/spec/sandbox/flows/batman.rb +5 -0
  56. data/spec/sandbox/flows/robin.rb +4 -0
  57. data/spec/sandbox/pages/foo/bar.rb +9 -0
  58. data/spec/sandbox/pages/foo/bay.rb +10 -0
  59. data/spec/sandbox/pages/foo/baz.rb +11 -0
  60. data/spec/sandbox/pages/foo/partials/partial_the_reckoning.rb +2 -0
  61. data/spec/settings_spec.rb +92 -0
  62. data/spec/site_fixtures_spec.rb +17 -0
  63. data/spec/site_generator_spec.rb +56 -0
  64. data/spec/site_spec.rb +268 -0
  65. data/spec/spec_helper.rb +57 -0
  66. data/spec/string_spec.rb +8 -0
  67. data/spec/taza_bin_spec.rb +13 -0
  68. data/spec/taza_tasks_spec.rb +56 -0
  69. data/taza.gemspec +46 -0
  70. metadata +196 -0
@@ -0,0 +1,268 @@
1
+ require 'spec/spec_helper'
2
+ require 'rubygems'
3
+ require 'taza/site'
4
+ require 'taza/settings'
5
+ require 'taza/options'
6
+ require 'taza/browser'
7
+ require 'taza/page'
8
+ require 'taza/flow'
9
+
10
+ describe Taza::Site do
11
+
12
+ before :all do
13
+ @pages_path = File.join("spec","sandbox","pages","foo","**","*.rb")
14
+ @flows_path = File.join("spec","sandbox","flows","*.rb")
15
+ Foo = Class.new(Taza::Site)
16
+ end
17
+
18
+ before :each do
19
+ Foo.any_instance.stubs(:pages_path).returns(@pages_path)
20
+ ENV['BROWSER'] = nil
21
+ ENV['DRIVER'] = nil
22
+ Taza::Settings.stubs(:config_file).returns({})
23
+ Taza::Settings.stubs(:site_file).returns({})
24
+ Taza::Site.before_browser_closes {}
25
+ end
26
+
27
+ it "pages_path should contain the site class name" do
28
+ browser = stub_browser
29
+ Taza::Browser.stubs(:create).returns(browser)
30
+ Bax = Class.new(Taza::Site)
31
+ Bax.new.pages_path.should eql("./lib/sites/bax/pages/**/*.rb")
32
+ end
33
+
34
+ it "should have flows defined as instance methods" do
35
+ browser = stub_browser
36
+ Taza::Browser.stubs(:create).returns(browser)
37
+ Barz = Class.new(Taza::Site)
38
+ Barz.any_instance.stubs(:path).returns('spec/sandbox')
39
+ Barz.any_instance.stubs(:flows_path).returns(@flows_path)
40
+ Barz.new.batman_flow.should == "i am batman"
41
+ end
42
+
43
+ it "should open watir browsers at the configuration URL" do
44
+ browser = stub_browser
45
+ browser.expects(:goto).with('a_url')
46
+ Taza::Browser.stubs(:create).returns(browser)
47
+ Taza::Settings.stubs(:config).returns(:url => 'a_url')
48
+ Foo.new
49
+ end
50
+
51
+ it "should yield an instance of a page class" do
52
+ f = Foo.new(:browser => stub_browser)
53
+ barzor = nil
54
+ f.bar do |bar|
55
+ barzor = bar
56
+ end
57
+ barzor.should be_an_instance_of(Bar)
58
+ end
59
+
60
+ it "should accept a browser instance" do
61
+ browser = stub_browser
62
+ foo = Foo.new(:browser => browser)
63
+ foo.browser.should eql(browser)
64
+
65
+ end
66
+
67
+ it "should create a browser instance if one is not provided" do
68
+ browser = stub_browser
69
+ Taza::Browser.stubs(:create).returns(browser)
70
+ foo = Foo.new
71
+ foo.browser.should eql(browser)
72
+ end
73
+
74
+ it "should still close browser if an error is raised" do
75
+ browser = stub_browser
76
+ browser.expects(:close)
77
+ Taza::Browser.stubs(:create).returns(browser)
78
+ lambda { Foo.new { |site| raise StandardError}}.should raise_error
79
+ end
80
+
81
+ it "should not close browser if block not given" do
82
+ browser = stub
83
+ browser.stubs(:goto)
84
+ browser.expects(:close).never
85
+ Taza::Browser.stubs(:create).returns(browser)
86
+ Foo.new
87
+ end
88
+
89
+ it "should not close browser if an error is raised on browser goto" do
90
+ browser = Object.new
91
+ browser.stubs(:goto).raises(StandardError,"ErrorOnBrowserGoto")
92
+ browser.expects(:close).never
93
+ Taza::Browser.stubs(:create).returns(browser)
94
+ lambda { Foo.new }.should raise_error(StandardError,"ErrorOnBrowserGoto")
95
+ end
96
+
97
+ it "should raise browser close error if no other errors" do
98
+ browser = stub_browser
99
+ browser.expects(:close).raises(StandardError,"BrowserCloseError")
100
+ Taza::Browser.stubs(:create).returns(browser)
101
+ lambda { Foo.new {}}.should raise_error(StandardError,"BrowserCloseError")
102
+ end
103
+
104
+ it "should raise error inside block if both it and browser.close throws an error" do
105
+ browser = stub_browser
106
+ browser.expects(:close).raises(StandardError,"BrowserCloseError")
107
+ Taza::Browser.stubs(:create).returns(browser)
108
+ lambda { Foo.new { |site| raise StandardError, "innererror" }}.should raise_error(StandardError,"innererror")
109
+ end
110
+
111
+ it "should close a browser if block given" do
112
+ browser = stub_browser
113
+ browser.expects(:close)
114
+ Taza::Browser.stubs(:create).returns(browser)
115
+ Foo.new do |site|
116
+ end
117
+ end
118
+
119
+ it "should yield itself upon initialization" do
120
+ Taza::Browser.stubs(:create).returns(stub_browser)
121
+ foo = nil
122
+ f = Foo.new do |site|
123
+ foo = site
124
+ end
125
+ foo.should eql(f)
126
+ end
127
+
128
+ it "should yield after page methods have been setup" do
129
+ Taza::Browser.stubs(:create).returns(stub_browser)
130
+ klass = Class::new(Taza::Site)
131
+ klass.any_instance.stubs(:pages_path).returns(@pages_path)
132
+ klass.new do |site|
133
+ site.should respond_to(:bar)
134
+ end
135
+ end
136
+
137
+ it "should yield after browser has been setup" do
138
+ Taza::Browser.stubs(:create).returns(stub_browser)
139
+ klass = Class::new(Taza::Site)
140
+ klass.any_instance.stubs(:pages_path).returns(@pages_path)
141
+ klass.new do |site|
142
+ site.browser.should_not be_nil
143
+ end
144
+ end
145
+
146
+ it "should pass its browser instance to its pages " do
147
+ browser = stub_browser
148
+ Taza::Browser.stubs(:create).returns(browser)
149
+ foo = Foo.new
150
+ foo.bar.browser.should eql(browser)
151
+ end
152
+
153
+ it "should add partials defined under the pages directory" do
154
+ Taza::Browser.stubs(:create).returns(stub_browser)
155
+ klass = Class::new(Taza::Site)
156
+ klass.any_instance.stubs(:pages_path).returns(@pages_path)
157
+ klass.new do |site|
158
+ site.partial_the_reckoning
159
+ end
160
+ end
161
+
162
+ it "should have a way to evaluate a block of code before site closes the browser" do
163
+ browser = stub()
164
+ browser.stubs(:goto)
165
+ Taza::Browser.stubs(:create).returns(browser)
166
+ browser_state = states('browser_open_state').starts_as('on')
167
+ browser.expects(:close).then(browser_state.is('off'))
168
+ browser.expects(:doit).when(browser_state.is('on'))
169
+ Taza::Site.before_browser_closes { |browser| browser.doit }
170
+ Foo.new {}
171
+ end
172
+
173
+ it "should have a way to evaluate a block of code before site closes the browser if an error occurs" do
174
+ browser = stub()
175
+ browser.stubs(:goto)
176
+ Taza::Browser.stubs(:create).returns(browser)
177
+ browser_state = states('browser_open_state').starts_as('on')
178
+ browser.expects(:close).then(browser_state.is('off'))
179
+ browser.expects(:doit).when(browser_state.is('on'))
180
+ Taza::Site.before_browser_closes { |browser| browser.doit }
181
+ lambda { Foo.new { |site| raise StandardError, "innererror" }}.should raise_error(StandardError,"innererror")
182
+ end
183
+
184
+ it "should still close its browser if #before_browser_closes raises an exception" do
185
+ browser = stub()
186
+ browser.stubs(:goto)
187
+ Taza::Browser.stubs(:create).returns(browser)
188
+ browser.expects(:close)
189
+ Taza::Site.before_browser_closes { |browser| raise StandardError, 'foo error' }
190
+ lambda { Foo.new {} }.should raise_error(StandardError,'foo error')
191
+ end
192
+
193
+ it "should not close a browser it did not make" do
194
+ browser = stub()
195
+ browser.stubs(:goto)
196
+ browser.expects(:close).never
197
+ Foo.new(:browser => browser) {}
198
+ end
199
+
200
+ it "should close a browser it did make" do
201
+ browser = stub()
202
+ Taza::Browser.stubs(:create).returns(browser)
203
+ browser.stubs(:goto)
204
+ browser.expects(:close)
205
+ Foo.new() {}
206
+ end
207
+
208
+
209
+ module Zoro
210
+ class Zoro < ::Taza::Site
211
+ end
212
+ end
213
+
214
+ it "should pass in the class name to settings config" do
215
+ browser = stub()
216
+ browser.stubs(:goto)
217
+ Taza::Browser.stubs(:create).returns(browser)
218
+ Taza::Settings.expects(:config).with('Zoro').returns({})
219
+ Zoro::Zoro.new
220
+ end
221
+
222
+ it "should load settings based on the sites class name" do
223
+ Taza::Settings.expects(:site_file).with('Zoro').returns({})
224
+ Zoro::Zoro.settings
225
+ end
226
+
227
+ def stub_browser
228
+ browser = stub()
229
+ browser.stubs(:close)
230
+ browser.stubs(:goto)
231
+ browser
232
+ end
233
+
234
+ it "should yield an instance of page class that can access page-module specific elements" do
235
+ f = Foo.new(:browser => stub_browser)
236
+ barzor = nil
237
+ f.baz(:module) do |baz|
238
+ barzor = baz
239
+ end
240
+ barzor.should be_an_instance_of(Baz)
241
+ barzor.some_element.should eql(:some_element_value)
242
+ end
243
+
244
+ it "should raise an error when accessing an element that belongs to another module" do
245
+ f = Foo.new(:browser => stub_browser)
246
+ barzor = nil
247
+ f.baz(:another_module) do |baz|
248
+ barzor = baz
249
+ end
250
+ lambda{barzor.other_element}.should raise_error(NoMethodError)
251
+ end
252
+
253
+ it "should have a way to keep the browser instance open" do
254
+ browser = stub_browser
255
+ browser.expects(:close).never
256
+ Taza::Browser.stubs(:create).returns(browser)
257
+ Taza::Site.donot_close_browser
258
+ Foo.new {}
259
+ end
260
+
261
+ it "should have a way to keep the browser instance open if an error is raised" do
262
+ browser = stub_browser
263
+ browser.expects(:close).never
264
+ Taza::Browser.stubs(:create).returns(browser)
265
+ Taza::Site.donot_close_browser
266
+ lambda { Foo.new { |site| raise StandardError}}.should raise_error
267
+ end
268
+ end
@@ -0,0 +1,57 @@
1
+ require 'rubygems'
2
+ require 'spec'
3
+ require 'mocha'
4
+ require 'config/vendorized_gems'
5
+ lib_path = File.expand_path("#{File.dirname(__FILE__)}/../lib")
6
+ $LOAD_PATH.unshift lib_path unless $LOAD_PATH.include?(lib_path)
7
+
8
+
9
+ Spec::Runner.configure do |config|
10
+ config.mock_with :mocha
11
+ end
12
+
13
+ def null_device
14
+ File.exists?('/dev/null') ? '/dev/null' : 'NUL'
15
+ end
16
+
17
+ #### Rubigen helpers
18
+ require 'rubigen'
19
+ require 'rubigen/helpers/generator_test_helper'
20
+
21
+ # Must set before requiring generator libs.
22
+ TMP_ROOT = File.join(File.dirname(__FILE__),"sandbox","generated")
23
+ PROJECT_NAME = 'example'
24
+ PROJECT_FOLDER = File.join(TMP_ROOT,PROJECT_NAME)
25
+ APP_ROOT = File.join(TMP_ROOT, PROJECT_NAME)
26
+
27
+ def generator_sources
28
+ [RubiGen::PathSource.new(:test, File.join(File.dirname(__FILE__),"..","lib", "app_generators")),
29
+ RubiGen::PathSource.new(:test, File.join(File.dirname(__FILE__),"..", "generators"))]
30
+ end
31
+
32
+ module Helpers
33
+ module Generator
34
+ def generate_site(site_name)
35
+ site_name = "#{site_name}#{Time.now.to_i}"
36
+ run_generator('site', [site_name], generator_sources)
37
+ site_file_path = File.join(PROJECT_FOLDER,'lib','sites',"#{site_name.underscore}.rb")
38
+ require site_file_path
39
+ "::#{site_name.camelize}::#{site_name.camelize}".constantize.any_instance.stubs(:base_path).returns(PROJECT_FOLDER)
40
+ site_name.camelize.constantize
41
+ end
42
+ end
43
+
44
+ module Taza
45
+ def stub_settings
46
+ ::Taza::Settings.stubs(:config).returns({})
47
+ end
48
+
49
+ def stub_browser
50
+ stub_browser = stub()
51
+ stub_browser.stubs(:goto)
52
+ stub_browser.stubs(:close)
53
+ ::Taza::Browser.stubs(:create).returns(stub_browser)
54
+ end
55
+ end
56
+ end
57
+ #### Rubigen helpers end
@@ -0,0 +1,8 @@
1
+ require 'spec/spec_helper'
2
+ require 'extensions/string'
3
+
4
+ describe "string extensions" do
5
+ it "should pluralize and to sym a string" do
6
+ "apple".pluralize_to_sym.should eql(:apples)
7
+ end
8
+ end
@@ -0,0 +1,13 @@
1
+ require 'spec/spec_helper'
2
+ require 'rubygems'
3
+ require 'fileutils'
4
+
5
+ describe "Taza project generator script" do
6
+
7
+ it "should have an executable script" do
8
+ path = 'spec/sandbox/generators'
9
+ taza_bin = "#{File.expand_path(File.dirname(__FILE__)+'/../bin/taza')} #{path}"
10
+ system("ruby -c #{taza_bin} > #{null_device}").should be_true
11
+ end
12
+
13
+ end
@@ -0,0 +1,56 @@
1
+ require 'spec/spec_helper'
2
+ require 'rubygems'
3
+ require 'rake'
4
+ require 'taglob'
5
+
6
+ describe "Taza Tasks" do
7
+
8
+ before :all do
9
+ @file_name ="./lib/taza/tasks.rb"
10
+ @rake = Rake::Application.new
11
+ Rake.application = @rake
12
+ end
13
+
14
+ before :each do
15
+ Dir.stubs(:taglob).returns([])
16
+ Dir.expects(:glob).with('./spec/*/').returns(['./spec/functional/','./spec/mocks/'])
17
+ Dir.expects(:glob).with('./spec/functional/*/').returns(['./spec/functional/foo/'])
18
+ Dir.expects(:glob).with('./spec/functional/*_spec.rb').returns([])
19
+ Dir.expects(:glob).with('./spec/functional/foo/*/').returns(['./spec/functional/foo/page/'])
20
+ Dir.expects(:glob).with('./spec/functional/foo/*_spec.rb').returns([])
21
+ Dir.expects(:glob).with('./spec/functional/foo/page/*/').returns([])
22
+ Dir.expects(:glob).with('./spec/functional/foo/page/*_spec.rb').returns(['./spec/functional/foo/page/bar_spec.rb'])
23
+
24
+ Dir.expects(:glob).with('./spec/functional/**/*_spec.rb').returns(['./spec/functional/foo/page/bar_spec.rb'])
25
+ Dir.expects(:glob).with('./spec/functional/foo/**/*_spec.rb').returns(['./spec/functional/foo/page/bar_spec.rb'])
26
+ Dir.expects(:glob).with('./spec/functional/foo/page/**/*_spec.rb').returns(['./spec/functional/foo/page/bar_spec.rb'])
27
+ Dir.expects(:glob).with('./spec/mocks/**/*_spec.rb').returns([])
28
+ load @file_name
29
+ Taza::Rake::Tasks.new
30
+ end
31
+
32
+ after :all do
33
+ Rake.application = nil
34
+ end
35
+
36
+ it "should create rake spec tasks for all sites" do
37
+ tasks.include?("spec:functional:foo").should be_true
38
+ end
39
+
40
+ it "should create rake spec tasks for all sites page specs" do
41
+ tasks.include?("spec:functional:foo:page").should be_true
42
+ end
43
+
44
+ it "should create rake spec tasks for all sites page specs in sub-folders" do
45
+ tasks.include?("spec:functional:foo:page:bar").should be_true
46
+ end
47
+
48
+ it "should not create rake spec tasks for folders that donot contain specs in their sub-tree" do
49
+ tasks.include?("spec:mocks").should be_false
50
+ end
51
+
52
+ def tasks
53
+ @rake.tasks.collect{|task| task.name }
54
+ end
55
+
56
+ end
@@ -0,0 +1,46 @@
1
+ Gem::Specification.new do |s|
2
+ s.name = %q{taza}
3
+ s.version = "0.8.6"
4
+
5
+ s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
6
+ s.authors = ["Adam Anderson"]
7
+ s.date = %q{2009-04-08}
8
+ s.default_executable = %q{taza}
9
+ s.description = %q{Taza is an opionated browser-based testing framework.}
10
+ s.email = %q{adamandersonis@gmail.com}
11
+ s.executables = ["taza"]
12
+ s.extra_rdoc_files = ["History.txt", "Manifest.txt", "README"]
13
+ s.files = ["History.txt", "Manifest.txt", "README.textile", "taza.gemspec", "VERSION.yml", "bin/taza", "generators/flow", "generators/flow/flow_generator.rb", "generators/flow/templates", "generators/flow/templates/flow.rb.erb", "generators/page", "generators/page/page_generator.rb", "generators/page/templates", "generators/page/templates/functional_page_spec.rb.erb", "generators/page/templates/page.rb.erb", "generators/partial", "generators/partial/partial_generator.rb", "generators/partial/templates", "generators/partial/templates/partial.rb.erb", "generators/site", "generators/site/site_generator.rb", "generators/site/templates", "generators/site/templates/site.rb.erb", "generators/site/templates/site.yml.erb", "lib/app_generators", "lib/app_generators/taza", "lib/app_generators/taza/taza_generator.rb", "lib/app_generators/taza/templates", "lib/app_generators/taza/templates/config.yml.erb", "lib/app_generators/taza/templates/rakefile.rb.erb", "lib/app_generators/taza/templates/spec_helper.rb.erb", "lib/extensions", "lib/extensions/array.rb", "lib/extensions/hash.rb", "lib/extensions/object.rb", "lib/extensions/string.rb", "lib/taza", "lib/taza/browser.rb", "lib/taza/entity.rb", "lib/taza/fixture.rb", "lib/taza/fixtures.rb", "lib/taza/flow.rb", "lib/taza/page.rb", "lib/taza/settings.rb", "lib/taza/site.rb", "lib/taza/tasks.rb", "lib/taza.rb", "spec/array_spec.rb", "spec/browser_spec.rb", "spec/entity_spec.rb", "spec/fixtures_spec.rb", "spec/fixture_spec.rb", "spec/flow_generator_spec.rb", "spec/hash_spec.rb", "spec/object_spec.rb", "spec/page_generator_spec.rb", "spec/page_module_spec.rb", "spec/page_spec.rb", "spec/partial_generator_spec.rb", "spec/project_generator_spec.rb", "spec/sandbox", "spec/sandbox/config", "spec/sandbox/config/config.yml", "spec/sandbox/config/site_name.yml", "spec/sandbox/config.yml", "spec/sandbox/fixtures", "spec/sandbox/fixtures/examples.yml", "spec/sandbox/fixtures/foos.yml", "spec/sandbox/fixtures/foo_site", "spec/sandbox/fixtures/foo_site/bars.yml", "spec/sandbox/fixtures/users.yml", "spec/sandbox/flows", "spec/sandbox/flows/batman.rb", "spec/sandbox/flows/robin.rb", "spec/sandbox/pages", "spec/sandbox/pages/foo", "spec/sandbox/pages/foo/bar.rb", "spec/sandbox/pages/foo/bay.rb", "spec/sandbox/pages/foo/baz.rb", "spec/sandbox/pages/foo/partials", "spec/sandbox/pages/foo/partials/partial_the_reckoning.rb", "spec/settings_spec.rb", "spec/site_fixtures_spec.rb", "spec/site_generator_spec.rb", "spec/site_spec.rb", "spec/spec_helper.rb", "spec/string_spec.rb", "spec/taza_bin_spec.rb", "spec/taza_tasks_spec.rb", "README"]
14
+ s.has_rdoc = true
15
+ s.homepage = %q{http://github.com/scudco/taza}
16
+ s.rdoc_options = ["--main", "README", "--inline-source", "--charset=UTF-8"]
17
+ s.require_paths = ["lib"]
18
+ s.rubyforge_project = %q{taza}
19
+ s.rubygems_version = %q{1.2.0}
20
+ s.summary = %q{Taza is an opionated browser-based testing framework.}
21
+
22
+ if s.respond_to? :specification_version then
23
+ current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
24
+ s.specification_version = 2
25
+
26
+ if current_version >= 3 then
27
+ s.add_runtime_dependency(%q<taglob>, [">= 1.1.1"])
28
+ s.add_runtime_dependency(%q<rake>, [">= 0.8.3"])
29
+ s.add_runtime_dependency(%q<mocha>, [">= 0.9.3"])
30
+ s.add_runtime_dependency(%q<rspec>, [">= 1.1.12"])
31
+ s.add_runtime_dependency(%q<rubigen>, [">= 1.4.0"])
32
+ else
33
+ s.add_dependency(%q<taglob>, [">= 1.1.1"])
34
+ s.add_dependency(%q<rake>, [">= 0.8.3"])
35
+ s.add_dependency(%q<mocha>, [">= 0.9.3"])
36
+ s.add_dependency(%q<rspec>, [">= 1.1.12"])
37
+ s.add_dependency(%q<rubigen>, [">= 1.4.0"])
38
+ end
39
+ else
40
+ s.add_dependency(%q<taglob>, [">= 1.1.1"])
41
+ s.add_dependency(%q<rake>, [">= 0.8.3"])
42
+ s.add_dependency(%q<mocha>, [">= 0.9.3"])
43
+ s.add_dependency(%q<rspec>, [">= 1.1.12"])
44
+ s.add_dependency(%q<rubigen>, [">= 1.4.0"])
45
+ end
46
+ end