# Strange web service testing problems

**URL:** <https://www.ruby-forum.com/t/strange-web-service-testing-problems/89752>\
**Category:** Rails\
**Created:** [March 22, 2007, 2:40pm UTC](https://www.ruby-forum.com/t/strange-web-service-testing-problems/89752 "2007-03-22T14:40:40Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![michael](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/4bbf92/32.png) [@michael](https://www.ruby-forum.com/u/michael)\
**Post date:** [March 22, 2007, 2:40pm UTC](https://www.ruby-forum.com/t/strange-web-service-testing-problems/89752/1 "2007-03-22T14:40:40Z")

</div>

I seem to be having some strange problems with functionally testing web  
services.

For some reason when I assert\_routing of a web service called test with  
a method test:

options = {:controller =\> “test”, :action =\> “test”}  
assert\_routing “test/test”, options

all is fine.

But once I invoke the method test from my test class I get a routing  
error.

require File.dirname( **FILE** ) + ‘/…/test\_helper’  
require ‘test\_controller’

class TestController; def rescue\_action(e) raise e end; end

class TestControllerApiTest \< Test::Unit::TestCase  
def setup  
@controller = TestController.new  
@request = ActionController::TestRequest.new  
@response = ActionController::TestResponse.new  
end

# passes

def test\_routing  
options = {:controller =\> “test”, :action =\> “test”}  
assert\_routing “test/test”, options  
end

# routing error

def test\_test  
invoke :test  
end  
end

and here is the error:

Loaded suite test/functional/test\_api\_test  
Started  
.E  
Finished in 0.062193 seconds.

1. Error:  
test\_test(TestControllerApiTest):  
ActionController::RoutingError: Need controller and action!  
/usr/local/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action\_controller/routing.rb:1256:in  
`generate' /usr/local/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/url_rewriter.rb:104:in`rewrite\_path’  
/usr/local/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action\_controller/url\_rewriter.rb:69:in  
`rewrite' /usr/local/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/base.rb:522:in`url\_for’  
/Users/mbrio/Documents/Source/livegames-network/config/…/app/controllers/application.rb:93:in  
`remember_location' /usr/local/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:456:in`send’  
/usr/local/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action\_controller/filters.rb:456:in  
`call' /usr/local/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:450:in`call’  
/usr/local/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action\_controller/filters.rb:637:in  
`call_filter' /usr/local/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:638:in`call\_filter’  
/usr/local/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action\_controller/filters.rb:449:in  
`call' /usr/local/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:637:in`call\_filter’  
/usr/local/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action\_controller/filters.rb:619:in  
`perform_action_without_benchmark' /usr/local/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/benchmarking.rb:66:in`perform\_action\_without\_rescue’  
/usr/local/lib/ruby/1.8/benchmark.rb:293:in `measure' /usr/local/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/benchmarking.rb:66:in`perform\_action\_without\_rescue’  
/usr/local/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action\_controller/rescue.rb:83:in  
`perform_action' /usr/local/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/base.rb:430:in`send’  
/usr/local/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action\_controller/base.rb:430:in  
`process_without_filters' /usr/local/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/filters.rb:624:in`process\_without\_session\_management\_support’  
/usr/local/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action\_controller/session\_management.rb:114:in  
`process_without_test' /usr/local/lib/ruby/gems/1.8/gems/actionpack-1.13.3/lib/action_controller/test_process.rb:15:in`process’  
/usr/local/lib/ruby/gems/1.8/gems/actionwebservice-1.2.3/lib/action\_web\_service/test\_invoke.rb:10:in  
`invoke' test/functional/test_api_test.rb:19:in`test\_test’

Any help would be greatly appreciated.

---

<div class="post-metadata">

**Author:** ![michael](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/4bbf92/32.png) [@michael](https://www.ruby-forum.com/u/michael)\
**Post date:** [April 5, 2007, 4:45am UTC](https://www.ruby-forum.com/t/strange-web-service-testing-problems/89752/2 "2007-04-05T04:45:42Z")

</div>

Michael,

If you are interested in a utility to test your web service, I would  
suggest DigitForge’s Visual Web Service Client application.  
Completely eliminate the need to develop test harnesses, unless of  
course that is a requirement 🙂

DigitForge: [http://www.digitforge.com](http://www.digitforge.com).

VWS has a free trial that you can download to test against your web  
service. Can also check out the movie here:  
[http://digitforge.com/downloads/vwsoverview.wvx](http://digitforge.com/downloads/vwsoverview.wvx)  
.

Hope that helps.
