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

Side by Side Diff: components/doodle/doodle_fetcher_impl_unittest.cc

Issue 2743273002: [Doodle] Don't create invalid DoodleImages or DoodleConfigs (Closed)
Patch Set: add checks for absence of optional images Created 3 years, 9 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 | « no previous file | components/doodle/doodle_service_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 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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 "components/doodle/doodle_fetcher_impl.h" 5 #include "components/doodle/doodle_fetcher_impl.h"
6 6
7 #include <string> 7 #include <string>
8 #include <utility> 8 #include <utility>
9 9
10 #include "base/bind.h" 10 #include "base/bind.h"
(...skipping 211 matching lines...) Expand 10 before | Expand all | Expand 10 after
222 EXPECT_TRUE(config.fullpage_interactive_url.is_empty()); 222 EXPECT_TRUE(config.fullpage_interactive_url.is_empty());
223 EXPECT_TRUE(config.target_url.is_valid()); 223 EXPECT_TRUE(config.target_url.is_valid());
224 EXPECT_THAT(config.target_url, 224 EXPECT_THAT(config.target_url,
225 Eq(Resolve("/search?q\u003dtest\u0026sa\u003dX\u0026ved\u003d" 225 Eq(Resolve("/search?q\u003dtest\u0026sa\u003dX\u0026ved\u003d"
226 "0ahUKEw"))); 226 "0ahUKEw")));
227 EXPECT_THAT(config.doodle_type, Eq(DoodleType::SIMPLE)); 227 EXPECT_THAT(config.doodle_type, Eq(DoodleType::SIMPLE));
228 EXPECT_THAT(config.alt_text, Eq("Mouseover Text")); 228 EXPECT_THAT(config.alt_text, Eq("Mouseover Text"));
229 EXPECT_THAT(config.interactive_html, 229 EXPECT_THAT(config.interactive_html,
230 Eq("\u003cstyle\u003e\u003c/style\u003e")); 230 Eq("\u003cstyle\u003e\u003c/style\u003e"));
231 231
232 EXPECT_FALSE(config.large_cta_image.has_value());
233 EXPECT_FALSE(config.transparent_large_image.has_value());
234
232 EXPECT_THAT(time_to_live, Eq(base::TimeDelta::FromMilliseconds(55000))); 235 EXPECT_THAT(time_to_live, Eq(base::TimeDelta::FromMilliseconds(55000)));
233 } 236 }
234 237
235 TEST_F(DoodleFetcherImplTest, DoodleExpiresWithinThirtyDaysForTooLargeTTL) { 238 TEST_F(DoodleFetcherImplTest, DoodleExpiresWithinThirtyDaysForTooLargeTTL) {
236 DoodleState state(DoodleState::NO_DOODLE); 239 DoodleState state(DoodleState::NO_DOODLE);
237 base::TimeDelta time_to_live; 240 base::TimeDelta time_to_live;
238 base::Optional<DoodleConfig> response; 241 base::Optional<DoodleConfig> response;
239 242
240 doodle_fetcher()->FetchDoodle( 243 doodle_fetcher()->FetchDoodle(
241 CreateResponseSavingCallback(&state, &time_to_live, &response)); 244 CreateResponseSavingCallback(&state, &time_to_live, &response));
(...skipping 98 matching lines...) Expand 10 before | Expand all | Expand 10 after
340 "is_cta":false, 343 "is_cta":false,
341 "url":"/logos/doodles/2015/new-years-eve-2015-59854387958251-thp.png", 344 "url":"/logos/doodles/2015/new-years-eve-2015-59854387958251-thp.png",
342 "width":510 345 "width":510
343 } 346 }
344 }})json"); 347 }})json");
345 348
346 EXPECT_THAT(state, Eq(DoodleState::AVAILABLE)); 349 EXPECT_THAT(state, Eq(DoodleState::AVAILABLE));
347 ASSERT_TRUE(response.has_value()); 350 ASSERT_TRUE(response.has_value());
348 DoodleConfig config = response.value(); 351 DoodleConfig config = response.value();
349 352
350 EXPECT_TRUE(config.transparent_large_image.url.is_valid());
351 EXPECT_THAT(config.transparent_large_image.url.spec(),
352 Eq(Resolve("/logos/doodles/2015/new-years-eve-2015-5985438795"
353 "8251-thp.png")));
354 EXPECT_THAT(config.transparent_large_image.width, Eq(510));
355 EXPECT_THAT(config.transparent_large_image.height, Eq(225));
356 EXPECT_FALSE(config.transparent_large_image.is_animated_gif);
357 EXPECT_FALSE(config.transparent_large_image.is_cta);
358
359 EXPECT_TRUE(config.large_image.url.is_valid()); 353 EXPECT_TRUE(config.large_image.url.is_valid());
360 EXPECT_THAT(config.large_image.url.spec(), 354 EXPECT_THAT(config.large_image.url.spec(),
361 Eq(Resolve("/logos/doodles/2015/new-years-eve-2015-5985438795" 355 Eq(Resolve("/logos/doodles/2015/new-years-eve-2015-5985438795"
362 "8251-hp.gif"))); 356 "8251-hp.gif")));
363 EXPECT_THAT(config.large_image.width, Eq(489)); 357 EXPECT_THAT(config.large_image.width, Eq(489));
364 EXPECT_THAT(config.large_image.height, Eq(225)); 358 EXPECT_THAT(config.large_image.height, Eq(225));
365 EXPECT_TRUE(config.large_image.is_animated_gif); 359 EXPECT_TRUE(config.large_image.is_animated_gif);
366 EXPECT_FALSE(config.large_image.is_cta); 360 EXPECT_FALSE(config.large_image.is_cta);
367 361
368 EXPECT_TRUE(config.large_cta_image.url.is_valid()); 362 ASSERT_TRUE(config.transparent_large_image.has_value());
369 EXPECT_THAT(config.large_cta_image.url.spec(), 363 EXPECT_TRUE(config.transparent_large_image->url.is_valid());
364 EXPECT_THAT(config.transparent_large_image->url.spec(),
365 Eq(Resolve("/logos/doodles/2015/new-years-eve-2015-5985438795"
366 "8251-thp.png")));
367 EXPECT_THAT(config.transparent_large_image->width, Eq(510));
368 EXPECT_THAT(config.transparent_large_image->height, Eq(225));
369 EXPECT_FALSE(config.transparent_large_image->is_animated_gif);
370 EXPECT_FALSE(config.transparent_large_image->is_cta);
371
372 ASSERT_TRUE(config.large_cta_image.has_value());
373 EXPECT_TRUE(config.large_cta_image->url.is_valid());
374 EXPECT_THAT(config.large_cta_image->url.spec(),
370 Eq(Resolve("/logos/doodles/2015/new-years-eve-2015-5985438795" 375 Eq(Resolve("/logos/doodles/2015/new-years-eve-2015-5985438795"
371 "8251-cta.gif"))); 376 "8251-cta.gif")));
372 EXPECT_THAT(config.large_cta_image.width, Eq(489)); 377 EXPECT_THAT(config.large_cta_image->width, Eq(489));
373 EXPECT_THAT(config.large_cta_image.height, Eq(225)); 378 EXPECT_THAT(config.large_cta_image->height, Eq(225));
374 EXPECT_TRUE(config.large_cta_image.is_animated_gif); 379 EXPECT_TRUE(config.large_cta_image->is_animated_gif);
375 EXPECT_TRUE(config.large_cta_image.is_cta); 380 EXPECT_TRUE(config.large_cta_image->is_cta);
376 } 381 }
377 382
378 TEST_F(DoodleFetcherImplTest, RespondsToMultipleRequestsWithSameFetcher) { 383 TEST_F(DoodleFetcherImplTest, RespondsToMultipleRequestsWithSameFetcher) {
379 DoodleState state1(DoodleState::NO_DOODLE); 384 DoodleState state1(DoodleState::NO_DOODLE);
380 DoodleState state2(DoodleState::NO_DOODLE); 385 DoodleState state2(DoodleState::NO_DOODLE);
381 base::Optional<DoodleConfig> response1; 386 base::Optional<DoodleConfig> response1;
382 base::Optional<DoodleConfig> response2; 387 base::Optional<DoodleConfig> response2;
383 388
384 // Trigger two requests. 389 // Trigger two requests.
385 doodle_fetcher()->FetchDoodle( 390 doodle_fetcher()->FetchDoodle(
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
417 switches::kGoogleBaseURL, "http://www.google.kz"); 422 switches::kGoogleBaseURL, "http://www.google.kz");
418 423
419 doodle_fetcher()->FetchDoodle(CreateResponseSavingCallback( 424 doodle_fetcher()->FetchDoodle(CreateResponseSavingCallback(
420 /*state=*/nullptr, nullptr, /*response=*/nullptr)); 425 /*state=*/nullptr, nullptr, /*response=*/nullptr));
421 426
422 EXPECT_THAT(GetRunningFetcher()->GetOriginalURL(), 427 EXPECT_THAT(GetRunningFetcher()->GetOriginalURL(),
423 Eq(GURL("http://www.google.kz").Resolve(kDoodleConfigPath))); 428 Eq(GURL("http://www.google.kz").Resolve(kDoodleConfigPath)));
424 } 429 }
425 430
426 } // namespace doodle 431 } // namespace doodle
OLDNEW
« no previous file with comments | « no previous file | components/doodle/doodle_service_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698