rocx 0.5.7 → 0.5.8
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 +4 -4
- data/.gitignore +1 -0
- data/Gemfile.lock +11 -7
- data/Rakefile +3 -8
- data/lib/rocx/elements/base_container.rb +8 -4
- data/lib/rocx/elements/paragraph.rb +4 -4
- data/lib/rocx/elements/run.rb +40 -1
- data/lib/rocx/properties.rb +5 -0
- data/lib/rocx/properties/alignment.rb +4 -19
- data/lib/rocx/properties/attribute_builder.rb +8 -2
- data/lib/rocx/properties/auto_adjust_right_indent.rb +3 -9
- data/lib/rocx/properties/auto_space_de.rb +1 -8
- data/lib/rocx/properties/auto_space_dn.rb +1 -8
- data/lib/rocx/properties/base_property.rb +20 -11
- data/lib/rocx/properties/bold.rb +1 -4
- data/lib/rocx/properties/boolean_property.rb +1 -1
- data/lib/rocx/properties/border.rb +5 -13
- data/lib/rocx/properties/borders.rb +2 -8
- data/lib/rocx/properties/caps.rb +6 -0
- data/lib/rocx/properties/character_spacing.rb +8 -0
- data/lib/rocx/properties/color.rb +13 -0
- data/lib/rocx/properties/complex_bold.rb +8 -0
- data/lib/rocx/properties/complex_font_size.rb +8 -0
- data/lib/rocx/properties/complex_italics.rb +8 -0
- data/lib/rocx/properties/complex_property.rb +16 -0
- data/lib/rocx/properties/complex_script_formatting.rb +8 -0
- data/lib/rocx/properties/compress_punctuation.rb +1 -4
- data/lib/rocx/properties/conditional_formatting.rb +17 -56
- data/lib/rocx/properties/div_id.rb +1 -18
- data/lib/rocx/properties/double_strikethrough.rb +8 -0
- data/lib/rocx/properties/east_asian_layout.rb +22 -0
- data/lib/rocx/properties/effect.rb +11 -0
- data/lib/rocx/properties/emboss.rb +6 -0
- data/lib/rocx/properties/emphasis.rb +12 -0
- data/lib/rocx/properties/expansion.rb +18 -0
- data/lib/rocx/properties/font.rb +34 -0
- data/lib/rocx/properties/font_size.rb +8 -0
- data/lib/rocx/properties/frame.rb +5 -16
- data/lib/rocx/properties/hidden_text.rb +8 -0
- data/lib/rocx/properties/highlight.rb +11 -0
- data/lib/rocx/properties/imprint.rb +6 -0
- data/lib/rocx/properties/indentation.rb +11 -24
- data/lib/rocx/properties/integer_property.rb +15 -0
- data/lib/rocx/properties/italics.rb +1 -4
- data/lib/rocx/properties/kerning.rb +8 -0
- data/lib/rocx/properties/language.rb +20 -0
- data/lib/rocx/properties/manual_width.rb +12 -0
- data/lib/rocx/properties/math.rb +8 -0
- data/lib/rocx/properties/no_proof.rb +6 -0
- data/lib/rocx/properties/numbering.rb +4 -10
- data/lib/rocx/properties/on_off_property.rb +1 -1
- data/lib/rocx/properties/outline.rb +6 -0
- data/lib/rocx/properties/outline_level.rb +2 -17
- data/lib/rocx/properties/overflow_punctuation.rb +1 -8
- data/lib/rocx/properties/paragraph_style.rb +8 -0
- data/lib/rocx/properties/position.rb +6 -0
- data/lib/rocx/properties/positive_integer_property.rb +15 -0
- data/lib/rocx/properties/right_to_left.rb +8 -0
- data/lib/rocx/properties/run_style.rb +8 -0
- data/lib/rocx/properties/shading.rb +9 -20
- data/lib/rocx/properties/shadow.rb +6 -0
- data/lib/rocx/properties/small_caps.rb +6 -0
- data/lib/rocx/properties/spacing.rb +4 -17
- data/lib/rocx/properties/spec_vanish.rb +6 -0
- data/lib/rocx/properties/strikethrough.rb +8 -0
- data/lib/rocx/properties/style.rb +15 -0
- data/lib/rocx/properties/tab.rb +1 -9
- data/lib/rocx/properties/tabs.rb +1 -9
- data/lib/rocx/properties/text_alignment.rb +11 -0
- data/lib/rocx/properties/text_direction.rb +1 -5
- data/lib/rocx/properties/textbox_tight_wrap.rb +1 -5
- data/lib/rocx/properties/toggle_property.rb +1 -1
- data/lib/rocx/properties/underline.rb +24 -0
- data/lib/rocx/properties/value_property.rb +29 -0
- data/lib/rocx/properties/vertical_alignment.rb +3 -10
- data/lib/rocx/properties/web_hidden.rb +6 -0
- data/lib/rocx/version.rb +1 -1
- data/rocx.gemspec +1 -2
- data/spec/elements/break_spec.rb +47 -0
- data/spec/elements/paragraph_spec.rb +31 -0
- data/spec/elements/run_spec.rb +15 -0
- data/spec/elements/symbol_spec.rb +24 -0
- data/spec/elements/text_spec.rb +23 -0
- data/spec/package_spec.rb +48 -0
- data/spec/parts/content_types_spec.rb +32 -0
- data/spec/parts/document_spec.rb +32 -0
- data/spec/parts/global_rels_spec.rb +13 -0
- data/spec/parts/rels_spec.rb +42 -0
- data/spec/parts/settings_spec.rb +13 -0
- data/spec/parts/styles_spec.rb +27 -0
- data/spec/properties/alignment_spec.rb +58 -0
- data/spec/properties/auto_adjust_right_indent_spec.rb +23 -0
- data/spec/properties/auto_space_de_spec.rb +23 -0
- data/spec/properties/auto_space_dn_spec.rb +23 -0
- data/spec/properties/bidi_spec.rb +23 -0
- data/spec/properties/bold_spec.rb +23 -0
- data/spec/properties/border_spec.rb +156 -0
- data/spec/properties/borders_spec.rb +66 -0
- data/spec/properties/caps_spec.rb +23 -0
- data/spec/properties/character_spacing_spec.rb +26 -0
- data/spec/properties/color_spec.rb +49 -0
- data/spec/properties/complex_bold_spec.rb +23 -0
- data/spec/properties/complex_font_size_spec.rb +24 -0
- data/spec/properties/complex_italics_spec.rb +23 -0
- data/spec/properties/complex_script_formatting_spec.rb +23 -0
- data/spec/properties/compress_punctuation_spec.rb +23 -0
- data/spec/properties/conditional_formatting_spec.rb +160 -0
- data/spec/properties/contextual_spacing_spec.rb +23 -0
- data/spec/properties/div_id_spec.rb +17 -0
- data/spec/properties/double_strikethrough_spec.rb +23 -0
- data/spec/properties/east_asian_layout_spec.rb +115 -0
- data/spec/properties/effect_spec.rb +43 -0
- data/spec/properties/emboss_spec.rb +23 -0
- data/spec/properties/emphasis_spec.rb +37 -0
- data/spec/properties/expansion_spec.rb +34 -0
- data/spec/properties/font_size_spec.rb +24 -0
- data/spec/properties/font_spec.rb +273 -0
- data/spec/properties/frame_spec.rb +338 -0
- data/spec/properties/hidden_text_spec.rb +23 -0
- data/spec/properties/highlight_spec.rb +97 -0
- data/spec/properties/imprint_spec.rb +23 -0
- data/spec/properties/indentation_spec.rb +176 -0
- data/spec/properties/italics_spec.rb +23 -0
- data/spec/properties/keep_lines_spec.rb +23 -0
- data/spec/properties/keep_next_spec.rb +23 -0
- data/spec/properties/kerning_spec.rb +24 -0
- data/spec/properties/kinsoku_spec.rb +23 -0
- data/spec/properties/language_spec.rb +29 -0
- data/spec/properties/manual_width_spec.rb +55 -0
- data/spec/properties/math_spec.rb +23 -0
- data/spec/properties/mirror_indent_spec.rb +23 -0
- data/spec/properties/no_proof_spec.rb +23 -0
- data/spec/properties/numbering_spec.rb +46 -0
- data/spec/properties/outline_level_spec.rb +20 -0
- data/spec/properties/outline_spec.rb +23 -0
- data/spec/properties/overflow_punctuation_spec.rb +23 -0
- data/spec/properties/page_break_before_spec.rb +23 -0
- data/spec/properties/paragraph_style_spec.rb +12 -0
- data/spec/properties/position_spec.rb +26 -0
- data/spec/properties/right_to_left_spec.rb +23 -0
- data/spec/properties/run_style_spec.rb +12 -0
- data/spec/properties/shading_spec.rb +135 -0
- data/spec/properties/shadow_property_spec.rb +23 -0
- data/spec/properties/small_caps_spec.rb +22 -0
- data/spec/properties/snap_to_grid_spec.rb +23 -0
- data/spec/properties/spacing_spec.rb +159 -0
- data/spec/properties/spec_vanish_spec.rb +23 -0
- data/spec/properties/strikethrough_spec.rb +23 -0
- data/spec/properties/supress_auto_hyphens_spec.rb +23 -0
- data/spec/properties/supress_line_numbers_spec.rb +23 -0
- data/spec/properties/supress_overlap_spec.rb +23 -0
- data/spec/properties/tab_spec.rb +45 -0
- data/spec/properties/tabs_spec.rb +39 -0
- data/spec/properties/text_alignment_spec.rb +33 -0
- data/spec/properties/text_direction_spec.rb +42 -0
- data/spec/properties/textbox_tight_wrap_spec.rb +33 -0
- data/spec/properties/underline_spec.rb +161 -0
- data/spec/properties/vertical_alignment_spec.rb +26 -0
- data/spec/properties/web_hidden_spec.rb +23 -0
- data/spec/properties/widow_control_spec.rb +23 -0
- data/spec/properties/word_wrap_spec.rb +23 -0
- data/spec/spec_helper.rb +14 -0
- data/spec/style_spec.rb +34 -0
- data/{test → spec/support}/data/elements/break_element.xml +0 -0
- data/{test → spec/support}/data/elements/break_with_attributes_element.xml +0 -0
- data/{test → spec/support}/data/elements/paragraph_element.xml +0 -0
- data/{test → spec/support}/data/elements/paragraph_with_runs_element.xml +1 -1
- data/{test → spec/support}/data/elements/run_element.xml +0 -0
- data/{test → spec/support}/data/elements/symbol_element.xml +0 -0
- data/{test → spec/support}/data/elements/text_element.xml +0 -0
- data/{test → spec/support}/data/parts/content_types_part.xml +0 -0
- data/{test → spec/support}/data/parts/document_with_children_part.xml +0 -0
- data/{test → spec/support}/data/parts/empty_document_part.xml +0 -0
- data/{test → spec/support}/data/parts/global_rels_part.xml +0 -0
- data/{test → spec/support}/data/parts/rels_part.xml +0 -0
- data/{test → spec/support}/data/parts/settings_part.xml +0 -0
- data/{test → spec/support}/data/parts/styles_part.xml +0 -0
- data/{test → spec/support}/data/parts/styles_with_custom_style_part.xml +0 -0
- data/{test → spec/support}/data/styles/character_styles.xml +0 -0
- data/{test → spec/support}/data/styles/paragraph_styles.xml +0 -0
- data/spec/support/element_test_macros.rb +33 -0
- data/spec/support/part_test_macros.rb +27 -0
- data/spec/support/property_test_macros.rb +116 -0
- data/spec/support/style_test_macros.rb +33 -0
- data/spec/support/value_property_test_macros.rb +69 -0
- metadata +151 -133
- data/lib/rocx/elements/style.rb +0 -19
- data/test/elements/break_test.rb +0 -54
- data/test/elements/paragraph_test.rb +0 -37
- data/test/elements/run_test.rb +0 -18
- data/test/elements/symbol_test.rb +0 -23
- data/test/elements/text_test.rb +0 -26
- data/test/package_test.rb +0 -48
- data/test/parts/content_types_test.rb +0 -37
- data/test/parts/document_test.rb +0 -31
- data/test/parts/global_rels_test.rb +0 -13
- data/test/parts/rels_test.rb +0 -48
- data/test/parts/settings_test.rb +0 -13
- data/test/parts/styles_test.rb +0 -29
- data/test/properties/auto_adjust_right_indent_test.rb +0 -50
- data/test/properties/auto_space_de_test.rb +0 -50
- data/test/properties/auto_space_dn_test.rb +0 -50
- data/test/properties/bidi_test.rb +0 -50
- data/test/properties/bold_test.rb +0 -50
- data/test/properties/border_test.rb +0 -216
- data/test/properties/borders_test.rb +0 -95
- data/test/properties/compress_punctuation_test.rb +0 -50
- data/test/properties/conditional_formatting_test.rb +0 -46
- data/test/properties/contextual_spacing_test.rb +0 -50
- data/test/properties/div_id_test.rb +0 -38
- data/test/properties/frame_test.rb +0 -497
- data/test/properties/italics_test.rb +0 -50
- data/test/properties/keep_lines_test.rb +0 -50
- data/test/properties/keep_next_test.rb +0 -50
- data/test/properties/kinsoku_test.rb +0 -50
- data/test/properties/mirror_indent_test.rb +0 -50
- data/test/properties/numbering_test.rb +0 -86
- data/test/properties/outline_level_test.rb +0 -46
- data/test/properties/overflow_punctuation_test.rb +0 -50
- data/test/properties/page_break_before_test.rb +0 -50
- data/test/properties/shading_test.rb +0 -225
- data/test/properties/snap_to_grid_test.rb +0 -50
- data/test/properties/spacing_test.rb +0 -248
- data/test/properties/style_test.rb +0 -30
- data/test/properties/supress_auto_hyphens_test.rb +0 -50
- data/test/properties/supress_line_numbers_test.rb +0 -50
- data/test/properties/supress_overlap_test.rb +0 -50
- data/test/properties/tab_test.rb +0 -63
- data/test/properties/tabs_test.rb +0 -54
- data/test/properties/text_direction_test.rb +0 -100
- data/test/properties/textbox_tight_wrap_test.rb +0 -88
- data/test/properties/vertical_alignment_test.rb +0 -88
- data/test/properties/widow_control_test.rb +0 -50
- data/test/properties/word_wrap_test.rb +0 -50
- data/test/style_test.rb +0 -54
- data/test/test_helper.rb +0 -52
data/lib/rocx/elements/style.rb
DELETED
data/test/elements/break_test.rb
DELETED
@@ -1,54 +0,0 @@
|
|
1
|
-
require "test_helper"
|
2
|
-
|
3
|
-
class BreakTest < Test::Unit::TestCase
|
4
|
-
attr_reader :break_node
|
5
|
-
|
6
|
-
context "when creating a new break, it" do
|
7
|
-
should "not accept invalid values for the clear property" do
|
8
|
-
assert_raises ArgumentError do
|
9
|
-
@break_node = Rocx::Elements::Break.new(clear: :obviouslyInvalid)
|
10
|
-
end
|
11
|
-
end
|
12
|
-
|
13
|
-
should "not accept invalid values for the break_type property" do
|
14
|
-
assert_raises ArgumentError do
|
15
|
-
@break_node = Rocx::Elements::Break.new(break_type: :invalidType)
|
16
|
-
end
|
17
|
-
end
|
18
|
-
end
|
19
|
-
|
20
|
-
context "after initial creation, it" do
|
21
|
-
should "still not accept invalid values for the clear property" do
|
22
|
-
assert_raises ArgumentError do
|
23
|
-
@break_node = Rocx::Elements::Break.new
|
24
|
-
break_node.clear = :invalid
|
25
|
-
end
|
26
|
-
end
|
27
|
-
|
28
|
-
should "still not accept invalid values for the break_type property" do
|
29
|
-
assert_raises ArgumentError do
|
30
|
-
@break_node = Rocx::Elements::Break.new
|
31
|
-
break_node.break_type :weird
|
32
|
-
end
|
33
|
-
end
|
34
|
-
end
|
35
|
-
|
36
|
-
context "when generating XML" do
|
37
|
-
context "and both property is nil, it" do
|
38
|
-
should "omit the attributes" do
|
39
|
-
@break_node = Rocx::Elements::Break.new
|
40
|
-
break_xml = build_xml { |xml| break_node.to_xml(xml) }
|
41
|
-
assert_equal element_xml("break"), break_xml
|
42
|
-
end
|
43
|
-
end
|
44
|
-
|
45
|
-
context "and a property isn't nil, it" do
|
46
|
-
should "include that attribute" do
|
47
|
-
@break_node = Rocx::Elements::Break.new(break_type: :page, clear: :left)
|
48
|
-
break_xml = build_xml { |xml| break_node.to_xml(xml) }
|
49
|
-
assert_equal element_xml("break_with_attributes"), break_xml
|
50
|
-
end
|
51
|
-
end
|
52
|
-
end
|
53
|
-
|
54
|
-
end
|
@@ -1,37 +0,0 @@
|
|
1
|
-
require "test_helper"
|
2
|
-
|
3
|
-
class ParagraphTest < Test::Unit::TestCase
|
4
|
-
attr_reader :paragraph
|
5
|
-
|
6
|
-
context "with runs, it" do
|
7
|
-
setup do
|
8
|
-
@paragraph = Rocx::Elements::Paragraph.new
|
9
|
-
paragraph.indentation = {start: 720, end: -1440}
|
10
|
-
run = Rocx::Elements::Run.new
|
11
|
-
run << Rocx::Elements::Text.new("Hey Run 1")
|
12
|
-
paragraph << run
|
13
|
-
run = Rocx::Elements::Run.new
|
14
|
-
run << Rocx::Elements::Text.new("Hey Run 2")
|
15
|
-
paragraph << run
|
16
|
-
end
|
17
|
-
|
18
|
-
should "generate the proper XML" do
|
19
|
-
paragraph_xml = build_xml { |xml| paragraph.to_xml(xml) }
|
20
|
-
assert_equal element_xml("paragraph_with_runs"), paragraph_xml
|
21
|
-
end
|
22
|
-
end
|
23
|
-
|
24
|
-
context "without runs, it" do
|
25
|
-
setup do
|
26
|
-
@paragraph = Rocx::Elements::Paragraph.new
|
27
|
-
paragraph.alignment = :center
|
28
|
-
end
|
29
|
-
|
30
|
-
should "also generate the proper XML" do
|
31
|
-
paragraph_xml = build_xml { |xml| paragraph.to_xml(xml) }
|
32
|
-
|
33
|
-
assert_equal element_xml("paragraph"), paragraph_xml
|
34
|
-
end
|
35
|
-
end
|
36
|
-
|
37
|
-
end
|
data/test/elements/run_test.rb
DELETED
@@ -1,18 +0,0 @@
|
|
1
|
-
require "test_helper"
|
2
|
-
|
3
|
-
class RunTest < Test::Unit::TestCase
|
4
|
-
attr_reader :run_node
|
5
|
-
|
6
|
-
context "after creation, it" do
|
7
|
-
setup do
|
8
|
-
@run_node = Rocx::Elements::Run.new
|
9
|
-
run_node.italics = true
|
10
|
-
end
|
11
|
-
|
12
|
-
should "render properties in the properties XML" do
|
13
|
-
run_xml = build_xml { |xml| run_node.to_xml(xml) }
|
14
|
-
assert_equal element_xml("run"), run_xml
|
15
|
-
end
|
16
|
-
end
|
17
|
-
|
18
|
-
end
|
@@ -1,23 +0,0 @@
|
|
1
|
-
require "test_helper"
|
2
|
-
|
3
|
-
class SymbolTest < Test::Unit::TestCase
|
4
|
-
attr_reader :symbol
|
5
|
-
|
6
|
-
should "require that its char property be 4 hexadecimal characters" do
|
7
|
-
@symbol = Rocx::Elements::Symbol.new
|
8
|
-
assert_raises ArgumentError do
|
9
|
-
symbol.char = "not valid"
|
10
|
-
end
|
11
|
-
|
12
|
-
assert_nothing_raised do
|
13
|
-
symbol.char = "43fd"
|
14
|
-
end
|
15
|
-
end
|
16
|
-
|
17
|
-
should "output the right XML" do
|
18
|
-
@symbol = Rocx::Elements::Symbol.new(char: "43fd", font: "Wingdings")
|
19
|
-
xml = build_xml { |xml| symbol.to_xml(xml) }
|
20
|
-
assert_equal element_xml("symbol"), xml
|
21
|
-
end
|
22
|
-
|
23
|
-
end
|
data/test/elements/text_test.rb
DELETED
@@ -1,26 +0,0 @@
|
|
1
|
-
require "test_helper"
|
2
|
-
|
3
|
-
class TextTest < Test::Unit::TestCase
|
4
|
-
attr_reader :text
|
5
|
-
|
6
|
-
should "require space to be :preserve or nil" do
|
7
|
-
assert_nothing_raised do
|
8
|
-
@text = Rocx::Elements::Text.new("Banana", space: :preserve)
|
9
|
-
end
|
10
|
-
|
11
|
-
assert_nothing_raised do
|
12
|
-
@text = Rocx::Elements::Text.new("Banana")
|
13
|
-
end
|
14
|
-
|
15
|
-
assert_raises ArgumentError do
|
16
|
-
@text = Rocx::Elements::Text.new("Banana", space: :the_final_frontier)
|
17
|
-
end
|
18
|
-
end
|
19
|
-
|
20
|
-
should "generate the proper XML" do
|
21
|
-
@text = Rocx::Elements::Text.new("Banana", space: :preserve)
|
22
|
-
text_xml = build_xml { |xml| text.to_xml(xml) }
|
23
|
-
assert_equal element_xml("text"), text_xml
|
24
|
-
end
|
25
|
-
|
26
|
-
end
|
data/test/package_test.rb
DELETED
@@ -1,48 +0,0 @@
|
|
1
|
-
require "test_helper"
|
2
|
-
|
3
|
-
class PackageTest < Test::Unit::TestCase
|
4
|
-
attr_reader :package
|
5
|
-
|
6
|
-
context "when starting a new package, it" do
|
7
|
-
setup do
|
8
|
-
@package = Rocx::Package.new
|
9
|
-
end
|
10
|
-
|
11
|
-
should "create the content types part" do
|
12
|
-
assert_kind_of Rocx::Parts::ContentTypes, package.content_types
|
13
|
-
end
|
14
|
-
|
15
|
-
should "create the document part" do
|
16
|
-
assert_kind_of Rocx::Parts::Document, package.document
|
17
|
-
end
|
18
|
-
|
19
|
-
should "create the global rels part" do
|
20
|
-
assert_kind_of Rocx::Parts::GlobalRels, package.global_rels
|
21
|
-
end
|
22
|
-
|
23
|
-
should "create the _rels part" do
|
24
|
-
assert_kind_of Rocx::Parts::Rels, package.rels
|
25
|
-
end
|
26
|
-
|
27
|
-
should "create the settings part" do
|
28
|
-
assert_kind_of Rocx::Parts::Settings, package.settings
|
29
|
-
end
|
30
|
-
|
31
|
-
should "create the styles part" do
|
32
|
-
assert_kind_of Rocx::Parts::Styles, package.styles
|
33
|
-
end
|
34
|
-
end
|
35
|
-
|
36
|
-
context "when saving a package, it" do
|
37
|
-
setup do
|
38
|
-
@package = Rocx::Package.new
|
39
|
-
end
|
40
|
-
|
41
|
-
should "write to a OpenXmlPackage" do
|
42
|
-
path = "some_file.docx"
|
43
|
-
mock.instance_of(OpenXmlPackage).write_to(path)
|
44
|
-
package.save(path)
|
45
|
-
end
|
46
|
-
end
|
47
|
-
|
48
|
-
end
|
@@ -1,37 +0,0 @@
|
|
1
|
-
require "test_helper"
|
2
|
-
|
3
|
-
class ContentTypesTest < Test::Unit::TestCase
|
4
|
-
attr_reader :content_types
|
5
|
-
|
6
|
-
context "when first creating the content types, it" do
|
7
|
-
setup do
|
8
|
-
@content_types = Rocx::Parts::ContentTypes.new
|
9
|
-
end
|
10
|
-
|
11
|
-
should "install the preset defaults" do
|
12
|
-
assert_equal 3, content_types.defaults.length, "Expected the number of defaults generated to match the number of preset defaults"
|
13
|
-
end
|
14
|
-
|
15
|
-
should "install the preset overrides" do
|
16
|
-
assert_equal 2, content_types.overrides.length, "Expected the number of overrides generated to match the number of preset overrides"
|
17
|
-
end
|
18
|
-
end
|
19
|
-
|
20
|
-
context "after initially creating the content types, it" do
|
21
|
-
setup do
|
22
|
-
@content_types = Rocx::Parts::ContentTypes.new
|
23
|
-
end
|
24
|
-
|
25
|
-
should "be able to add additional defaults" do
|
26
|
-
content_types.default "coolml", "text/coolml"
|
27
|
-
assert content_types.defaults.member?({"Extension" => "coolml", "ContentType" => "text/coolml"})
|
28
|
-
end
|
29
|
-
end
|
30
|
-
|
31
|
-
context "transforming to XML" do
|
32
|
-
should "output the correct XML" do
|
33
|
-
@content_types = Rocx::Parts::ContentTypes.new
|
34
|
-
assert_equal part_xml('content_types').strip, content_types.read
|
35
|
-
end
|
36
|
-
end
|
37
|
-
end
|
data/test/parts/document_test.rb
DELETED
@@ -1,31 +0,0 @@
|
|
1
|
-
require "test_helper"
|
2
|
-
|
3
|
-
class DocumentTest < Test::Unit::TestCase
|
4
|
-
attr_reader :document
|
5
|
-
|
6
|
-
context "with child elements, it" do
|
7
|
-
setup do
|
8
|
-
@document = Rocx::Parts::Document.new
|
9
|
-
paragraph = Rocx::Elements::Paragraph.new
|
10
|
-
first_run = Rocx::Elements::Run.new
|
11
|
-
first_run << Rocx::Elements::Text.new("This is just a test run.")
|
12
|
-
paragraph << first_run
|
13
|
-
second_run = Rocx::Elements::Run.new
|
14
|
-
second_run << Rocx::Elements::Text.new("But this isn't!")
|
15
|
-
paragraph << second_run
|
16
|
-
document << paragraph
|
17
|
-
end
|
18
|
-
|
19
|
-
should "output the correct XML" do
|
20
|
-
assert_equal part_xml("document_with_children").strip, document.read
|
21
|
-
end
|
22
|
-
end
|
23
|
-
|
24
|
-
context "transforming to XML" do
|
25
|
-
should "output the correct XML" do
|
26
|
-
@document = Rocx::Parts::Document.new
|
27
|
-
assert_equal part_xml("empty_document").strip, document.read
|
28
|
-
end
|
29
|
-
end
|
30
|
-
|
31
|
-
end
|
@@ -1,13 +0,0 @@
|
|
1
|
-
require "test_helper"
|
2
|
-
|
3
|
-
class GlobalRelsTest < Test::Unit::TestCase
|
4
|
-
attr_reader :global_rels
|
5
|
-
|
6
|
-
context "transforming to XML" do
|
7
|
-
should "output the correct XML" do
|
8
|
-
@global_rels = Rocx::Parts::GlobalRels.new
|
9
|
-
assert_equal part_xml('global_rels').strip, global_rels.read
|
10
|
-
end
|
11
|
-
end
|
12
|
-
|
13
|
-
end
|
data/test/parts/rels_test.rb
DELETED
@@ -1,48 +0,0 @@
|
|
1
|
-
require "test_helper"
|
2
|
-
|
3
|
-
class RelsTest < Test::Unit::TestCase
|
4
|
-
attr_reader :rels
|
5
|
-
|
6
|
-
context "when initially setting up the rels, it" do
|
7
|
-
setup do
|
8
|
-
@rels = Rocx::Parts::Rels.new
|
9
|
-
end
|
10
|
-
|
11
|
-
should "automatically create the relationship to the settings file" do
|
12
|
-
expected_relation = { "Type" => "http://schemas.openxmlformats.org/officeDocument/2006/relationships/settings",
|
13
|
-
"Target" => "/word/settings.xml",
|
14
|
-
"Id" => "R1efaa81aac7a4831" }
|
15
|
-
assert rels.relationships.member?(expected_relation), "Expected the default settings relation to be present"
|
16
|
-
end
|
17
|
-
|
18
|
-
should "automatically create the relationship to the styles file" do
|
19
|
-
expected_relation = { "Type" => "http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles",
|
20
|
-
"Target" => "/word/styles.xml",
|
21
|
-
"Id" => "Rf06246a95c004384" }
|
22
|
-
assert rels.relationships.member?(expected_relation), "Expected the default styles relation to be present"
|
23
|
-
end
|
24
|
-
end
|
25
|
-
|
26
|
-
context "after setting up the rels, it" do
|
27
|
-
setup do
|
28
|
-
@rels = Rocx::Parts::Rels.new
|
29
|
-
end
|
30
|
-
|
31
|
-
should "be possible to add additional relationships" do
|
32
|
-
new_relationship = { "Type" => "http://coolml.org/coolDocument",
|
33
|
-
"Target" => "/cool/cool.xml",
|
34
|
-
"Id" => "123456789"
|
35
|
-
}
|
36
|
-
rels.relationship *new_relationship.values
|
37
|
-
assert rels.relationships.member?(new_relationship), "Expected the new relationship to have been added"
|
38
|
-
end
|
39
|
-
end
|
40
|
-
|
41
|
-
context "transforming to XML" do
|
42
|
-
should "output the correct XML" do
|
43
|
-
@rels = Rocx::Parts::Rels.new
|
44
|
-
assert_equal part_xml('rels').strip, rels.read
|
45
|
-
end
|
46
|
-
end
|
47
|
-
|
48
|
-
end
|
data/test/parts/settings_test.rb
DELETED
@@ -1,13 +0,0 @@
|
|
1
|
-
require "test_helper"
|
2
|
-
|
3
|
-
class SettingsTest < Test::Unit::TestCase
|
4
|
-
attr_reader :settings
|
5
|
-
|
6
|
-
context "transforming to XML" do
|
7
|
-
should "output the correct XML" do
|
8
|
-
@settings = Rocx::Parts::Settings.new
|
9
|
-
assert_equal part_xml('settings').strip, settings.read
|
10
|
-
end
|
11
|
-
end
|
12
|
-
|
13
|
-
end
|
data/test/parts/styles_test.rb
DELETED
@@ -1,29 +0,0 @@
|
|
1
|
-
require "test_helper"
|
2
|
-
|
3
|
-
class StylesTest < Test::Unit::TestCase
|
4
|
-
attr_reader :styles
|
5
|
-
|
6
|
-
context "adding a custom style" do
|
7
|
-
setup do
|
8
|
-
paragraph_styles = {
|
9
|
-
"w:ind" => {"w:firstLine" => "0", "w:left" => "0", "w:right" => "0"},
|
10
|
-
"w:jc" => {"w:val" => "left"}
|
11
|
-
}
|
12
|
-
style = Rocx::Style.new("coolStyle", "paragraph", {}, paragraph_styles)
|
13
|
-
@styles = Rocx::Parts::Styles.new
|
14
|
-
styles << style
|
15
|
-
end
|
16
|
-
|
17
|
-
should "output the style in the generated XML" do
|
18
|
-
assert_equal part_xml("styles_with_custom_style").strip, styles.read
|
19
|
-
end
|
20
|
-
end
|
21
|
-
|
22
|
-
context "transforming to XML" do
|
23
|
-
should "output the correct XML" do
|
24
|
-
@styles = Rocx::Parts::Styles.new
|
25
|
-
assert_equal part_xml('styles').strip, styles.read
|
26
|
-
end
|
27
|
-
end
|
28
|
-
|
29
|
-
end
|
@@ -1,50 +0,0 @@
|
|
1
|
-
require "test_helper"
|
2
|
-
|
3
|
-
class AutoAdjustRightIndentTest < PropertyTest
|
4
|
-
attr_reader :auto_adjust_right_ind
|
5
|
-
|
6
|
-
context "always" do
|
7
|
-
setup do
|
8
|
-
@auto_adjust_right_ind = AutoAdjustRightIndent.new(false)
|
9
|
-
end
|
10
|
-
|
11
|
-
should "have the right tag" do
|
12
|
-
assert_equal :adjustRightInd, auto_adjust_right_ind.tag
|
13
|
-
end
|
14
|
-
|
15
|
-
should "have the right name" do
|
16
|
-
assert_equal "auto_adjust_right_ind", auto_adjust_right_ind.name
|
17
|
-
end
|
18
|
-
end
|
19
|
-
|
20
|
-
context "when the value is true, it" do
|
21
|
-
setup do
|
22
|
-
@auto_adjust_right_ind = AutoAdjustRightIndent.new(true)
|
23
|
-
end
|
24
|
-
|
25
|
-
should "return XML" do
|
26
|
-
assert_equal "<w:adjustRightInd w:val=\"true\"/>", xml(auto_adjust_right_ind)
|
27
|
-
end
|
28
|
-
end
|
29
|
-
|
30
|
-
context "when the value is false, it" do
|
31
|
-
setup do
|
32
|
-
@auto_adjust_right_ind = AutoAdjustRightIndent.new(false)
|
33
|
-
end
|
34
|
-
|
35
|
-
should "not return XML" do
|
36
|
-
assert_equal "", xml(auto_adjust_right_ind)
|
37
|
-
end
|
38
|
-
end
|
39
|
-
|
40
|
-
context "when the value is nil, it" do
|
41
|
-
setup do
|
42
|
-
@auto_adjust_right_ind = AutoAdjustRightIndent.new(nil)
|
43
|
-
end
|
44
|
-
|
45
|
-
should "not return XML" do
|
46
|
-
assert_equal "", xml(auto_adjust_right_ind)
|
47
|
-
end
|
48
|
-
end
|
49
|
-
|
50
|
-
end
|