diff options
author | Miklos Vajna <vmiklos@collabora.co.uk> | 2013-11-12 11:00:24 +0100 |
---|---|---|
committer | Miklos Vajna <vmiklos@collabora.co.uk> | 2013-11-12 11:03:06 +0100 |
commit | 12fd49a2701f4d23f23f0770bd40c8cd20b523c7 (patch) | |
tree | 630528227acb6c4cfd7fee8abee569f03de181df /sw/qa/extras/htmlexport | |
parent | 0215131e36fdabf0e2b02c2f8032d393f31195c3 (diff) |
CppunitTest_sw_htmlexport: make this really test the exported model
There were two problems here:
1) The original testsuite just served as a crash-test for the HTML
export filter, but the second testcase assumed it also reloads the
document model. Once this is fixed, we notice that:
2) There are some nasty 'mm100 <-> in' rounding errors, work this around
by using cms unconditionally.
(Exact problem was that CharTopBorderDistance was 457, but was expected
to be 450.)
Change-Id: Iaa1f98486767e4dfa81c2ca3e456bc39131977eb
Diffstat (limited to 'sw/qa/extras/htmlexport')
-rw-r--r-- | sw/qa/extras/htmlexport/htmlexport.cxx | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/sw/qa/extras/htmlexport/htmlexport.cxx b/sw/qa/extras/htmlexport/htmlexport.cxx index 6ebaad50d3d7..b200cdaf643d 100644 --- a/sw/qa/extras/htmlexport/htmlexport.cxx +++ b/sw/qa/extras/htmlexport/htmlexport.cxx @@ -10,6 +10,8 @@ #include <swmodeltestbase.hxx> #include <com/sun/star/awt/Gradient.hpp> #include <com/sun/star/drawing/FillStyle.hpp> +#include <swmodule.hxx> +#include <usrpref.hxx> class Test : public SwModelTestBase { @@ -37,10 +39,22 @@ void Test::run() for (unsigned int i = 0; i < SAL_N_ELEMENTS(aMethods); ++i) { MethodEntry<Test>& rEntry = aMethods[i]; + FieldUnit eUnit = FUNIT_NONE; + if (OString(rEntry.pName) == "charborder.odt") + { + // FIXME if padding-top gets exported as inches, not cms, we get rounding errors. + SwMasterUsrPref* pPref = const_cast<SwMasterUsrPref*>(SW_MOD()->GetUsrPref(false)); + eUnit = pPref->GetMetric(); + pPref->SetMetric(FUNIT_CM); + } load("/sw/qa/extras/htmlexport/data/", rEntry.pName, false /* not doing layout is required for this test */); - utl::TempFile aFile; - save("HTML", aFile); + reload("HTML (StarWriter)"); + if (OString(rEntry.pName) == "charborder.odt") + { + SwMasterUsrPref* pPref = const_cast<SwMasterUsrPref*>(SW_MOD()->GetUsrPref(false)); + pPref->SetMetric(eUnit); + } (this->*rEntry.pMethod)(); finish(); } |