紹介.NET UnitTest FluentAssistations




https://fluentassertions.com/introduction
公式ホームページリンク
https://www.nuget.org/packages/FluentAssertions/6.0.0-alpha0002
Nugetリンク
PriorityQueueはマルチネットマスターライブラリにインストールされていないため、外部ライブラリを参照するとhttps://github.com/BlueRaja/High-Speed-Priority-Queue-for-C-Sharp/wiki/Using-the-SimplePriorityQueueが見つかります.
これはvscodeでテストを記述したときに発見されたライブラリです.それは最もよく実現されているようなので、使用方法を熟知するためです.
dotnet add package FluentAssertions
生成されたテスト項目にパッケージを追加します.参考までに、ネーミングスペースはPriority Queueを宣言するだけです.
using System.Collections.Generic;
using System;
using Priority_Queue;
using FluentAssertions;
using Xunit;

namespace OptimizedPriorityQueueTests
{
    public class BasicTests
    {
        [Fact]
        public void EnqueueDequeuShouldBeOrderedAscendedByPririoty()
        {
            // FastPriority Queue Test
            SimplePriorityQueue<KeyValuePair<int,int>> pQueue = new ();

            pQueue.Enqueue(new KeyValuePair<int, int>(2,2),2);
            pQueue.Enqueue(new KeyValuePair<int, int>(3,5),5);
            pQueue.Enqueue(new KeyValuePair<int, int>(4,1),1);

            // Ascending , Descending
            var object1 = pQueue.Dequeue();
            // Assert.Equal(object1.Value , 1);
            object1.Value.Should().Be(1);
            object1.Value.Should().NotBe(2);
        }
    }
}
パッケージを追加すると、すべてのオブジェクトがこのように表示されます()...~など、人の話し方でテストを書くことができ、vscodeでもよく機能しています.