# frozen_string_literal: true require 'test_helper' class DeployHiddenServiceTest < ActiveSupport::TestCase setup do @site = create :site @deploy_hidden = @site.deploys.build type: 'DeployHiddenService' end teardown do @site&.destroy end test 'el hostname es válido' do assert_not @deploy_hidden.update(hostname: ' ') assert_not @deploy_hidden.update(hostname: 'custom.domain.root.') assert_not @deploy_hidden.update(hostname: 'custom.domain') assert @deploy_hidden.update(hostname: "#{@deploy_hidden.send(:random_base32, 56)}.onion") end test 'los hostnames pueden ser temporales' do assert @deploy_hidden.hostname.start_with? 'temporary' end test 'el hostname tiene que ser único' do assert @deploy_hidden.save assert_not @site.deploys.create(type: 'DeployHiddenService', hostname: @deploy_hidden.hostname).valid? end test 'se puede deployear' do assert @site.deploy_local.deploy assert @deploy_hidden.deploy assert File.symlink?(@deploy_hidden.destination) end end