Skip to content
Snippets Groups Projects
Unverified Commit 71c3852e authored by Sébastien Gaya's avatar Sébastien Gaya
Browse files

tests server namespace

parent 85cef03a
No related branches found
No related tags found
No related merge requests found
...@@ -38,7 +38,7 @@ ...@@ -38,7 +38,7 @@
<% content_for :action_bar_right do %> <% content_for :action_bar_right do %>
<%= link_to t('resave'), <%= link_to t('resave'),
server_resave_block_path(@template), resave_server_block_path(@template),
method: :post, method: :post,
class: button_classes %> class: button_classes %>
<% end %> <% end %>
...@@ -2,12 +2,10 @@ namespace :server do ...@@ -2,12 +2,10 @@ namespace :server do
resources :universities resources :universities
resources :languages resources :languages
resources :websites, only: :index do resources :websites, only: :index do
member do post :refresh, on: :member
post :refresh end
end resources :blocks, only: [:index, :show] do
post :resave, on: :member
end end
get 'blocks' => 'blocks#index', as: :blocks
get 'blocks/:id' => 'blocks#show', as: :block
post 'blocks/:id' => 'blocks#resave', as: :resave_block
root to: 'dashboard#index' root to: 'dashboard#index'
end end
require "test_helper"
class Server::BlocksControllerTest < ActionDispatch::IntegrationTest
include ServerSetup
def test_index
get server_blocks_path
assert_response(:success)
end
def test_show
get(server_block_path("chapter"))
assert_response(:success)
end
def test_resave
post(resave_server_block_path("chapter"))
assert_redirected_to(server_block_path("chapter"))
end
end
require "test_helper"
class Server::DashboardControllerTest < ActionDispatch::IntegrationTest
include ServerSetup
def test_index
get server_root_path
assert_response(:success)
end
end
require "test_helper"
class Server::LanguagesControllerTest < ActionDispatch::IntegrationTest
include ServerSetup
def test_index
get server_languages_path
assert_response(:success)
end
def test_show
get server_language_path(languages(:fr))
assert_response(:success)
end
def test_new
get new_server_language_path
assert_response(:success)
end
def test_edit
get edit_server_language_path(languages(:fr))
assert_response(:success)
end
def test_create
assert_difference("Language.count") do
post server_languages_path, params: {
language: {
name: "Español",
iso_code: "es"
}
}
language = Language.find_by(iso_code: "es")
assert_redirected_to(server_language_path(language))
end
end
def test_create_invalid
assert_no_difference("Language.count") do
post server_languages_path, params: {
language: {
name: "Français",
iso_code: "fr"
}
}
assert_response(:unprocessable_entity)
end
end
def test_update
language = languages(:fr)
assert(language.summernote_locale.blank?)
patch server_language_path(language), params: { language: { summernote_locale: "fr-FR" } }
assert_redirected_to(server_language_path(language))
assert_equal "fr-FR", language.reload.summernote_locale
end
def test_update_invalid
language = languages(:fr)
patch server_language_path(language), params: { language: { iso_code: "" } }
assert_response(:unprocessable_entity)
end
def test_destroy
assert_difference("Language.count", -1) do
delete server_language_path(languages(:it))
assert_redirected_to(server_languages_path)
end
end
end
require "test_helper"
class Server::UniversitiesControllerTest < ActionDispatch::IntegrationTest
include ServerSetup
def test_index
get server_universities_path
assert_response(:success)
end
def test_show
get server_university_path(universities(:default_university))
assert_response(:success)
end
def test_new
get new_server_university_path
assert_response(:success)
end
def test_edit
get edit_server_university_path(universities(:default_university))
assert_response(:success)
end
def test_create
assert_difference("University.count") do
post server_universities_path, params: {
university: {
name: "Nouvelle université",
identifier: "my-second-university",
sms_sender_name: "unitest2"
}
}
university = University.find_by(identifier: "my-second-university")
assert_redirected_to(server_university_path(university))
end
end
def test_create_invalid
assert_no_difference("University.count") do
post server_universities_path, params: {
university: {
name: "Nouvelle université",
sms_sender_name: "unitest2"
}
}
assert_response(:unprocessable_entity)
end
end
def test_update
university = universities(:default_university)
assert_equal "Université de test", university.name
patch server_university_path(university), params: { university: { name: "Mon université" } }
assert_redirected_to(server_university_path(university))
assert_equal "Mon université", university.reload.name
end
def test_update_invalid
university = universities(:default_university)
patch server_university_path(university), params: { university: { identifier: "" } }
assert_response(:unprocessable_entity)
end
def test_destroy
assert_difference("University.count", -1) do
# TODO: Replace by default university with correct dependent: :destroy associations
delete server_university_path(universities(:stale_university))
assert_redirected_to(server_universities_path)
end
end
end
require "test_helper"
class Server::WebsitesControllerTest < ActionDispatch::IntegrationTest
include ServerSetup
def test_index
get server_websites_path
assert_response(:success)
end
def test_refresh
post(refresh_server_website_path(communication_websites(:website_with_github)))
assert_redirected_to(server_websites_path)
end
end
...@@ -16,3 +16,7 @@ en: ...@@ -16,3 +16,7 @@ en:
fr: fr:
name: Français name: Français
iso_code: fr iso_code: fr
it:
name: Italiano
iso_code: it
...@@ -29,3 +29,9 @@ ...@@ -29,3 +29,9 @@
default_university: default_university:
name: Université de test name: Université de test
identifier: my-university identifier: my-university
sms_sender_name: "unitest"
stale_university:
name: Université obsolète
identifier: stale-university
sms_sender_name: "unistale"
\ No newline at end of file
module ServerSetup
def setup
sign_in_with_2fa(server_admin)
end
end
\ No newline at end of file
...@@ -15,6 +15,7 @@ class ActiveSupport::TestCase ...@@ -15,6 +15,7 @@ class ActiveSupport::TestCase
setup do setup do
ENV.update(ENV.to_h.merge('APPLICATION_ENV' => 'test')) ENV.update(ENV.to_h.merge('APPLICATION_ENV' => 'test'))
host! "my-university#{University.test_domain}"
end end
def alumnus def alumnus
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment