se pueden eliminar sitios
This commit is contained in:
parent
1c18064a24
commit
afb68bfcbd
3 changed files with 14 additions and 1 deletions
|
@ -17,6 +17,8 @@ class Site < ApplicationRecord
|
|||
|
||||
# Clonar el directorio de esqueleto antes de crear el sitio
|
||||
before_create :clone_skel!
|
||||
# Elimina el directorio al destruir un sitio
|
||||
before_destroy :remove_directories!
|
||||
# Carga el sitio Jekyll una vez que se inicializa el modelo o después
|
||||
# de crearlo
|
||||
after_initialize :load_jekyll!
|
||||
|
@ -363,4 +365,8 @@ class Site < ApplicationRecord
|
|||
@jekyll ||= Site.load_jekyll(Dir.pwd)
|
||||
end
|
||||
end
|
||||
|
||||
def remove_directories!
|
||||
FileUtils.rm_rf path
|
||||
end
|
||||
end
|
||||
|
|
|
@ -2,6 +2,6 @@
|
|||
|
||||
FactoryBot.define do
|
||||
factory :site do
|
||||
name { SecureRandom.hex }
|
||||
name { "test-#{SecureRandom.hex}" }
|
||||
end
|
||||
end
|
||||
|
|
|
@ -10,6 +10,13 @@ class SiteTest < ActiveSupport::TestCase
|
|||
# TODO: Mover a la validación del sitio o hacer algo similar
|
||||
assert File.directory?(site.path)
|
||||
assert File.directory?(File.join(site.path, '.git'))
|
||||
assert site.destroy
|
||||
end
|
||||
|
||||
test 'al destruir un sitio se eliminan los archivos' do
|
||||
site = create :site
|
||||
assert site.destroy
|
||||
assert !File.directory?(site.path)
|
||||
end
|
||||
|
||||
test 'se puede leer un sitio' do
|
||||
|
|
Loading…
Reference in a new issue