Skip to content

Instantly share code, notes, and snippets.

undefined method `status' for nil:NilClass

Élisson Michael elissonmichael

undefined method `status' for nil:NilClass
View GitHub Profile
elissonmichael /
Last active Dec 13, 2019 — forked from rastasheep/
MiniTest quick reference


use must for positive expectations and wont for negative expectations.

  • must_be | list.size.must_be :zero?
  • must_be_close_to | subject.size.must_be_close_to 1,1
  • must_be_empty | list.must_be_empty
  • must_be_instance_of | list.must_be_instance_of Array
  • must_be_kind_of | list.must_be_kind_of Enumerable
View doubles_stubs_spies_spec.rb
# Sample reference code for doubles/mocks, stubs, and spies in RSpec
# Taken from Kevin Skoglund's RSpec tutorial on
describe 'Doubles' do
it "allows stubbing methods" do
dbl = double("Chant")
allow(dbl).to receive(:hey!)
expect(dbl).to respond_to(:hey!)
View expectation_matchers_spec.rb
describe 'Expectation Matchers' do
describe 'equivalence matchers' do
it 'will match loose equality with #eq' do
a = "2 cats"
b = "2 cats"
expect(a).to eq(b)
expect(a).to be == b # synonym for #eq
elissonmichael /
Created May 30, 2018 — forked from speric/
Notes From "Practical Object-Oriented Design In Ruby" by Sandi Metz

Chapter 1 - Object Oriented Design

The purpose of design is to allow you to do design later, and it's primary goal is to reduce the cost of change.

SOLID Design:

  • Single Responsibility Principle: a class should have only a single responsibility
  • Open-Closed Principle: Software entities should be open for extension, but closed for modification (inherit instead of modifying existing classes).
  • Liskov Substitution: Objects in a program should be replaceable with instances of their subtypes without altering the correctness of that program.
  • Interface Segregation: Many client-specific interfaces are better than one general-purpose interface.
elissonmichael / pt-BR.yml
Created Jun 17, 2018 — forked from bmentges/pt-BR.yml
will_paginate translation to portuguese
View pt-BR.yml
previous_label: "← Anterior"
next_label: "Próximo →"
page_gap: "…"
zero: "Nenhum registro encontrado"
one: "Apenas 1 registro encontrado"
other: "Mostrando todos os %{count} registros encontrados"
View agradecimento-rodrigo.rb
# -*- encoding : utf-8 -*-
# Rodrigo Soares Manhães, professor homenageado pelos formandos da turma de 2007
# do curso de Ciência da Computação da UENF.
# 20/09/2012
class Aluno < ActiveRecord::Base
elissonmichael / capitulo1.rst
Created Jun 19, 2018 — forked from rodrigomanhaes/capitulo1.rst
Resumo do livro Agile Estimating and Planning, de Mike Cohn
View capitulo1.rst


Mike Cohn

CHAPTER 1. The Purpose of Planning

Plans help to guide investment decisions (this project is worth to begin?), know who needs to be available to work on a project during a given period and know if a project is on track.

elissonmichael / carrinho.rb
Last active Jun 26, 2018 — forked from rodrigomanhaes/carrinho.rb
Carrinho de Compras com Mock
View carrinho.rb
class Carrinho
attr_reader :pedidos
def initialize(args)
@pedido_class = args[:pedido_class]
@pedidos = []
def adicionar(produto)
@pedidos <<
elissonmichael / inflections.rb
Created Aug 6, 2018 — forked from mateusg/inflections.rb
pt-BR inflections file for Ruby on Rails applications
View inflections.rb
# encoding: utf-8
# Be sure to restart your server when you modify this file.
# Add new inflection rules using the following format
# (all these examples are active by default):
# ActiveSupport::Inflector.inflections do |inflect|
# inflect.plural /^(ox)$/i, '\1en'
# inflect.singular /^(ox)en/i, '\1'
# inflect.irregular 'person', 'people'
# inflect.uncountable %w( fish sheep )
View atom-ruby-snippets.cson
'describe (String)':
'prefix': 'des'
'body': 'describe "${1:subject}" do\n $0\nend'
'describe (type)':
'prefix': 'dest'
'body': 'describe ${1:Type} do\n $0\nend'
'describe (type, string)':
'prefix': 'dests'
'body': 'describe ${1:Type}, "${2:description}" do\n $0\nend'
You can’t perform that action at this time.