public void Should_Process_VariableLists()
        {
            var optionSet = new OptionSet();

            var n = optionSet.AddVariableList <string>("n", "");
            var a = optionSet.AddVariableList <int>("a", "");

            //TODO: Screaming for an NUnit-test-case-coverage.
            var args = "-n FindThisString -n:Findit2 -n:Findi3 -a2 -a3 -a5565 -a:23".Split(' ');

            optionSet.Parse(args);

            Action <IEnumerable <int> > verifyA = x =>
            {
// ReSharper disable PossibleMultipleEnumeration
                Assert.AreEqual(4, x.Count());
                Assert.IsTrue(x.Contains(23));
// ReSharper restore PossibleMultipleEnumeration
            };

            Action <IEnumerable <string> > verifyN = x =>
            {
// ReSharper disable PossibleMultipleEnumeration
                Assert.AreEqual(3, x.Count());
                Assert.IsTrue(x.Contains("FindThisString"));
// ReSharper restore PossibleMultipleEnumeration
            };

            verifyA(a);
            verifyA(a.Values);

            verifyN(n);
            verifyN(n.Values);
        }
        public void Should_process_variablelists()
        {
            var p = new OptionSet();

            var n = p.AddVariableList<string>("n", "");
            var a = p.AddVariableList<int>("a", "");

            var myArgs = "-n FindThisString -n:Findit2 -n:Findi3 -a2 -a3 -a5565 -a:23".Split(' ');
            p.Parse(myArgs);

            Assert.AreEqual(3, n.Values.Count());
            Assert.AreEqual(4, a.Values.Count());

            Assert.IsTrue(n.Values.Contains("FindThisString"));
            Assert.IsTrue(a.Values.Contains(23));
        }
        public void Should_Process_VariableLists()
        {
            var optionSet = new OptionSet();

            var n = optionSet.AddVariableList<string>("n", "");
            var a = optionSet.AddVariableList<int>("a", "");

            //TODO: Screaming for an NUnit-test-case-coverage.
            var args = "-n FindThisString -n:Findit2 -n:Findi3 -a2 -a3 -a5565 -a:23".Split(' ');

            optionSet.Parse(args);

            Action<IEnumerable<int>> verifyA = x =>
            {
// ReSharper disable PossibleMultipleEnumeration
                Assert.AreEqual(4, x.Count());
                Assert.IsTrue(x.Contains(23));
// ReSharper restore PossibleMultipleEnumeration
            };

            Action<IEnumerable<string>> verifyN = x =>
            {
// ReSharper disable PossibleMultipleEnumeration
                Assert.AreEqual(3, x.Count());
                Assert.IsTrue(x.Contains("FindThisString"));
// ReSharper restore PossibleMultipleEnumeration
            };

            verifyA(a);
            verifyA(a.Values);

            verifyN(n);
            verifyN(n.Values);
        }