public void TypeNode_ArrayTypeNodeHash_Test() { var hashSet = new HashSet <TypeNode>(); hashSet.Add(ArrayTypeNode.BoolType()); Assert.AreEqual(1, hashSet.Count); Assert.IsTrue(hashSet.Contains(ArrayTypeNode.BoolType())); Assert.IsFalse(hashSet.Contains(ArrayTypeNode.ByteType())); Assert.IsFalse(hashSet.Contains(ArrayTypeNode.CharType())); Assert.IsFalse(hashSet.Contains(ArrayTypeNode.IntType())); Assert.IsFalse(hashSet.Contains(ArrayTypeNode.VoidType())); hashSet.Add(ArrayTypeNode.BoolType()); Assert.AreEqual(1, hashSet.Count); hashSet.Add(ArrayTypeNode.ByteType()); Assert.AreEqual(2, hashSet.Count); Assert.IsTrue(hashSet.Contains(ArrayTypeNode.BoolType())); Assert.IsTrue(hashSet.Contains(ArrayTypeNode.ByteType())); Assert.IsFalse(hashSet.Contains(ArrayTypeNode.CharType())); Assert.IsFalse(hashSet.Contains(ArrayTypeNode.IntType())); Assert.IsFalse(hashSet.Contains(ArrayTypeNode.VoidType())); hashSet.Add(ArrayTypeNode.ByteType()); Assert.AreEqual(2, hashSet.Count); hashSet.Add(ArrayTypeNode.CharType()); Assert.AreEqual(3, hashSet.Count); Assert.IsTrue(hashSet.Contains(ArrayTypeNode.BoolType())); Assert.IsTrue(hashSet.Contains(ArrayTypeNode.ByteType())); Assert.IsTrue(hashSet.Contains(ArrayTypeNode.CharType())); Assert.IsFalse(hashSet.Contains(ArrayTypeNode.IntType())); Assert.IsFalse(hashSet.Contains(ArrayTypeNode.VoidType())); hashSet.Add(ArrayTypeNode.CharType()); Assert.AreEqual(3, hashSet.Count); hashSet.Add(ArrayTypeNode.IntType()); Assert.AreEqual(4, hashSet.Count); Assert.IsTrue(hashSet.Contains(ArrayTypeNode.BoolType())); Assert.IsTrue(hashSet.Contains(ArrayTypeNode.ByteType())); Assert.IsTrue(hashSet.Contains(ArrayTypeNode.CharType())); Assert.IsTrue(hashSet.Contains(ArrayTypeNode.IntType())); Assert.IsFalse(hashSet.Contains(ArrayTypeNode.VoidType())); hashSet.Add(ArrayTypeNode.IntType()); Assert.AreEqual(4, hashSet.Count); hashSet.Add(ArrayTypeNode.VoidType()); Assert.AreEqual(5, hashSet.Count); Assert.IsTrue(hashSet.Contains(ArrayTypeNode.BoolType())); Assert.IsTrue(hashSet.Contains(ArrayTypeNode.ByteType())); Assert.IsTrue(hashSet.Contains(ArrayTypeNode.CharType())); Assert.IsTrue(hashSet.Contains(ArrayTypeNode.IntType())); Assert.IsTrue(hashSet.Contains(ArrayTypeNode.VoidType())); hashSet.Add(ArrayTypeNode.VoidType()); Assert.AreEqual(5, hashSet.Count); }
public void TypeNode_ArrayTypeNodeEquals_Test() { Assert.IsTrue(ArrayTypeNode.BoolType().Equals(ArrayTypeNode.BoolType())); Assert.IsTrue(ArrayTypeNode.ByteType().Equals(ArrayTypeNode.ByteType())); Assert.IsTrue(ArrayTypeNode.CharType().Equals(ArrayTypeNode.CharType())); Assert.IsTrue(ArrayTypeNode.IntType().Equals(ArrayTypeNode.IntType())); Assert.IsTrue(ArrayTypeNode.VoidType().Equals(ArrayTypeNode.VoidType())); Assert.IsFalse(ArrayTypeNode.ByteType().Equals(ArrayTypeNode.VoidType())); Assert.IsFalse(ArrayTypeNode.BoolType().Equals(ArrayTypeNode.VoidType())); Assert.IsFalse(ArrayTypeNode.IntType().Equals(ArrayTypeNode.VoidType())); Assert.IsFalse(ArrayTypeNode.CharType().Equals(ArrayTypeNode.VoidType())); Assert.IsFalse(ArrayTypeNode.BoolType().Equals(ArrayTypeNode.IntType())); Assert.IsFalse(ArrayTypeNode.ByteType().Equals(ArrayTypeNode.IntType())); Assert.IsFalse(ArrayTypeNode.CharType().Equals(ArrayTypeNode.IntType())); Assert.IsFalse(ArrayTypeNode.BoolType().Equals(ArrayTypeNode.CharType())); Assert.IsFalse(ArrayTypeNode.ByteType().Equals(ArrayTypeNode.CharType())); Assert.IsFalse(ArrayTypeNode.BoolType().Equals(ArrayTypeNode.ByteType())); Assert.IsFalse(ArrayTypeNode.ByteType().Equals(ArrayTypeNode.BoolType())); }