Mock IOptionsMonitor
You are calling the constructor of the OptionsMonitor<TOptions> class incorrectly. In this case I would have just mocked the IOptionsMonitor<AuthenticationSettings> interface For example using Moq AuthenticationSettings au = new AuthenticationSettings() { … }; var monitor = Mock.Of<IOptionsMonitor<AuthenticationSettings>>(_ => _.CurrentValue == au); ActiveDirectoryLogic _SUT = new ActiveDirectoryLogic(monitor);