Skip to content

Instantly share code, notes, and snippets.

View feroult's full-sized avatar
always coding ;)

Fernando Ultremare feroult

always coding ;)
View GitHub Profile
http://rubyonrails.org/
http://guides.rubyonrails.org/
http://pragprog.com/book/rails4/agile-web-development-with-rails (excelente livro)
http://www.slideshare.net/dextra/minicurso-ruby-on-rails-dextra (palestra introdutória)
@feroult
feroult / line_items_controller_spec.rb
Created February 7, 2011 21:35
Macro template example
require 'spec_helper'
describe LineItemsController do
mock :order
mock :customer
# GET /orders/11/line_items
get :index, :order_id => 11 do
default :stub => :off
@feroult
feroult / customers_controller_spec.rb
Created February 7, 2011 21:10
RSpec for a Rails Controller, using macros
require 'spec_helper'
describe CustomersController do
before(:each) do
mock_filter(:require_user_owner)
end
# GET /customers
get :index do
@feroult
feroult / controller_macros.rb
Created February 7, 2011 21:08
Rails Controller Macros (with scaffold default)
module ControllerMacros
def self.included(base)
base.extend(GroupMethods)
end
def mock_access(user = mock_model(User))
controller.stub('require_user').and_return(true)
controller.stub('current_user').and_return(user)
end
@feroult
feroult / macros_base.rb
Created February 7, 2011 21:07
RSpec Macros Recorder
module MacrosBase
def self.included(base)
base.extend(GroupMethods)
end
module GroupMethods
def mock(model_name)
class_eval <<-EOFMOCK
def mock_#{model_name}(stubs={})
(@mock_#{model_name} ||= mock_model(#{model_name.to_s.classify}).as_null_object).tap do |#{model_name}|