1// Copyright 2013 The Chromium 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 "content/shell/app/webkit_test_platform_support.h" 6 7#include "base/files/file_path.h" 8#include "base/files/file_util.h" 9#include "base/logging.h" 10#include "base/path_service.h" 11#include "ui/gfx/test/fontconfig_util_linux.h" 12 13namespace content { 14 15namespace { 16 17const char* const kLocalFonts[] = { 18 "AHEM____.TTF", 19 "GardinerModBug.ttf", 20 "GardinerModCat.ttf", 21}; 22 23} // namespace 24 25bool CheckLayoutSystemDeps() { 26 return true; 27} 28 29bool WebKitTestPlatformInitialize() { 30 gfx::SetUpFontconfig(); 31 32 base::FilePath base_path; 33 PathService::Get(base::DIR_MODULE, &base_path); 34 if (!gfx::LoadConfigFileIntoFontconfig( 35 base_path.Append(FILE_PATH_LITERAL("fonts.conf")))) 36 return false; 37 38 for (size_t i = 0; i < gfx::kNumSystemFontsForFontconfig; ++i) { 39 if (!gfx::LoadFontIntoFontconfig( 40 base::FilePath(gfx::kSystemFontsForFontconfig[i]))) { 41 return false; 42 } 43 } 44 for (size_t i = 0; i < arraysize(kLocalFonts); ++i) { 45 if (!gfx::LoadFontIntoFontconfig(base_path.Append(kLocalFonts[i]))) 46 return false; 47 } 48 49 base::FilePath garuda_path("/usr/share/fonts/truetype/thai/Garuda.ttf"); 50 if (!base::PathExists(garuda_path)) 51 garuda_path = base::FilePath("/usr/share/fonts/truetype/tlwg/Garuda.ttf"); 52 if (!gfx::LoadFontIntoFontconfig(garuda_path)) 53 return false; 54 55 // We special case these fonts because they're only needed in a few layout 56 // tests. 57 base::FilePath lohit_path( 58 "/usr/share/fonts/truetype/ttf-indic-fonts-core/lohit_pa.ttf"); 59 if (!base::PathExists(lohit_path)) { 60 lohit_path = base::FilePath( 61 "/usr/share/fonts/truetype/ttf-punjabi-fonts/lohit_pa.ttf"); 62 } 63 gfx::LoadFontIntoFontconfig(lohit_path); 64 65 return true; 66} 67 68} // namespace content 69