Guest User

Untitled

a guest
Feb 20th, 2018
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.04 KB | None | 0 0
  1. $: << "/Users/lifo/Rails/sinatra/lib"
  2. require 'rubygems'
  3. require 'sinatra'
  4. require 'sinatra/test/unit'
  5. require 'app'
  6.  
  7. class Rack::Response
  8. attr_accessor :variables
  9. end
  10.  
  11. class Rack::MockResponse
  12. attr_accessor :variables
  13.  
  14. def initialize_with_variables(status, headers, body, errors=StringIO.new(""))
  15. self.variables = body.variables if body.respond_to?(:variables=)
  16. initialize_without_variables(status, headers, body, errors)
  17. end
  18. alias_method :initialize_without_variables, :initialize
  19. alias_method :initialize, :initialize_with_variables
  20.  
  21. def assigns(name)
  22. variables["@#{name}"]
  23. end
  24. end
  25.  
  26. class Sinatra::EventContext
  27. def finish
  28. result = super
  29. self.response.variables = {}
  30. instance_variables.each do |var|
  31. self.response.variables[var] = instance_variable_get(var)
  32. end
  33. result
  34. end
  35. end
  36.  
  37. class AppTest < Test::Unit::TestCase
  38. def test_my_default
  39. get_it '/'
  40. assert_equal 'Hello Templates', @response.body
  41. assert_equal 1, @response.assigns(:hello)
  42. end
  43. end
Add Comment
Please, Sign In to add comment