public void Should_append_plugin_after_last_of_type_when_it_exists_and_not_prepend( [Values(true, false)] bool @default) { var plugin1 = Plugin <IPluginType> .Create <Plugin1>(); var plugin2 = Plugin <IPluginType> .Create <Plugin2>(); var append = Plugin <IPluginType> .Create <Plugin3>(); _plugins.Append(plugin1).Append(plugin2); _plugins.AppendAfterOrPrepend <Plugin1>(append, @default) .ShouldOnlyContain(plugin1, append, plugin2); _plugins.IsDefault(append).ShouldEqual(@default); }
public PluginsDsl <TPlugin> AfterOrPrepend <TFind>() where TFind : TPlugin { Plugins.AppendAfterOrPrepend <TFind>(_plugin); return(this); }