From fe134c8c80fa7c90c08c7ae9c8aff97bb908effd Mon Sep 17 00:00:00 2001 From: Niels Lange Date: Thu, 1 Apr 2021 13:53:14 +0700 Subject: [PATCH 1/5] =?UTF-8?q?=F0=9F=90=9B=20FIX:=20Correct=20unit=20test?= =?UTF-8?q?s=20when=20running=20WP=205.7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- phpunit.xml | 2 +- tests/dummy-attachment.png | Bin 0 -> 18399 bytes tests/test-coauthors-guest-authors.php | 13 +++---------- tests/test-template-tags.php | 14 ++++---------- 4 files changed, 8 insertions(+), 21 deletions(-) create mode 100644 tests/dummy-attachment.png diff --git a/phpunit.xml b/phpunit.xml index 4fc2a336..10f45db5 100644 --- a/phpunit.xml +++ b/phpunit.xml @@ -10,7 +10,7 @@ - + ./tests/ diff --git a/tests/dummy-attachment.png b/tests/dummy-attachment.png new file mode 100644 index 0000000000000000000000000000000000000000..02674d29ecadd349b2df7b8341f1091aa5d78e3f GIT binary patch literal 18399 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 DTq`fv literal 0 HcmV?d00001 diff --git a/tests/test-coauthors-guest-authors.php b/tests/test-coauthors-guest-authors.php index 3cc920e9..6a0a672a 100644 --- a/tests/test-coauthors-guest-authors.php +++ b/tests/test-coauthors-guest-authors.php @@ -124,22 +124,15 @@ public function test_get_guest_author_thumbnail() { $this->assertNull( $guest_author_obj->get_guest_author_thumbnail( $guest_author, 0 ) ); - // Checks when guest author has thumbnail. - $filename = rand_str() . '.jpg'; - $contents = rand_str(); - $upload = wp_upload_bits( $filename, null, $contents ); - - $this->assertTrue( empty( $upload['error'] ) ); - - $attachment_id = $this->_make_attachment( $upload ); + $attachment_id = $this->factory->attachment->create_upload_object( __DIR__ . '/dummy-attachment.png' ); set_post_thumbnail( $guest_author->ID, $attachment_id ); $thumbnail = $guest_author_obj->get_guest_author_thumbnail( $guest_author, 0 ); $this->assertContains( 'avatar-0', $thumbnail ); - $this->assertContains( $filename, $thumbnail ); - $this->assertContains( 'src="' . wp_get_attachment_url( $attachment_id ) . '"', $thumbnail ); + $this->assertContains( 'dummy-attachment', $thumbnail ); + $this->assertContains( wp_get_attachment_url( $attachment_id ), $thumbnail ); } /** diff --git a/tests/test-template-tags.php b/tests/test-template-tags.php index 7ea0c3c4..0268fc2f 100644 --- a/tests/test-template-tags.php +++ b/tests/test-template-tags.php @@ -988,6 +988,7 @@ public function test_coauthors_wp_list_authors_for_guest_authors_only() { public function test_coauthors_get_avatar_default() { $this->assertEmpty( coauthors_get_avatar( $this->author1->ID ) ); + $this->assertEquals( preg_match( "|^[^$|", coauthors_get_avatar( $this->author1 ) ), 1 ); } @@ -1006,24 +1007,17 @@ public function test_coauthors_get_avatar_when_guest_author() { ) ); $guest_author = $coauthors_plus->guest_authors->get_guest_author_by( 'id', $guest_author_id ); + $attachment_id = $this->factory->attachment->create_upload_object( __DIR__ . '/dummy-attachment.png', $guest_author_id ); $this->assertEquals( preg_match( "|^[^$|", coauthors_get_avatar( $guest_author ) ), 1 ); - $filename = rand_str() . '.jpg'; - $contents = rand_str(); - $upload = wp_upload_bits( $filename, null, $contents ); - - $this->assertTrue( empty( $upload['error'] ) ); - - $attachment_id = $this->_make_attachment( $upload ); - set_post_thumbnail( $guest_author->ID, $attachment_id ); $avatar = coauthors_get_avatar( $guest_author ); $attachment_url = wp_get_attachment_url( $attachment_id ); - $this->assertContains( $filename, $avatar ); - $this->assertContains( 'src="' . $attachment_url . '"', $avatar ); + $this->assertContains( 'dummy-attachment', $avatar ); + $this->assertContains( $attachment_url, $avatar ); } /** From aa7099c25d43db024f852be9e24c71c474dab098 Mon Sep 17 00:00:00 2001 From: Niels Lange Date: Mon, 12 Apr 2021 10:41:44 +0700 Subject: [PATCH 2/5] Move dummy image from /tests/ to /tests/fixtures/ --- tests/{ => fixtures}/dummy-attachment.png | Bin tests/test-coauthors-guest-authors.php | 2 +- tests/test-template-tags.php | 2 +- 3 files changed, 2 insertions(+), 2 deletions(-) rename tests/{ => fixtures}/dummy-attachment.png (100%) diff --git a/tests/dummy-attachment.png b/tests/fixtures/dummy-attachment.png similarity index 100% rename from tests/dummy-attachment.png rename to tests/fixtures/dummy-attachment.png diff --git a/tests/test-coauthors-guest-authors.php b/tests/test-coauthors-guest-authors.php index 6a0a672a..5b958762 100644 --- a/tests/test-coauthors-guest-authors.php +++ b/tests/test-coauthors-guest-authors.php @@ -124,7 +124,7 @@ public function test_get_guest_author_thumbnail() { $this->assertNull( $guest_author_obj->get_guest_author_thumbnail( $guest_author, 0 ) ); - $attachment_id = $this->factory->attachment->create_upload_object( __DIR__ . '/dummy-attachment.png' ); + $attachment_id = $this->factory->attachment->create_upload_object( __DIR__ . '/fixtures/dummy-attachment.png' ); set_post_thumbnail( $guest_author->ID, $attachment_id ); diff --git a/tests/test-template-tags.php b/tests/test-template-tags.php index 0268fc2f..a27bfbd9 100644 --- a/tests/test-template-tags.php +++ b/tests/test-template-tags.php @@ -1007,7 +1007,7 @@ public function test_coauthors_get_avatar_when_guest_author() { ) ); $guest_author = $coauthors_plus->guest_authors->get_guest_author_by( 'id', $guest_author_id ); - $attachment_id = $this->factory->attachment->create_upload_object( __DIR__ . '/dummy-attachment.png', $guest_author_id ); + $attachment_id = $this->factory->attachment->create_upload_object( __DIR__ . '/fixtures/dummy-attachment.png', $guest_author_id ); $this->assertEquals( preg_match( "|^[^$|", coauthors_get_avatar( $guest_author ) ), 1 ); From e4dfccf980e23158ada3369951a0a1af76f8132a Mon Sep 17 00:00:00 2001 From: Niels Lange Date: Mon, 12 Apr 2021 10:51:40 +0700 Subject: [PATCH 3/5] Replace assertContains() with assertStringContainsString() --- tests/test-coauthors-guest-authors.php | 34 +++++------ tests/test-template-tags.php | 78 +++++++++++++------------- 2 files changed, 56 insertions(+), 56 deletions(-) diff --git a/tests/test-coauthors-guest-authors.php b/tests/test-coauthors-guest-authors.php index 5b958762..84097081 100644 --- a/tests/test-coauthors-guest-authors.php +++ b/tests/test-coauthors-guest-authors.php @@ -130,9 +130,9 @@ public function test_get_guest_author_thumbnail() { $thumbnail = $guest_author_obj->get_guest_author_thumbnail( $guest_author, 0 ); - $this->assertContains( 'avatar-0', $thumbnail ); - $this->assertContains( 'dummy-attachment', $thumbnail ); - $this->assertContains( wp_get_attachment_url( $attachment_id ), $thumbnail ); + $this->assertStringContainsString( 'avatar-0', $thumbnail ); + $this->assertStringContainsString( 'dummy-attachment', $thumbnail ); + $this->assertStringContainsString( wp_get_attachment_url( $attachment_id ), $thumbnail ); } /** @@ -366,7 +366,7 @@ public function test_handle_delete_guest_author_action_with_nonce() { } $this->assertInstanceOf( 'WPDieException', $exception ); - $this->assertContains( esc_html( $expected ), $exception->getMessage() ); + $this->assertStringContainsString( esc_html( $expected ), $exception->getMessage() ); // Checks when nonce is as expected. $_POST['_wpnonce'] = wp_create_nonce( 'delete-guest-author' ); @@ -418,7 +418,7 @@ public function test_handle_delete_guest_author_action_with_list_users_capabilit } $this->assertInstanceOf( 'WPDieException', $exception ); - $this->assertContains( esc_html( $expected ), $exception->getMessage() ); + $this->assertStringContainsString( esc_html( $expected ), $exception->getMessage() ); // Checks when current user has list_users capability. wp_set_current_user( $this->admin1->ID ); @@ -475,7 +475,7 @@ public function test_handle_delete_guest_author_action_with_guest_author_existen } $this->assertInstanceOf( 'WPDieException', $exception ); - $this->assertContains( esc_html( $expected ), $exception->getMessage() ); + $this->assertStringContainsString( esc_html( $expected ), $exception->getMessage() ); // Checks when guest author exists. $_POST['id'] = $guest_author_obj->create_guest_author_from_user_id( $this->admin1->ID ); @@ -530,7 +530,7 @@ public function test_handle_delete_guest_author_action_with_reassign_not_as_expe } $this->assertInstanceOf( 'WPDieException', $exception ); - $this->assertContains( esc_html( $expected ), $exception->getMessage() ); + $this->assertStringContainsString( esc_html( $expected ), $exception->getMessage() ); // Restore current user from backup. wp_set_current_user( $current_user ); @@ -571,9 +571,9 @@ public function test_handle_delete_guest_author_action_with_reassign_is_leave_as } catch( Exception $e ) { - $this->assertContains( $guest_author_obj->parent_page, $e->getMessage() ); - $this->assertContains( 'page=view-guest-authors', $e->getMessage() ); - $this->assertContains( 'message=guest-author-deleted', $e->getMessage() ); + $this->assertStringContainsString( $guest_author_obj->parent_page, $e->getMessage() ); + $this->assertStringContainsString( 'page=view-guest-authors', $e->getMessage() ); + $this->assertStringContainsString( 'message=guest-author-deleted', $e->getMessage() ); } remove_filter( 'wp_redirect', array( $this, 'catch_redirect_destination' ), 99 ); @@ -621,7 +621,7 @@ public function test_handle_delete_guest_author_action_with_reassign_is_reassign } $this->assertInstanceOf( 'WPDieException', $exception ); - $this->assertContains( esc_html( $expected ), $exception->getMessage() ); + $this->assertStringContainsString( esc_html( $expected ), $exception->getMessage() ); // When coauthor exists. $_POST['leave-assigned-to'] = $this->author1->user_nicename; @@ -634,9 +634,9 @@ public function test_handle_delete_guest_author_action_with_reassign_is_reassign } catch ( Exception $e ) { - //$this->assertContains( $guest_author_obj->parent_page, $e->getMessage() ); - $this->assertContains( 'page=view-guest-authors', $e->getMessage() ); - $this->assertContains( 'message=guest-author-deleted', $e->getMessage() ); + //$this->assertStringContainsString( $guest_author_obj->parent_page, $e->getMessage() ); + $this->assertStringContainsString( 'page=view-guest-authors', $e->getMessage() ); + $this->assertStringContainsString( 'message=guest-author-deleted', $e->getMessage() ); } remove_filter( 'wp_redirect', array( $this, 'catch_redirect_destination' ), 99 ); @@ -680,9 +680,9 @@ public function test_handle_delete_guest_author_action_with_reassign_is_remove_b } catch ( Exception $e ) { - $this->assertContains( $guest_author_obj->parent_page, $e->getMessage() ); - $this->assertContains( 'page=view-guest-authors', $e->getMessage() ); - $this->assertContains( 'message=guest-author-deleted', $e->getMessage() ); + $this->assertStringContainsString( $guest_author_obj->parent_page, $e->getMessage() ); + $this->assertStringContainsString( 'page=view-guest-authors', $e->getMessage() ); + $this->assertStringContainsString( 'message=guest-author-deleted', $e->getMessage() ); } remove_filter( 'wp_redirect', array( $this, 'catch_redirect_destination' ), 99 ); diff --git a/tests/test-template-tags.php b/tests/test-template-tags.php index a27bfbd9..be8d50f1 100644 --- a/tests/test-template-tags.php +++ b/tests/test-template-tags.php @@ -44,23 +44,23 @@ public function test_coauthors_posts_links() { // Checks for single post author. $single_cpl = coauthors_posts_links( null, null, null, null, false ); - $this->assertContains( 'href="' . get_author_posts_url( $this->author1->ID, $this->author1->user_nicename ) . '"', $single_cpl, 'Author link not found.' ); - $this->assertContains( $this->author1->display_name, $single_cpl, 'Author name not found.' ); + $this->assertStringContainsString( 'href="' . get_author_posts_url( $this->author1->ID, $this->author1->user_nicename ) . '"', $single_cpl, 'Author link not found.' ); + $this->assertStringContainsString( $this->author1->display_name, $single_cpl, 'Author name not found.' ); // Checks for multiple post author. $coauthors_plus->add_coauthors( $this->post->ID, array( $this->editor1->user_login ), true ); $multiple_cpl = coauthors_posts_links( null, null, null, null, false ); - $this->assertContains( 'href="' . get_author_posts_url( $this->author1->ID, $this->author1->user_nicename ) . '"', $multiple_cpl, 'Main author link not found.' ); - $this->assertContains( $this->author1->display_name, $multiple_cpl, 'Main author name not found.' ); + $this->assertStringContainsString( 'href="' . get_author_posts_url( $this->author1->ID, $this->author1->user_nicename ) . '"', $multiple_cpl, 'Main author link not found.' ); + $this->assertStringContainsString( $this->author1->display_name, $multiple_cpl, 'Main author name not found.' ); // Here we are checking author name should not be more then one time. // Asserting ">{$this->author1->display_name}<" because "$this->author1->display_name" can be multiple times like in href, title, etc. $this->assertEquals( 1, substr_count( $multiple_cpl, ">{$this->author1->display_name}<" ) ); - $this->assertContains( ' and ', $multiple_cpl, 'Coauthors name separator is not matched.' ); - $this->assertContains( 'href="' . get_author_posts_url( $this->editor1->ID, $this->editor1->user_nicename ) . '"', $multiple_cpl, 'Coauthor link not found.' ); - $this->assertContains( $this->editor1->display_name, $multiple_cpl, 'Coauthor name not found.' ); + $this->assertStringContainsString( ' and ', $multiple_cpl, 'Coauthors name separator is not matched.' ); + $this->assertStringContainsString( 'href="' . get_author_posts_url( $this->editor1->ID, $this->editor1->user_nicename ) . '"', $multiple_cpl, 'Coauthor link not found.' ); + $this->assertStringContainsString( $this->editor1->display_name, $multiple_cpl, 'Coauthor name not found.' ); // Here we are checking editor name should not be more then one time. // Asserting ">{$this->editor1->display_name}<" because "$this->editor1->display_name" can be multiple times like in href, title, etc. @@ -68,7 +68,7 @@ public function test_coauthors_posts_links() { $multiple_cpl = coauthors_links( null, ' or ', null, null, false ); - $this->assertContains( ' or ', $multiple_cpl, 'Coauthors name separator is not matched.' ); + $this->assertStringContainsString( ' or ', $multiple_cpl, 'Coauthors name separator is not matched.' ); $this->assertEquals( 10, has_filter( 'the_author', array( $coauthors_plus_template_filters, @@ -105,15 +105,15 @@ public function test_coauthors_links() { $multiple_cpl = coauthors_links( null, null, null, null, false ); - $this->assertContains( $this->author1->display_name, $multiple_cpl, 'Main author name not found.' ); + $this->assertStringContainsString( $this->author1->display_name, $multiple_cpl, 'Main author name not found.' ); $this->assertEquals( 1, substr_count( $multiple_cpl, $this->author1->display_name ) ); - $this->assertContains( ' and ', $multiple_cpl, 'Coauthors name separator is not matched.' ); - $this->assertContains( $this->editor1->display_name, $multiple_cpl, 'Coauthor name not found.' ); + $this->assertStringContainsString( ' and ', $multiple_cpl, 'Coauthors name separator is not matched.' ); + $this->assertStringContainsString( $this->editor1->display_name, $multiple_cpl, 'Coauthor name not found.' ); $this->assertEquals( 1, substr_count( $multiple_cpl, $this->editor1->display_name ) ); $multiple_cpl = coauthors_links( null, ' or ', null, null, false ); - $this->assertContains( ' or ', $multiple_cpl, 'Coauthors name separator is not matched.' ); + $this->assertStringContainsString( ' or ', $multiple_cpl, 'Coauthors name separator is not matched.' ); $this->assertEquals( 10, has_filter( 'the_author', array( $coauthors_plus_template_filters, @@ -361,8 +361,8 @@ public function test_coauthors_posts_links_single() { $author_link = coauthors_posts_links_single( $this->author1 ); - $this->assertContains( 'href="' . get_author_posts_url( $this->author1->ID, $this->author1->user_nicename ) . '"', $author_link, 'Author link not found.' ); - $this->assertContains( $this->author1->display_name, $author_link, 'Author name not found.' ); + $this->assertStringContainsString( 'href="' . get_author_posts_url( $this->author1->ID, $this->author1->user_nicename ) . '"', $author_link, 'Author link not found.' ); + $this->assertStringContainsString( $this->author1->display_name, $author_link, 'Author name not found.' ); // Here we are checking author name should not be more then one time. // Asserting ">{$this->author1->display_name}<" because "$this->author1->display_name" can be multiple times like in href, title, etc. @@ -605,8 +605,8 @@ public function test_coauthors_links_single_when_guest_author() { $this->assertEquals( get_the_author_link(), coauthors_links_single( $this->author1 ), 'Co-Author link generation differs from Core author link one (with user_url)' ); $author_link = coauthors_links_single( $this->author1 ); - $this->assertContains( get_the_author_meta( 'url' ), $author_link, 'Author url not found in link.' ); - $this->assertContains( get_the_author(), $author_link, 'Author name not found in link.' ); + $this->assertStringContainsString( get_the_author_meta( 'url' ), $author_link, 'Author url not found in link.' ); + $this->assertStringContainsString( get_the_author(), $author_link, 'Author name not found in link.' ); // Here we are checking author name should not be more then one time. // Asserting ">get_the_author()<" because "get_the_author()" can be multiple times like in href, title, etc. @@ -644,8 +644,8 @@ public function test_coauthors_links_single_author_url_is_set() { $authordata = $user; $author_link = coauthors_links_single( $user ); - $this->assertContains( get_the_author_meta( 'url' ), $author_link, 'Author link not found.' ); - $this->assertContains( get_the_author(), $author_link, 'Author name not found.' ); + $this->assertStringContainsString( get_the_author_meta( 'url' ), $author_link, 'Author link not found.' ); + $this->assertStringContainsString( get_the_author(), $author_link, 'Author name not found.' ); // Here we are checking author name should not be more then one time. // Asserting ">get_the_author()<" because "get_the_author()" can be multiple times like in href, title, etc. @@ -772,8 +772,8 @@ public function test_coauthors_wp_list_authors_for_default_args() { $coauthors = coauthors_wp_list_authors( $args ); - $this->assertContains( 'href="' . get_author_posts_url( $this->author1->ID, $this->author1->user_nicename ) . '"', $coauthors, 'Author link not found.' ); - $this->assertContains( $this->author1->display_name, $coauthors, 'Author name not found.' ); + $this->assertStringContainsString( 'href="' . get_author_posts_url( $this->author1->ID, $this->author1->user_nicename ) . '"', $coauthors, 'Author link not found.' ); + $this->assertStringContainsString( $this->author1->display_name, $coauthors, 'Author name not found.' ); $coauthors = coauthors_wp_list_authors( $args ); @@ -784,16 +784,16 @@ public function test_coauthors_wp_list_authors_for_default_args() { $coauthors = coauthors_wp_list_authors( $args ); - $this->assertContains( 'href="' . get_author_posts_url( $this->author1->ID, $this->author1->user_nicename ) . '"', $coauthors, 'Main author link not found.' ); - $this->assertContains( $this->author1->display_name, $coauthors, 'Main author name not found.' ); + $this->assertStringContainsString( 'href="' . get_author_posts_url( $this->author1->ID, $this->author1->user_nicename ) . '"', $coauthors, 'Main author link not found.' ); + $this->assertStringContainsString( $this->author1->display_name, $coauthors, 'Main author name not found.' ); // Here we are checking author name should not be more then one time. // Asserting ">{$this->author1->display_name}<" because "$this->author1->display_name" can be multiple times like in href, title, etc. $this->assertEquals( 1, substr_count( $coauthors, ">{$this->author1->display_name}<" ) ); - $this->assertContains( '
  • ', $coauthors, 'Coauthors name separator is not matched.' ); - $this->assertContains( 'href="' . get_author_posts_url( $this->editor1->ID, $this->editor1->user_nicename ) . '"', $coauthors, 'Coauthor link not found.' ); - $this->assertContains( $this->editor1->display_name, $coauthors, 'Coauthor name not found.' ); + $this->assertStringContainsString( '
  • ', $coauthors, 'Coauthors name separator is not matched.' ); + $this->assertStringContainsString( 'href="' . get_author_posts_url( $this->editor1->ID, $this->editor1->user_nicename ) . '"', $coauthors, 'Coauthor link not found.' ); + $this->assertStringContainsString( $this->editor1->display_name, $coauthors, 'Coauthor name not found.' ); // Here we are checking editor name should not be more then one time. // Asserting ">{$this->editor1->display_name}<" because "$this->editor1->display_name" can be multiple times like in href, title, etc. @@ -807,7 +807,7 @@ public function test_coauthors_wp_list_authors_for_default_args() { */ public function test_coauthors_wp_list_authors_for_optioncount() { - $this->assertContains( '(' . count_user_posts( $this->author1->ID ) . ')', coauthors_wp_list_authors( array( + $this->assertStringContainsString( '(' . count_user_posts( $this->author1->ID ) . ')', coauthors_wp_list_authors( array( 'echo' => false, 'optioncount' => true, ) ) ); @@ -825,7 +825,7 @@ public function test_coauthors_wp_list_authors_for_show_fullname() { 'show_fullname' => true, ); - $this->assertContains( $this->author1->display_name, coauthors_wp_list_authors( $args ) ); + $this->assertStringContainsString( $this->author1->display_name, coauthors_wp_list_authors( $args ) ); $user = $this->factory->user->create_and_get( array( 'first_name' => 'First', @@ -836,7 +836,7 @@ public function test_coauthors_wp_list_authors_for_show_fullname() { 'post_author' => $user->ID, ) ); - $this->assertContains( "{$user->user_firstname} {$user->user_lastname}", coauthors_wp_list_authors( $args ) ); + $this->assertStringContainsString( "{$user->user_firstname} {$user->user_lastname}", coauthors_wp_list_authors( $args ) ); } /** @@ -853,7 +853,7 @@ public function test_coauthors_wp_list_authors_for_hide_empty() { 'display_name' => 'author2', ) ); - $this->assertContains( 'author2', coauthors_wp_list_authors( array( + $this->assertStringContainsString( 'author2', coauthors_wp_list_authors( array( 'echo' => false, 'hide_empty' => false, ) ) ); @@ -872,8 +872,8 @@ public function test_coauthors_wp_list_authors_for_feed() { 'feed' => $feed_text, ) ); - $this->assertContains( esc_url( get_author_feed_link( $this->author1->ID ) ), $coauthors ); - $this->assertContains( $feed_text, $coauthors ); + $this->assertStringContainsString( esc_url( get_author_feed_link( $this->author1->ID ) ), $coauthors ); + $this->assertStringContainsString( $feed_text, $coauthors ); } /** @@ -889,8 +889,8 @@ public function test_coauthors_wp_list_authors_for_feed_image() { 'feed_image' => $feed_image, ) ); - $this->assertContains( esc_url( get_author_feed_link( $this->author1->ID ) ), $coauthors ); - $this->assertContains( $feed_image, $coauthors ); + $this->assertStringContainsString( esc_url( get_author_feed_link( $this->author1->ID ) ), $coauthors ); + $this->assertStringContainsString( $feed_image, $coauthors ); } /** @@ -908,9 +908,9 @@ public function test_coauthors_wp_list_authors_for_feed_type() { 'feed' => $feed_text, ) ); - $this->assertContains( esc_url( get_author_feed_link( $this->author1->ID, $feed_type ) ), $coauthors ); - $this->assertContains( $feed_type, $coauthors ); - $this->assertContains( $feed_text, $coauthors ); + $this->assertStringContainsString( esc_url( get_author_feed_link( $this->author1->ID, $feed_type ) ), $coauthors ); + $this->assertStringContainsString( $feed_type, $coauthors ); + $this->assertStringContainsString( $feed_text, $coauthors ); } /** @@ -977,7 +977,7 @@ public function test_coauthors_wp_list_authors_for_guest_authors_only() { $coauthors_plus->add_coauthors( $this->post->ID, array( $guest_author->user_login ), true ); - $this->assertContains( $guest_author->display_name, coauthors_wp_list_authors( $args ) ); + $this->assertStringContainsString( $guest_author->display_name, coauthors_wp_list_authors( $args ) ); } /** @@ -1016,8 +1016,8 @@ public function test_coauthors_get_avatar_when_guest_author() { $avatar = coauthors_get_avatar( $guest_author ); $attachment_url = wp_get_attachment_url( $attachment_id ); - $this->assertContains( 'dummy-attachment', $avatar ); - $this->assertContains( $attachment_url, $avatar ); + $this->assertStringContainsString( 'dummy-attachment', $avatar ); + $this->assertStringContainsString( $attachment_url, $avatar ); } /** From 4ba0cfc30d90babe0cc448de50dc294c0699b250 Mon Sep 17 00:00:00 2001 From: Niels Lange Date: Mon, 12 Apr 2021 11:11:52 +0700 Subject: [PATCH 4/5] Explain dummy image file name check in unit tests --- tests/test-coauthors-guest-authors.php | 2 ++ tests/test-template-tags.php | 2 ++ 2 files changed, 4 insertions(+) diff --git a/tests/test-coauthors-guest-authors.php b/tests/test-coauthors-guest-authors.php index 84097081..723ab6d6 100644 --- a/tests/test-coauthors-guest-authors.php +++ b/tests/test-coauthors-guest-authors.php @@ -131,6 +131,8 @@ public function test_get_guest_author_thumbnail() { $thumbnail = $guest_author_obj->get_guest_author_thumbnail( $guest_author, 0 ); $this->assertStringContainsString( 'avatar-0', $thumbnail ); + // Checking for dummy-attachment instead of dummy-attachment.png, as filename might change to + // dummy-attachment-1.png, dummy-attachment-2.png, etc. when running multiple tests. $this->assertStringContainsString( 'dummy-attachment', $thumbnail ); $this->assertStringContainsString( wp_get_attachment_url( $attachment_id ), $thumbnail ); } diff --git a/tests/test-template-tags.php b/tests/test-template-tags.php index be8d50f1..3e87e8ef 100644 --- a/tests/test-template-tags.php +++ b/tests/test-template-tags.php @@ -1016,6 +1016,8 @@ public function test_coauthors_get_avatar_when_guest_author() { $avatar = coauthors_get_avatar( $guest_author ); $attachment_url = wp_get_attachment_url( $attachment_id ); + // Checking for dummy-attachment instead of dummy-attachment.png, as filename might change to + // dummy-attachment-1.png, dummy-attachment-2.png, etc. when running multiple tests. $this->assertStringContainsString( 'dummy-attachment', $avatar ); $this->assertStringContainsString( $attachment_url, $avatar ); } From 5a6ce2b040c7fce24bfc3277e8f4cbc017933f41 Mon Sep 17 00:00:00 2001 From: Niels Lange Date: Mon, 12 Apr 2021 13:32:34 +0700 Subject: [PATCH 5/5] Travis CI: Bump PHPUnit version from 5 to 7 --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index ba840648..8007aa9c 100644 --- a/.travis.yml +++ b/.travis.yml @@ -52,7 +52,7 @@ before_script: # Set up unit tests - bash bin/install-wp-tests.sh wordpress_test root '' localhost $WP_VERSION # Properly handle versions since the pre-installed PHPUnit is incompatible on some builds - - composer require --dev "phpunit/phpunit":"^5" + - composer require --dev "phpunit/phpunit":"^7" script: # WordPress Coding Standards.