I want to test the following method in C# for all code paths.
public int foo (int x) { if(x == 1) return 1; if(x==2) return 2; else
In MS Test you can create data driven tests that accept different inputs for the same test method.
Here's a blog post on it: http://toddmeinershagen.blogspot.ca/2011/02/creating-data-driven-tests-in-ms-test.html