|
34 | 34 | include Redmine::I18n
|
35 | 35 | include PDFExportSpecUtils
|
36 | 36 | let(:type) do
|
37 |
| - create(:type_bug, custom_fields: [cf_long_text, cf_disabled_in_project, cf_global_bool]) |
| 37 | + create(:type_bug, custom_fields: [cf_long_text, cf_empty_long_text, cf_disabled_in_project, cf_global_bool]) |
38 | 38 | end
|
39 | 39 | let(:parent_project) do
|
40 | 40 | create(:project, name: "Parent project")
|
|
65 | 65 | project_custom_field_bool.id => true,
|
66 | 66 | project_custom_field_long_text.id => "foo"
|
67 | 67 | },
|
68 |
| - work_package_custom_fields: [cf_long_text, cf_disabled_in_project, cf_global_bool], |
69 |
| - work_package_custom_field_ids: [cf_long_text.id, cf_global_bool.id]) # cf_disabled_in_project.id is disabled |
| 68 | + work_package_custom_fields: [cf_long_text, cf_empty_long_text, cf_disabled_in_project, cf_global_bool], |
| 69 | + |
| 70 | + # cf_disabled_in_project.id not included == disabled |
| 71 | + work_package_custom_field_ids: [cf_long_text.id, cf_empty_long_text.id, cf_global_bool.id]) |
70 | 72 | end
|
71 | 73 | let(:forbidden_project) do
|
72 | 74 | create(:project,
|
|
78 | 80 | status_code: "on_track",
|
79 | 81 | active: true,
|
80 | 82 | parent: parent_project,
|
81 |
| - work_package_custom_fields: [cf_long_text, cf_disabled_in_project, cf_global_bool], |
82 |
| - work_package_custom_field_ids: [cf_long_text.id, cf_global_bool.id]) # cf_disabled_in_project.id is disabled |
| 83 | + work_package_custom_fields: [cf_long_text, cf_empty_long_text, cf_disabled_in_project, cf_global_bool], |
| 84 | + |
| 85 | + # cf_disabled_in_project.id not included == disabled |
| 86 | + work_package_custom_field_ids: [cf_long_text.id, cf_empty_long_text.id, cf_global_bool.id]) |
83 | 87 | end
|
84 | 88 | let(:user) do
|
85 | 89 | create(:user,
|
|
97 | 101 | let(:image_attachment) { Attachment.new author: user, file: File.open(image_path) }
|
98 | 102 | let(:attachments) { [image_attachment] }
|
99 | 103 | let(:cf_long_text_description) { "**foo** *faa*" }
|
| 104 | + let(:cf_empty_long_text_description) { "" } |
100 | 105 | let(:cf_long_text) do
|
101 |
| - create(:issue_custom_field, :text, |
102 |
| - name: "Work Package Custom Field Long Text") |
| 106 | + create(:issue_custom_field, :text, name: "Work Package Custom Field Long Text") |
| 107 | + end |
| 108 | + let(:cf_empty_long_text) do |
| 109 | + create(:issue_custom_field, :text, name: "Empty Work Package Custom Field Long Text") |
103 | 110 | end
|
104 | 111 | let!(:cf_disabled_in_project) do
|
105 | 112 | # NOT enabled by project.work_package_custom_field_ids => NOT in PDF
|
|
157 | 164 | description:,
|
158 | 165 | custom_values: {
|
159 | 166 | cf_long_text.id => cf_long_text_description,
|
| 167 | + cf_empty_long_text.id => cf_empty_long_text_description, |
160 | 168 | cf_disabled_in_project.id => "6.25",
|
161 | 169 | cf_global_bool.id => true
|
162 | 170 | }).tap do |wp|
|
|
219 | 227 | "Date", "05/30/2024 - 03/13/2025",
|
220 | 228 | "Other",
|
221 | 229 | "Work Package Custom Field Boolean", "Yes",
|
| 230 | + "Empty Work Package Custom Field Long Text", |
222 | 231 | "Work Package Custom Field Long Text", "foo faa",
|
223 | 232 | "Costs",
|
224 | 233 | "Spent units", "Labor costs", "Unit costs", "Overall costs", "Budget"
|
@@ -439,9 +448,10 @@ def get_column_value(column_name)
|
439 | 448 | end,
|
440 | 449 | "Custom field boolean", I18n.t(:general_text_Yes),
|
441 | 450 | "Custom field rich text", "[#{I18n.t('export.macro.rich_text_unsupported')}]",
|
442 |
| - "Custom field hidden", |
| 451 | + |
443 | 452 | "1", export_time_formatted, project.name,
|
444 | 453 |
|
| 454 | + "Custom field hidden", |
445 | 455 | "No replacement of:",
|
446 | 456 | "projectValue:1:status",
|
447 | 457 | "projectLabel:status",
|
|
0 commit comments