DotNetCore.SKIT.FlurlHttpCl.../test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/WechatTenpayResponseVerificationTests.cs

34 lines
1.2 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading;
using System.Threading.Tasks;
using Xunit;
namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests
{
public class WechatTenpayResponseVerificationTests
{
[Fact(DisplayName = "验证响应签名")]
public async Task VerifyResponseSignatureTest()
{
var request = new Models.QueryCertificatesRequest();
var response = await TestClients.Instance.ExecuteQueryCertificatesAsync(request);
Assert.NotNull(response.WechatpayRequestId);
Assert.NotNull(response.WechatpayTimestamp);
Assert.NotNull(response.WechatpayNonce);
Assert.NotNull(response.WechatpayCertSerialNumber);
Assert.NotNull(response.WechatpaySignature);
TestClients.Instance.DecryptResponseEncryptedData(ref response);
foreach (var certificateModel in response.CertificateList)
{
TestClients.GlobalCertificateManager.SetCertificate(certificateModel.SerialNumber, certificateModel.EncryptCertificate.CipherText);
}
Assert.True(TestClients.Instance.VerifyResponseSignature(response));
}
}
}