From 916b4b05ce7b4dd5a254a72a1d98051655627dbc Mon Sep 17 00:00:00 2001 From: dan sinclair Date: Mon, 19 Feb 2018 15:33:13 +0000 Subject: Skip font loading in formcalc embedder tests This CL changes XFA to skip font loading for embedder tests. This takes the runtime for the CFXJSE_Formcalc_ECFXJSE_FormCalcContextEmbedderTest run from ~25sec to ~5sec. Change-Id: If9989c5a3474cccd3915ec3f5c178d7af48aae37 Reviewed-on: https://pdfium-review.googlesource.com/27191 Commit-Queue: Ryan Harrison Reviewed-by: Ryan Harrison --- xfa/fxfa/cxfa_ffapp.cpp | 17 +++++++++++++++-- xfa/fxfa/cxfa_ffapp.h | 2 ++ 2 files changed, 17 insertions(+), 2 deletions(-) (limited to 'xfa') diff --git a/xfa/fxfa/cxfa_ffapp.cpp b/xfa/fxfa/cxfa_ffapp.cpp index 4cb9deb466..cdbc6461b5 100644 --- a/xfa/fxfa/cxfa_ffapp.cpp +++ b/xfa/fxfa/cxfa_ffapp.cpp @@ -22,6 +22,17 @@ #include "xfa/fxfa/cxfa_fwladapterwidgetmgr.h" #include "xfa/fxfa/cxfa_fwltheme.h" +namespace { + +static bool kSkipFontLoadForTesting = false; + +} // namespace + +// static +void CXFA_FFApp::SkipFontLoadForTesting(bool skip) { + kSkipFontLoadForTesting = skip; +} + CXFA_FFApp::CXFA_FFApp(IXFA_AppProvider* pProvider) : m_pProvider(pProvider) { // Ensure fully initialized before making an app based on |this|. m_pFWLApp = pdfium::MakeUnique(this); @@ -56,8 +67,10 @@ CXFA_FontMgr* CXFA_FFApp::GetXFAFontMgr() const { CFGAS_FontMgr* CXFA_FFApp::GetFDEFontMgr() { if (!m_pFDEFontMgr) { m_pFDEFontMgr = pdfium::MakeUnique(); - if (!m_pFDEFontMgr->EnumFonts()) - m_pFDEFontMgr = nullptr; + if (!kSkipFontLoadForTesting) { + if (!m_pFDEFontMgr->EnumFonts()) + m_pFDEFontMgr = nullptr; + } } return m_pFDEFontMgr.get(); } diff --git a/xfa/fxfa/cxfa_ffapp.h b/xfa/fxfa/cxfa_ffapp.h index 8ffd657897..b63f058367 100644 --- a/xfa/fxfa/cxfa_ffapp.h +++ b/xfa/fxfa/cxfa_ffapp.h @@ -29,6 +29,8 @@ class IFWL_AdapterTimerMgr; class CXFA_FFApp { public: + static void SkipFontLoadForTesting(bool skip); + explicit CXFA_FFApp(IXFA_AppProvider* pProvider); ~CXFA_FFApp(); -- cgit v1.2.3