Add Gerrit.getLoggedIn to JS API

Feature: Issue 3915
Change-Id: Ie54178b703011bda4c76b4d64bad75786acfcd8d
diff --git a/polygerrit-ui/app/elements/shared/gr-js-api-interface/gr-js-api-interface.html b/polygerrit-ui/app/elements/shared/gr-js-api-interface/gr-js-api-interface.html
index 22ec900..1967b80 100644
--- a/polygerrit-ui/app/elements/shared/gr-js-api-interface/gr-js-api-interface.html
+++ b/polygerrit-ui/app/elements/shared/gr-js-api-interface/gr-js-api-interface.html
@@ -14,6 +14,7 @@
 limitations under the License.
 -->
 <link rel="import" href="../../../bower_components/polymer/polymer.html">
+<link rel="import" href="../gr-rest-api-interface/gr-rest-api-interface.html">
 
 <dom-module id="gr-js-api-interface">
   <template></template>
diff --git a/polygerrit-ui/app/elements/shared/gr-js-api-interface/gr-js-api-interface_test.html b/polygerrit-ui/app/elements/shared/gr-js-api-interface/gr-js-api-interface_test.html
index 959ba64..5936bee 100644
--- a/polygerrit-ui/app/elements/shared/gr-js-api-interface/gr-js-api-interface_test.html
+++ b/polygerrit-ui/app/elements/shared/gr-js-api-interface/gr-js-api-interface_test.html
@@ -38,6 +38,11 @@
     };
 
     setup(function() {
+      stub('gr-rest-api-interface', {
+        getAccount: function() {
+          return Promise.resolve({name: 'Judy Hopps'});
+        },
+      })
       element = fixture('basic');
       errorStub = sinon.stub(console, 'error');
       Gerrit.install(function(p) { plugin = p; }, '0.1',
@@ -125,5 +130,12 @@
       assert(callback.notCalled);
     });
 
+    test('getAccount', function(done) {
+      Gerrit.getLoggedIn().then(function(loggedIn) {
+        assert.isTrue(loggedIn);
+        done();
+      });
+    });
+
   });
 </script>
diff --git a/polygerrit-ui/app/elements/shared/gr-js-api-interface/gr-public-js-api.js b/polygerrit-ui/app/elements/shared/gr-js-api-interface/gr-public-js-api.js
index 60b4205..21d76f1 100644
--- a/polygerrit-ui/app/elements/shared/gr-js-api-interface/gr-public-js-api.js
+++ b/polygerrit-ui/app/elements/shared/gr-js-api-interface/gr-public-js-api.js
@@ -93,6 +93,10 @@
     callback(new Plugin(src));
   };
 
+  Gerrit.getLoggedIn = function() {
+    return document.createElement('gr-rest-api-interface').getLoggedIn();
+  };
+
   Gerrit.installGwt = function() {
     // NOOP since PolyGerrit doesn’t support GWT plugins.
   };