public void AddRemove() { var storage = new SingleByteStringStorage(); SingleByteString hello = storage.Add("Hello"); Assert.AreEqual(9, storage.TotalUsedBytes); // +4 for header Assert.IsTrue(storage.Remove(hello)); Assert.AreEqual(0, storage.Count); Assert.AreEqual(9, storage.TotalUsedBytes); // Unchanged after removal Assert.IsFalse(storage.Remove(hello)); Assert.AreEqual(0, storage.Count); CollectionAssert.AreEqual(new string[0], storage.GetStrings().ToArray()); }
public void Null() { var storage = new SingleByteStringStorage(); var sbs = new SingleByteString(); ExceptionUtility.Expect <NullReferenceException>(() => storage.Remove(new SingleByteString())); ExceptionUtility.Expect <NullReferenceException>(() => sbs.ToString()); ExceptionUtility.Expect <NullReferenceException>(() => Assert.AreEqual(0, sbs.Length)); }