@@ -413,6 +413,80 @@ public void extractCountryShouldReturnTextOfShortDescriptionLocator() {
413
413
assertThat (msg , country , equalTo (expectedName ));
414
414
}
415
415
416
+ //
417
+ // Tests for extractImageUrl()
418
+ //
419
+
420
+ @ Test
421
+ public void extractImageUrlShouldReturnNullWhenLocatorIsNotSet () {
422
+ parser .setImageUrlLocator (null );
423
+ Element doc = createEmptyDocument ();
424
+
425
+ String imageUrl = parser .extractImageUrl (doc );
426
+
427
+ assertThat (imageUrl , is (nullValue ()));
428
+ }
429
+
430
+ @ Test
431
+ public void extractImageUrlShouldReturnNullWhenElementNotFound () {
432
+ parser .setImageUrlLocator (Random .jsoupLocator ());
433
+ Element doc = createEmptyDocument ();
434
+
435
+ String imageUrl = parser .extractImageUrl (doc );
436
+
437
+ assertThat (imageUrl , is (nullValue ()));
438
+ }
439
+
440
+ @ Test
441
+ public void extractImageUrlShouldReturnValueOfImageUrlAttribute () {
442
+ parser .setImageUrlLocator ("a" );
443
+ parser .setImageUrlAttribute ("data-full-path" );
444
+
445
+ String expectedImageUrl = Random .url ();
446
+ String html = String .format (
447
+ "<a href='%s' data-full-path='%s'>test</a>" ,
448
+ Random .url (),
449
+ expectedImageUrl
450
+ );
451
+ Element doc = createDocumentFromText (html );
452
+
453
+ String imageUrl = parser .extractImageUrl (doc );
454
+
455
+ String msg = String .format ("couldn't extract image url from '%s'" , doc );
456
+ assertThat (msg , imageUrl , equalTo (expectedImageUrl ));
457
+ }
458
+
459
+ @ Test
460
+ public void extractImageUrlShouldReturnValueOfHrefAttributeByDefault () {
461
+ parser .setImageUrlLocator ("a" );
462
+ parser .setImageUrlAttribute (null );
463
+
464
+ String expectedImageUrl = Random .url ();
465
+ String html = String .format (
466
+ "<a href='%s' data-full-path='%s'>test</a>" ,
467
+ expectedImageUrl ,
468
+ Random .url ()
469
+ );
470
+ Element doc = createDocumentFromText (html );
471
+
472
+ String imageUrl = parser .extractImageUrl (doc );
473
+
474
+ String msg = String .format ("couldn't extract image url from '%s'" , doc );
475
+ assertThat (msg , imageUrl , equalTo (expectedImageUrl ));
476
+ }
477
+
478
+ @ Test
479
+ public void extractImageUrlShouldReturnNullInsteadOfEmptyString () {
480
+ parser .setImageUrlLocator ("a" );
481
+
482
+ String html = "<a href=''>test</a>" ;
483
+ Element doc = createDocumentFromText (html );
484
+
485
+ String imageUrl = parser .extractImageUrl (doc );
486
+
487
+ assertThat (imageUrl , is (nullValue ()));
488
+ }
489
+
416
490
//
417
491
// Tests for extractIssueDate()
418
492
//
0 commit comments