コード例 #1
0
        public void Logout()
        {
            OauthSess.GrantCode    = "GrantCode1234";
            OauthSess.BearerToken  = "BearerToken1234";
            OauthSess.RefreshToken = "RefreshToken1234";
            OauthSess.Expiration   = DateTime.UtcNow.AddDays(2);

            var expectResult = new FabOauthLogout();
            var expectSess   = ((this as TAppSession) == null ? SessionType.Person : SessionType.App);

            MockOauth
            .Setup(x => x.Logout.Get(It.IsAny <string>(), expectSess))
            .Returns(expectResult);

            FabOauthLogout result = OauthSess.Logout();

            Assert.AreEqual(expectResult, result, "Incorrect result.");

            Assert.Null(OauthSess.GrantCode, "GrantCode should be null.");
            Assert.Null(OauthSess.BearerToken, "BearerToken should be null.");
            Assert.Null(OauthSess.RefreshToken, "RefreshToken should be null.");
            CheckExpiration(DateTime.UtcNow);

            Assert.False(OauthSess.IsAuthenticated, "Incorrect IsAuthenticated.");
        }
コード例 #2
0
        public void Success()
        {
            FabOauthLogout result = ExecuteOperation();

            Assert.AreEqual(1, result.Success, "Incorrect Success.");
            Assert.AreEqual(vToken, result.AccessToken, "Incorrect AccessToken.");

            VerificationQueryFunc = () => {
                IWeaverQuery q1 = Weave.Inst.Graph
                                  .V.ExactIndex <Member>(x => x.VertexId, (long)SetupMemberId.FabZach)
                                  .AuthenticatedByOauthAccesses.ToOauthAccess
                                  .Has(x => x.Token)
                                  .ToQuery();

                IWeaverQuery q2 = Weave.Inst.Graph
                                  .V.ExactIndex <Member>(x => x.VertexId, (long)SetupMemberId.FabZach)
                                  .AuthenticatedByOauthAccesses.ToOauthAccess
                                  .Has(x => x.Refresh)
                                  .ToQuery();

                IDataResult dr1 = OpCtx.ExecuteForTest(q1, "OauthLogoutOperation-Token");
                IDataResult dr2 = OpCtx.ExecuteForTest(q2, "OauthLogoutOperation-Refresh");

                Assert.AreEqual(0, dr1.GetCommandResultCount(), "Tokens were not cleared.");
                Assert.AreEqual(0, dr2.GetCommandResultCount(), "Refresh were not cleared.");
            };
        }
コード例 #3
0
        ////////////////////////////////////////////////////////////////////////////////////////////////
        /*--------------------------------------------------------------------------------------------*/
        public FabOauthLogout Logout()
        {
            SessionType    type   = (this as AppSession == null ? SessionType.Person : SessionType.App);
            FabOauthLogout logout = ClientOauth.Logout.Get(BearerToken, type);

            ClearToken();
            Config.Logger.Info(SessionId,
                               "Logout: success=" + logout.success + ", access_token=" + logout.access_token);
            return(logout);
        }
コード例 #4
0
ファイル: XOauthExecutors.cs プロジェクト: inthefabric/Fabric
        public void Logout()
        {
            var query = new Dictionary <string, string>();

            query.Add("access_token", SetupOauth.TokenGalZach);

            BrowserResponse br     = Get("oauth/logout", query);
            FabOauthLogout  result = AssertFabObject <FabOauthLogout>(br);

            Assert.AreEqual(1, result.Success, "Incorrect Success.");
        }
コード例 #5
0
 /*--------------------------------------------------------------------------------------------*/
 private void DoExecute()
 {
     vExecuteResult = vOper.Execute(vMockOpCtx.Object, vMockTasks.Object, vToken);
 }