mirror of
https://github.com/babalae/better-genshin-impact.git
synced 2026-04-28 22:59:45 +08:00
45 lines
1.7 KiB
C#
45 lines
1.7 KiB
C#
using BetterGenshinImpact.GameTask.AutoDomain.Model;
|
||
using BetterGenshinImpact.GameTask.Model.Area;
|
||
using BetterGenshinImpact.GameTask.Model.Area.Converter;
|
||
using BetterGenshinImpact.UnitTest.CoreTests.RecognitionTests.OCRTests;
|
||
using OpenCvSharp;
|
||
using System;
|
||
using System.Collections.Generic;
|
||
using System.Linq;
|
||
using System.Text;
|
||
using System.Threading.Tasks;
|
||
|
||
namespace BetterGenshinImpact.UnitTest.GameTaskTests.AutoDomainTests
|
||
{
|
||
[Collection("Init Collection")]
|
||
public class ResinStatusTests
|
||
{
|
||
private readonly PaddleFixture paddle;
|
||
|
||
public ResinStatusTests(PaddleFixture paddle)
|
||
{
|
||
this.paddle = paddle;
|
||
}
|
||
|
||
[Theory]
|
||
[InlineData(@"AutoDomain\SelectRevitalization.png", 21, 0, 2, 1)]
|
||
/// <summary>
|
||
/// 测试识别四种树脂数量,数量应正确
|
||
/// </summary>
|
||
public void RecogniseFromRegion_ResinStatusShouldBeRight(string screenshot1080p, int originalResinCount, int fragileResinCount, int condensedResinCount, int transientResinCount)
|
||
{
|
||
//
|
||
Mat mat = new Mat(@$"..\..\..\Assets\{screenshot1080p}");
|
||
var imageRegion = new ImageRegion(mat, 0, 0, converter: new ScaleConverter(1d));
|
||
FakeSystemInfo systemInfo = new FakeSystemInfo(new Vanara.PInvoke.RECT(0, 0, mat.Width, mat.Height), 1);
|
||
|
||
//
|
||
var result = ResinStatus.RecogniseFromRegion(imageRegion, systemInfo, this.paddle.Get()); // todo:System.Exception : 未找到原粹树脂图标
|
||
|
||
//
|
||
Assert.Equal(originalResinCount, result.OriginalResinCount);
|
||
Assert.Equal(condensedResinCount, result.CondensedResinCount);
|
||
}
|
||
}
|
||
}
|