private IDnaDataReader MockCurrentRowDataReader(IDnaDataReader reader) { Expect.Call(reader.Execute()).Return(reader); Expect.Call(reader.HasRows).Return(true); Queue<bool> readReturn = new Queue<bool>(); readReturn.Enqueue(true); readReturn.Enqueue(false); Expect.Call(reader.Read()).Return(true).WhenCalled( x => x.ReturnValue = readReturn.Dequeue()); Expect.Call(() => reader.Dispose()); Expect.Call(reader.GetString("AppId")).Return("iPlayer"); Expect.Call(reader.GetString("IdentityUserId")).Return("0"); //Expect.Call(reader.GetInt32NullAsZero("PostId")).Repeat.Times(2).Return(1); //Expect.Call(reader.GetStringNullAsEmpty("DnaUrl")).Return("http://www.bbc.co.uk/dna/"); //Expect.Call(reader.GetInt32NullAsZero("ForumID")).Repeat.Any().Return(1234); //Expect.Call(reader.GetInt32NullAsZero("ThreadId")).Repeat.Any().Return(54321); //Expect.Call(reader.GetInt32("ActivityType")).Repeat.Times(2).Return(5); //Expect.Call(reader.GetInt32("EventID")).Return(1234); //string appId = Guid.NewGuid().ToString(); //Expect.Call(reader.GetStringNullAsEmpty("AppId")).Return(appId); //Expect.Call(reader.GetStringNullAsEmpty("Body")).Return("here is some text"); //DateTime now = new DateTime(1970, 1, 1, 0, 0, 0); //Expect.Call(reader.GetDateTime("ActivityTime")).Return(now); //Expect.Call(reader.GetInt32("IdentityUserId")).Return(12345456); //Expect.Call(reader.GetStringNullAsEmpty("AppName")).Return("iPlayer"); //Expect.Call(reader.GetStringNullAsEmpty("BlogUrl")).Repeat.Times(2).Return("http://www.bbc.co.uk/blogs/test"); return reader; }