This document discusses mocking objects with the Moq framework. It begins by explaining what mocking is and the terminology used, such as mocks, stubs, and dummies. It then covers the basics of mocking an object with Moq, including the reasons for using mocks and what a mocking framework does. The document provides examples of hand-rolled mocks and code samples using Moq. It discusses more advanced Moq topics like recursive mocking, protected members, interfaces, and best practices for test-driven development.