diff --git a/app/views/dmsf_files/show.api.rsb b/app/views/dmsf_files/show.api.rsb
index 99760e9a..7a5f5407 100644
--- a/app/views/dmsf_files/show.api.rsb
+++ b/app/views/dmsf_files/show.api.rsb
@@ -1,5 +1,6 @@
api.dmsf_file do
api.id @file.id
+ api.title @file.title
api.name @file.name
api.project_id @file.project_id
api.dmsf_folder_id @file.dmsf_folder_id if @file.dmsf_folder_id
diff --git a/extra/api/api_client.rb b/extra/api/api_client.rb
index 2bf3c7c4..13521ca9 100644
--- a/extra/api/api_client.rb
+++ b/extra/api/api_client.rb
@@ -36,6 +36,7 @@ FILE_ID = 41532
file = DmsfFile.find FILE_ID
if file
puts file.id
+ puts file.title
puts file.name
puts file.version
puts file.project_id
diff --git a/extra/api/file.xml b/extra/api/file.xml
index eec8bb38..46c08f21 100644
--- a/extra/api/file.xml
+++ b/extra/api/file.xml
@@ -3,7 +3,7 @@
6118
cat.gif
- cat.gif
+ cat
REST API
From API
diff --git a/test/integration/rest_api/dmsf_file_api_test.rb b/test/integration/rest_api/dmsf_file_api_test.rb
index dcd94053..01187e93 100644
--- a/test/integration/rest_api/dmsf_file_api_test.rb
+++ b/test/integration/rest_api/dmsf_file_api_test.rb
@@ -33,6 +33,19 @@ class DmsfFileApiTest < RedmineDmsf::Test::IntegrationTest
@role = Role.find_by(name: 'Manager')
@project1 = Project.find 1
@project1.enable_module! :dmsf
+ @dmsf_storage_directory = Setting.plugin_redmine_dmsf['dmsf_storage_directory']
+ Setting.plugin_redmine_dmsf['dmsf_storage_directory'] = File.expand_path('../../../fixtures/dmsf', __FILE__)
+ FileUtils.cp_r File.expand_path('../../../fixtures/files', __FILE__), DmsfFile.storage_path
+ end
+
+ def teardown
+ # Delete our tmp folder
+ begin
+ FileUtils.rm_rf DmsfFile.storage_path
+ rescue Exception => e
+ error e.message
+ end
+ Setting.plugin_redmine_dmsf['dmsf_storage_directory'] = @dmsf_storage_directory
end
def test_truth
@@ -53,6 +66,7 @@ class DmsfFileApiTest < RedmineDmsf::Test::IntegrationTest
#
#
# 1
+ # test.txt
# test.txt
# 1
# 1.0
@@ -62,17 +76,17 @@ class DmsfFileApiTest < RedmineDmsf::Test::IntegrationTest
# Some file :-)
# http://www.example.com/dmsf/files/1/download
#
- assert_select 'dmsf_file > id', :text => @file1.id.to_s
- assert_select 'dmsf_file > name', :text => @file1.name
- assert_select 'dmsf_file > project_id', :text => @file1.project_id.to_s
- assert_select 'dmsf_file > version', :text => "#{@file1.last_revision.version}"
- assert_select 'dmsf_file > mime_type', :text => @file1.last_revision.mime_type
- assert_select 'dmsf_file > digest', :text => @file1.last_revision.digest
- assert_select 'dmsf_file > size', :text => @file1.last_revision.size.to_s
- assert_select 'dmsf_file > description', :text => @file1.last_revision.description
- assert_select 'dmsf_file > content_url', :text => "http://www.example.com/dmsf/files/#{@file1.id}/download"
+ assert_select 'dmsf_file > id', text: @file1.id.to_s
+ assert_select 'dmsf_file > title', text: @file1.title
+ assert_select 'dmsf_file > name', text: @file1.name
+ assert_select 'dmsf_file > project_id', text: @file1.project_id.to_s
+ assert_select 'dmsf_file > version', text: @file1.last_revision.version
+ assert_select 'dmsf_file > mime_type', text: @file1.last_revision.mime_type
+ assert_select 'dmsf_file > digest', text: @file1.last_revision.digest
+ assert_select 'dmsf_file > size', text: @file1.last_revision.size.to_s
+ assert_select 'dmsf_file > description', text: @file1.last_revision.description
+ assert_select 'dmsf_file > content_url', text: "http://www.example.com/dmsf/files/#{@file1.id}/download"
#curl -v -H "Content-Type: application/octet-stream" -X GET -u ${1}:${2} http://localhost:3000/dmsf/files/41532/download > file.txt
- Setting.plugin_redmine_dmsf['dmsf_storage_directory'] = File.expand_path '../../../fixtures/files', __FILE__
get "/dmsf/files/#{@file1.id}/download.xml?key=#{token.value}"
assert_response :success
assert_equal '123', @response.body
@@ -80,8 +94,6 @@ class DmsfFileApiTest < RedmineDmsf::Test::IntegrationTest
def test_upload_document
timestamp = DateTime.current.strftime('%y%m%d%H%M')
- Setting.plugin_redmine_dmsf['dmsf_storage_directory'] = DmsfHelper.temp_dir.join("dmsf_test-#{timestamp}").to_s
- FileUtils.mkdir_p(Setting.plugin_redmine_dmsf['dmsf_storage_directory'])
@role.add_permission! :file_manipulation
token = Token.create!(:user => @jsmith, :action => 'api')
#curl --data-binary "@cat.gif" -H "Content-Type: application/octet-stream" -X POST -u ${1}:${2} http://localhost:3000/projects/12/dmsf/upload.xml?filename=cat.gif
@@ -123,11 +135,6 @@ class DmsfFileApiTest < RedmineDmsf::Test::IntegrationTest
assert_response :success
revision = DmsfFileRevision.order(:created_at).last
assert revision && revision.size > 0
- begin
- FileUtils.rm_rf Setting.plugin_redmine_dmsf['dmsf_storage_directory']
- rescue Exception => e
- error e.message
- end
end
def test_delete_file