blob: 4d7747d6ce10902b6242b0cfd46d3a03af732842 [file] [log] [blame]
Tom Sepez22818532020-07-22 20:40:56 +00001// Copyright 2019 PDFium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#include "testing/xfa_test_environment.h"
6
Tom Sepez22818532020-07-22 20:40:56 +00007#include "core/fxge/cfx_fontmgr.h"
8#include "core/fxge/cfx_gemodule.h"
9#include "core/fxge/systemfontinfo_iface.h"
Tom Sepez25f33d02021-01-29 01:58:51 +000010#include "third_party/base/check.h"
Tom Sepez0aed4272020-09-08 22:48:08 +000011#include "xfa/fgas/font/cfgas_gemodule.h"
Tom Sepez22818532020-07-22 20:40:56 +000012
13namespace {
14
15XFATestEnvironment* g_env = nullptr;
16
17} // namespace
18
19XFATestEnvironment::XFATestEnvironment() {
Tom Sepez25f33d02021-01-29 01:58:51 +000020 DCHECK(!g_env);
Tom Sepez22818532020-07-22 20:40:56 +000021 g_env = this;
22}
23
24XFATestEnvironment::~XFATestEnvironment() {
Tom Sepez25f33d02021-01-29 01:58:51 +000025 DCHECK(g_env);
Tom Sepez22818532020-07-22 20:40:56 +000026 g_env = nullptr;
27}
28
29void XFATestEnvironment::SetUp() {
Tom Sepez22818532020-07-22 20:40:56 +000030 CFX_GEModule::Get()->GetFontMgr()->SetSystemFontInfo(
Tom Sepez9873bf32020-08-24 17:16:36 +000031 CFX_GEModule::Get()->GetPlatform()->CreateDefaultSystemFontInfo());
Tom Sepez22818532020-07-22 20:40:56 +000032
Tom Sepez0aed4272020-09-08 22:48:08 +000033 // The font loading that takes place in CFGAS_GEModule::Create() is slow,
34 // but we do it only once per binary execution, not once per test.
35 CFGAS_GEModule::Create();
Tom Sepez22818532020-07-22 20:40:56 +000036}
37
38void XFATestEnvironment::TearDown() {
Tom Sepez0aed4272020-09-08 22:48:08 +000039 CFGAS_GEModule::Destroy();
Tom Sepez22818532020-07-22 20:40:56 +000040}