I am not sure what to Do statement is.
There are a few ways to deal with this.
1. create a fake file with your data and mock the Load statement to read the test file
// in your code:
Load("data.txt");
// to mock:
mock.Exepect("Load").Args(new Assert(@".... est.txt"));
2. You can return a new HashTable and return it instead of your file implementation:
recorder.ExpectAndReturn(myObject.f, new Hashtable());
3. Use DynamicReturnValues
myObject.f();
recorder.Return(new DynamicReturnValue(
delegate(object[] p, object c)
{
int index = int(p[0]);
return b(index);
}));