Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(273)

Side by Side Diff: ui/gfx/font_render_params_linux_unittest.cc

Issue 2317123003: misc files R-U: Change ScopedTempDir::path() to GetPath() (Closed)
Patch Set: Just rebased Created 4 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « ui/base/resource/resource_bundle_unittest.cc ('k') | ui/gfx/icon_util_unittest.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "ui/gfx/font_render_params.h" 5 #include "ui/gfx/font_render_params.h"
6 6
7 #include "base/files/scoped_temp_dir.h" 7 #include "base/files/scoped_temp_dir.h"
8 #include "base/logging.h" 8 #include "base/logging.h"
9 #include "base/macros.h" 9 #include "base/macros.h"
10 #include "build/build_config.h" 10 #include "build/build_config.h"
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after
65 base::ScopedTempDir temp_dir_; 65 base::ScopedTempDir temp_dir_;
66 const LinuxFontDelegate* original_font_delegate_; 66 const LinuxFontDelegate* original_font_delegate_;
67 TestFontDelegate test_font_delegate_; 67 TestFontDelegate test_font_delegate_;
68 68
69 private: 69 private:
70 DISALLOW_COPY_AND_ASSIGN(FontRenderParamsTest); 70 DISALLOW_COPY_AND_ASSIGN(FontRenderParamsTest);
71 }; 71 };
72 72
73 TEST_F(FontRenderParamsTest, Default) { 73 TEST_F(FontRenderParamsTest, Default) {
74 ASSERT_TRUE(LoadSystemFontIntoFontconfig("arial.ttf")); 74 ASSERT_TRUE(LoadSystemFontIntoFontconfig("arial.ttf"));
75 ASSERT_TRUE(LoadConfigDataIntoFontconfig(temp_dir_.path(), 75 ASSERT_TRUE(LoadConfigDataIntoFontconfig(
76 temp_dir_.GetPath(),
76 std::string(kFontconfigFileHeader) + 77 std::string(kFontconfigFileHeader) +
77 // Specify the desired defaults via a font match rather than a pattern 78 // Specify the desired defaults via a font match rather than a pattern
78 // match (since this is the style generally used in /etc/fonts/conf.d). 79 // match (since this is the style generally used in
79 kFontconfigMatchFontHeader + 80 // /etc/fonts/conf.d).
80 CreateFontconfigEditStanza("antialias", "bool", "true") + 81 kFontconfigMatchFontHeader +
81 CreateFontconfigEditStanza("autohint", "bool", "true") + 82 CreateFontconfigEditStanza("antialias", "bool", "true") +
82 CreateFontconfigEditStanza("hinting", "bool", "true") + 83 CreateFontconfigEditStanza("autohint", "bool", "true") +
83 CreateFontconfigEditStanza("hintstyle", "const", "hintslight") + 84 CreateFontconfigEditStanza("hinting", "bool", "true") +
84 CreateFontconfigEditStanza("rgba", "const", "rgb") + 85 CreateFontconfigEditStanza("hintstyle", "const", "hintslight") +
85 kFontconfigMatchFooter + 86 CreateFontconfigEditStanza("rgba", "const", "rgb") +
86 // Add a font match for Arial. Since it specifies a family, it shouldn't 87 kFontconfigMatchFooter +
87 // take effect when querying default settings. 88 // Add a font match for Arial. Since it specifies a family, it
88 kFontconfigMatchFontHeader + 89 // shouldn't
89 CreateFontconfigTestStanza("family", "eq", "string", "Arial") + 90 // take effect when querying default settings.
90 CreateFontconfigEditStanza("antialias", "bool", "true") + 91 kFontconfigMatchFontHeader +
91 CreateFontconfigEditStanza("autohint", "bool", "false") + 92 CreateFontconfigTestStanza("family", "eq", "string", "Arial") +
92 CreateFontconfigEditStanza("hinting", "bool", "true") + 93 CreateFontconfigEditStanza("antialias", "bool", "true") +
93 CreateFontconfigEditStanza("hintstyle", "const", "hintfull") + 94 CreateFontconfigEditStanza("autohint", "bool", "false") +
94 CreateFontconfigEditStanza("rgba", "const", "none") + 95 CreateFontconfigEditStanza("hinting", "bool", "true") +
95 kFontconfigMatchFooter + 96 CreateFontconfigEditStanza("hintstyle", "const", "hintfull") +
96 // Add font matches for fonts between 10 and 20 points or pixels. Since 97 CreateFontconfigEditStanza("rgba", "const", "none") +
97 // they specify sizes, they also should not affect the defaults. 98 kFontconfigMatchFooter +
98 kFontconfigMatchFontHeader + 99 // Add font matches for fonts between 10 and 20 points or pixels.
99 CreateFontconfigTestStanza("size", "more_eq", "double", "10.0") + 100 // Since
100 CreateFontconfigTestStanza("size", "less_eq", "double", "20.0") + 101 // they specify sizes, they also should not affect the defaults.
101 CreateFontconfigEditStanza("antialias", "bool", "false") + 102 kFontconfigMatchFontHeader +
102 kFontconfigMatchFooter + 103 CreateFontconfigTestStanza("size", "more_eq", "double", "10.0") +
103 kFontconfigMatchFontHeader + 104 CreateFontconfigTestStanza("size", "less_eq", "double", "20.0") +
104 CreateFontconfigTestStanza("pixel_size", "more_eq", "double", "10.0") + 105 CreateFontconfigEditStanza("antialias", "bool", "false") +
105 CreateFontconfigTestStanza("pixel_size", "less_eq", "double", "20.0") + 106 kFontconfigMatchFooter + kFontconfigMatchFontHeader +
106 CreateFontconfigEditStanza("antialias", "bool", "false") + 107 CreateFontconfigTestStanza("pixel_size", "more_eq", "double",
107 kFontconfigMatchFooter + 108 "10.0") +
108 kFontconfigFileFooter)); 109 CreateFontconfigTestStanza("pixel_size", "less_eq", "double",
110 "20.0") +
111 CreateFontconfigEditStanza("antialias", "bool", "false") +
112 kFontconfigMatchFooter + kFontconfigFileFooter));
109 113
110 FontRenderParams params = GetFontRenderParams( 114 FontRenderParams params = GetFontRenderParams(
111 FontRenderParamsQuery(), NULL); 115 FontRenderParamsQuery(), NULL);
112 EXPECT_TRUE(params.antialiasing); 116 EXPECT_TRUE(params.antialiasing);
113 EXPECT_TRUE(params.autohinter); 117 EXPECT_TRUE(params.autohinter);
114 EXPECT_TRUE(params.use_bitmaps); 118 EXPECT_TRUE(params.use_bitmaps);
115 EXPECT_EQ(FontRenderParams::HINTING_SLIGHT, params.hinting); 119 EXPECT_EQ(FontRenderParams::HINTING_SLIGHT, params.hinting);
116 EXPECT_FALSE(params.subpixel_positioning); 120 EXPECT_FALSE(params.subpixel_positioning);
117 EXPECT_EQ(FontRenderParams::SUBPIXEL_RENDERING_RGB, 121 EXPECT_EQ(FontRenderParams::SUBPIXEL_RENDERING_RGB,
118 params.subpixel_rendering); 122 params.subpixel_rendering);
119 } 123 }
120 124
121 TEST_F(FontRenderParamsTest, Size) { 125 TEST_F(FontRenderParamsTest, Size) {
122 ASSERT_TRUE(LoadSystemFontIntoFontconfig("arial.ttf")); 126 ASSERT_TRUE(LoadSystemFontIntoFontconfig("arial.ttf"));
123 ASSERT_TRUE(LoadConfigDataIntoFontconfig(temp_dir_.path(), 127 ASSERT_TRUE(LoadConfigDataIntoFontconfig(
124 std::string(kFontconfigFileHeader) + 128 temp_dir_.GetPath(),
125 kFontconfigMatchPatternHeader + 129 std::string(kFontconfigFileHeader) + kFontconfigMatchPatternHeader +
126 CreateFontconfigEditStanza("antialias", "bool", "true") + 130 CreateFontconfigEditStanza("antialias", "bool", "true") +
127 CreateFontconfigEditStanza("hinting", "bool", "true") + 131 CreateFontconfigEditStanza("hinting", "bool", "true") +
128 CreateFontconfigEditStanza("hintstyle", "const", "hintfull") + 132 CreateFontconfigEditStanza("hintstyle", "const", "hintfull") +
129 CreateFontconfigEditStanza("rgba", "const", "none") + 133 CreateFontconfigEditStanza("rgba", "const", "none") +
130 kFontconfigMatchFooter + 134 kFontconfigMatchFooter + kFontconfigMatchPatternHeader +
131 kFontconfigMatchPatternHeader + 135 CreateFontconfigTestStanza("pixelsize", "less_eq", "double", "10") +
132 CreateFontconfigTestStanza("pixelsize", "less_eq", "double", "10") + 136 CreateFontconfigEditStanza("antialias", "bool", "false") +
133 CreateFontconfigEditStanza("antialias", "bool", "false") + 137 kFontconfigMatchFooter + kFontconfigMatchPatternHeader +
134 kFontconfigMatchFooter + 138 CreateFontconfigTestStanza("size", "more_eq", "double", "20") +
135 kFontconfigMatchPatternHeader + 139 CreateFontconfigEditStanza("hintstyle", "const", "hintslight") +
136 CreateFontconfigTestStanza("size", "more_eq", "double", "20") + 140 CreateFontconfigEditStanza("rgba", "const", "rgb") +
137 CreateFontconfigEditStanza("hintstyle", "const", "hintslight") + 141 kFontconfigMatchFooter + kFontconfigFileFooter));
138 CreateFontconfigEditStanza("rgba", "const", "rgb") +
139 kFontconfigMatchFooter +
140 kFontconfigFileFooter));
141 142
142 // The defaults should be used when the supplied size isn't matched by the 143 // The defaults should be used when the supplied size isn't matched by the
143 // second or third blocks. 144 // second or third blocks.
144 FontRenderParamsQuery query; 145 FontRenderParamsQuery query;
145 query.pixel_size = 12; 146 query.pixel_size = 12;
146 FontRenderParams params = GetFontRenderParams(query, NULL); 147 FontRenderParams params = GetFontRenderParams(query, NULL);
147 EXPECT_TRUE(params.antialiasing); 148 EXPECT_TRUE(params.antialiasing);
148 EXPECT_EQ(FontRenderParams::HINTING_FULL, params.hinting); 149 EXPECT_EQ(FontRenderParams::HINTING_FULL, params.hinting);
149 EXPECT_EQ(FontRenderParams::SUBPIXEL_RENDERING_NONE, 150 EXPECT_EQ(FontRenderParams::SUBPIXEL_RENDERING_NONE,
150 params.subpixel_rendering); 151 params.subpixel_rendering);
(...skipping 11 matching lines...) Expand all
162 EXPECT_TRUE(params.antialiasing); 163 EXPECT_TRUE(params.antialiasing);
163 EXPECT_EQ(FontRenderParams::HINTING_SLIGHT, params.hinting); 164 EXPECT_EQ(FontRenderParams::HINTING_SLIGHT, params.hinting);
164 EXPECT_EQ(FontRenderParams::SUBPIXEL_RENDERING_RGB, 165 EXPECT_EQ(FontRenderParams::SUBPIXEL_RENDERING_RGB,
165 params.subpixel_rendering); 166 params.subpixel_rendering);
166 } 167 }
167 168
168 TEST_F(FontRenderParamsTest, Style) { 169 TEST_F(FontRenderParamsTest, Style) {
169 ASSERT_TRUE(LoadSystemFontIntoFontconfig("arial.ttf")); 170 ASSERT_TRUE(LoadSystemFontIntoFontconfig("arial.ttf"));
170 // Load a config that disables subpixel rendering for bold text and disables 171 // Load a config that disables subpixel rendering for bold text and disables
171 // hinting for italic text. 172 // hinting for italic text.
172 ASSERT_TRUE(LoadConfigDataIntoFontconfig(temp_dir_.path(), 173 ASSERT_TRUE(LoadConfigDataIntoFontconfig(
173 std::string(kFontconfigFileHeader) + 174 temp_dir_.GetPath(),
174 kFontconfigMatchPatternHeader + 175 std::string(kFontconfigFileHeader) + kFontconfigMatchPatternHeader +
175 CreateFontconfigEditStanza("antialias", "bool", "true") + 176 CreateFontconfigEditStanza("antialias", "bool", "true") +
176 CreateFontconfigEditStanza("hinting", "bool", "true") + 177 CreateFontconfigEditStanza("hinting", "bool", "true") +
177 CreateFontconfigEditStanza("hintstyle", "const", "hintslight") + 178 CreateFontconfigEditStanza("hintstyle", "const", "hintslight") +
178 CreateFontconfigEditStanza("rgba", "const", "rgb") + 179 CreateFontconfigEditStanza("rgba", "const", "rgb") +
179 kFontconfigMatchFooter + 180 kFontconfigMatchFooter + kFontconfigMatchPatternHeader +
180 kFontconfigMatchPatternHeader + 181 CreateFontconfigTestStanza("weight", "eq", "const", "bold") +
181 CreateFontconfigTestStanza("weight", "eq", "const", "bold") + 182 CreateFontconfigEditStanza("rgba", "const", "none") +
182 CreateFontconfigEditStanza("rgba", "const", "none") + 183 kFontconfigMatchFooter + kFontconfigMatchPatternHeader +
183 kFontconfigMatchFooter + 184 CreateFontconfigTestStanza("slant", "eq", "const", "italic") +
184 kFontconfigMatchPatternHeader + 185 CreateFontconfigEditStanza("hinting", "bool", "false") +
185 CreateFontconfigTestStanza("slant", "eq", "const", "italic") + 186 kFontconfigMatchFooter + kFontconfigFileFooter));
186 CreateFontconfigEditStanza("hinting", "bool", "false") +
187 kFontconfigMatchFooter +
188 kFontconfigFileFooter));
189 187
190 FontRenderParamsQuery query; 188 FontRenderParamsQuery query;
191 query.style = Font::NORMAL; 189 query.style = Font::NORMAL;
192 FontRenderParams params = GetFontRenderParams(query, NULL); 190 FontRenderParams params = GetFontRenderParams(query, NULL);
193 EXPECT_EQ(FontRenderParams::HINTING_SLIGHT, params.hinting); 191 EXPECT_EQ(FontRenderParams::HINTING_SLIGHT, params.hinting);
194 EXPECT_EQ(FontRenderParams::SUBPIXEL_RENDERING_RGB, 192 EXPECT_EQ(FontRenderParams::SUBPIXEL_RENDERING_RGB,
195 params.subpixel_rendering); 193 params.subpixel_rendering);
196 194
197 query.weight = Font::Weight::BOLD; 195 query.weight = Font::Weight::BOLD;
198 params = GetFontRenderParams(query, NULL); 196 params = GetFontRenderParams(query, NULL);
(...skipping 11 matching lines...) Expand all
210 query.weight = Font::Weight::BOLD; 208 query.weight = Font::Weight::BOLD;
211 query.style = Font::ITALIC; 209 query.style = Font::ITALIC;
212 params = GetFontRenderParams(query, NULL); 210 params = GetFontRenderParams(query, NULL);
213 EXPECT_EQ(FontRenderParams::HINTING_NONE, params.hinting); 211 EXPECT_EQ(FontRenderParams::HINTING_NONE, params.hinting);
214 EXPECT_EQ(FontRenderParams::SUBPIXEL_RENDERING_NONE, 212 EXPECT_EQ(FontRenderParams::SUBPIXEL_RENDERING_NONE,
215 params.subpixel_rendering); 213 params.subpixel_rendering);
216 } 214 }
217 215
218 TEST_F(FontRenderParamsTest, Scalable) { 216 TEST_F(FontRenderParamsTest, Scalable) {
219 // Load a config that only enables antialiasing for scalable fonts. 217 // Load a config that only enables antialiasing for scalable fonts.
220 ASSERT_TRUE(LoadConfigDataIntoFontconfig(temp_dir_.path(), 218 ASSERT_TRUE(LoadConfigDataIntoFontconfig(
221 std::string(kFontconfigFileHeader) + 219 temp_dir_.GetPath(),
222 kFontconfigMatchPatternHeader + 220 std::string(kFontconfigFileHeader) + kFontconfigMatchPatternHeader +
223 CreateFontconfigEditStanza("antialias", "bool", "false") + 221 CreateFontconfigEditStanza("antialias", "bool", "false") +
224 kFontconfigMatchFooter + 222 kFontconfigMatchFooter + kFontconfigMatchPatternHeader +
225 kFontconfigMatchPatternHeader + 223 CreateFontconfigTestStanza("scalable", "eq", "bool", "true") +
226 CreateFontconfigTestStanza("scalable", "eq", "bool", "true") + 224 CreateFontconfigEditStanza("antialias", "bool", "true") +
227 CreateFontconfigEditStanza("antialias", "bool", "true") + 225 kFontconfigMatchFooter + kFontconfigFileFooter));
228 kFontconfigMatchFooter +
229 kFontconfigFileFooter));
230 226
231 // Check that we specifically ask how scalable fonts should be rendered. 227 // Check that we specifically ask how scalable fonts should be rendered.
232 FontRenderParams params = GetFontRenderParams( 228 FontRenderParams params = GetFontRenderParams(
233 FontRenderParamsQuery(), NULL); 229 FontRenderParamsQuery(), NULL);
234 EXPECT_TRUE(params.antialiasing); 230 EXPECT_TRUE(params.antialiasing);
235 } 231 }
236 232
237 TEST_F(FontRenderParamsTest, UseBitmaps) { 233 TEST_F(FontRenderParamsTest, UseBitmaps) {
238 ASSERT_TRUE(LoadSystemFontIntoFontconfig("arial.ttf")); 234 ASSERT_TRUE(LoadSystemFontIntoFontconfig("arial.ttf"));
239 // Load a config that enables embedded bitmaps for fonts <= 10 pixels. 235 // Load a config that enables embedded bitmaps for fonts <= 10 pixels.
240 ASSERT_TRUE(LoadConfigDataIntoFontconfig(temp_dir_.path(), 236 ASSERT_TRUE(LoadConfigDataIntoFontconfig(
241 std::string(kFontconfigFileHeader) + 237 temp_dir_.GetPath(),
242 kFontconfigMatchPatternHeader + 238 std::string(kFontconfigFileHeader) + kFontconfigMatchPatternHeader +
243 CreateFontconfigEditStanza("embeddedbitmap", "bool", "false") + 239 CreateFontconfigEditStanza("embeddedbitmap", "bool", "false") +
244 kFontconfigMatchFooter + 240 kFontconfigMatchFooter + kFontconfigMatchPatternHeader +
245 kFontconfigMatchPatternHeader + 241 CreateFontconfigTestStanza("pixelsize", "less_eq", "double", "10") +
246 CreateFontconfigTestStanza("pixelsize", "less_eq", "double", "10") + 242 CreateFontconfigEditStanza("embeddedbitmap", "bool", "true") +
247 CreateFontconfigEditStanza("embeddedbitmap", "bool", "true") + 243 kFontconfigMatchFooter + kFontconfigFileFooter));
248 kFontconfigMatchFooter +
249 kFontconfigFileFooter));
250 244
251 FontRenderParamsQuery query; 245 FontRenderParamsQuery query;
252 FontRenderParams params = GetFontRenderParams(query, NULL); 246 FontRenderParams params = GetFontRenderParams(query, NULL);
253 EXPECT_FALSE(params.use_bitmaps); 247 EXPECT_FALSE(params.use_bitmaps);
254 248
255 query.pixel_size = 5; 249 query.pixel_size = 5;
256 params = GetFontRenderParams(query, NULL); 250 params = GetFontRenderParams(query, NULL);
257 EXPECT_TRUE(params.use_bitmaps); 251 EXPECT_TRUE(params.use_bitmaps);
258 } 252 }
259 253
260 TEST_F(FontRenderParamsTest, ForceFullHintingWhenAntialiasingIsDisabled) { 254 TEST_F(FontRenderParamsTest, ForceFullHintingWhenAntialiasingIsDisabled) {
261 // Load a config that disables antialiasing and hinting while requesting 255 // Load a config that disables antialiasing and hinting while requesting
262 // subpixel rendering. 256 // subpixel rendering.
263 ASSERT_TRUE(LoadConfigDataIntoFontconfig(temp_dir_.path(), 257 ASSERT_TRUE(LoadConfigDataIntoFontconfig(
264 std::string(kFontconfigFileHeader) + 258 temp_dir_.GetPath(),
265 kFontconfigMatchPatternHeader + 259 std::string(kFontconfigFileHeader) + kFontconfigMatchPatternHeader +
266 CreateFontconfigEditStanza("antialias", "bool", "false") + 260 CreateFontconfigEditStanza("antialias", "bool", "false") +
267 CreateFontconfigEditStanza("hinting", "bool", "false") + 261 CreateFontconfigEditStanza("hinting", "bool", "false") +
268 CreateFontconfigEditStanza("hintstyle", "const", "hintnone") + 262 CreateFontconfigEditStanza("hintstyle", "const", "hintnone") +
269 CreateFontconfigEditStanza("rgba", "const", "rgb") + 263 CreateFontconfigEditStanza("rgba", "const", "rgb") +
270 kFontconfigMatchFooter + 264 kFontconfigMatchFooter + kFontconfigFileFooter));
271 kFontconfigFileFooter));
272 265
273 // Full hinting should be forced. See the comment in GetFontRenderParams() for 266 // Full hinting should be forced. See the comment in GetFontRenderParams() for
274 // more information. 267 // more information.
275 FontRenderParams params = GetFontRenderParams( 268 FontRenderParams params = GetFontRenderParams(
276 FontRenderParamsQuery(), NULL); 269 FontRenderParamsQuery(), NULL);
277 EXPECT_FALSE(params.antialiasing); 270 EXPECT_FALSE(params.antialiasing);
278 EXPECT_EQ(FontRenderParams::HINTING_FULL, params.hinting); 271 EXPECT_EQ(FontRenderParams::HINTING_FULL, params.hinting);
279 EXPECT_EQ(FontRenderParams::SUBPIXEL_RENDERING_NONE, 272 EXPECT_EQ(FontRenderParams::SUBPIXEL_RENDERING_NONE,
280 params.subpixel_rendering); 273 params.subpixel_rendering);
281 EXPECT_FALSE(params.subpixel_positioning); 274 EXPECT_FALSE(params.subpixel_positioning);
(...skipping 21 matching lines...) Expand all
303 296
304 TEST_F(FontRenderParamsTest, OnlySetConfiguredValues) { 297 TEST_F(FontRenderParamsTest, OnlySetConfiguredValues) {
305 // Configure the LinuxFontDelegate (which queries GtkSettings on desktop 298 // Configure the LinuxFontDelegate (which queries GtkSettings on desktop
306 // Linux) to request subpixel rendering. 299 // Linux) to request subpixel rendering.
307 FontRenderParams system_params; 300 FontRenderParams system_params;
308 system_params.subpixel_rendering = FontRenderParams::SUBPIXEL_RENDERING_RGB; 301 system_params.subpixel_rendering = FontRenderParams::SUBPIXEL_RENDERING_RGB;
309 test_font_delegate_.set_params(system_params); 302 test_font_delegate_.set_params(system_params);
310 303
311 // Load a Fontconfig config that enables antialiasing but doesn't say anything 304 // Load a Fontconfig config that enables antialiasing but doesn't say anything
312 // about subpixel rendering. 305 // about subpixel rendering.
313 ASSERT_TRUE(LoadConfigDataIntoFontconfig(temp_dir_.path(), 306 ASSERT_TRUE(LoadConfigDataIntoFontconfig(
314 std::string(kFontconfigFileHeader) + 307 temp_dir_.GetPath(),
315 kFontconfigMatchPatternHeader + 308 std::string(kFontconfigFileHeader) + kFontconfigMatchPatternHeader +
316 CreateFontconfigEditStanza("antialias", "bool", "true") + 309 CreateFontconfigEditStanza("antialias", "bool", "true") +
317 kFontconfigMatchFooter + 310 kFontconfigMatchFooter + kFontconfigFileFooter));
318 kFontconfigFileFooter));
319 311
320 // The subpixel rendering setting from the delegate should make it through. 312 // The subpixel rendering setting from the delegate should make it through.
321 FontRenderParams params = GetFontRenderParams( 313 FontRenderParams params = GetFontRenderParams(
322 FontRenderParamsQuery(), NULL); 314 FontRenderParamsQuery(), NULL);
323 EXPECT_EQ(system_params.subpixel_rendering, params.subpixel_rendering); 315 EXPECT_EQ(system_params.subpixel_rendering, params.subpixel_rendering);
324 } 316 }
325 317
326 TEST_F(FontRenderParamsTest, NoFontconfigMatch) { 318 TEST_F(FontRenderParamsTest, NoFontconfigMatch) {
327 // Don't load a Fontconfig configuration. 319 // Don't load a Fontconfig configuration.
328 FontRenderParams system_params; 320 FontRenderParams system_params;
(...skipping 27 matching lines...) Expand all
356 query.families.push_back("Verdana"); 348 query.families.push_back("Verdana");
357 std::string suggested_family; 349 std::string suggested_family;
358 GetFontRenderParams(query, &suggested_family); 350 GetFontRenderParams(query, &suggested_family);
359 EXPECT_EQ("Arial", suggested_family); 351 EXPECT_EQ("Arial", suggested_family);
360 } 352 }
361 353
362 TEST_F(FontRenderParamsTest, SubstituteFamily) { 354 TEST_F(FontRenderParamsTest, SubstituteFamily) {
363 // Configure Fontconfig to use Verdana for both Helvetica and Arial. 355 // Configure Fontconfig to use Verdana for both Helvetica and Arial.
364 ASSERT_TRUE(LoadSystemFontIntoFontconfig("arial.ttf")); 356 ASSERT_TRUE(LoadSystemFontIntoFontconfig("arial.ttf"));
365 ASSERT_TRUE(LoadSystemFontIntoFontconfig("verdana.ttf")); 357 ASSERT_TRUE(LoadSystemFontIntoFontconfig("verdana.ttf"));
366 ASSERT_TRUE(LoadConfigDataIntoFontconfig(temp_dir_.path(), 358 ASSERT_TRUE(LoadConfigDataIntoFontconfig(
359 temp_dir_.GetPath(),
367 std::string(kFontconfigFileHeader) + 360 std::string(kFontconfigFileHeader) +
368 CreateFontconfigAliasStanza("Helvetica", "Verdana") + 361 CreateFontconfigAliasStanza("Helvetica", "Verdana") +
369 kFontconfigMatchPatternHeader + 362 kFontconfigMatchPatternHeader +
370 CreateFontconfigTestStanza("family", "eq", "string", "Arial") + 363 CreateFontconfigTestStanza("family", "eq", "string", "Arial") +
371 CreateFontconfigEditStanza("family", "string", "Verdana") + 364 CreateFontconfigEditStanza("family", "string", "Verdana") +
372 kFontconfigMatchFooter + 365 kFontconfigMatchFooter + kFontconfigFileFooter));
373 kFontconfigFileFooter));
374 366
375 FontRenderParamsQuery query; 367 FontRenderParamsQuery query;
376 query.families.push_back("Helvetica"); 368 query.families.push_back("Helvetica");
377 std::string suggested_family; 369 std::string suggested_family;
378 GetFontRenderParams(query, &suggested_family); 370 GetFontRenderParams(query, &suggested_family);
379 EXPECT_EQ("Verdana", suggested_family); 371 EXPECT_EQ("Verdana", suggested_family);
380 372
381 query.families.clear(); 373 query.families.clear();
382 query.families.push_back("Arial"); 374 query.families.push_back("Arial");
383 suggested_family.clear(); 375 suggested_family.clear();
384 GetFontRenderParams(query, &suggested_family); 376 GetFontRenderParams(query, &suggested_family);
385 EXPECT_EQ("Verdana", suggested_family); 377 EXPECT_EQ("Verdana", suggested_family);
386 } 378 }
387 379
388 } // namespace gfx 380 } // namespace gfx
OLDNEW
« no previous file with comments | « ui/base/resource/resource_bundle_unittest.cc ('k') | ui/gfx/icon_util_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698