public void Contains_OnEmptyRoyaleArena_ShouldReturnFalse() { //Arrange IArena RA = new RoyaleArena(); //Act //Assert Assert.IsFalse(RA.Contains(new Battlecard(5, CardType.BUILDING, "kocho", 5, 6.2))); Assert.IsFalse(RA.Contains(new Battlecard(3, CardType.RANGED, "a", 6, 0.5))); }
public void Add_MultipleElements_RA_ShouldContainThemById() { //Arrange IArena RA = new RoyaleArena(); Battlecard cd1 = new Battlecard(5, CardType.SPELL, "joro", 5, 5); Battlecard cd2 = new Battlecard(6, CardType.SPELL, "joro", 5, 5); Battlecard cd3 = new Battlecard(7, CardType.SPELL, "joro", 5, 5); //Act RA.Add(cd1); RA.Add(cd2); RA.Add(cd3); //Assert Assert.IsTrue(RA.Contains(cd1)); Assert.IsTrue(RA.Contains(cd2)); Assert.IsTrue(RA.Contains(cd3)); }
public void Contains_OnExistingElement_ShouldReturnTrue() { //Arrange IArena RA = new RoyaleArena(); Battlecard cd1 = new Battlecard(5, CardType.SPELL, "joro", 6, 5); Battlecard cd2 = new Battlecard(6, CardType.SPELL, "joro", 7, 5); Battlecard cd3 = new Battlecard(7, CardType.SPELL, "joro", 8, 5); //Act RA.Add(cd1); RA.Add(cd2); RA.Add(cd3); //Assert Assert.IsTrue(RA.Contains(cd1)); Assert.IsFalse(RA.Contains(new Battlecard(3, CardType.BUILDING, "ta", 6, 52.2))); Assert.IsTrue(RA.Contains(cd2)); Assert.IsFalse(RA.Contains(new Battlecard(0, CardType.RANGED, "b", 7, 5))); }
public void ContainsById_100000_ShouldWorkFast() { IArena ar = new RoyaleArena(); int count = 100000; List <Battlecard> cds = new List <Battlecard>(); CardType[] statuses = new CardType[] { CardType.MELEE, CardType.RANGED, CardType.SPELL, CardType.BUILDING }; Random rand = new Random(); Stopwatch sw = new Stopwatch(); for (int i = 0; i < count; i++) { int status = rand.Next(0, 4); Battlecard cd = new Battlecard(i, statuses[status], i.ToString(), 0, 0); ar.Add(cd); cds.Add(cd); } Assert.AreEqual(count, ar.Count); Stopwatch watch = new Stopwatch(); watch.Start(); foreach (Battlecard cd in cds) { Assert.True(ar.Contains(cd)); } watch.Stop(); long l1 = watch.ElapsedMilliseconds; Assert.Less(l1, 200); }