using Nonemm.Session; namespace Nonemm.Session.Tests; public class GrabListTests { [Fact] public void TheNewestCallIsAtTheTop() { GrabList list = new(); list.Add("OM5M"); list.Add("S53M"); Assert.Equal(["S53M", "OM5M"], list.Calls); } [Fact] public void ACallHeardAgainMovesRatherThanRepeating() { GrabList list = new(); list.Add("OM5M"); list.Add("S53M"); list.Add("OM5M"); Assert.Equal(["OM5M", "S53M"], list.Calls); } [Fact] public void TheOldestFallsOffTheEnd() { GrabList list = new(capacity: 2); list.Add("OM5M"); list.Add("S53M"); list.Add("9A1A"); Assert.Equal(["9A1A", "S53M"], list.Calls); } [Fact] public void OurOwnCallAndTheOneBeingTypedAreNotWanted() { Assert.False(GrabList.Wanted("OM5M", "OM5M", "")); Assert.False(GrabList.Wanted("S53M", "OM5M", "S53M")); Assert.False(GrabList.Wanted("OM5", "OM5M", "")); Assert.True(GrabList.Wanted("S53M", "OM5M", "9A1A")); } }