public void ReadReminderTest() { using (var cs = new CherryService()) { cs.PluginRepository.RegisterPlugin(new FakeReminderPlugin()); cs.PluginRepository.RegisterPlugin(new PomodoroSensor()); cs.PluginRepository.RegisterPlugin(new RemindersCorePlugin()); cs.PluginRepository.RegisterPlugin(new ReminderPluginsRepository()); cs.PluginRepository.RegisterPlugin(new FakeTimeProvider()); cs.PluginRepository.RegisterPlugin(new FakeWindowsController()); cs.PluginRepository.RegisterPlugin(new DatabaseController()); var csr = new StringReader("<cherryTomato><config>" + "<reminders><reminder typeName=\"FakeReminder\" /></reminders>" + "</config></cherryTomato>"); cs.InitializeCherryServiceEventsAndCommands(); cs.PluginRepository.TieEvents(); cs.LoadConfiguration(csr); var allReminders = cs.PluginRepository.CherryCommands["Get All Reminders"].Do(null) as IEnumerable<IReminder>; Assert.That(allReminders.FirstOrDefault().TypeName, Is.EqualTo("FakeReminder")); } }
public void LoadConfigTest() { var dbFile = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + "\\cherrytomato\\database.sqlite"; var ver = new Version(Application.ProductVersion); var configString = "<?xml version=\"1.0\" encoding=\"utf-16\"?>\r\n" + "<cherryTomato>\r\n" + " <hasRun />\r\n" + " <newestKnownVersion major=\"" + ver.Major + "\" minor=\"" + ver.Minor + "\" />\r\n" + " <databaseFile path=\"" + dbFile + "\" />\r\n" + " <config />\r\n" + "</cherryTomato>"; var reader = new StringReader(configString); using (var cs = new CherryService()) { var vc = new VersionChecker(); cs.PluginRepository.RegisterPlugin(new PomodoroSensor()); cs.PluginRepository.RegisterPlugin(new FakeTimeProvider()); cs.PluginRepository.RegisterPlugin(new DatabaseController()); var fr = new FirstRunSensor(); cs.PluginRepository.RegisterPlugin(fr); cs.PluginRepository.RegisterPlugin(vc); cs.InitializeCherryServiceEventsAndCommands(); cs.PluginRepository.TieEvents(); cs.LoadConfiguration(reader); Assert.AreEqual(true, fr.HasRun); Assert.AreEqual(ver.Major, vc.NewestKnownVersion.Major); Assert.AreEqual(ver.Minor, vc.NewestKnownVersion.Minor); } }
public void HasRunTest() { using (var cs = new CherryService()) { cs.PluginRepository.RegisterPlugin(new PomodoroSensor()); var fr = new FirstRunSensor(); cs.PluginRepository.RegisterPlugin(fr); cs.PluginRepository.RegisterPlugin(new FakeTimeProvider()); cs.PluginRepository.RegisterPlugin(new DatabaseController()); cs.InitializeCherryServiceEventsAndCommands(); cs.PluginRepository.TieEvents(); var csr = new StringReader("<cherryTomato><hasRun /></cherryTomato>"); cs.LoadConfiguration(csr); Assert.That(fr.HasRun, Is.True); } }