void EncodesAllForbiddenCharacters() { List <char> forbiddenCharacters = "\\/#?\t\n\r".ToCharArray().ToList(); forbiddenCharacters.AddRange(Enumerable.Range(0x00, 1 + (0x1f - 0x00)).Select(i => (char)i)); forbiddenCharacters.AddRange(Enumerable.Range(0x7f, 1 + (0x9f - 0x7f)).Select(i => (char)i)); string allForbiddenCharacters = String.Join("", forbiddenCharacters); string allForbiddenCharactersEncoded = TableKeyEncoding.Encode(allForbiddenCharacters); // Make sure decoding is same as encoding Assert.Equal(allForbiddenCharacters, TableKeyEncoding.Decode(allForbiddenCharactersEncoded)); // Ensure encoding does not contain any forbidden characters Assert.Equal(0, allForbiddenCharacters.Count(c => allForbiddenCharactersEncoded.Contains(c))); }
public void RoundTripTest(string unencoded, string encoded) { Assert.Equal(encoded, TableKeyEncoding.Encode(unencoded)); Assert.Equal(unencoded, TableKeyEncoding.Decode(encoded)); }