public void TestFindServicesCore( string svcDir, bool useBinDir ) { if ( Directory.Exists( svcDir ) ) { Directory.Delete( svcDir, true ); } const string template = "<% @ ServiceHost Service=\"{0}\" %>"; Directory.CreateDirectory( svcDir ); if ( useBinDir ) { Directory.CreateDirectory( svcDir + Path.DirectorySeparatorChar + "bin" ); } File.WriteAllText( Path.Combine( svcDir, "1.svc" ), String.Format( CultureInfo.InvariantCulture, template, typeof( TestService1 ).FullName ) ); File.WriteAllText( Path.Combine( svcDir, "2.svc" ), String.Format( CultureInfo.InvariantCulture, template, typeof( TestService2 ).FullName ) ); File.Copy( typeof( TestService1 ).Assembly.ManifestModule.FullyQualifiedName, useBinDir ? Path.Combine( svcDir, "bin", typeof( TestService1 ).Assembly.ManifestModule.Name ) : Path.Combine( svcDir, typeof( TestService1 ).Assembly.ManifestModule.Name ) ); var target = new FileBasedServiceTypeLocator(); target.BaseDirectory = svcDir; var result = target.FindServices().ToArray(); Assert.That( result.Any( item => item.ServiceType == typeof( TestService1 ) ) ); Assert.That( result.Any( item => item.ServiceType == typeof( TestService2 ) ) ); }
public void TestFindServicesCore(string svcDir, bool useBinDir) { if (Directory.Exists(svcDir)) { Directory.Delete(svcDir, true); } const string template = "<% @ ServiceHost Service=\"{0}\" %>"; Directory.CreateDirectory(svcDir); if (useBinDir) { Directory.CreateDirectory(svcDir + Path.DirectorySeparatorChar + "bin"); } File.WriteAllText(Path.Combine(svcDir, "1.svc"), String.Format(CultureInfo.InvariantCulture, template, typeof(TestService1).FullName)); File.WriteAllText(Path.Combine(svcDir, "2.svc"), String.Format(CultureInfo.InvariantCulture, template, typeof(TestService2).FullName)); File.Copy( typeof(TestService1).Assembly.ManifestModule.FullyQualifiedName, useBinDir ? Path.Combine(svcDir, "bin", typeof(TestService1).Assembly.ManifestModule.Name) : Path.Combine(svcDir, typeof(TestService1).Assembly.ManifestModule.Name) ); var target = new FileBasedServiceTypeLocator(); target.BaseDirectory = svcDir; var result = target.FindServices().ToArray(); Assert.That(result.Any(item => item.ServiceType == typeof(TestService1))); Assert.That(result.Any(item => item.ServiceType == typeof(TestService2))); }
public void TestFindServices_BaseDirectoryIsNotExist_Ignored() { var tempDir = ".\\NotExist"; try { if (Directory.Exists(tempDir)) { Directory.Delete(tempDir, true); } var target = new FileBasedServiceTypeLocator(); target.BaseDirectory = tempDir; var result = target.FindServices().ToArray(); Assert.That(result.Any(), Is.False); } finally { if (Directory.Exists(tempDir)) { Directory.Delete(tempDir, true); } } }
public void TestFindServices_NotSvc_Ignored() { var tempDir = ".\\FileBasedServiceTypeLocatorTest"; try { if (Directory.Exists(tempDir)) { Directory.Delete(tempDir, true); } const string template = "<% @ ServiceHost Service=\"{0}\" %>"; Directory.CreateDirectory(tempDir); File.WriteAllText(Path.Combine(tempDir, "1.svg"), String.Format(CultureInfo.InvariantCulture, template, typeof(TestService1).FullName)); var target = new FileBasedServiceTypeLocator(); target.BaseDirectory = tempDir; var result = target.FindServices().ToArray(); Assert.That(result.Any(), Is.False); } finally { if (Directory.Exists(tempDir)) { Directory.Delete(tempDir, true); } } }
public void TestFindServices_InvalidSvcFile_Failed() { var tempDir = ".\\FileBasedServiceTypeLocatorTest"; try { if (Directory.Exists(tempDir)) { Directory.Delete(tempDir, true); } const string template = "<% @ ServiceHost sService=\"{0}\" %>"; Directory.CreateDirectory(tempDir); File.WriteAllText(Path.Combine(tempDir, "1.svc"), String.Format(CultureInfo.InvariantCulture, template, "Service1")); var target = new FileBasedServiceTypeLocator(); target.BaseDirectory = tempDir; var result = target.FindServices().ToArray(); } finally { if (Directory.Exists(tempDir)) { Directory.Delete(tempDir, true); } } }
public void TestBaseDirectory_Blanks_ResetToNull() { var target = new FileBasedServiceTypeLocator(); foreach (var value in new[] { String.Empty, null, " " }) { target.BaseDirectory = "A"; target.BaseDirectory = value; Assert.That(target.BaseDirectory, Is.Null, "Set value:\"{0}\"", value); } }
public void TestFindServices_FromAppBase() { var file = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "1.svc"); try { const string template = "<% @ ServiceHost Service=\"{0}\" %>"; File.WriteAllText(file, String.Format(CultureInfo.InvariantCulture, template, typeof(TestService1).FullName)); var target = new FileBasedServiceTypeLocator(); var result = target.FindServices().ToArray(); Assert.That(result.Any(item => item.ServiceType == typeof(TestService1))); } finally { File.Delete(file); } }
public void TestBaseDirectory_Blanks_ResetToNull() { var target = new FileBasedServiceTypeLocator(); foreach ( var value in new[] { String.Empty, null, " " } ) { target.BaseDirectory = "A"; target.BaseDirectory = value; Assert.That( target.BaseDirectory, Is.Null, "Set value:\"{0}\"", value ); } }
public void TestFindServices_FromAppBase() { var file = Path.Combine( AppDomain.CurrentDomain.BaseDirectory, "1.svc" ); try { const string template = "<% @ ServiceHost Service=\"{0}\" %>"; File.WriteAllText( file, String.Format( CultureInfo.InvariantCulture, template, typeof( TestService1 ).FullName ) ); var target = new FileBasedServiceTypeLocator(); var result = target.FindServices().ToArray(); Assert.That( result.Any( item => item.ServiceType == typeof( TestService1 ) ) ); } finally { File.Delete( file ); } }
public void TestFindServices_BaseDirectoryIsNotExist_Ignored() { var tempDir = ".\\NotExist"; try { if ( Directory.Exists( tempDir ) ) { Directory.Delete( tempDir, true ); } var target = new FileBasedServiceTypeLocator(); target.BaseDirectory = tempDir; var result = target.FindServices().ToArray(); Assert.That( result.Any(), Is.False ); } finally { if ( Directory.Exists( tempDir ) ) { Directory.Delete( tempDir, true ); } } }
public void TestFindServices_NotSvc_Ignored() { var tempDir = ".\\FileBasedServiceTypeLocatorTest"; try { if ( Directory.Exists( tempDir ) ) { Directory.Delete( tempDir, true ); } const string template = "<% @ ServiceHost Service=\"{0}\" %>"; Directory.CreateDirectory( tempDir ); File.WriteAllText( Path.Combine( tempDir, "1.svg" ), String.Format( CultureInfo.InvariantCulture, template, typeof( TestService1 ).FullName ) ); var target = new FileBasedServiceTypeLocator(); target.BaseDirectory = tempDir; var result = target.FindServices().ToArray(); Assert.That( result.Any(), Is.False ); } finally { if ( Directory.Exists( tempDir ) ) { Directory.Delete( tempDir, true ); } } }
public void TestFindServices_InvalidSvcFile_Failed() { var tempDir = ".\\FileBasedServiceTypeLocatorTest"; try { if ( Directory.Exists( tempDir ) ) { Directory.Delete( tempDir, true ); } const string template = "<% @ ServiceHost sService=\"{0}\" %>"; Directory.CreateDirectory( tempDir ); File.WriteAllText( Path.Combine( tempDir, "1.svc" ), String.Format( CultureInfo.InvariantCulture, template, "Service1" ) ); var target = new FileBasedServiceTypeLocator(); target.BaseDirectory = tempDir; var result = target.FindServices().ToArray(); } finally { if ( Directory.Exists( tempDir ) ) { Directory.Delete( tempDir, true ); } } }