From 4e59bfc1e9949b374e249429d7152fcb813f1352 Mon Sep 17 00:00:00 2001 From: Yiyuan Liu Date: Thu, 25 Jun 2020 02:09:30 +0800 Subject: [PATCH] Add Web API unit test MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 测试了如下方法 1.AddMiningSequence(MiningSequenceDto miningSequenceDto); --向MiningSequenceRepository中增加MiningSequenceDto类型的元素; 2.GetAllMiningSequences(); --获取MiningSequenceRepository中的集合元素 3.ClearMiningSequences(int i); --保留后i个MiningSequenceRepository中的集合元素,移除其他集合元素 --- MiningSequenceRepositoryTest.cs | 73 +++++++++++++++++++++++++++++++++ 1 file changed, 73 insertions(+) create mode 100644 MiningSequenceRepositoryTest.cs diff --git a/MiningSequenceRepositoryTest.cs b/MiningSequenceRepositoryTest.cs new file mode 100644 index 0000000000..052f96566b --- /dev/null +++ b/MiningSequenceRepositoryTest.cs @@ -0,0 +1,73 @@ +using System; +using System.Collections.Generic; +using Xunit; +using AElf.WebApp.Application.Chain; +using AElf.WebApp.Application.Chain.Dto; +using AElf.WebApp.Application.Chain.Infrastructure; +using Google.Protobuf.WellKnownTypes; +using Shouldly; +using Xunit.Abstractions; +using Xunit.Sdk; + + +namespace AElf.WebApp.Application.Chain.Tests.infrastructure +{ + public class MiningSequenceRepositoryTest: WebAppTestBase + { + private readonly IMiningSequenceRepository _miningSequenceRepository; + + + public MiningSequenceRepositoryTest(ITestOutputHelper outputHelper):base(outputHelper) + { + _miningSequenceRepository = GetRequiredService(); + + } + + [Fact] + public void AddMiningSequence_Test() + { + MiningSequenceDto MiningSequenceA = new MiningSequenceDto + { + Pubkey ="", Behaviour = "", BlockHeight = 1, MiningTime = new Timestamp(), + PreviousBlockHash = "" + }; + //arrange + var miningSequence = _miningSequenceRepository; + var miningList = new List(); + //act + miningList.Add(MiningSequenceA); + var expected = miningList; + miningSequence.AddMiningSequence(MiningSequenceA); + var result = miningSequence.GetAllMiningSequences(); + + //assert + result.ShouldBe(expected); + } + + [Fact] + public void DeleteMiningSequence_Test() + { + MiningSequenceDto MiningSequenceA = new MiningSequenceDto + { + Pubkey ="", Behaviour = "", BlockHeight = 1, MiningTime = new Timestamp(), + PreviousBlockHash = "" + }; + MiningSequenceDto MiningSequenceB = new MiningSequenceDto + { + Pubkey = MiningSequenceA.Pubkey, Behaviour = MiningSequenceA.Behaviour, + BlockHeight = MiningSequenceA.BlockHeight, MiningTime = MiningSequenceA.MiningTime, + PreviousBlockHash = MiningSequenceA.PreviousBlockHash + }; + var miningSequenceRepositoryB = _miningSequenceRepository; + miningSequenceRepositoryB.AddMiningSequence(MiningSequenceB); + miningSequenceRepositoryB.ClearMiningSequences(0); + var result = miningSequenceRepositoryB.GetAllMiningSequences(); + result.ShouldBeEmpty(); + + + + } + + + } +}