static void TestData(CanHazConcurrent data, string caption) { Assert.Equal(2, data.Queue.Count); //, caption + ":Queue.Count"); Assert.True(data.Queue.TryDequeue(out int val), caption + ":Queue - try 1"); Assert.Equal(1, val); //, caption + ":Queue - val 1"); Assert.True(data.Queue.TryDequeue(out val), caption + ":Queue - try 2"); Assert.Equal(2, val); //, caption + ":Queue - val 2"); Assert.False(data.Queue.TryDequeue(out _), caption + ":Queue - try 3"); Assert.Equal(2, data.Bag.Count); //, caption + ":Bag.Count"); Assert.Contains("abc", data.Bag); //, caption + ":Bag - try 1"); Assert.Contains("def", data.Bag); //, caption + ":Bag - try 2"); Assert.Equal(2, data.Dictionary.Count); //, caption + ":Dictionary.Count"); Assert.True(data.Dictionary.TryGetValue(1, out string s)); //, caption + ":Dictionary - try 1"); Assert.Equal("abc", s); //, caption + ":Dictionary - val 1"); Assert.True(data.Dictionary.TryGetValue(2, out s)); //, caption + ":Dictionary - try 2"); Assert.Equal("def", s); //, caption + ":Dictionary - val 2"); Assert.Equal(2, data.Stack.Count); //, caption + ":Stack.Count"); Assert.True(data.Stack.TryPop(out val), caption + ":Stack - try 1"); Assert.Equal(2, val); //, caption + ":Stack - val 1"); Assert.True(data.Stack.TryPop(out val), caption + ":Stack - try 1"); Assert.Equal(1, val); //, caption + ":Stack - val 2"); Assert.False(data.Stack.TryPop(out _), caption + ":Stack - try 1"); }
static void TestData(CanHazConcurrent data, string caption) { //int val; //Assert.AreEqual(2, data.Queue.Count, caption + ":Queue.Count"); //Assert.IsTrue(data.Queue.TryDequeue(out val), caption + ":Queue - try 1"); //Assert.AreEqual(1, val, caption + ":Queue - val 1"); //Assert.IsTrue(data.Queue.TryDequeue(out val), caption + ":Queue - try 2"); //Assert.AreEqual(2, val, caption + ":Queue - val 2"); //Assert.IsFalse(data.Queue.TryDequeue(out val), caption + ":Queue - try 3"); Assert.AreEqual(2, data.Bag.Count, caption + ":Bag.Count"); Assert.IsTrue(data.Bag.Contains("abc"), caption + ":Bag - try 1"); Assert.IsTrue(data.Bag.Contains("def"), caption + ":Bag - try 2"); Assert.AreEqual(2, data.Dictionary.Count, caption + ":Dictionary.Count"); string s; Assert.IsTrue(data.Dictionary.TryGetValue(1, out s), caption + ":Dictionary - try 1"); Assert.AreEqual("abc", s, caption + ":Dictionary - val 1"); Assert.IsTrue(data.Dictionary.TryGetValue(2, out s), caption + ":Dictionary - try 2"); Assert.AreEqual("def", s, caption + ":Dictionary - val 2"); //Assert.AreEqual(2, data.Stack.Count, caption + ":Stack.Count"); //Assert.IsTrue(data.Stack.TryPop(out val), caption + ":Stack - try 1"); //Assert.AreEqual(2, val, caption + ":Stack - val 1"); //Assert.IsTrue(data.Stack.TryPop(out val), caption + ":Stack - try 1"); //Assert.AreEqual(1, val, caption + ":Stack - val 2"); //Assert.IsFalse(data.Queue.TryDequeue(out val), caption + ":Stack - try 1"); }
static CanHazConcurrent CreateData() { var data = new CanHazConcurrent(); data.Queue.Enqueue(1); data.Queue.Enqueue(2); data.Bag.Add("abc"); data.Bag.Add("def"); data.Dictionary.AddOrUpdate(1, "abc", (x, y) => y); data.Dictionary.AddOrUpdate(2, "def", (x, y) => y); data.Stack.Push(1); data.Stack.Push(2); return(data); }
static CanHazConcurrent CreateData() { var data = new CanHazConcurrent(); data.Queue.Enqueue(1); data.Queue.Enqueue(2); data.Bag.Add("abc"); data.Bag.Add("def"); data.Dictionary.AddOrUpdate(1, "abc", (x, y) => y); data.Dictionary.AddOrUpdate(2, "def", (x, y) => y); data.Stack.Push(1); data.Stack.Push(2); return data; }