private static DracoonClient CreateClient(string accessToken, string refreshToken)
        {
            // Init the auth object with the access and refresh token
            DracoonAuth auth = new DracoonAuth(CLIENT_ID, CLIENT_SECRET, accessToken, refreshToken);

            // Create a dracoon client with default settings but with authorization
            return(new DracoonClient(SERVER_URI, auth));
        }
        private static DracoonClient CreateClient(string authCode)
        {
            // Init the auth object with the authCode
            DracoonAuth auth = new DracoonAuth(CLIENT_ID, CLIENT_SECRET, authCode);

            // Create a dracoon client with default settings but with authorization
            return(new DracoonClient(SERVER_URI, auth));
        }
Beispiel #3
0
        static void Main()
        {
            ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls12;

            DracoonAuth dracoonAuth = new DracoonAuth(ACCESS_TOKEN);
            IWebProxy   wp          = WebRequest.GetSystemWebProxy();

            wp.Credentials = CredentialCache.DefaultNetworkCredentials;
            DracoonHttpConfig config = new DracoonHttpConfig(retryEnabled: true, webProxy: wp);

            dc = new DracoonClient(SERVER_URI, dracoonAuth, ENCRYPTION_PASSWORD, new Logger(), config);
        }
Beispiel #4
0
        public void DracoonAuth_Ctor2()
        {
            // ARRANGE
            string expectedToken = "token1";

            // ACT
            DracoonAuth actual = new DracoonAuth(expectedToken);

            // ASSERT
            Assert.Equal(expectedToken, actual.AccessToken);
            Assert.Equal(DracoonAuth.Mode.ACCESS_TOKEN, actual.UsedMode);
        }
Beispiel #5
0
        public void DracoonAuth_Ctor1()
        {
            // ARRANGE
            string expectedId     = "id1";
            string expectedSecret = "secret1";
            string expectedCode   = "code1";

            // ACT
            DracoonAuth actual = new DracoonAuth(expectedId, expectedSecret, expectedCode);

            // ASSERT
            Assert.Equal(expectedId, actual.ClientId);
            Assert.Equal(expectedSecret, actual.ClientSecret);
            Assert.Equal(expectedCode, actual.AuthorizationCode);
            Assert.Equal(DracoonAuth.Mode.AUTHORIZATION_CODE, actual.UsedMode);
        }
Beispiel #6
0
        public void DracoonAuth_Ctor3()
        {
            // ARRANGE
            string expectedId      = "id1";
            string expectedSecret  = "secret1";
            string expectedToken   = "token1";
            string expectedRefresh = "refresh1";

            // ACT
            DracoonAuth actual = new DracoonAuth(expectedId, expectedSecret, expectedToken, expectedRefresh);

            // ASSERT
            Assert.Equal(expectedId, actual.ClientId);
            Assert.Equal(expectedSecret, actual.ClientSecret);
            Assert.Equal(expectedToken, actual.AccessToken);
            Assert.Equal(expectedRefresh, actual.RefreshToken);
            Assert.Equal(DracoonAuth.Mode.ACCESS_REFRESH_TOKEN, actual.UsedMode);
        }
Beispiel #7
0
        public void RefreshAccessToken()
        {
            // ARRANGE
            DracoonAuth            expected = new DracoonAuth("id1", "secret1", FactoryUser.ApiOAuthToken.AccessToken, FactoryUser.ApiOAuthToken.RefreshToken);
            IInternalDracoonClient c        = FactoryClients.InternalDracoonClientMock();
            IOAuth oa = new OAuthClient(c, new DracoonAuth("id1", "secret1", "tokenInit", "refreshInit"));

            Mock.Arrange(() => c.Builder.PostOAuthRefresh(Arg.AnyString, Arg.AnyString, Arg.AnyString, Arg.AnyString)).Returns(FactoryRestSharp.PostOAuthRefreshMock("id1", "secret1", "grant", "token1")).Occurs(1);
            Mock.Arrange(() => c.Executor.DoSyncApiCall <ApiOAuthToken>(Arg.IsAny <IRestRequest>(), RequestType.PostOAuthRefresh, 0)).Returns(FactoryUser.ApiOAuthToken).Occurs(1);

            // ACT
            oa.RefreshAccessToken();

            // ASSERT
            Assert.Equal(expected.AccessToken, oa.Auth.AccessToken);
            Assert.Equal(expected.RefreshToken, oa.Auth.RefreshToken);
            Mock.Assert(c.Builder);
            Mock.Assert(c.Executor);
        }
        public void DracoonClient_Ctor()
        {
            // ARRANGE
            Uri               expectedUri  = new Uri("https://dracoon.team");
            DracoonAuth       expectedAuth = new DracoonAuth("token");
            string            expectedEncryptionPassword = "******";
            EmptyLog          expectedLog    = new EmptyLog();
            DracoonHttpConfig expectedConfig = new DracoonHttpConfig(true);

            Mock.Arrange(() => Arg.IsAny <Uri>().MustBeValid(Arg.AnyString)).DoNothing().Occurs(1);

            // ACT
            DracoonClient          dc         = new DracoonClient(expectedUri, null, expectedEncryptionPassword, expectedLog, expectedConfig);
            IInternalDracoonClient dcInternal = dc;

            // ASSERT
            Assert.Equal(expectedUri, dc.ServerUri);
            Assert.Null(dc.Auth);
            dc.Auth = expectedAuth;
            Assert.Equal(expectedAuth, dc.Auth);
            Assert.Equal(expectedEncryptionPassword, dc.EncryptionPassword);
            Assert.Equal(expectedConfig, DracoonClient.HttpConfig);
            Assert.Equal(expectedLog, DracoonClient.Log);
            Assert.NotNull(dc.Nodes);
            Assert.NotNull(dc.Account);
            Assert.NotNull(dc.Server);
            Assert.NotNull(dc.Shares);
            Assert.NotNull(dc.Users);
            Assert.NotNull(dcInternal.Executor);
            Assert.NotNull(dcInternal.Builder);
            Assert.NotNull(dcInternal.OAuth);
            Assert.NotNull(dcInternal.NodesImpl);
            Assert.NotNull(dcInternal.AccountImpl);
            Assert.NotNull(dcInternal.ServerImpl);
            Assert.NotNull(dcInternal.SharesImpl);
            Assert.NotNull(dcInternal.UsersImpl);
            Mock.Assert(() => Arg.IsAny <Uri>().MustBeValid(Arg.AnyString));
        }
Beispiel #9
0
 internal OAuthClient(IInternalDracoonClient client, DracoonAuth auth)
 {
     _client = client;
     _auth   = auth;
 }