示例#1
0
        public void Preapproval_CreateShouldBeOk()
        {
            Preapproval preapproval = new Preapproval()
            {
                PayerEmail        = "*****@*****.**",
                BackUrl           = "https://localhost.com",
                ExternalReference = "1",
                Reason            = "TESTING 1",
                AutoRecurring     = new MercadoPago.DataStructures.Preapproval.AutoRecurring()
                {
                    CurrencyId        = MercadoPago.Common.CurrencyId.ARS,
                    Frequency         = 1,
                    FrequencyType     = MercadoPago.Common.FrequencyType.months,
                    TransactionAmount = 10,
                }
            };

            preapproval.Save();
            LastPreapproval = preapproval;

            Console.WriteLine("INIT POINT: " + preapproval.SandboxInitPoint);

            Assert.IsTrue(preapproval.Id.Length > 0, "Failed: Preapproval could not be successfully created");
            Assert.IsTrue(preapproval.InitPoint.Length > 0, "Failed: Preapproval has not a valid init point");
        }
        public async System.Threading.Tasks.Task <Preapproval> UpdateAsync(Preapproval preapproval)
        {
            if (preapproval is null)
            {
                this.AddNotification("preapproval", "preapproval is Required");
            }

            if (this.IsInvalid())
            {
                return(null);
            }

            var url = await MPUrlBuildAsync($"/preapproval/{preapproval.Id}/");

            var content  = new StringContent(JsonConvert.SerializeObject(preapproval, MPUtil.JsonSerializerSettings), Encoding.UTF8, "application/json");
            var response = await Client.PutAsync(url, content);

            string stringResponse = await this.ExtractResponseAsync(response);

            if (this.IsInvalid())
            {
                return(null);
            }
            return(JsonConvert.DeserializeObject <Preapproval>(stringResponse, MPUtil.JsonSerializerSettings));
        }
        private void buttonPreappOK_Click(object sender, EventArgs e)
        {
            groupBoxPreapp.Visible = false;

            String res = Preapproval.request(
                textBoxPreapp_SDate.Text, textBoxPreapp_EDate.Text,
                textBoxPreapp_SenderEmail.Text, textBoxPreapp_MaxTotal.Text);

            groupBoxPreapp.Visible = true;

            richTextBoxPreapp.Text = res;

            NVPCodec decoder = new NVPCodec();

            decoder.Decode(res);

            textBoxPreapp_ACK.Text       = decoder["responseEnvelope.ack"];
            textBoxPreapp_PreappKey.Text = decoder["preapprovalKey"];

            if (decoder["responseEnvelope.ack"] == "Success")
            {
                labelPreapp_CMDLink.Visible   = true;
                textBoxPreapp_CMDLink.Visible = true;
                textBoxPreapp_CMDLink.Text    = Const.PREAPPROVED_CMD + decoder["preapprovalKey"];
            }
            else
            {
                labelPreapp_CMDLink.Visible   = false;
                textBoxPreapp_CMDLink.Visible = false;
            }
        }
示例#4
0
        public void Search_Success()
        {
            PreapprovalCreateRequest request = BuildCreateRequest();
            Preapproval createdPreapproval   = client.Create(request);

            Thread.Sleep(3000);

            var searchRequest = new SearchRequest
            {
                Limit   = 1,
                Offset  = 0,
                Filters = new Dictionary <string, object>
                {
                    ["id"] = createdPreapproval.Id,
                },
            };
            ResultsResourcesPage <Preapproval> results =
                client.Search(searchRequest);

            Assert.NotNull(results);
            Assert.NotNull(results.Paging);
            Assert.Equal(1, results.Paging.Total);
            Assert.NotNull(results.Results);
            Assert.Equal(createdPreapproval.Id, results.Results.First().Id);
        }
