validar el nombre del sitio

This commit is contained in:
f 2019-07-12 16:11:07 -03:00
parent af68d93a6c
commit 5d4c797132
No known key found for this signature in database
GPG key ID: 2AE5A13E321F953D
2 changed files with 32 additions and 2 deletions

View file

@ -366,6 +366,7 @@ class Site < ApplicationRecord
end end
end end
# Elimina el directorio del sitio
def remove_directories! def remove_directories!
FileUtils.rm_rf path FileUtils.rm_rf path
end end

View file

@ -3,6 +3,11 @@
require 'test_helper' require 'test_helper'
class SiteTest < ActiveSupport::TestCase class SiteTest < ActiveSupport::TestCase
# Asegurarse que el sitio se destruye al terminar de usarlo
teardown do
@site&.destroy
end
test 'se puede crear un sitio' do test 'se puede crear un sitio' do
site = create :site site = create :site
@ -14,12 +19,36 @@ class SiteTest < ActiveSupport::TestCase
end end
test 'el nombre tiene que ser único' do test 'el nombre tiene que ser único' do
site = create :site @site = create :site
site2 = build :site, name: site.name site2 = build :site, name: @site.name
assert_not site2.valid? assert_not site2.valid?
end end
test 'el nombre del sitio puede contener subdominios' do
site = build :site, name: 'hola.chau'
assert site.valid?
end
test 'el nombre del sitio no puede terminar con punto' do
site = build :site, name: 'hola.chau.'
assert_not site.valid?
end
test 'el nombre del sitio no puede contener wildcard' do
site = build :site, name: '*.chau'
assert_not site.valid?
end
test 'el nombre del sitio solo tiene letras, numeros y guiones' do
site = build :site, name: 'A_Z!'
assert_not site.valid?
end
test 'al destruir un sitio se eliminan los archivos' do test 'al destruir un sitio se eliminan los archivos' do
site = create :site site = create :site
assert site.destroy assert site.destroy