public void GivenThatNoPluginsExists_WhenGetPluginByNameIsCalled_ThenAnExceptionIsThrown() { var sut = new DefaultPluginManager(); var pluginLoaderStub = MockRepository.GenerateStub<IPluginLoader>(); pluginLoaderStub.Stub(x => x.LoadPlugins()).Return(Enumerable.Empty<YarpPluginContainer>()); sut.PluginLoader = pluginLoaderStub; sut.LoadPlugins(); // ReSharper disable once UnusedVariable var plugin = sut.GetPluginByName("name"); }
public void GivenThatPluginsExistsButNotWithTheGivenName_WhenGetPluginByNameIsCalled_ThenAnExceptionIsThrown() { var sut = new DefaultPluginManager(); var pluginLoaderStub = MockRepository.GenerateStub<IPluginLoader>(); pluginLoaderStub.Stub(x => x.LoadPlugins()).Return(new[] {new YarpPluginContainer(MockRepository.GenerateStub<IYarpPlugin>(), new YarpPluginMetadata("id","testName", "author", "description", "version", "category"))}); sut.PluginLoader = pluginLoaderStub; sut.LoadPlugins(); // ReSharper disable once UnusedVariable var plugin = sut.GetPluginByName("name"); }
public void GivenThatPluginsExistsWithCorrectName_WhenGetPluginByNameIsCalled_ThenTheExistingPluginIsReturned() { var sut = new DefaultPluginManager(); var pluginLoaderStub = MockRepository.GenerateStub<IPluginLoader>(); YarpPluginContainer existingPlugin = new YarpPluginContainer(MockRepository.GenerateStub<IYarpPlugin>(), new YarpPluginMetadata("id", "testName", "author", "description", "version", "category")); pluginLoaderStub.Stub(x => x.LoadPlugins()).Return(new[] {existingPlugin}); sut.PluginLoader = pluginLoaderStub; sut.LoadPlugins(); var plugin = sut.GetPluginByName("testName"); Assert.IsTrue(ArePluginMetadatasEqual(existingPlugin.Metadata, plugin.Metadata)); }