Exemple #1
0
        public void AddAndGetTokenRequest_WrongMember()
        {
            var storedPayload = new TokenRequestPayload
            {
                UserRefId   = Util.Nonce(),
                RedirectUrl = tokenUrl,
                To          = new TokenMember
                {
                    Id = tokenClient.CreateMemberBlocking().MemberId()
                },
                Description   = Util.Nonce(),
                CallbackState = Util.Nonce(),
                TransferBody  = new TokenRequestPayload.Types.TransferBody
                {
                    Amount   = "10.0",
                    Currency = "EUR"
                }
            };
            var storedOptions = new Tokenio.Proto.Common.TokenProtos.TokenRequestOptions
            {
                BankId           = "iron",
                ReceiptRequested = false
            };

            Assert.Throws <AggregateException>(() => member.StoreTokenRequestBlocking(storedPayload, storedOptions));
        }
Exemple #2
0
        public void AddAndGetTransferTokenRequest()
        {
            var storedPayload = new TokenRequestPayload
            {
                UserRefId   = Util.Nonce(),
                RefId       = Util.Nonce(),
                RedirectUrl = tokenUrl,
                To          = new TokenMember
                {
                    Id = member.MemberId()
                },
                Description   = Util.Nonce(),
                CallbackState = Util.Nonce(),
                TransferBody  = new TokenRequestPayload.Types.TransferBody
                {
                    Amount       = "10.0",
                    Currency     = "EUR",
                    Instructions = new TransferInstructions(),
                }
            };

            var storedOptions = new Tokenio.Proto.Common.TokenProtos.TokenRequestOptions
            {
                BankId           = "iron",
                ReceiptRequested = false
            };

            var requestId = member.StoreTokenRequestBlocking(storedPayload, storedOptions);

            Assert.NotEmpty(requestId);
            var retrievedRequest = tokenClient.RetrieveTokenRequestBlocking(requestId);

            Assert.Equal(storedPayload, retrievedRequest.GetTokenRequestPayload());
            Assert.Equal(storedOptions, retrievedRequest.GetTokenRequestOptions());
        }
Exemple #3
0
 public Builder()
 {
     requestOptions      = new TokenRequestOptions();
     requestPayload      = new TokenRequestPayload();
     requestOptions.From = new TokenMember();
     requestPayload.To   = new TokenMember();
 }
Exemple #4
0
 private TokenRequest(
     TokenRequestPayload payload,
     TokenRequestOptions options)
 {
     tokenRequestOptions = options;
     tokenRequestPayload = payload;
 }
Exemple #5
0
        /// <summary>
        /// Stores a transfer token request.
        /// </summary>
        /// <param name="payload">the token request payload (immutable fields)</param>
        /// <param name="options">the token request options (mutable fields)</param>
        /// <returns>an id to reference the token request</returns>
        public Task <string> StoreTokenRequest(
            TokenRequestPayload payload,
            Proto.Common.TokenProtos.TokenRequestOptions options)
        {
            var request = new StoreTokenRequestRequest
            {
                RequestPayload = payload,
                RequestOptions = options
            };

            return(gateway(authenticationContext()).StoreTokenRequestAsync(request)
                   .ToTask(response => response.TokenRequest.Id));
        }
Exemple #6
0
        public void AddAndGetAccessTokenRequest()
        {
            IList <ResourceType> types = new List <ResourceType>();

            types.Add(ResourceType.Accounts);
            var resourcesList = new ResourceTypeList();

            resourcesList.Resources.Add(types);
            var storedPayload = new TokenRequestPayload
            {
                UserRefId   = Util.Nonce(),
                RefId       = Util.Nonce(),
                RedirectUrl = Util.Nonce(),
                To          = new TokenMember
                {
                    Id = member.MemberId()
                },
                Description   = Util.Nonce(),
                CallbackState = Util.Nonce(),
                AccessBody    = new TokenRequestPayload.Types.AccessBody
                {
                    Type             = { types },
                    ResourceTypeList = resourcesList,
                }
            };

            var storedOptions = new Tokenio.Proto.Common.TokenProtos.TokenRequestOptions
            {
                BankId           = "iron",
                ReceiptRequested = false
            };

            var requestId = member.StoreTokenRequestBlocking(storedPayload, storedOptions);

            Assert.NotEmpty(requestId);

            var retrievedRequest = tokenClient.RetrieveTokenRequestBlocking(requestId);

            Assert.Equal(storedPayload, retrievedRequest.GetTokenRequestPayload());
            Assert.Equal(storedOptions, retrievedRequest.GetTokenRequestOptions());
        }
Exemple #7
0
 /// <summary>
 /// Creates an instance from TokenRequestPayload and TokenRequestOptions protos.
 /// </summary>
 /// <param name="tokenRequestPayload">TokenRequestPayload</param>
 /// <param name="tokenRequestOptions">TokenRequestOptions</param>
 /// <returns></returns>
 public static TokenRequest fromProtos(
     TokenRequestPayload tokenRequestPayload,
     TokenRequestOptions tokenRequestOptions)
 {
     return(new TokenRequest(tokenRequestPayload, tokenRequestOptions));
 }
Exemple #8
0
 /// <summary>
 /// Stores a token request.
 /// </summary>
 /// <param name="requestPayload">the token request payload (immutable fields)</param>
 /// <param name="requestOptions">the token request options (mutable with UpdateTokenRequest)</param>
 /// <returns>an id to reference the token request</returns>
 public string StoreTokenRequestBlocking(
     TokenRequestPayload requestPayload,
     TokenRequestOptions requestOptions)
 {
     return(StoreTokenRequest(requestPayload, requestOptions).Result);
 }
Exemple #9
0
 /// <summary>
 /// Stores a token request.
 /// </summary>
 /// <param name="requestPayload">the token request payload (immutable fields)</param>
 /// <param name="requestOptions">the token request options (mutable with UpdateTokenRequest)</param>
 /// <returns>an id to reference the token request</returns>
 public Task <string> StoreTokenRequest(
     TokenRequestPayload requestPayload,
     TokenRequestOptions requestOptions)
 {
     return(client.StoreTokenRequest(requestPayload, requestOptions));
 }