jenkins-bot has submitted this change and it was merged. ( 
https://gerrit.wikimedia.org/r/334349 )

Change subject: Make description editing respect page protection
......................................................................


Make description editing respect page protection

Change-Id: I45f99bf1af8fb75ec61a454ab9bcfb0dc87e3119
---
M app/src/main/java/org/wikipedia/descriptions/DescriptionEditClient.java
M app/src/test/java/org/wikipedia/descriptions/DescriptionEditClientTest.java
2 files changed, 18 insertions(+), 3 deletions(-)

Approvals:
  Niedzielski: Looks good to me, approved
  jenkins-bot: Verified



diff --git 
a/app/src/main/java/org/wikipedia/descriptions/DescriptionEditClient.java 
b/app/src/main/java/org/wikipedia/descriptions/DescriptionEditClient.java
index a3046a4..2a86efb 100644
--- a/app/src/main/java/org/wikipedia/descriptions/DescriptionEditClient.java
+++ b/app/src/main/java/org/wikipedia/descriptions/DescriptionEditClient.java
@@ -10,6 +10,7 @@
 import org.wikipedia.dataclient.retrofit.RetrofitException;
 import org.wikipedia.login.User;
 import org.wikipedia.page.Page;
+import org.wikipedia.page.PageProperties;
 import org.wikipedia.page.PageTitle;
 import org.wikipedia.server.mwapi.MwServiceError;
 
@@ -40,9 +41,11 @@
     }
 
     public static boolean isEditAllowed(@NonNull Page page) {
-        return 
ENABLED_LANGUAGES.contains(page.getTitle().getWikiSite().languageCode())
-                && page.getPageProperties() != null
-                && 
!TextUtils.isEmpty(page.getPageProperties().getWikiBaseItem());
+        PageProperties props = page.getPageProperties();
+        return props != null
+                && props.canEdit()
+                && !TextUtils.isEmpty(props.getWikiBaseItem())
+                && 
ENABLED_LANGUAGES.contains(page.getTitle().getWikiSite().languageCode());
     }
 
     /**
diff --git 
a/app/src/test/java/org/wikipedia/descriptions/DescriptionEditClientTest.java 
b/app/src/test/java/org/wikipedia/descriptions/DescriptionEditClientTest.java
index 8b66361..ebb4cf5 100644
--- 
a/app/src/test/java/org/wikipedia/descriptions/DescriptionEditClientTest.java
+++ 
b/app/src/test/java/org/wikipedia/descriptions/DescriptionEditClientTest.java
@@ -89,12 +89,24 @@
         WikiSite wiki = WikiSite.forLanguageCode("en");
         PageProperties props = mock(PageProperties.class);
         when(props.getWikiBaseItem()).thenReturn("Q123");
+        when(props.canEdit()).thenReturn(true);
         Page page = new Page(new PageTitle("Test", wiki, null, null, props),
                 Collections.<Section>emptyList(), props);
 
         assertThat(DescriptionEditClient.isEditAllowed(page), is(true));
     }
 
+    @Test public void testIsEditAllowedPageProtected() {
+        WikiSite wiki = WikiSite.forLanguageCode("en");
+        PageProperties props = mock(PageProperties.class);
+        when(props.getWikiBaseItem()).thenReturn("Q123");
+        when(props.canEdit()).thenReturn(false);
+        Page page = new Page(new PageTitle("Test", wiki, null, null, props),
+                Collections.<Section>emptyList(), props);
+
+        assertThat(DescriptionEditClient.isEditAllowed(page), is(false));
+    }
+
     @Test public void testIsEditAllowedNoWikiBaseItem() {
         WikiSite wiki = WikiSite.forLanguageCode("en");
         PageProperties props = mock(PageProperties.class);

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

Gerrit-MessageType: merged
Gerrit-Change-Id: I45f99bf1af8fb75ec61a454ab9bcfb0dc87e3119
Gerrit-PatchSet: 2
Gerrit-Project: apps/android/wikipedia
Gerrit-Branch: master
Gerrit-Owner: Mholloway <mhollo...@wikimedia.org>
Gerrit-Reviewer: Brion VIBBER <br...@wikimedia.org>
Gerrit-Reviewer: Dbrant <dbr...@wikimedia.org>
Gerrit-Reviewer: Niedzielski <sniedziel...@wikimedia.org>
Gerrit-Reviewer: jenkins-bot <>

_______________________________________________
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to