Skip to content

Instantly share code, notes, and snippets.

describe "something" do
# ...
it "works like something" do
text_field(:id => "something").set "text"
checkbox(:id => "works").clear
button(:id => "like").click
div(:id => "error").should be_visible
end
# ...
end
module SpecHelper
def text_field(*args)
@browser.text_field(*args)
end
def checkbox(*args)
@browser.checkbox(*args)
end
def button(*args)
module SpecHelper
def method_missing(name, *args)
@browser.respond_to?(name) ? @browser.send(name, *args) : super
end
end
describe "something" do
before :all do
@browser = Watir::Browser.new
end
it "should allow something" do
# ...
end
after :all do
Spec::Runner.configure do |config|
config.before(:all) {@browser = Watir::Browser.new}
config.after(:all) {@browser.close}
end
Spec::Runner.configure do |config|
config.include(SpecHelper)
config.before(:all) {@browser = Watir::Browser.new}
config.after(:all) {@browser.close}
end
require "require_all"
require "watir"
require "spec"
# require some other gem
# load all non-spec ruby files
spec_dir = File.join(File.dirname(__FILE__), "spec/**/*.rb")
filtered_ruby_files = Dir.glob(spec_dir).delete_if do |file|
File.basename(file) =~ /.*_spec\.rb$/
end
require File.dirname(__FILE__) + '/../some_dir/some_file'
/^(\s*\d{1}\s*\d{1}\s*\d{1}\s*\d{1}\s*\d{1}\s*\d{1}\s*\d{1}\s*\d{0,1}\s*)?$/
class PhoneNumber
def initialize number
@number = number
end
def valid?
@number =~ /^(\s*\d{1}\s*\d{1}\s*\d{1}\s*\d{1}\s*\d{1}\s*\d{1}\s*\d{1}\s*\d{0,1}\s*)?$/
end
end