Merge branch 'stable-3.0' into stable-3.1

* stable-3.0:
  Document the getConfig()-method in the plugin's restApi interface
  Add getConfig() method to plugin restApi interface

Change-Id: I4ac0453bbabb576c94b24455d90d9f3e3bdfbe9a
diff --git a/Documentation/pg-plugin-rest-api.txt b/Documentation/pg-plugin-rest-api.txt
index 70487ef..0d42bf6 100644
--- a/Documentation/pg-plugin-rest-api.txt
+++ b/Documentation/pg-plugin-rest-api.txt
@@ -25,6 +25,17 @@
 .Returns
 - Promise<string>
 
+== getConfig
+`repoApi.getConfig()`
+
+Get server config.
+
+.Params
+- None
+
+.Returns
+- Promise<Object>
+
 == get
 `repoApi.get(url)`
 
diff --git a/polygerrit-ui/app/elements/shared/gr-js-api-interface/gr-plugin-rest-api.js b/polygerrit-ui/app/elements/shared/gr-js-api-interface/gr-plugin-rest-api.js
index 984b870..af8bd9e 100644
--- a/polygerrit-ui/app/elements/shared/gr-js-api-interface/gr-plugin-rest-api.js
+++ b/polygerrit-ui/app/elements/shared/gr-js-api-interface/gr-plugin-rest-api.js
@@ -38,6 +38,10 @@
     return getRestApi().getVersion();
   };
 
+  GrPluginRestApi.prototype.getConfig = function() {
+    return getRestApi().getConfig();
+  };
+
   GrPluginRestApi.prototype.invalidateReposCache = function() {
     getRestApi().invalidateReposCache();
   };
diff --git a/polygerrit-ui/app/elements/shared/gr-js-api-interface/gr-plugin-rest-api_test.html b/polygerrit-ui/app/elements/shared/gr-js-api-interface/gr-plugin-rest-api_test.html
index 8626280..05f84c0 100644
--- a/polygerrit-ui/app/elements/shared/gr-js-api-interface/gr-plugin-rest-api_test.html
+++ b/polygerrit-ui/app/elements/shared/gr-js-api-interface/gr-plugin-rest-api_test.html
@@ -44,6 +44,7 @@
         send: sendStub,
         getLoggedIn: sandbox.stub(),
         getVersion: sandbox.stub(),
+        getConfig: sandbox.stub(),
       };
       stub('gr-rest-api-interface', Object.keys(restApiStub).reduce((a, k) => {
         a[k] = (...args) => restApiStub[k](...args);
@@ -135,12 +136,20 @@
       });
     });
 
-    test('getConfig', () => {
+    test('getVersion', () => {
       restApiStub.getVersion.returns(Promise.resolve('foo bar'));
       return instance.getVersion().then(result => {
         assert.isTrue(restApiStub.getVersion.calledOnce);
         assert.equal(result, 'foo bar');
       });
     });
+
+    test('getConfig', () => {
+      restApiStub.getConfig.returns(Promise.resolve('foo bar'));
+      return instance.getConfig().then(result => {
+        assert.isTrue(restApiStub.getConfig.calledOnce);
+        assert.equal(result, 'foo bar');
+      });
+    });
   });
 </script>