Skip to content

Commit

Permalink
update UT for VipBigPointApi
Browse files Browse the repository at this point in the history
  • Loading branch information
RayWangQvQ committed Apr 29, 2024
1 parent aa03657 commit f09f18e
Show file tree
Hide file tree
Showing 3 changed files with 59 additions and 83 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ public interface IVipBigPointApi

[Header("Referer", "https://big.bilibili.com/mobile/bigPoint/task")]
[HttpPost("/pgc/activity/score/task/complete")]
Task<BiliApiResponse> Complete([JsonContent] ReceiveOrCompleteTaskRequest request);
Task<BiliApiResponse> CompleteAsync([JsonContent] ReceiveOrCompleteTaskRequest request);

[Header("Referer", "https://big.bilibili.com/mobile/bigPoint/task")]
[HttpPost("/pgc/activity/score/task/complete/v2")]
Expand All @@ -60,11 +60,15 @@ public interface IVipBigPointApi

[Header("Referer", "https://big.bilibili.com/mobile/bigPoint/task")]
[HttpGet("/x/vip/privilege/my")]
Task<BiliApiResponse<VouchersInfoResponse>> GetVouchersInfo();

Task<BiliApiResponse<VouchersInfoResponse>> GetVouchersInfoAsync();

/// <summary>
/// 兑换大会员经验
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
[Header("Referer", "https://big.bilibili.com/mobile/bigPoint/task")]
// [Header("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8")]
[HttpPost("/x/vip/experience/add")]
Task<BiliApiResponse> GetVipExperience([FormContent] VipExperienceRequest request);
Task<BiliApiResponse> ObtainVipExperienceAsync([FormContent] VipExperienceRequest request);
}
}
6 changes: 3 additions & 3 deletions src/Ray.BiliBiliTool.Application/VipBigPointAppService.cs
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ public VipBigPointAppService(
public async Task VipExpress()
{
_logger.LogInformation("大会员经验领取任务开始");
var re = await _vipApi.GetVouchersInfo();
var re = await _vipApi.GetVouchersInfoAsync();
if (re.Code == 0)
{
var state = re.Data.List.Find(x => x.Type == 9).State;
Expand All @@ -85,7 +85,7 @@ public async Task VipExpress()
case 0:
_logger.LogInformation("大会员经验未兑换");
//兑换api
var response = await _vipApi.GetVipExperience(new VipExperienceRequest()
var response = await _vipApi.ObtainVipExperienceAsync(new VipExperienceRequest()
{
csrf = _biliCookie.BiliJct
});
Expand Down Expand Up @@ -534,7 +534,7 @@ private async Task TryReceive(string taskCode)
private async Task<bool> Complete(string taskCode)
{
var request = new ReceiveOrCompleteTaskRequest(taskCode);
var re = await _vipApi.Complete(request);
var re = await _vipApi.CompleteAsync(request);
if (re.Code == 0)
{
_logger.LogInformation("已完成");
Expand Down
122 changes: 47 additions & 75 deletions test/Ray.BiliBiliTool.Agent.FunctionalTests/VipBigPointApiTest.cs
Original file line number Diff line number Diff line change
@@ -1,10 +1,8 @@
using Microsoft.Extensions.DependencyInjection;
using Ray.BiliBiliTool.Agent.BiliBiliAgent.Dtos.VipTask;
using Ray.BiliBiliTool.Console;
using Ray.BiliBiliTool.Infrastructure;
using Ray.BiliBiliTool.Agent.BiliBiliAgent.Interfaces;
using Xunit.Abstractions;
using Ray.BiliBiliTool.Agent.BiliBiliAgent.Dtos.ViewMall;
using Microsoft.Extensions.Hosting;
using FluentAssertions;
using Ray.BiliBiliTool.Agent.BiliBiliAgent.Dtos;
Expand All @@ -13,15 +11,15 @@ namespace Ray.BiliBiliTool.Agent.FunctionalTests;

public class VipBigPointApiTest
{
private readonly IVipBigPointApi _api;
private readonly IVipBigPointApi _api;

private readonly ITestOutputHelper _output;
private readonly BiliCookie _ck;
private readonly ITestOutputHelper _output;
private readonly BiliCookie _ck;

public VipBigPointApiTest(ITestOutputHelper output)
{
_output = output;

_output = output;

var envs = new List<string>
{
"--ENVIRONMENT=Development",
Expand All @@ -31,104 +29,78 @@ public VipBigPointApiTest(ITestOutputHelper output)
IHost host = Program.CreateHost(envs.ToArray());
_ck = host.Services.GetRequiredService<BiliCookie>();
_api = host.Services.GetRequiredService<IVipBigPointApi>();
}

}

[Fact]
public async Task GetTaskListAsync_Normal_Success()
{
// Arrange
// Arrange
// Act
BiliApiResponse<VipTaskInfo> re = await _api.GetTaskListAsync();


// Assert
re.Code.Should().Be(0);
re.Data.Should().NotBeNull();
re.Data.Task_info.Modules.Should().HaveCountGreaterThan(0);
re.Code.Should().Be(0);
re.Data.Should().NotBeNull();
re.Data.Task_info.Modules.Should().HaveCountGreaterThan(0);
}

[Fact]
public async Task SignAsync_Normal_Success()
{
// Arrange
var req = new SignRequest()
{
csrf = _ck.BiliJct
};

// Arrange
var req = new SignRequest()
{
csrf = _ck.BiliJct
};

// Act
BiliApiResponse re = await _api.SignAsync(req);
_output.WriteLine(re.ToJsonStr());

_output.WriteLine(re.ToJsonStr());

// Assert
re.Code.Should().Be(0);
re.Code.Should().Be(0);
re.Message.Should().BeEquivalentTo("success");
}

[Fact]
public async Task VipInfoTest()
public async Task GetVouchersInfoAsync_Normal_Success()
{
using var scope = Global.ServiceProviderRoot.CreateScope();

var ck = scope.ServiceProvider.GetRequiredService<BiliCookie>();
var api = scope.ServiceProvider.GetRequiredService<IVipBigPointApi>();
// Arrange
// Act
var re = await _api.GetVouchersInfoAsync();

var re = await api.GetVouchersInfo();
if (re.Code == 0)
{
var info = re.Data.List.Find(x => x.Type == 9);
if (info != null)
{
_output.WriteLine(info.State.ToString());
}
else
{
_output.WriteLine("error");
}
}
// Assert
re.Code.Should().Be(0);
re.Data.List.Should().Contain(x => x.Type == 9);
}


[Fact]
public async Task GetVipExperienceTest()
{
using var scope = Global.ServiceProviderRoot.CreateScope();

var ck = scope.ServiceProvider.GetRequiredService<BiliCookie>();
var api = scope.ServiceProvider.GetRequiredService<IVipBigPointApi>();
var re = await api.GetVipExperience(new VipExperienceRequest()
public async Task GetVipExperienceAsync_Normal_Success()
{
// Arrange
var req = new VipExperienceRequest()
{
csrf = ck.BiliJct
});
csrf = _ck.BiliJct
};

// Act
BiliApiResponse re = await _api.ObtainVipExperienceAsync(req);

_output.WriteLine(re.Message);
// Assert
re.Code.Should().Be(0);
}

[Fact]
public async Task ViewVipMallTest()
{
using var scope = Global.ServiceProviderRoot.CreateScope();

var ck = scope.ServiceProvider.GetRequiredService<BiliCookie>();
var api = scope.ServiceProvider.GetRequiredService<IVipMallApi>();
// var test = await api.ViewvipMall("{\r\n\"csrf\":\"33e5d4564b6b69cb4ed829bc404158cb\",\r\n\"eventId\":\"hevent_oy4b7h3epeb\"\r\n}");
var re = await api.ViewVipMallAsync(new ViewVipMallRequest()
{
Csrf = ck.BiliJct,
EventId = "hevent_oy4b7h3epeb"
});
_output.WriteLine(re.Message);
public async Task CompleteAsync_Normal_Success()
{
// Arrange
var req = new ReceiveOrCompleteTaskRequest("dress-view");

}

[Fact]
public async Task DressViewTest()
{
using var scope = Global.ServiceProviderRoot.CreateScope();
// Act
var re = await _api.CompleteAsync(req);

var ck = scope.ServiceProvider.GetRequiredService<BiliCookie>();
var api = scope.ServiceProvider.GetRequiredService<IVipBigPointApi>();
var re = await api.Complete(new ReceiveOrCompleteTaskRequest(
"dress-view"));
_output.WriteLine(re.Message);
// Assert
re.Code.Should().Be(0);
}
}

0 comments on commit f09f18e

Please sign in to comment.