Example #1
0
 private void ReadParameterToken_Supports(IEnumerable<string> args, Type classType, string methodName, string expectedParameterName, object expectedValue, int valuesRead) {
     MethodInfo method = classType.GetMethod(methodName);
     ParameterInfo expectedParameter = method.GetParameters().Single(p => p.Name == expectedParameterName);
     Assert.IsNotNull(method);
     Queue<string> queue = new Queue<string>(args);
     int initQueueSize = queue.Count;
     ArgParserProxy proxy = new ArgParserProxy(method.DeclaringType);
     ParserContext context = new ParserContext { ActionMethod = method };
     object result = proxy.ReadParameterTokenPublic(queue, context);
     Assert.IsNotNull(result);
     Assert.IsInstanceOf<ParameterValueToken>(result);
     ParameterValueToken token = (ParameterValueToken) result;
     Assert.AreEqual(expectedParameter, token.Parameter);
     Assert.AreEqual(expectedValue, token.Value);
     Assert.AreEqual(initQueueSize - valuesRead, queue.Count);
 }