Topic: Testing Rails plugin with helper that calls update_page

I'm writing my first Rails plugin, and I'm quite stuck testing it. In simplified form:

module Flashbulb
  def flash_messages()
    return <<END
      <!-- some HTML -->
      <script type='text/javascript'> #{update_flash_messages()} </script>

  def update_flash_messages(args = { :page => nil })
    update_flash = lambda { |target| 
      # do stuff

    if args[:page] != nil[:page])
      update_page do |new_page|

This works just fine; I have the following code in init.rb that extends every view:

# Include hook code here
require 'flashbulb'

ActionView::Base.send :include, Flashbulb

Then I can call flash_messages in my views:

  = flash_messages

... and update_flash_messages in my RJS:

  update_flash_messages :page => page

The thing I can't figure out, though, is how to test flash_messages in my plugin; it seems I'm not setting something up properly before invoking update_page.

The following test code:

require 'test_helper'
require 'action_view'
require 'action_controller'
require 'action_view/test_case'

require File.dirname(__FILE__) + '/../lib/flashbulb.rb' 
include Flashbulb

class FlashbulbTest < ActionView::TestCase

  test "flash_messages returns correct HTML" do
    html = flash_messages()
    assert_dom_equal('<!-- some HTML --><!-- some JS -->', html)


... just gives me the following error (trace trimmed for brevity):

1) Error:
NoMethodError: undefined method `with_output_buffer' for nil:NilClass
    /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.4/lib/action_view/helpers/prototype_helper.rb:577:in `initialize'
    /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.4/lib/action_view/helpers/prototype_helper.rb:1029:in `new'
    /usr/lib/ruby/gems/1.8/gems/actionpack-2.3.4/lib/action_view/helpers/prototype_helper.rb:1029:in `update_page'
    ./../lib/flashbulb.rb:29:in `update_flash_messages'

I suspect I'm missing something pretty simple here ... as I said this is my first Rails plugin and I'm pretty much flying blind.

I'm also concerned that perhaps I'm misusing update_page inside update_flash_messages - it works when inside a real Rails app but I'm not sure how idiomatic my usage is. Maybe this is the issue, rather than a problem with the test itself?

(I've also posted this question on Stack Overflow; I'll cross-post any answers between here & SO).