Esempio n. 1
0
        public void ShouldUnsubscribe()
        {
            MemoryLogger        logger;
            TaskCallbackService module;
            ITaskCallBack       callback;

            logger = new MemoryLogger();

            callback = new MockedCallback(false);
            module   = new TaskCallbackService(logger, new MockedSchedulerModule(false));
            Assert.IsFalse(module.Unsubscribe(callback));
            module.Subscribe(callback);
            Assert.IsNotNull(logger.Logs.FirstOrDefault(item => (item.Level == LogLevels.Warning) && (item.ComponentName == module.ModuleName)));
            Assert.IsTrue(module.Unsubscribe(callback));
        }        //
Esempio n. 2
0
        public void ShouldNotifySubscribers()
        {
            MemoryLogger          logger;
            TaskCallbackService   module;
            MockedCallback        callback;
            MockedSchedulerModule mockedSchedulerModule;

            logger = new MemoryLogger();

            mockedSchedulerModule = new MockedSchedulerModule(false);
            callback = new MockedCallback(false);
            module   = new TaskCallbackService(logger, mockedSchedulerModule);
            Assert.IsTrue(module.Subscribe(callback));

            Assert.AreEqual(0, callback.StartedCount);
            mockedSchedulerModule.InvokeTaskStarted();
            Assert.AreEqual(1, callback.StartedCount);

            Assert.AreEqual(0, callback.EndedCount);
            mockedSchedulerModule.InvokeTaskEnded();
            Assert.AreEqual(1, callback.EndedCount);
        }
Esempio n. 3
0
        public void ShouldNNotNotifySubscribersAndLogError()
        {
            MemoryLogger          logger;
            TaskCallbackService   module;
            MockedCallback        callback;
            MockedSchedulerModule mockedSchedulerModule;

            logger = new MemoryLogger();

            mockedSchedulerModule = new MockedSchedulerModule(false);
            callback = new MockedCallback(true);
            module   = new TaskCallbackService(logger, mockedSchedulerModule);
            Assert.IsTrue(module.Subscribe(callback));

            Assert.AreEqual(0, callback.StartedCount);
            mockedSchedulerModule.InvokeTaskStarted();
            Assert.AreEqual(0, callback.StartedCount);
            Assert.IsNotNull(logger.Logs.FirstOrDefault(item => (item.Level == LogLevels.Warning) && (item.ComponentName == module.ModuleName)));

            Assert.AreEqual(0, callback.EndedCount);
            mockedSchedulerModule.InvokeTaskEnded();
            Assert.AreEqual(0, callback.EndedCount);
            Assert.IsNotNull(logger.Logs.FirstOrDefault(item => (item.Level == LogLevels.Warning) && (item.ComponentName == module.ModuleName)));
        }