Slide 1

Slide 1 text

Rails Engines e RSpec

Slide 2

Slide 2 text

“Engines can be considered miniature applications that provide functionality to their host applications. “ http://guides.rubyonrails.org/engines.html

Slide 3

Slide 3 text

Ruby Gem + MVC “A Rails application is actually just a ‘supercharged’ engine”

Slide 4

Slide 4 text

No content

Slide 5

Slide 5 text

É uma maneira de organizar e compartilhar código reutilizável através de uma ou mais aplicações.

Slide 6

Slide 6 text

Core Modulo Financeiro Modulo Logística

Slide 7

Slide 7 text

Redundância Melhor manutenção

Slide 8

Slide 8 text

Trade-offs

Slide 9

Slide 9 text

Criando uma Rails Engine do Zero

Slide 10

Slide 10 text

Nome da nossa engine Sem os arquivos do Test::Unit Plugin isolado por namespace Cria com uma estrutura padrão com a dummy application especificada

Slide 11

Slide 11 text

Dummy Application Quando geramos a engine, a partir da linha de comando, existe uma pequena aplicação dentro do diretório de testes.

Slide 12

Slide 12 text

No content

Slide 13

Slide 13 text

Ela existe básicamente por que não existe um jeito de se testar uma Rails Engine fora de uma aplicação Rails

Slide 14

Slide 14 text

.gemspec

Slide 15

Slide 15 text

As dependências devem ser adicionadas nesse arquivo para evitar conflitos na hora de plugar a engine

Slide 16

Slide 16 text

No content

Slide 17

Slide 17 text

rails generate rspec:install

Slide 18

Slide 18 text

Obrigada!

Slide 19

Slide 19 text

Referências https://medium.com/@amandasposito/rails-engines-e-rspec-6e7a8645dc5b#.nemad0vpz http://rspec.info/ http://guides.rubyonrails.org/engines.html https://www.bignerdranch.com/blog/intro-to-rails-engines/ http://stackoverflow.com/questions/6118905/rails-3-1-engine-vs-mountable-app