示例#5
0
        public async Task SearchAsync_Success()
        {
            PreapprovalCreateRequest request = BuildCreateRequest();
            Preapproval createdPreapproval   = await client.CreateAsync(request);

            await Task.Delay(3000);

            var searchRequest = new SearchRequest
            {
                Limit   = 1,
                Offset  = 0,
                Filters = new Dictionary <string, object>
                {
                    ["id"] = createdPreapproval.Id,
                },
            };
            ResultsResourcesPage <Preapproval> results =
                await client.SearchAsync(searchRequest);

            Assert.NotNull(results);
            Assert.NotNull(results.Paging);
            Assert.Equal(1, results.Paging.Total);
            Assert.NotNull(results.Results);
            Assert.Equal(createdPreapproval.Id, results.Results.First().Id);
        }
示例#6
0
        public void Create_Success()
        {
            PreapprovalCreateRequest request = BuildCreateRequest();

            Preapproval preapproval = client.Create(request);

            Assert.NotNull(preapproval);
            Assert.NotNull(preapproval.Id);
        }
示例#7
0
        public async Task CreateAsync_Success()
        {
            PreapprovalCreateRequest request = BuildCreateRequest();

            Preapproval preapproval = await client.CreateAsync(request);

            Assert.NotNull(preapproval);
            Assert.NotNull(preapproval.Id);
        }
示例#8
0
        public void Get_Success()
        {
            PreapprovalCreateRequest request = BuildCreateRequest();
            Preapproval createdPreapproval   = client.Create(request);

            Thread.Sleep(1000);

            Preapproval preapproval = client.Get(createdPreapproval.Id);

            Assert.NotNull(preapproval);
            Assert.Equal(createdPreapproval.Id, preapproval.Id);
        }
示例#9
0
        public async Task GetAsync_Success()
        {
            PreapprovalCreateRequest request = BuildCreateRequest();
            Preapproval createdPreapproval   = await client.CreateAsync(request);

            await Task.Delay(1000);

            Preapproval preapproval =
                await client.GetAsync(createdPreapproval.Id);

            Assert.NotNull(preapproval);
            Assert.Equal(createdPreapproval.Id, preapproval.Id);
        }
示例#10
0
        public async Task UpdateAsync_Success()
        {
            PreapprovalCreateRequest request = BuildCreateRequest();
            Preapproval createdPreapproval   = await client.CreateAsync(request);

            await Task.Delay(1000);

            PreapprovalUpdateRequest updateRequest = BuildUpdateRequest();
            Preapproval preapproval =
                await client.UpdateAsync(createdPreapproval.Id, updateRequest);

            Assert.NotNull(preapproval);
            Assert.Equal(updateRequest.ExternalReference, preapproval.ExternalReference);
        }
示例#11
0
        public void Update_Success()
        {
            PreapprovalCreateRequest request = BuildCreateRequest();
            Preapproval createdPreapproval   = client.Create(request);

            Thread.Sleep(1000);

            PreapprovalUpdateRequest updateRequest = BuildUpdateRequest();
            Preapproval preapproval =
                client.Update(createdPreapproval.Id, updateRequest);

            Assert.NotNull(preapproval);
            Assert.Equal(updateRequest.ExternalReference, preapproval.ExternalReference);
        }
示例#12
0
        public ActionResult PreapprovalCreate(decimal amt)
        {
            var req = new PreapprovalCreateRequest
            {
                account_id        = WePayConfig.accountId, accessToken = WePayConfig.accessToken,
                mode              = "regular",
                amount            = amt,
                period            = "once",
                short_description = "test pre-approval",
                redirect_uri      = GlobalVars.hostUrl + @"/Home/PreapprovalStatus"
            };

            var resp = new Preapproval().Post(req);

            if (resp.Error != null)
            {
                ViewBag.Error = resp.Error.error + " - " + resp.Error.error_description;
                return(View("Status"));
            }
            return(Redirect(resp.preapproval_uri));
        }
示例#13
0
        public void Preapproval_FindByIDShouldbeOk()
        {
            Preapproval foundedPreapproval = Preapproval.FindById(LastPreapproval.Id);

            Assert.AreEqual(foundedPreapproval.Id, LastPreapproval.Id);
        }