Albert221 has uploaded a new change for review. ( 
https://gerrit.wikimedia.org/r/400075 )

Change subject: Unit test NewsletterDb::addPublisher
......................................................................

Unit test NewsletterDb::addPublisher

Bug: T183615
Change-Id: I8c26b7386cc9dfca7a35badf0f4585aa241a8f3d
---
M tests/NewsletterDbTest.php
1 file changed, 38 insertions(+), 4 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/Newsletter 
refs/changes/75/400075/1

diff --git a/tests/NewsletterDbTest.php b/tests/NewsletterDbTest.php
index 2bc4de9..e89994f 100644
--- a/tests/NewsletterDbTest.php
+++ b/tests/NewsletterDbTest.php
@@ -27,6 +27,20 @@
                return $mock;
        }
 
+       /**
+        * @return Newsletter
+        */
+       private function getTestNewsletter() {
+               $mainPage = Title::newFromText( 'Test content' );
+
+               return new Newsletter(
+                       1,
+                       'Test name',
+                       'Test description',
+                       $mainPage->getArticleID()
+               );
+       }
+
        public function testAddSubscriber() {
                $mockWriteDb = $this->getMockIDatabase();
                $user = User::newFromName( 'Test User' );
@@ -44,12 +58,32 @@
 
                $table = new NewsletterDb( $this->getMockLoadBalancer( 
$mockWriteDb ) );
 
-               $mainPage = Title::newFromText( "Test content" );
-               $newsletter = new Newsletter( 1, 'Test name', 'This is a test 
description. This is a more test description',
-                       $mainPage->getArticleID() );
-               $result = $table->addSubscription( $newsletter, [ 
$user->getId() ] );
+               $result = $table->addSubscription( $this->getTestNewsletter(), 
[ $user->getId() ] );
 
                $this->assertEquals( true, $result );
        }
 
+       public function testAddPublished() {
+               $mockWriteDb = $this->getMockIDatabase();
+               $user = User::newFromName( 'Test User' );
+               $user->addToDatabase();
+
+               $mockWriteDb
+                       ->expects( $this->once() )
+                       ->method( 'insert' )
+                       ->with(
+                               'nl_publishers',
+                               [ 'nlp_newsletter_id' => 1, 'nlp_publisher_id' 
=> $user->getId() ]
+                       );
+               $mockWriteDb
+                       ->expects( $this->once() )
+                       ->method( 'affectedRows' )
+                       ->willReturn( 1 );
+
+               $table = new NewsletterDb( $this->getMockLoadBalancer( 
$mockWriteDb ) );
+
+               $result = $table->addPublisher( $this->getTestNewsletter(), 
$user );
+
+               $this->assertTrue( $result );
+       }
 }

-- 
To view, visit https://gerrit.wikimedia.org/r/400075
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I8c26b7386cc9dfca7a35badf0f4585aa241a8f3d
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/Newsletter
Gerrit-Branch: master
Gerrit-Owner: Albert221 <[email protected]>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to