thinreports 0.7.6 → 0.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.gitignore +3 -5
- data/.travis.yml +8 -4
- data/CHANGELOG.md +220 -0
- data/Gemfile +2 -9
- data/MIT-LICENSE +1 -1
- data/README.md +286 -0
- data/Rakefile +38 -8
- data/examples/character_spacing/character_spacing.rb +8 -0
- data/examples/character_spacing/character_spacing.tlf +1 -0
- data/examples/dynamic_image/dynamic_image.rb +31 -0
- data/examples/dynamic_image/dynamic_image.tlf +1 -0
- data/examples/dynamic_style/dynamic_style.rb +150 -0
- data/examples/dynamic_style/dynamic_style.tlf +1 -0
- data/examples/dynamic_style/dynamic_style_in_list.tlf +1 -0
- data/examples/eudc/eudc.rb +20 -0
- data/examples/eudc/eudc.tlf +1 -0
- data/examples/helper.rb +50 -0
- data/examples/hidden_shapes/hidden_shapes.rb +9 -0
- data/examples/hidden_shapes/hidden_shapes.tlf +1 -0
- data/examples/list_events/list_events.rb +59 -0
- data/examples/list_events/list_events_0_7_7.tlf +1 -0
- data/examples/list_events/list_events_0_8.tlf +1 -0
- data/examples/list_manual_generation/list_manual_generation.rb +22 -0
- data/examples/list_manual_generation/list_manual_generation.tlf +1 -0
- data/examples/list_page_number/list_page_number.rb +17 -0
- data/examples/list_page_number/list_page_number.tlf +1 -0
- data/examples/page_number/page_number.rb +33 -0
- data/examples/page_number/page_number.tlf +1 -0
- data/examples/password_setting/password_setting.rb +10 -0
- data/examples/password_setting/password_setting.tlf +1 -0
- data/examples/report_callbacks/report_callbacks.rb +31 -0
- data/examples/report_callbacks/report_callbacks.tlf +1 -0
- data/examples/single_line_tblock/single_line_tblock.rb +13 -0
- data/examples/single_line_tblock/single_line_tblock.tlf +1 -0
- data/examples/tblock_overflow/tblock_overflow.rb +20 -0
- data/examples/tblock_overflow/tblock_overflow.tlf +1 -0
- data/examples/tblock_styles/font_size.tlf +1 -0
- data/examples/tblock_styles/tblock_styles.rb +43 -0
- data/examples/tblock_styles/tblock_styles.tlf +1 -0
- data/examples/text_align/text_align.rb +8 -0
- data/examples/text_align/text_align.tlf +1 -0
- data/examples/typeB_page_size/B4_ISO.tlf +1 -0
- data/examples/typeB_page_size/B4_JIS.tlf +1 -0
- data/examples/typeB_page_size/typeB_page_size.rb +17 -0
- data/examples/word_wrap/word_wrap.rb +26 -0
- data/examples/word_wrap/word_wrap.tlf +1 -0
- data/lib/thinreports/config.rb +30 -10
- data/lib/thinreports/core/errors.rb +23 -20
- data/lib/thinreports/core/events.rb +18 -19
- data/lib/thinreports/core/format/base.rb +20 -25
- data/lib/thinreports/core/format/builder.rb +19 -27
- data/lib/thinreports/core/shape/base/interface.rb +15 -15
- data/lib/thinreports/core/shape/base/internal.rb +15 -20
- data/lib/thinreports/core/shape/base.rb +4 -5
- data/lib/thinreports/core/shape/basic/block_format.rb +3 -4
- data/lib/thinreports/core/shape/basic/block_interface.rb +9 -4
- data/lib/thinreports/core/shape/basic/block_internal.rb +9 -10
- data/lib/thinreports/core/shape/basic/format.rb +11 -10
- data/lib/thinreports/core/shape/basic/interface.rb +3 -3
- data/lib/thinreports/core/shape/basic/internal.rb +9 -6
- data/lib/thinreports/core/shape/basic.rb +1 -1
- data/lib/thinreports/core/shape/image_block/format.rb +5 -6
- data/lib/thinreports/core/shape/image_block/interface.rb +9 -7
- data/lib/thinreports/core/shape/image_block/internal.rb +5 -6
- data/lib/thinreports/core/shape/image_block.rb +1 -1
- data/lib/thinreports/core/shape/list/configuration.rb +37 -16
- data/lib/thinreports/core/shape/list/events.rb +11 -11
- data/lib/thinreports/core/shape/list/format.rb +27 -28
- data/lib/thinreports/core/shape/list/manager.rb +135 -95
- data/lib/thinreports/core/shape/list/page.rb +57 -51
- data/lib/thinreports/core/shape/list/page_state.rb +19 -17
- data/lib/thinreports/core/shape/list/section_format.rb +14 -15
- data/lib/thinreports/core/shape/list/section_interface.rb +15 -16
- data/lib/thinreports/core/shape/list/section_internal.rb +7 -8
- data/lib/thinreports/core/shape/list/store.rb +10 -11
- data/lib/thinreports/core/shape/list.rb +1 -1
- data/lib/thinreports/core/shape/manager/format.rb +10 -11
- data/lib/thinreports/core/shape/manager/internal.rb +22 -21
- data/lib/thinreports/core/shape/manager/target.rb +63 -34
- data/lib/thinreports/core/shape/manager.rb +1 -1
- data/lib/thinreports/core/shape/page_number/format.rb +25 -0
- data/lib/thinreports/core/shape/page_number/interface.rb +27 -0
- data/lib/thinreports/core/shape/page_number/internal.rb +57 -0
- data/lib/thinreports/core/shape/page_number.rb +15 -0
- data/lib/thinreports/core/shape/style/base.rb +29 -29
- data/lib/thinreports/core/shape/style/basic.rb +1 -1
- data/lib/thinreports/core/shape/style/graphic.rb +10 -25
- data/lib/thinreports/core/shape/style/text.rb +41 -31
- data/lib/thinreports/core/shape/style.rb +1 -1
- data/lib/thinreports/core/shape/text/format.rb +8 -9
- data/lib/thinreports/core/shape/text/interface.rb +2 -2
- data/lib/thinreports/core/shape/text/internal.rb +6 -7
- data/lib/thinreports/core/shape/text.rb +1 -1
- data/lib/thinreports/core/shape/text_block/format.rb +17 -17
- data/lib/thinreports/core/shape/text_block/formatter/basic.rb +13 -12
- data/lib/thinreports/core/shape/text_block/formatter/datetime.rb +8 -9
- data/lib/thinreports/core/shape/text_block/formatter/number.rb +11 -12
- data/lib/thinreports/core/shape/text_block/formatter/padding.rb +9 -32
- data/lib/thinreports/core/shape/text_block/formatter.rb +7 -8
- data/lib/thinreports/core/shape/text_block/interface.rb +2 -2
- data/lib/thinreports/core/shape/text_block/internal.rb +19 -20
- data/lib/thinreports/core/shape/text_block.rb +1 -1
- data/lib/thinreports/core/shape.rb +11 -13
- data/lib/thinreports/core/utils.rb +33 -32
- data/lib/thinreports/generator/base.rb +15 -24
- data/lib/thinreports/generator/configuration.rb +10 -9
- data/lib/thinreports/generator/pdf/configuration.rb +11 -6
- data/lib/thinreports/generator/pdf/document/draw_shape.rb +41 -32
- data/lib/thinreports/generator/pdf/document/font.rb +53 -44
- data/lib/thinreports/generator/pdf/document/graphics/attributes.rb +34 -25
- data/lib/thinreports/generator/pdf/document/graphics/basic.rb +25 -25
- data/lib/thinreports/generator/pdf/document/graphics/image.rb +15 -15
- data/lib/thinreports/generator/pdf/document/graphics/text.rb +43 -41
- data/lib/thinreports/generator/pdf/document/graphics.rb +8 -9
- data/lib/thinreports/generator/pdf/document/page.rb +37 -23
- data/lib/thinreports/generator/pdf/document/parse_color.rb +9 -10
- data/lib/thinreports/generator/pdf/document/parse_svg.rb +14 -15
- data/lib/thinreports/generator/pdf/document.rb +28 -28
- data/lib/thinreports/generator/pdf/drawer/base.rb +16 -22
- data/lib/thinreports/generator/pdf/drawer/list.rb +39 -21
- data/lib/thinreports/generator/pdf/drawer/list_section.rb +17 -18
- data/lib/thinreports/generator/pdf/drawer/page.rb +37 -26
- data/lib/thinreports/generator/pdf/prawn_ext.rb +18 -17
- data/lib/thinreports/generator/pdf.rb +28 -31
- data/lib/thinreports/generator.rb +6 -8
- data/lib/thinreports/layout/base.rb +24 -36
- data/lib/thinreports/layout/configuration.rb +11 -9
- data/lib/thinreports/layout/format.rb +26 -31
- data/lib/thinreports/layout/version.rb +8 -9
- data/lib/thinreports/layout.rb +2 -2
- data/lib/thinreports/report/base.rb +117 -109
- data/lib/thinreports/report/events.rb +5 -5
- data/lib/thinreports/report/internal.rb +48 -38
- data/lib/thinreports/{core → report}/page.rb +42 -32
- data/lib/thinreports/report.rb +10 -14
- data/lib/thinreports/version.rb +2 -3
- data/lib/thinreports.rb +14 -2
- data/test/data/font.ttf +0 -0
- data/test/data/layout_block.tlf +1 -0
- data/test/data/layout_list.tlf +1 -0
- data/test/data/layout_list_noheader.tlf +1 -0
- data/test/data/layout_text1.tlf +1 -0
- data/test/data/layout_text2.tlf +1 -0
- data/test/test_helper.rb +74 -0
- data/test/tmp/.gitkeep +0 -0
- data/test/unit/core/format/test_base.rb +14 -14
- data/test/unit/core/format/test_builder.rb +20 -25
- data/test/unit/core/shape/base/test_internal.rb +34 -37
- data/test/unit/core/shape/basic/test_basic_format.rb +4 -4
- data/test/unit/core/shape/basic/test_basic_interface.rb +15 -13
- data/test/unit/core/shape/basic/test_basic_internal.rb +19 -16
- data/test/unit/core/shape/basic/test_format.rb +4 -4
- data/test/unit/core/shape/basic/test_interface.rb +36 -46
- data/test/unit/core/shape/basic/test_internal.rb +29 -18
- data/test/unit/core/shape/image_block/test_format.rb +5 -5
- data/test/unit/core/shape/image_block/test_interface.rb +17 -16
- data/test/unit/core/shape/image_block/test_internal.rb +19 -16
- data/test/unit/core/shape/list/test_configuration.rb +50 -33
- data/test/unit/core/shape/list/test_events.rb +7 -7
- data/test/unit/core/shape/list/test_format.rb +16 -18
- data/test/unit/core/shape/list/test_manager.rb +15 -5
- data/test/unit/core/shape/list/test_page.rb +80 -22
- data/test/unit/core/shape/list/test_page_state.rb +13 -13
- data/test/unit/core/shape/list/test_section_format.rb +16 -17
- data/test/unit/core/shape/list/test_section_interface.rb +30 -22
- data/test/unit/core/shape/list/test_section_internal.rb +21 -19
- data/test/unit/core/shape/list/test_store.rb +7 -7
- data/test/unit/core/shape/manager/test_format.rb +11 -15
- data/test/unit/core/shape/manager/test_internal.rb +9 -9
- data/test/unit/core/shape/manager/test_target.rb +85 -57
- data/test/unit/core/shape/page_number/test_format.rb +73 -0
- data/test/unit/core/shape/page_number/test_interface.rb +33 -0
- data/test/unit/core/shape/page_number/test_internal.rb +81 -0
- data/test/unit/core/shape/styles/test_base.rb +9 -9
- data/test/unit/core/shape/styles/test_basic.rb +5 -5
- data/test/unit/core/shape/styles/test_graphic.rb +19 -33
- data/test/unit/core/shape/styles/test_text.rb +29 -7
- data/test/unit/core/shape/text/test_format.rb +6 -6
- data/test/unit/core/shape/text/test_internal.rb +11 -12
- data/test/unit/core/shape/text_block/formatter/test_basic.rb +16 -16
- data/test/unit/core/shape/text_block/formatter/test_datetime.rb +22 -20
- data/test/unit/core/shape/text_block/formatter/test_number.rb +34 -34
- data/test/unit/core/shape/text_block/formatter/test_padding.rb +44 -44
- data/test/unit/core/shape/text_block/test_format.rb +13 -8
- data/test/unit/core/shape/text_block/test_formatter.rb +17 -17
- data/test/unit/core/shape/text_block/test_interface.rb +37 -20
- data/test/unit/core/shape/text_block/test_internal.rb +38 -38
- data/test/unit/core/test_events.rb +10 -8
- data/test/unit/core/test_shape.rb +11 -7
- data/test/unit/core/test_utils.rb +68 -0
- data/test/unit/generator/pdf/document/graphics/test_attributes.rb +10 -4
- data/test/unit/generator/pdf/document/graphics/test_text.rb +60 -53
- data/test/unit/generator/pdf/document/test_draw_shape.rb +14 -6
- data/test/unit/generator/pdf/document/test_font.rb +79 -58
- data/test/unit/generator/pdf/document/test_graphics.rb +18 -19
- data/test/unit/generator/pdf/document/test_page.rb +68 -43
- data/test/unit/generator/pdf/document/test_parse_color.rb +5 -5
- data/test/unit/generator/pdf/test_configuration.rb +16 -9
- data/test/unit/generator/pdf/test_document.rb +8 -16
- data/test/unit/generator/test_base.rb +31 -42
- data/test/unit/generator/test_configuration.rb +6 -6
- data/test/unit/generator/test_pdf.rb +15 -21
- data/test/unit/layout/test_base.rb +34 -79
- data/test/unit/layout/test_configuration.rb +12 -37
- data/test/unit/layout/test_format.rb +36 -39
- data/test/unit/layout/test_version.rb +4 -4
- data/test/unit/report/test_base.rb +160 -192
- data/test/unit/report/test_events.rb +4 -4
- data/test/unit/report/test_internal.rb +102 -82
- data/test/unit/test_config.rb +31 -12
- data/test/unit/test_layout.rb +7 -7
- data/test/unit/test_report.rb +12 -24
- data/thinreports.gemspec +23 -26
- metadata +118 -181
- data/.yardopts +0 -1
- data/LICENSE +0 -1
- data/README.rdoc +0 -167
- data/doc/yardoc_templates/default/layout/html/footer.erb +0 -10
- data/lib/thinreports/core/ext/array.rb +0 -19
- data/lib/thinreports/core/ext/hash.rb +0 -19
- data/lib/thinreports/core/ext/object.rb +0 -25
- data/lib/thinreports/core/ext.rb +0 -5
- data/lib/thinreports/core/format.rb +0 -14
- data/lib/thinreports/core/ordered_hash.rb +0 -39
- data/lib/thinreports/core.rb +0 -20
- data/lib/thinreports/generator/pdf/drawer.rb +0 -16
- data/tasks/doc.rake +0 -13
- data/tasks/test.rake +0 -56
- data/test/benchmark/basic_estimate.tlf +0 -1
- data/test/benchmark/bench_basic_estimate.rb +0 -95
- data/test/case/character_spacing/character_spacing.rb +0 -7
- data/test/case/character_spacing/character_spacing.tlf +0 -1
- data/test/case/dynamic_image/dynamic_image.rb +0 -41
- data/test/case/dynamic_image/dynamic_image.tlf +0 -1
- data/test/case/dynamic_style/dynamic_style.rb +0 -154
- data/test/case/dynamic_style/dynamic_style.tlf +0 -1
- data/test/case/dynamic_style/dynamic_style_in_list.tlf +0 -1
- data/test/case/eudc/eudc.rb +0 -20
- data/test/case/eudc/eudc.tlf +0 -1
- data/test/case/helper.rb +0 -29
- data/test/case/hidden_shapes/hidden_shapes.rb +0 -13
- data/test/case/hidden_shapes/hidden_shapes.tlf +0 -1
- data/test/case/list_events/list_events.rb +0 -32
- data/test/case/list_events/list_events.tlf +0 -1
- data/test/case/list_header_inheriting/list_header_inheriting.rb +0 -17
- data/test/case/list_header_inheriting/list_header_inheriting.tlf +0 -1
- data/test/case/list_manual_generation/list_manual_generation.rb +0 -22
- data/test/case/list_manual_generation/list_manual_generation.tlf +0 -1
- data/test/case/single_line_tblock/single_line_tblock.rb +0 -15
- data/test/case/single_line_tblock/single_line_tblock.tlf +0 -1
- data/test/case/tblock_overflow/tblock_overflow.rb +0 -20
- data/test/case/tblock_overflow/tblock_overflow.tlf +0 -1
- data/test/case/tblock_styles/tblock_styles.rb +0 -27
- data/test/case/tblock_styles/tblock_styles.tlf +0 -1
- data/test/case/text_align/text_align.rb +0 -9
- data/test/case/text_align/text_align.tlf +0 -1
- data/test/unit/core/ext/array_spec.rb +0 -29
- data/test/unit/core/ext/hash_spec.rb +0 -29
- data/test/unit/core/ext/object_spec.rb +0 -30
- data/test/unit/core/ordered_hash_spec.rb +0 -51
- data/test/unit/core/shape/base/test_interface.rb +0 -52
- data/test/unit/core/utils_spec.rb +0 -56
- data/test/unit/data/basic_layout1.tlf +0 -1
- data/test/unit/data/basic_layout2.tlf +0 -1
- data/test/unit/data/basic_list_layout.tlf +0 -1
- data/test/unit/data/basic_list_noheader_layout.tlf +0 -1
- data/test/unit/helper.rb +0 -65
- /data/{test/case → examples}/dynamic_image/img200x100.png +0 -0
- /data/{test/case → examples}/dynamic_image/img50x50.png +0 -0
- /data/{test/case → examples}/dynamic_style/image.png +0 -0
- /data/{test/case → examples}/eudc/eudc.ttf +0 -0
- /data/{resources/fonts → fonts}/IPA_Font_License_Agreement_v1.0.txt +0 -0
- /data/{resources/fonts → fonts}/ipag.ttf +0 -0
- /data/{resources/fonts → fonts}/ipagp.ttf +0 -0
- /data/{resources/fonts → fonts}/ipam.ttf +0 -0
- /data/{resources/fonts → fonts}/ipamp.ttf +0 -0
|
@@ -1,121 +1,149 @@
|
|
|
1
1
|
# coding: utf-8
|
|
2
2
|
|
|
3
|
-
require '
|
|
3
|
+
require 'test_helper'
|
|
4
|
+
|
|
5
|
+
class Thinreports::Core::Shape::Manager::TestTarget < Minitest::Test
|
|
6
|
+
include Thinreports::TestHelper
|
|
4
7
|
|
|
5
|
-
class ThinReports::Core::Shape::Manager::TestTarget < MiniTest::Unit::TestCase
|
|
6
|
-
include ThinReports::TestHelpers
|
|
7
|
-
|
|
8
8
|
# Alias
|
|
9
|
-
Shape =
|
|
10
|
-
|
|
9
|
+
Shape = Thinreports::Core::Shape
|
|
10
|
+
|
|
11
11
|
class TestManager
|
|
12
12
|
include Shape::Manager::Target
|
|
13
|
-
|
|
13
|
+
|
|
14
14
|
attr_reader :layout, :report
|
|
15
|
-
|
|
15
|
+
|
|
16
16
|
def initialize(report, layout)
|
|
17
17
|
@report = report
|
|
18
18
|
@layout = layout
|
|
19
|
-
|
|
19
|
+
|
|
20
20
|
initialize_manager(layout.format) do |f|
|
|
21
21
|
Shape::Interface(self, f)
|
|
22
22
|
end
|
|
23
23
|
end
|
|
24
24
|
end
|
|
25
|
-
|
|
25
|
+
|
|
26
26
|
def create_shape_format(type, id)
|
|
27
27
|
Shape::Format(type).new('id' => id, 'type' => type)
|
|
28
28
|
end
|
|
29
|
-
|
|
29
|
+
|
|
30
30
|
def create_manager
|
|
31
|
-
report =
|
|
31
|
+
report = new_report('layout_text1.tlf')
|
|
32
32
|
layout = report.layout
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
layout.format.shapes[:
|
|
36
|
-
layout.format.shapes[:
|
|
37
|
-
layout.format.shapes[:
|
|
33
|
+
|
|
34
|
+
layout.format.shapes[:text_block1] = create_shape_format('s-tblock', 'text_block1')
|
|
35
|
+
layout.format.shapes[:text_block2] = create_shape_format('s-tblock', 'text_block2')
|
|
36
|
+
layout.format.shapes[:image_block] = create_shape_format('s-iblock', 'image_block')
|
|
37
|
+
layout.format.shapes[:rectangle] = create_shape_format('s-rect', 'rectangle')
|
|
38
|
+
layout.format.shapes[:line] = create_shape_format('s-line', 'line')
|
|
39
|
+
layout.format.shapes[:list1] = create_shape_format('s-list', 'list1')
|
|
40
|
+
layout.format.shapes[:list2] = create_shape_format('s-list', 'list2')
|
|
38
41
|
layout.format.shapes[:default] = create_shape_format('s-list', 'default')
|
|
39
|
-
|
|
42
|
+
|
|
40
43
|
TestManager.new(report, layout)
|
|
41
44
|
end
|
|
42
|
-
|
|
45
|
+
|
|
46
|
+
def test_shorthand_for_finding_item
|
|
47
|
+
manager = create_manager
|
|
48
|
+
|
|
49
|
+
text_block1 = manager[:text_block1]
|
|
50
|
+
text_block1.value = 'block1'
|
|
51
|
+
|
|
52
|
+
assert_instance_of Shape::TextBlock::Interface, manager[:text_block1]
|
|
53
|
+
assert_instance_of Shape::ImageBlock::Interface, manager[:image_block]
|
|
54
|
+
assert_instance_of Shape::Basic::Interface, manager[:rectangle]
|
|
55
|
+
|
|
56
|
+
assert_raises Thinreports::Errors::UnknownItemId do
|
|
57
|
+
manager[:unknown_id]
|
|
58
|
+
end
|
|
59
|
+
|
|
60
|
+
assert_raises Thinreports::Errors::UnknownItemId do
|
|
61
|
+
manager[:list1]
|
|
62
|
+
end
|
|
63
|
+
end
|
|
64
|
+
|
|
65
|
+
def test_shorthand_for_setting_value_to_block
|
|
66
|
+
manager = create_manager
|
|
67
|
+
|
|
68
|
+
manager[:text_block1] = 'value of text block1'
|
|
69
|
+
assert_equal 'value of text block1', manager.item(:text_block1).value
|
|
70
|
+
|
|
71
|
+
manager[:image_block] = '/path/to/image.png'
|
|
72
|
+
assert_equal '/path/to/image.png', manager.item(:image_block).src
|
|
73
|
+
|
|
74
|
+
assert_raises(NoMethodError) { manager[:rectangle] = 'value' }
|
|
75
|
+
assert_raises(Thinreports::Errors::UnknownItemId) { manager[:list1] = 'value' }
|
|
76
|
+
end
|
|
77
|
+
|
|
43
78
|
def test_manager_should_return_instance_of_ManagerInternal
|
|
44
79
|
assert_instance_of Shape::Manager::Internal, create_manager.manager
|
|
45
80
|
end
|
|
46
|
-
|
|
81
|
+
|
|
47
82
|
def test_item_should_properly_return_shape_with_the_specified_Symbol_id
|
|
48
|
-
assert_equal create_manager.item(:
|
|
83
|
+
assert_equal create_manager.item(:text_block1).id, 'text_block1'
|
|
49
84
|
end
|
|
50
|
-
|
|
85
|
+
|
|
51
86
|
def test_item_should_properly_return_shape_with_the_specified_String_id
|
|
52
|
-
assert_equal create_manager.item('
|
|
87
|
+
assert_equal create_manager.item('text_block2').id, 'text_block2'
|
|
53
88
|
end
|
|
54
|
-
|
|
89
|
+
|
|
55
90
|
def test_item_should_raise_when_the_shape_with_the_specified_id_is_not_found
|
|
56
|
-
assert_raises
|
|
91
|
+
assert_raises Thinreports::Errors::UnknownItemId do
|
|
57
92
|
create_manager.item(:unknown)
|
|
58
93
|
end
|
|
59
94
|
end
|
|
60
|
-
|
|
95
|
+
|
|
61
96
|
def test_item_should_set_an_shape_as_argument_when_a_block_is_given
|
|
62
97
|
id = nil
|
|
63
|
-
create_manager.item(:
|
|
64
|
-
assert_equal id, '
|
|
98
|
+
create_manager.item(:text_block1) {|s| id = s.id }
|
|
99
|
+
assert_equal id, 'text_block1'
|
|
65
100
|
end
|
|
66
|
-
|
|
101
|
+
|
|
67
102
|
def test_item_should_raise_when_type_of_shape_with_the_specified_id_is_list
|
|
68
|
-
assert_raises
|
|
69
|
-
create_manager.item(:
|
|
103
|
+
assert_raises Thinreports::Errors::UnknownItemId do
|
|
104
|
+
create_manager.item(:list1)
|
|
70
105
|
end
|
|
71
106
|
end
|
|
72
|
-
|
|
107
|
+
|
|
73
108
|
def test_list_should_properly_return_list_with_the_specified_Symbol_id
|
|
74
|
-
assert_equal create_manager.list(:
|
|
109
|
+
assert_equal create_manager.list(:list1).id, 'list1'
|
|
75
110
|
end
|
|
76
|
-
|
|
111
|
+
|
|
77
112
|
def test_list_should_properly_return_list_with_the_specified_String_id
|
|
78
|
-
assert_equal create_manager.list('
|
|
113
|
+
assert_equal create_manager.list('list1').id, 'list1'
|
|
79
114
|
end
|
|
80
|
-
|
|
115
|
+
|
|
81
116
|
def test_list_should_raise_when_type_of_shape_with_the_specified_id_is_not_list
|
|
82
|
-
assert_raises
|
|
83
|
-
create_manager.list(:
|
|
117
|
+
assert_raises Thinreports::Errors::UnknownItemId do
|
|
118
|
+
create_manager.list(:text_block1)
|
|
84
119
|
end
|
|
85
120
|
end
|
|
86
|
-
|
|
121
|
+
|
|
87
122
|
def test_list_should_use_default_as_id_when_id_is_omitted
|
|
88
123
|
assert_equal create_manager.list.id, 'default'
|
|
89
124
|
end
|
|
90
|
-
|
|
125
|
+
|
|
91
126
|
def test_values_should_properly_set_values_to_shapes_with_specified_id
|
|
92
127
|
manager = create_manager
|
|
93
|
-
manager.values(:
|
|
94
|
-
|
|
95
|
-
assert_equal [manager.item(:
|
|
96
|
-
end
|
|
97
|
-
|
|
98
|
-
def test_items_should_show_deprecation_warning
|
|
99
|
-
out, err = capture_io do
|
|
100
|
-
create_manager.items(:t1 => 1000)
|
|
101
|
-
end
|
|
102
|
-
assert_match %r!DEPRECATION!, err
|
|
128
|
+
manager.values(text_block1: 1000, 'text_block2' => 'value')
|
|
129
|
+
|
|
130
|
+
assert_equal [manager.item(:text_block1).value, manager.item(:text_block2).value], [1000, 'value']
|
|
103
131
|
end
|
|
104
|
-
|
|
132
|
+
|
|
105
133
|
def test_item_exists_asker_should_return_true_when_shape_with_specified_Symbol_id_is_found
|
|
106
|
-
assert_equal create_manager.item_exists?(:
|
|
134
|
+
assert_equal create_manager.item_exists?(:text_block1), true
|
|
107
135
|
end
|
|
108
|
-
|
|
136
|
+
|
|
109
137
|
def test_item_exists_asker_should_return_true_when_shape_with_specified_String_id_is_found
|
|
110
|
-
assert_equal create_manager.item_exists?('
|
|
138
|
+
assert_equal create_manager.item_exists?('text_block2'), true
|
|
111
139
|
end
|
|
112
|
-
|
|
140
|
+
|
|
113
141
|
def test_item_exists_asker_should_return_false_when_shape_with_specified_id_not_found
|
|
114
142
|
assert_equal create_manager.item_exists?('unknown'), false
|
|
115
143
|
end
|
|
116
|
-
|
|
144
|
+
|
|
117
145
|
def test_exists_asker_should_operate_like_as_item_exists_asker
|
|
118
146
|
manager = create_manager
|
|
119
147
|
assert_equal manager.exists?(:unknown), manager.item_exists?(:unknown)
|
|
120
148
|
end
|
|
121
|
-
end
|
|
149
|
+
end
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
require 'test_helper'
|
|
4
|
+
|
|
5
|
+
class Thinreports::Core::Shape::PageNumber::TestFormat < Minitest::Test
|
|
6
|
+
include Thinreports::TestHelper
|
|
7
|
+
|
|
8
|
+
TEST_PAGENO_FORMAT = {
|
|
9
|
+
"type" => "s-pageno",
|
|
10
|
+
"id" => "",
|
|
11
|
+
"display" => "true",
|
|
12
|
+
"box" => {
|
|
13
|
+
"x" => 100.0,
|
|
14
|
+
"y" => 100.0,
|
|
15
|
+
"width" => 100.0,
|
|
16
|
+
"height" => 100.0
|
|
17
|
+
},
|
|
18
|
+
"format" => "{page} / {total}",
|
|
19
|
+
"overflow" => "truncate",
|
|
20
|
+
"target" => "",
|
|
21
|
+
"svg" => {
|
|
22
|
+
"tag" => "text",
|
|
23
|
+
"attrs" => {
|
|
24
|
+
"x" => 308.2,
|
|
25
|
+
"y" => 239,
|
|
26
|
+
"kerning" => "auto",
|
|
27
|
+
"id" => "goog_939685354",
|
|
28
|
+
"fill" => "#000000",
|
|
29
|
+
"fill-opacity" => "1",
|
|
30
|
+
"font-size" => "18",
|
|
31
|
+
"font-family" => "Helvetica",
|
|
32
|
+
"font-weight" => "normal",
|
|
33
|
+
"font-style" => "normal",
|
|
34
|
+
"text-anchor" => "middle",
|
|
35
|
+
"text-decoration" => "none"
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
Format = Thinreports::Core::Shape::PageNumber::Format
|
|
41
|
+
|
|
42
|
+
def format(raw_format = nil)
|
|
43
|
+
Format.new(raw_format || TEST_PAGENO_FORMAT)
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
def test_build
|
|
47
|
+
Format.build(TEST_PAGENO_FORMAT)
|
|
48
|
+
rescue => e
|
|
49
|
+
flunk exception_details(e, 'Failed to build')
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
def test_id
|
|
53
|
+
pageno = format('id' => 'pageno_id')
|
|
54
|
+
assert_equal pageno.id, 'pageno_id'
|
|
55
|
+
|
|
56
|
+
pageno = format('id' => '')
|
|
57
|
+
assert_equal pageno.id, '__pageno1'
|
|
58
|
+
assert_same pageno.id, pageno.id
|
|
59
|
+
end
|
|
60
|
+
|
|
61
|
+
def test_overflow
|
|
62
|
+
assert_equal format.overflow, 'truncate'
|
|
63
|
+
end
|
|
64
|
+
|
|
65
|
+
def test_target
|
|
66
|
+
assert_equal format.target, ''
|
|
67
|
+
assert_equal format("target" => "list-id").target, 'list-id'
|
|
68
|
+
end
|
|
69
|
+
|
|
70
|
+
def test_default_format
|
|
71
|
+
assert_equal format.default_format, '{page} / {total}'
|
|
72
|
+
end
|
|
73
|
+
end
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
require 'test_helper'
|
|
4
|
+
|
|
5
|
+
class Thinreports::Core::Shape::PageNumber::TestInterface < Minitest::Test
|
|
6
|
+
include Thinreports::TestHelper
|
|
7
|
+
|
|
8
|
+
PageNumber = Thinreports::Core::Shape::PageNumber
|
|
9
|
+
|
|
10
|
+
def create_pageno(format = {})
|
|
11
|
+
report = new_report 'layout_text1'
|
|
12
|
+
parent = report.start_new_page
|
|
13
|
+
|
|
14
|
+
PageNumber::Interface.new parent, PageNumber::Format.new(format)
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
def test_format
|
|
18
|
+
pageno = create_pageno 'format' => '{page}'
|
|
19
|
+
|
|
20
|
+
assert_equal pageno.format, '{page}'
|
|
21
|
+
pageno.format('{page} / {total}')
|
|
22
|
+
assert_equal pageno.format, '{page} / {total}'
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
def test_reset_format
|
|
26
|
+
pageno = create_pageno 'format' => '{page}'
|
|
27
|
+
|
|
28
|
+
pageno.format('-- {page} --')
|
|
29
|
+
pageno.reset_format
|
|
30
|
+
|
|
31
|
+
assert_equal pageno.format, '{page}'
|
|
32
|
+
end
|
|
33
|
+
end
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
require 'test_helper'
|
|
4
|
+
|
|
5
|
+
class Thinreports::Core::Shape::PageNumber::TestInternal < Minitest::Test
|
|
6
|
+
include Thinreports::TestHelper
|
|
7
|
+
|
|
8
|
+
PageNumber = Thinreports::Core::Shape::PageNumber
|
|
9
|
+
|
|
10
|
+
def setup
|
|
11
|
+
@report = new_report('layout_text1.tlf')
|
|
12
|
+
@report.start_new_page
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
def init_pageno(format = {})
|
|
16
|
+
PageNumber::Internal.new(@report.page, PageNumber::Format.new(format))
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
def test_read_format
|
|
20
|
+
pageno = init_pageno('format' => 'Page {page}')
|
|
21
|
+
|
|
22
|
+
assert_equal pageno.read_format, 'Page {page}'
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
def test_write_format
|
|
26
|
+
pageno = init_pageno('format' => 'Page {page}')
|
|
27
|
+
pageno.write_format('{page}')
|
|
28
|
+
|
|
29
|
+
assert_equal pageno.read_format, '{page}'
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
def test_reset_format
|
|
33
|
+
pageno = init_pageno('format' => '{page}')
|
|
34
|
+
pageno.write_format('Page {page}')
|
|
35
|
+
pageno.reset_format
|
|
36
|
+
|
|
37
|
+
assert_equal pageno.read_format, '{page}'
|
|
38
|
+
end
|
|
39
|
+
|
|
40
|
+
def test_build_format
|
|
41
|
+
pageno = init_pageno('format' => '{page} / {total}')
|
|
42
|
+
assert_equal pageno.build_format(1, 100), '1 / 100'
|
|
43
|
+
|
|
44
|
+
pageno.write_format('{page}')
|
|
45
|
+
assert_equal pageno.build_format(1, 100), '1'
|
|
46
|
+
|
|
47
|
+
@report.start_page_number_from 5
|
|
48
|
+
pageno = init_pageno('format' => '{page} / {total}')
|
|
49
|
+
assert_equal pageno.build_format(1, 100), '5 / 104'
|
|
50
|
+
|
|
51
|
+
# if counted target is a List shape
|
|
52
|
+
pageno = init_pageno('format' => '{page} / {total}',
|
|
53
|
+
'target' => 'list-id')
|
|
54
|
+
assert_equal pageno.build_format(1, 100), '1 / 100'
|
|
55
|
+
end
|
|
56
|
+
|
|
57
|
+
def test_type_of
|
|
58
|
+
pageno = init_pageno
|
|
59
|
+
assert pageno.type_of?(:pageno)
|
|
60
|
+
end
|
|
61
|
+
|
|
62
|
+
def test_style
|
|
63
|
+
pageno = init_pageno
|
|
64
|
+
style = pageno.style
|
|
65
|
+
|
|
66
|
+
assert_instance_of PageNumber::Style, style
|
|
67
|
+
assert_same pageno.style, style
|
|
68
|
+
end
|
|
69
|
+
|
|
70
|
+
def test_for_report
|
|
71
|
+
pageno = init_pageno('target' => '')
|
|
72
|
+
assert_equal pageno.for_report?, true
|
|
73
|
+
|
|
74
|
+
pageno = init_pageno('target' => 'list-id')
|
|
75
|
+
assert_equal pageno.for_report?, false
|
|
76
|
+
end
|
|
77
|
+
|
|
78
|
+
def test_Style_class
|
|
79
|
+
refute_includes PageNumber::Style.accessible_styles, :valign
|
|
80
|
+
end
|
|
81
|
+
end
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
# coding: utf-8
|
|
2
2
|
|
|
3
|
-
require '
|
|
3
|
+
require 'test_helper'
|
|
4
4
|
|
|
5
|
-
class
|
|
6
|
-
include
|
|
5
|
+
class Thinreports::Core::Shape::Style::TestBase < Minitest::Test
|
|
6
|
+
include Thinreports::TestHelper
|
|
7
7
|
|
|
8
8
|
# Alias
|
|
9
|
-
Style =
|
|
9
|
+
Style = Thinreports::Core::Shape::Style::Base
|
|
10
10
|
|
|
11
11
|
def create_basic_format(attrs = {})
|
|
12
|
-
|
|
12
|
+
Thinreports::Core::Shape::Basic::Format.new('svg' => {'attrs' => attrs})
|
|
13
13
|
end
|
|
14
14
|
|
|
15
15
|
def create_style(base = {})
|
|
@@ -178,17 +178,17 @@ class ThinReports::Core::Shape::Style::TestBase < MiniTest::Unit::TestCase
|
|
|
178
178
|
end
|
|
179
179
|
|
|
180
180
|
def test_reader_method_caller_should_raise_when_style_is_not_accessible
|
|
181
|
-
assert_raises
|
|
181
|
+
assert_raises Thinreports::Errors::UnknownShapeStyleName do
|
|
182
182
|
create_new_style[:unknown]
|
|
183
183
|
end
|
|
184
184
|
end
|
|
185
185
|
|
|
186
186
|
def test_writer_method_caller_should_raise_when_style_is_not_accessible
|
|
187
|
-
assert_raises
|
|
187
|
+
assert_raises Thinreports::Errors::UnknownShapeStyleName do
|
|
188
188
|
create_new_style[:unknown] = 'value'
|
|
189
189
|
end
|
|
190
190
|
end
|
|
191
|
-
|
|
191
|
+
|
|
192
192
|
def test_copy_should_return_the_instance_of_the_same_class_as_itself
|
|
193
193
|
style = create_style
|
|
194
194
|
assert_instance_of Style, style.copy
|
|
@@ -216,4 +216,4 @@ class ThinReports::Core::Shape::Style::TestBase < MiniTest::Unit::TestCase
|
|
|
216
216
|
|
|
217
217
|
assert_equal style.identifier, style.styles.hash.to_s
|
|
218
218
|
end
|
|
219
|
-
end
|
|
219
|
+
end
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
# coding: utf-8
|
|
2
2
|
|
|
3
|
-
require '
|
|
3
|
+
require 'test_helper'
|
|
4
4
|
|
|
5
|
-
class
|
|
6
|
-
include
|
|
5
|
+
class Thinreports::Core::Shape::Style::TestBasic < Minitest::Test
|
|
6
|
+
include Thinreports::TestHelper
|
|
7
7
|
|
|
8
8
|
def create_basic_style(format_config = {})
|
|
9
|
-
format =
|
|
10
|
-
|
|
9
|
+
format = Thinreports::Core::Shape::Basic::Format.new(format_config)
|
|
10
|
+
Thinreports::Core::Shape::Style::Basic.new(format)
|
|
11
11
|
end
|
|
12
12
|
|
|
13
13
|
def test_visible_should_return_visibility_of_format_as_default
|
|
@@ -1,69 +1,55 @@
|
|
|
1
1
|
# coding: utf-8
|
|
2
2
|
|
|
3
|
-
require '
|
|
3
|
+
require 'test_helper'
|
|
4
|
+
|
|
5
|
+
class Thinreports::Core::Shape::Style::TestGraphic < Minitest::Test
|
|
6
|
+
include Thinreports::TestHelper
|
|
4
7
|
|
|
5
|
-
class ThinReports::Core::Shape::Style::TestGraphic < MiniTest::Unit::TestCase
|
|
6
|
-
include ThinReports::TestHelpers
|
|
7
|
-
|
|
8
8
|
def create_graphic_style
|
|
9
|
-
format =
|
|
10
|
-
|
|
9
|
+
format = Thinreports::Core::Shape::Basic::Format.new({})
|
|
10
|
+
Thinreports::Core::Shape::Style::Graphic.new(format)
|
|
11
11
|
end
|
|
12
|
-
|
|
12
|
+
|
|
13
13
|
def test_border_color_should_properly_set_to_internal_styles_as_stroke_style
|
|
14
14
|
style = create_graphic_style
|
|
15
15
|
style.border_color = '#ff0000'
|
|
16
|
-
|
|
16
|
+
|
|
17
17
|
assert_equal style.styles['stroke'], '#ff0000'
|
|
18
18
|
end
|
|
19
|
-
|
|
19
|
+
|
|
20
20
|
def test_border_width_should_properly_set_to_internal_styles_as_stroke_width_style
|
|
21
21
|
style = create_graphic_style
|
|
22
22
|
style.border_width = 1
|
|
23
|
-
|
|
23
|
+
|
|
24
24
|
assert_equal style.styles['stroke-width'], 1
|
|
25
25
|
end
|
|
26
|
-
|
|
26
|
+
|
|
27
27
|
def test_border_width_should_set_stroke_opacity_to_1_when_width_is_not_zero
|
|
28
28
|
style = create_graphic_style
|
|
29
29
|
style.border_width = 5
|
|
30
|
-
|
|
30
|
+
|
|
31
31
|
assert_equal style.styles['stroke-opacity'], '1'
|
|
32
32
|
end
|
|
33
|
-
|
|
33
|
+
|
|
34
34
|
def test_fill_color_should_properly_set_to_internal_styles_as_fill_style
|
|
35
35
|
style = create_graphic_style
|
|
36
36
|
style.fill_color = '#0000ff'
|
|
37
|
-
|
|
37
|
+
|
|
38
38
|
assert_equal style.styles['fill'], '#0000ff'
|
|
39
39
|
end
|
|
40
|
-
|
|
41
|
-
def test_fill_should_operate_like_the_fill_color_method
|
|
42
|
-
style = create_graphic_style
|
|
43
|
-
style.fill = '#ff0000'
|
|
44
|
-
|
|
45
|
-
assert_same style.fill_color, style.fill
|
|
46
|
-
end
|
|
47
|
-
|
|
48
|
-
def test_stroke_should_operate_like_the_border_width_method
|
|
49
|
-
style = create_graphic_style
|
|
50
|
-
style.stroke = 5
|
|
51
|
-
|
|
52
|
-
assert_same style.border_width, style.stroke
|
|
53
|
-
end
|
|
54
|
-
|
|
40
|
+
|
|
55
41
|
def test_border_should_return_an_Array_included_border_width_and_border_color
|
|
56
42
|
style = create_graphic_style
|
|
57
43
|
style.border_width = 1
|
|
58
44
|
style.border_color = '#ff0000'
|
|
59
|
-
|
|
45
|
+
|
|
60
46
|
assert_equal style.border, [style.border_width, style.border_color]
|
|
61
47
|
end
|
|
62
|
-
|
|
48
|
+
|
|
63
49
|
def test_border_should_properly_set_both_border_width_and_border_color_from_the_specified_array_argument
|
|
64
50
|
style = create_graphic_style
|
|
65
51
|
style.border = [5, '#000000']
|
|
66
|
-
|
|
52
|
+
|
|
67
53
|
assert_equal style.border, [5, '#000000']
|
|
68
54
|
end
|
|
69
|
-
end
|
|
55
|
+
end
|
|
@@ -1,19 +1,30 @@
|
|
|
1
1
|
# coding: utf-8
|
|
2
2
|
|
|
3
|
-
require '
|
|
3
|
+
require 'test_helper'
|
|
4
4
|
|
|
5
|
-
class
|
|
6
|
-
include
|
|
5
|
+
class Thinreports::Core::Shape::Style::TestText < Minitest::Test
|
|
6
|
+
include Thinreports::TestHelper
|
|
7
7
|
|
|
8
8
|
def create_format(format = {})
|
|
9
|
-
|
|
9
|
+
Thinreports::Core::Shape::Text::Format.new(format)
|
|
10
10
|
end
|
|
11
11
|
|
|
12
12
|
def create_text_style(format = nil)
|
|
13
13
|
format ||= create_format
|
|
14
|
-
|
|
14
|
+
Thinreports::Core::Shape::Style::Text.new(format)
|
|
15
15
|
end
|
|
16
|
-
|
|
16
|
+
|
|
17
|
+
def test_font_size
|
|
18
|
+
format = create_format('svg' => {'attrs' => {'font-size' => '12'}})
|
|
19
|
+
style = create_text_style(format)
|
|
20
|
+
|
|
21
|
+
assert_equal style.font_size, '12'
|
|
22
|
+
|
|
23
|
+
style.font_size = 19
|
|
24
|
+
|
|
25
|
+
assert_equal style.styles['font-size'], 19
|
|
26
|
+
end
|
|
27
|
+
|
|
17
28
|
def test_bold_should_return_true_when_font_weight_property_of_format_is_bold
|
|
18
29
|
format = create_format('svg' => {'attrs' => {'font-weight' => 'bold'}})
|
|
19
30
|
style = create_text_style(format)
|
|
@@ -302,6 +313,17 @@ class ThinReports::Core::Shape::Style::TestText < MiniTest::Unit::TestCase
|
|
|
302
313
|
create_text_style.valign = :unknonw
|
|
303
314
|
end
|
|
304
315
|
end
|
|
316
|
+
|
|
317
|
+
def test_initialize
|
|
318
|
+
klass = Class.new(Thinreports::Core::Shape::Style::Text)
|
|
319
|
+
klass.class_eval do
|
|
320
|
+
accessible_styles.delete(:valign)
|
|
321
|
+
end
|
|
322
|
+
|
|
323
|
+
style = klass.new(create_format('valign' => ''))
|
|
324
|
+
assert_equal style.valign, :top, 'should be set :top as default to @valign style ' +
|
|
325
|
+
'if :valign is not accessible'
|
|
326
|
+
end
|
|
305
327
|
|
|
306
328
|
def test_identifier_should_return_the_same_value_as_create_identifier_method_when_valign_has_not_been_changed
|
|
307
329
|
style = create_text_style
|
|
@@ -315,4 +337,4 @@ class ThinReports::Core::Shape::Style::TestText < MiniTest::Unit::TestCase
|
|
|
315
337
|
assert_equal style.identifier,
|
|
316
338
|
style.send(:create_identifier, style.styles) + 'bottom'
|
|
317
339
|
end
|
|
318
|
-
end
|
|
340
|
+
end
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
# coding: utf-8
|
|
2
2
|
|
|
3
|
-
require '
|
|
3
|
+
require 'test_helper'
|
|
4
4
|
|
|
5
|
-
class
|
|
6
|
-
include
|
|
5
|
+
class Thinreports::Core::Shape::Text::TestFormat < Minitest::Test
|
|
6
|
+
include Thinreports::TestHelper
|
|
7
7
|
|
|
8
8
|
TEST_TEXT_FORMAT = {
|
|
9
9
|
"type" => "s-text",
|
|
@@ -44,14 +44,14 @@ class ThinReports::Core::Shape::Text::TestFormat < MiniTest::Unit::TestCase
|
|
|
44
44
|
}
|
|
45
45
|
|
|
46
46
|
# Alias
|
|
47
|
-
Format =
|
|
47
|
+
Format = Thinreports::Core::Shape::Text::Format
|
|
48
48
|
|
|
49
49
|
def test_build_format
|
|
50
50
|
build_format
|
|
51
51
|
rescue => e
|
|
52
52
|
flunk exception_details(e, 'Building failed.')
|
|
53
53
|
end
|
|
54
|
-
|
|
54
|
+
|
|
55
55
|
def test_config_readers
|
|
56
56
|
format = Format.new(TEST_TEXT_FORMAT)
|
|
57
57
|
|
|
@@ -70,4 +70,4 @@ class ThinReports::Core::Shape::Text::TestFormat < MiniTest::Unit::TestCase
|
|
|
70
70
|
def build_format
|
|
71
71
|
Format.build(TEST_TEXT_FORMAT)
|
|
72
72
|
end
|
|
73
|
-
end
|
|
73
|
+
end
|
|
@@ -1,21 +1,20 @@
|
|
|
1
1
|
# coding: utf-8
|
|
2
2
|
|
|
3
|
-
require '
|
|
3
|
+
require 'test_helper'
|
|
4
4
|
|
|
5
|
-
class
|
|
6
|
-
include
|
|
5
|
+
class Thinreports::Core::Shape::Text::TestInternal < Minitest::Test
|
|
6
|
+
include Thinreports::TestHelper
|
|
7
7
|
|
|
8
|
-
Text =
|
|
8
|
+
Text = Thinreports::Core::Shape::Text
|
|
9
9
|
|
|
10
|
-
def
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
@internal = Text::Internal.new(flexmock('parent'), format)
|
|
10
|
+
def create_internal(format_config = {})
|
|
11
|
+
report = new_report('layout_text1.tlf')
|
|
12
|
+
Text::Internal.new(report.start_new_page, Text::Format.new(format_config))
|
|
15
13
|
end
|
|
16
14
|
|
|
17
15
|
def test_type_of?
|
|
18
|
-
|
|
19
|
-
|
|
16
|
+
assert create_internal.type_of?(:text), true
|
|
17
|
+
refute create_internal.type_of?(:basic), false
|
|
20
18
|
end
|
|
21
|
-
|
|
19
|
+
|
|
20
|
+
end
|