From 89959563022ff2385d80ff481bbeed21b86f9c2c Mon Sep 17 00:00:00 2001 From: Adam Co Date: Tue, 4 Feb 2014 15:02:08 +0200 Subject: [PATCH] Add unit-tests for DOCX preservation of 'table row redline' Added unit-tests to make sure that 'table row redlines' (e.g. - table row was inserted \ removed) are being round tripped correctly from a DOCX file. Change-Id: I369dd32e7372d0cf0add19197f07d0ad604e9ef0 Reviewed-on: https://gerrit.libreoffice.org/7849 Reviewed-by: Miklos Vajna Tested-by: Miklos Vajna --- .../data/testTrackChangesDeletedTableRow.docx | Bin 0 -> 16518 bytes .../data/testTrackChangesInsertedTableRow.docx | Bin 0 -> 16290 bytes sw/qa/extras/ooxmlexport/ooxmlexport.cxx | 16 ++++++++++++++++ 3 files changed, 16 insertions(+) create mode 100644 sw/qa/extras/ooxmlexport/data/testTrackChangesDeletedTableRow.docx create mode 100644 sw/qa/extras/ooxmlexport/data/testTrackChangesInsertedTableRow.docx diff --git a/sw/qa/extras/ooxmlexport/data/testTrackChangesDeletedTableRow.docx b/sw/qa/extras/ooxmlexport/data/testTrackChangesDeletedTableRow.docx new file mode 100644 index 0000000000000000000000000000000000000000..71c49987861597d211a9e0d54792791a4e3583d3 GIT binary patch literal 16518 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