public void Init() { // arrange var vm = new FieldFileViewModel(); var editableRoot = Mock.Create<IEditableRoot>(Behavior.Loose); var getSystemOptionsMethodWasCalled = false; Mock.NonPublic.Arrange(vm, "GetSystemOptions").DoInstead(() => getSystemOptionsMethodWasCalled = true); var setStateWasCalled = false; Mock.NonPublic.Arrange(vm, "SetState").DoInstead(() => setStateWasCalled = true); var value = Mock.Create<ICloneable>(Behavior.Loose); Mock.Arrange(() => value.Clone()).Returns(new object()); var detailsViewModel = Mock.Create<IDetailsViewModel>(Behavior.Loose); // act vm.Init(editableRoot, value, detailsViewModel); // assert Assert.IsTrue(getSystemOptionsMethodWasCalled); Assert.IsTrue(setStateWasCalled); Assert.IsNotNull(new PrivateAccessor(vm).GetField("_originalFileProcess")); }