Add builder pattern for paragraph, lists, tables

This commit is contained in:
2025-12-02 10:57:54 +01:00
parent 50c9c20eca
commit b602b2a2ff
25 changed files with 1248 additions and 47 deletions

View File

@@ -3,3 +3,33 @@
$LOAD_PATH.unshift File.expand_path("../lib", __dir__)
require "ezdoc"
require "minitest/autorun"
require "tempfile"
require "zip"
module EzdocTestHelpers
# Helper to create a document and return the document.xml content
def create_doc_and_read_xml(&block)
content = nil
Tempfile.create(["test", ".docx"]) do |file|
Ezdoc::Document.create(file.path, &block)
Zip::File.open(file.path) do |zip|
content = zip.read("word/document.xml").force_encoding("UTF-8")
end
end
content
end
# Helper to create a document and return all XML files
def create_doc_and_read_all_xml(&block)
result = {}
Tempfile.create(["test", ".docx"]) do |file|
Ezdoc::Document.create(file.path, &block)
Zip::File.open(file.path) do |zip|
zip.each do |entry|
result[entry.name] = zip.read(entry.name).force_encoding("UTF-8") if entry.name.end_with?(".xml")
end
end
end
result
end
end