Example #1
0
        public void GroupingsShouldHaveTheCorrectKey()
        {
            var lookup = new QueryLookup("?key=value");
            IGrouping <string, string> group = lookup.Single();

            Assert.That(group.Key, Is.EqualTo("key"));
        }
Example #2
0
        public void GroupingsContainsShouldReturnWhetherTheValueIsPresentOrNot()
        {
            var lookup = new QueryLookup("?key=value");
            ICollection <string> group = (ICollection <string>)lookup.Single();

            Assert.That(group.Contains("value"), Is.True);
            Assert.That(group.Contains("unknown"), Is.False);
        }
Example #3
0
        public void GroupingsShouldReturnAllTheValues()
        {
            var lookup = new QueryLookup("?key=1&key=2");
            IGrouping <string, string> group = lookup.Single();

            string[] values = group.ToArray();

            Assert.That(values, Is.EqualTo(new[] { "1", "2" }));
        }
Example #4
0
        public void GroupingsCopyToShouldCopyAllTheValues()
        {
            var lookup = new QueryLookup("?key=1&key=2");
            ICollection <string> group = (ICollection <string>)lookup.Single();

            string[] target = new string[3];
            group.CopyTo(target, 1);

            Assert.That(target, Is.EqualTo(new[] { null, "1", "2" }));
        }
Example #5
0
        public void GroupingsShouldBeAReadOnlyCollection()
        {
            var lookup = new QueryLookup("?key=value");
            ICollection <string> group = (ICollection <string>)lookup.Single();

            Assert.That(group.Count, Is.EqualTo(1));
            Assert.That(group.IsReadOnly, Is.True);
            Assert.That(() => group.Add(""), Throws.InstanceOf <NotSupportedException>());
            Assert.That(() => group.Clear(), Throws.InstanceOf <NotSupportedException>());
            Assert.That(() => group.Remove(""), Throws.InstanceOf <NotSupportedException>());
        }
Example #6
0
        public void GroupingsNonGenericGetEnumeratorShouldReturnTheValues()
        {
            var         lookup     = new QueryLookup("?key=1&key=2");
            IEnumerable group      = lookup.Single();
            IEnumerator enumerator = group.GetEnumerator();

            // We can test the order of the results as well here...
            Assert.That(enumerator.MoveNext(), Is.True);
            Assert.That(enumerator.Current, Is.EqualTo("1"));
            Assert.That(enumerator.MoveNext(), Is.True);
            Assert.That(enumerator.Current, Is.EqualTo("2"));
            Assert.That(enumerator.MoveNext(), Is.False);
        }