Problem with spec 'dsl/see/special_selectors_spec.rb' on Selenium Driver.
Closed this issue · 1 comments
simon2k commented
Failures:
1) #see special selectors in tables when in column when scoped by full text should see full text
Failure/Error: see "13.00", "2.00", "0.00"
expected #has_content?("13.00") to return true, got false
# ./lib/kameleon/dsl/see.rb:9:in `see'
# ./lib/kameleon/dsl/see.rb:12:in `block in see'
# ./lib/kameleon/dsl/see.rb:11:in `each'
# ./lib/kameleon/dsl/see.rb:11:in `see'
# ./spec/unit/dsl/see/special_selectors_spec.rb:28:in `block (5 levels) in <top (required)>'
# ./lib/kameleon/user/abstract.rb:61:in `instance_eval'
# ./lib/kameleon/user/abstract.rb:61:in `block in within'
# ./lib/kameleon/user/abstract.rb:39:in `within'
# ./lib/kameleon/user/abstract.rb:60:in `within'
# ./spec/unit/dsl/see/special_selectors_spec.rb:27:in `block (4 levels) in <top (required)>'
2) #see special selectors in tables when in column when scoped by full text should see partial text
Failure/Error: see "13", "2", "0"
expected #has_content?("13") to return true, got false
# ./lib/kameleon/dsl/see.rb:9:in `see'
# ./lib/kameleon/dsl/see.rb:12:in `block in see'
# ./lib/kameleon/dsl/see.rb:11:in `each'
# ./lib/kameleon/dsl/see.rb:11:in `see'
# ./spec/unit/dsl/see/special_selectors_spec.rb:34:in `block (5 levels) in <top (required)>'
# ./lib/kameleon/user/abstract.rb:61:in `instance_eval'
# ./lib/kameleon/user/abstract.rb:61:in `block in within'
# ./lib/kameleon/user/abstract.rb:39:in `within'
# ./lib/kameleon/user/abstract.rb:60:in `within'
# ./spec/unit/dsl/see/special_selectors_spec.rb:33:in `block (4 levels) in <top (required)>'
3) #see special selectors in tables when in column when scoped by partial text should see full text
Failure/Error: see "13.00", "2.00", "0.00"
expected #has_content?("13.00") to return true, got false
# ./lib/kameleon/dsl/see.rb:9:in `see'
# ./lib/kameleon/dsl/see.rb:12:in `block in see'
# ./lib/kameleon/dsl/see.rb:11:in `each'
# ./lib/kameleon/dsl/see.rb:11:in `see'
# ./spec/unit/dsl/see/special_selectors_spec.rb:42:in `block (5 levels) in <top (required)>'
# ./lib/kameleon/user/abstract.rb:61:in `instance_eval'
# ./lib/kameleon/user/abstract.rb:61:in `block in within'
# ./lib/kameleon/user/abstract.rb:39:in `within'
# ./lib/kameleon/user/abstract.rb:60:in `within'
# ./spec/unit/dsl/see/special_selectors_spec.rb:41:in `block (4 levels) in <top (required)>'
4) #see special selectors in tables when in column when scoped by partial text should see partial text
Failure/Error: see "13", "2", "0"
expected #has_content?("13") to return true, got false
# ./lib/kameleon/dsl/see.rb:9:in `see'
# ./lib/kameleon/dsl/see.rb:12:in `block in see'
# ./lib/kameleon/dsl/see.rb:11:in `each'
# ./lib/kameleon/dsl/see.rb:11:in `see'
# ./spec/unit/dsl/see/special_selectors_spec.rb:48:in `block (5 levels) in <top (required)>'
# ./lib/kameleon/user/abstract.rb:61:in `instance_eval'
# ./lib/kameleon/user/abstract.rb:61:in `block in within'
# ./lib/kameleon/user/abstract.rb:39:in `within'
# ./lib/kameleon/user/abstract.rb:60:in `within'
# ./spec/unit/dsl/see/special_selectors_spec.rb:47:in `block (4 levels) in <top (required)>'
rspec ./spec/unit/dsl/see/special_selectors_spec.rb:26 # #see special selectors in tables when in column when scoped by full text should see full text
rspec ./spec/unit/dsl/see/special_selectors_spec.rb:32 # #see special selectors in tables when in column when scoped by full text should see partial text
rspec ./spec/unit/dsl/see/special_selectors_spec.rb:40 # #see special selectors in tables when in column when scoped by partial text should see full text
rspec ./spec/unit/dsl/see/special_selectors_spec.rb:46 # #see special selectors in tables when in column when scoped by partial text should see partial text
Probably this problem is in file lib/kameleon/user/abstract.rb:
def initialize(rspec_world, options={})
@rspec_world = rspec_world
@driver_name = options.delete(:driver)
@session_name = options.delete(:session_name)
@options = options
set_session
session.instance_eval do
def within(*args)
new_scope = if args.size == 1 && Capybara::Node::Base === args.first
args.first
elsif args.last == :select_multiple
case driver
when Capybara::Selenium::Driver
all(*args[0..-2])
when Capybara::RackTest::Driver
node = find(*args)
native = Nokogiri::HTML.parse(html).xpath(args[1])
base = Capybara::RackTest::Node.new(driver, native)
::Capybara::Node::Element.new(self,
base,
node.parent,
node.instance_variable_get(:@selector))
end
else
find(*args)
end
begin
scopes.push(*new_scope)
yield
ensure
scopes.pop
end
end
end
yield if block_given?
after_initialization
end
cs3b commented
require to extend capybara to solve this - for closing