From ea8a0b36805314b4d0faee62e27fad4f93752b8a Mon Sep 17 00:00:00 2001 From: "karel.picman@lbcfree.net" Date: Fri, 19 Feb 2021 10:37:51 +0100 Subject: [PATCH] #1207 unit tests --- Gemfile | 4 ++++ lib/redmine_dmsf/patches/project_patch.rb | 4 ---- test/functional/dmsf_controller_test.rb | 16 ++++++++++++++++ test/test_case.rb | 3 +++ test/unit/project_patch_test.rb | 12 ++++++++++++ 5 files changed, 35 insertions(+), 4 deletions(-) diff --git a/Gemfile b/Gemfile index ef682c58..d367821b 100644 --- a/Gemfile +++ b/Gemfile @@ -31,6 +31,10 @@ source 'https://rubygems.org' do unless %w(easyproject easy_gantt).any? { |plugin| Dir.exist?(File.expand_path("../../#{plugin}", __FILE__)) } gem 'redmine_extensions', '~> 0.3.9' gem 'rubyzip', '>= 1.1.3' + + group :test do + gem 'rails-controller-testing' + end end # Dav4Rack diff --git a/lib/redmine_dmsf/patches/project_patch.rb b/lib/redmine_dmsf/patches/project_patch.rb index 54db19af..4792368b 100644 --- a/lib/redmine_dmsf/patches/project_patch.rb +++ b/lib/redmine_dmsf/patches/project_patch.rb @@ -124,10 +124,6 @@ module RedmineDmsf false end - # def deleted - # 0 - # end - end end diff --git a/test/functional/dmsf_controller_test.rb b/test/functional/dmsf_controller_test.rb index 3227e63f..f171db64 100644 --- a/test/functional/dmsf_controller_test.rb +++ b/test/functional/dmsf_controller_test.rb @@ -346,4 +346,20 @@ class DmsfControllerTest < RedmineDmsf::Test::TestCase assert_redirected_to dmsf_folder_path(id: @project1, folder_id: @folder1) end + def test_show_with_sub_projects + Setting.clear_cache + Setting.plugin_redmine_dmsf['dmsf_projects_as_subfolders'] = '1' + get :show, params: { id: @project1.id } + assert_response :success + # @project3 is as a sub-folder + assert_select "tr##{@project3.id}pspan", count: 1 + end + + def test_show_without_sub_projects + get :show, params: { id: @project1.id } + assert_response :success + # @project3 is not as a sub-folder + assert_select "tr##{@project3.id}pspan", count: 0 + end + end \ No newline at end of file diff --git a/test/test_case.rb b/test/test_case.rb index 08f4385e..46e177ae 100644 --- a/test/test_case.rb +++ b/test/test_case.rb @@ -50,10 +50,12 @@ module RedmineDmsf @someone = User.find_by(login: 'someone') @project1 = Project.find 1 Setting.plugin_redmine_dmsf['dmsf_webdav_use_project_names'] = '1' + Setting.plugin_redmine_dmsf['dmsf_projects_as_subfolders'] = nil @project1_name = RedmineDmsf::Webdav::ProjectResource.create_project_name(@project1) @project1_uri = Addressable::URI.escape(@project1_name) @project2 = Project.find 2 @project3 = Project.find 3 + @project4 = Project.find 4 [@project1, @project2, @project3].each do |project| project.enable_module! :dmsf project.enable_module! :issue_tracking @@ -88,6 +90,7 @@ module RedmineDmsf Setting.plugin_redmine_dmsf['dmsf_webdav_strategy'] = 'WEBDAV_READ_WRITE' Setting.plugin_redmine_dmsf['dmsf_webdav_use_project_names'] = nil Setting.plugin_redmine_dmsf['dmsf_storage_directory'] = File.join(%w(files dmsf)) + Setting.plugin_redmine_dmsf['dmsf_projects_as_subfolders'] = nil Setting.text_formatting = 'Textile' FileUtils.cp_r File.join(File.expand_path('../fixtures/files', __FILE__), '.'), DmsfFile.storage_path User.current = nil diff --git a/test/unit/project_patch_test.rb b/test/unit/project_patch_test.rb index 226e966c..6aadd657 100644 --- a/test/unit/project_patch_test.rb +++ b/test/unit/project_patch_test.rb @@ -90,4 +90,16 @@ class ProjectPatchTest < RedmineDmsf::Test::UnitTest assert_equal 0, @project3.url_links.visible.all.size end + def test_dmsf_avaliable + # @project1 + # L @project3 + assert @project1.dmsf_available? + assert @project3.dmsf_available? + @project1.disable_module! :dmsf + assert @project3.dmsf_available? + @project3.disable_module! :dmsf + @project3.reload + assert !@project3.dmsf_available? + end + end \ No newline at end of file