public void GetTestExtensionsInformationShouldReturnSettingsProviderExtensions()
        {
            var pathToExtensions = new List <string> {
                typeof(TestPluginDiscovererTests).GetTypeInfo().Assembly.Location
            };

            // The below should not throw an exception.
            var testExtensions = this.testPluginDiscoverer.GetTestExtensionsInformation <TestSettingsProviderPluginInformation, ISettingsProvider>(pathToExtensions);

            var pluginInformation  = new TestSettingsProviderPluginInformation(typeof(ValidSettingsProvider));
            var pluginInformation2 = new TestSettingsProviderPluginInformation(typeof(ValidSettingsProvider2));

            Assert.IsTrue(testExtensions.Keys.Select(k => k.Contains("ValidSettingsProvider")).Count() >= 3);
            Assert.IsTrue(testExtensions.ContainsKey(pluginInformation.IdentifierData));
            Assert.IsTrue(testExtensions.ContainsKey(pluginInformation2.IdentifierData));
        }
 public void SettingsNameShouldReturnExtensionUriOfAnExtension()
 {
     this.testPluginInformation = new TestSettingsProviderPluginInformation(typeof(DummySettingProviderWithSettingsName));
     Assert.AreEqual(DefaultSettingsName, this.testPluginInformation.SettingsName);
 }
 public void SettingsNameShouldReturnEmptyIfASettingsProviderDoesNotHaveOne()
 {
     this.testPluginInformation = new TestSettingsProviderPluginInformation(typeof(DummySettingProviderWithoutSettingsName));
     Assert.IsNotNull(this.testPluginInformation.SettingsName);
     Assert.AreEqual(string.Empty, this.testPluginInformation.SettingsName);
 }
 public void MetadataShouldReturnSettingsProviderName()
 {
     this.testPluginInformation = new TestSettingsProviderPluginInformation(typeof(DummySettingProviderWithSettingsName));
     CollectionAssert.AreEqual(new object[] { DefaultSettingsName }, this.testPluginInformation.Metadata.ToArray());
 }
 public void IdentifierDataShouldReturnSettingsName()
 {
     this.testPluginInformation = new TestSettingsProviderPluginInformation(typeof(DummySettingProviderWithSettingsName));
     Assert.AreEqual(DefaultSettingsName, this.testPluginInformation.IdentifierData);
 }
 public void AssemblyQualifiedNameShouldReturnTestExtensionTypesName()
 {
     this.testPluginInformation = new TestSettingsProviderPluginInformation(typeof(TestPluginInformationTests));
     Assert.AreEqual(typeof(TestPluginInformationTests).AssemblyQualifiedName, this.testPluginInformation.AssemblyQualifiedName);
 }