public void OnStart_ScannerHasModules_ScanningPerformedOnlyOnce() { // given var modules = new[] { typeof(MessageModule), typeof(AnotherMessageModule) }; _scanner.Stub(x => x.ScanForMessageModules()).Return(modules); // when _sut.OnStart(); _sut.OnStart(); // then _scanner.AssertWasCalled(x => x.ScanForMessageModules(), o => o.Repeat.Once()); }