Criando Sua Primeira Gem Parte 2
Continuando com o post Criando Sua Primeira Gem Parte 1 iremos agora adicionar algumas funcionalidades para nossa gem.
Abrimos o arquivo miguxo_gem.rb que se encontra na pasta lib e adicionamos o seguinte código:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# -*- coding: utf-8 -*-
class Miguxo
def self . xaudacao ( miguxito = "ola_miguxo" )
miguxitor = Miguxitos . new ( miguxito )
puts miguxitor . xaudacao
end
end
class Miguxo :: Miguxitos
def initialize ( miguxito )
@miguxito = miguxito
end
def xaudacao
case @miguxito
when "dmitrynix"
"Olá Miguxito Mestre Teste"
else
"Olá Miguxito"
end
end
end
Agora vamos criar uma pasta com o nome miguxo dentro da pastar lib e criar um arquivo chamado miguxitos.rb e colocar a classe que esta logo abaixo da miguxo dentro dele, com os seguintes comandos:
mkdir miguxo
cd miguxo
touch miguxito.rb
% Nova estrutura
.
├── miguxo_gem.gemspec
└── lib
├── miguxo
│ └── miguxitos.rb
└── miguxo_gem.rb
As classes miguxo.rb e miguxo/miguxitos.rb ficam assim respectivamente:
1
2
3
4
5
6
class Miguxo
def self . xaudacao ( miguxito = :ola_miguxo )
miguxitor = Miguxito . new ( miguxito )
puts miguxitor . xaudacao
end
end
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
class Miguxo :: Miguxito
def initialize ( miguxito )
@miguxito = miguxito
end
def xaudacao
case @miguxito
when :dmitrynix
"Olá Miguxito Mestre em Testes lol"
when :caironoleto
"Olá Miguxito Mestre em Rails lol"
when :infoslack
"Olá Miguxito Mestre em Sugurança lol"
when :leandrosales
"Olá Miguxito Mestre em Sacana lol"
when :weldyss
"Olá Miguxito Chefe lol"
else
"Olá Miguxito"
end
end
end
Agora vamos alterar o arquivo gemspec, ficando agora assim:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Gem :: Specification . new do | s |
s . name = %q{miguxo_gem}
s . author = 'Rogerio Medeiros'
s . version = "0.0.1"
s . date = %q{2012-03-06}
s . summary = %q{Miguxo!}
s . description = "Uma simples gem chamada miguxo_gem"
s . email = 'argerim@gmail.com'
s . homepage =
'http://heroku.rogeriolol.com'
s . files = [
"lib/miguxo_gem.rb"
]
s . require_paths = [ "lib" ]
end
Gerando a nova versão da gem e instalando:
gem build miguxo_gem.gemspec
gem install miguxo_gem-0.0.1.gem
Agora vamos executar com o camando abaixo:
1
2
3
4
5
irb - Ilib - rmiguxo_gem
: 001 > Miguxo . xaudacao ( :dmitrynixx )
=> "Olá Miguxito"
: 002 > Miguxo . xaudacao ( :dmitrynix )
=> "Olá Miguxito Mestre Teste"
O comando -Ilib é para ele incluir o diretório lib, na próxima parte faremos os testes, simples e fácil lol.
Criando Sua Primeira Gem Parte 3