Created
June 21, 2009 14:44
-
-
Save jeffersongirao/133532 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Dado /^que existe\(m\) (\d+) registro\(s\) de (.+)$/ do |n, model_str| | |
model_str = model_str.gsub(/\s/, '_') | |
model_sym = model_str.to_sym | |
classe = eval(model_str.camelize) | |
classe.transaction do | |
classe.destroy_all | |
n.to_i.times do | |
Factory(model_sym) | |
end | |
end | |
end | |
Dado /^que existem os seguintes registros de (.+):$/ do |model_str,tabela| | |
model_str = model_str.gsub(/\s/, '_') | |
model_sym = model_str.to_sym | |
klass = eval(model_str.camelize) | |
klass.transaction do | |
klass.destroy_all | |
tabela.hashes.each do |hash| | |
f = Factory(model_sym, hash) | |
end | |
end | |
end | |
Dado /^que estou em (.+)$/ do |nome_da_pagina| | |
visit path_to(nome_da_pagina) | |
end | |
Dado /^defino (.+) como "([^\"]*)"$/ do |campo, valor| | |
fill_in(campo, :with => valor) | |
end | |
Quando /^eu estiver em (.+)$/ do |nome_da_pagina| | |
visit path_to(nome_da_pagina) | |
end | |
Quando /^peço para (.+)$/ do |acao| | |
click_button acao | |
end | |
Então /^preciso ver "([^\"]*)"$/ do |texto| | |
response.should contain(texto) | |
end | |
Então /^preciso ver os seguintes registros:$/ do |tabela| | |
tabela.hashes.each do |hash| | |
hash.each_value do |valor| | |
response.should contain(valor) | |
end | |
end | |
end | |
Então /^não devo ver os seguintes registros:$/ do |tabela| | |
tabela.hashes.each do |hash| | |
hash.each_value do |valor| | |
response.should_not contain(valor) | |
end | |
end | |
end | |
# Passo do Webrat | |
Quando /^peço a (alteração|exclusão) do (.*) que o\(a\) (.*) é "([^\"]*)"$/ do |acao, classe, variavel, valor| | |
classe = classe.gsub(/\s/, '_') | |
id = unless variavel == "id" then | |
classe.camelize.constantize.send("find_by_#{variavel}!", "#{valor}").id.to_s | |
else | |
valor | |
end | |
within("tr[id=#{classe}_#{id}]") do | |
case acao | |
when "verificação de permissões" | |
click_link("Permissões") | |
when "alteração" | |
click_link("Alterar") | |
when "exclusão" | |
click_link("Excluir") | |
end | |
end | |
end |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment