public void UnknownString_CreatesNewInstance() { WellknownStringDecoder decoder = new WellknownStringDecoder(); byte[] encodedBytes = Encoding.UTF8.GetBytes("abc"); string decodedString1 = decoder.DecodeString(new ArraySegment <byte>(encodedBytes)); string decodedString2 = decoder.DecodeString(new ArraySegment <byte>(encodedBytes)); Assert.IsTrue(!ReferenceEquals(decodedString1, decodedString2)); }
public void KnownString_SameInstanceReturned() { WellknownStringDecoder decoder = new WellknownStringDecoder(); decoder.AddWellknownString("abc"); byte[] encodedBytes = Encoding.UTF8.GetBytes("abc"); string decodedString1 = decoder.DecodeString(new ArraySegment <byte>(encodedBytes)); string decodedString2 = decoder.DecodeString(new ArraySegment <byte>(encodedBytes)); Assert.IsTrue(ReferenceEquals(decodedString1, decodedString2)); }