public TestFileCollection LoadXapUnderTest(string archiveFileName) { var files = new List<ITestFile>(); string testAssemblyFullName = null; using (var archive = ZipFile.Read(archiveFileName)) { var appManifest = LoadAppManifest(archive); if (appManifest != null) { string testAssemblyName = GetTestAssemblyNameFromAppManifest(appManifest); AssemblyName assemblyName = GetAssemblyName(archive, testAssemblyName); if (assemblyName != null) { testAssemblyFullName = assemblyName.ToString(); } } files.AddRange((from zipEntry in archive let fileBytes = ReadFileIntoBytes(archive, zipEntry.FileName) select new TestFile(zipEntry.FileName, fileBytes)).ToList()); foreach (var item in files) _logger.Debug("XapItems.FilesContainedWithinXap = {0}".FormatWith(item.FileName)); } var xapItems = new TestFileCollection(_logger, testAssemblyFullName, files); return xapItems; }
public TestFileCollection LoadXapUnderTest(string archiveFileName) { var files = new List <ITestFile>(); string testAssemblyFullName = null; using (var archive = ZipFile.Read(archiveFileName)) { var appManifest = LoadAppManifest(archive); if (appManifest != null) { string testAssemblyName = GetTestAssemblyNameFromAppManifest(appManifest); AssemblyName assemblyName = GetAssemblyName(archive, testAssemblyName); if (assemblyName != null) { testAssemblyFullName = assemblyName.ToString(); } } files.AddRange((from zipEntry in archive let fileBytes = ReadFileIntoBytes(archive, zipEntry.FileName) select new TestFile(zipEntry.FileName, fileBytes)).ToList()); foreach (var item in files) { _logger.Debug("XapItems.FilesContainedWithinXap = {0}".FormatWith(item.FileName)); } } var xapItems = new TestFileCollection(_logger, testAssemblyFullName, files); return(xapItems); }
protected override void Before_all_tests() { base.Before_all_tests(); string fileName = ProviderTests.TestXapFileLocations.SilverlightIntegrationTests; _testFileCollection = new XapReader(new ConsoleLogger(LogChatterLevels.Full)).LoadXapUnderTest(fileName); }
public StatLightConfiguration GetStatLightConfigurationForDll(UnitTestProviderType unitTestProviderType, string dllPath, MicrosoftTestingFrameworkVersion? microsoftTestingFrameworkVersion, Collection<string> methodsToTest, string tagFilters, int numberOfBrowserHosts, bool isRemoteRun, string queryString, WebBrowserType webBrowserType, bool forceBrowserStart, bool showTestingBrowserHost) { if (queryString == null) throw new ArgumentNullException("queryString"); Func<IEnumerable<ITestFile>> filesToCopyIntoHostXap = () => new List<ITestFile>(); string entryPointAssembly = string.Empty; string runtimeVersion = null; if (isRemoteRun) { } else { AssertFileExists(dllPath); var dllFileInfo = new FileInfo(dllPath); var assemblyResolver = new AssemblyResolver(_logger); var dependentAssemblies = assemblyResolver.ResolveAllDependentAssemblies(dllFileInfo.FullName); var coreFileUnderTest = new TestFile(dllFileInfo.FullName); var dependentFilesUnderTest = dependentAssemblies.Select(file => new TestFile(file)).ToList(); dependentFilesUnderTest.Add(coreFileUnderTest); var xapReadItems = new TestFileCollection(_logger, AssemblyName.GetAssemblyName(dllFileInfo.FullName).ToString(), dependentFilesUnderTest); SetupUnitTestProviderType(xapReadItems, ref unitTestProviderType, ref microsoftTestingFrameworkVersion); entryPointAssembly = xapReadItems.TestAssemblyFullName; filesToCopyIntoHostXap =()=> { return new TestFileCollection(_logger, AssemblyName.GetAssemblyName(dllFileInfo.FullName) .ToString(), dependentFilesUnderTest).FilesContainedWithinXap; }; } var clientConfig = new ClientTestRunConfiguration(unitTestProviderType, methodsToTest, tagFilters, numberOfBrowserHosts, webBrowserType, showTestingBrowserHost, entryPointAssembly); var serverConfig = CreateServerConfiguration( dllPath, clientConfig.UnitTestProviderType, microsoftTestingFrameworkVersion, filesToCopyIntoHostXap, DefaultDialogSmackDownElapseMilliseconds, queryString, forceBrowserStart, showTestingBrowserHost, runtimeVersion); return new StatLightConfiguration(clientConfig, serverConfig); }
private static void SetupUnitTestProviderType(TestFileCollection testFileCollection, ref UnitTestProviderType unitTestProviderType, ref MicrosoftTestingFrameworkVersion? microsoftTestingFrameworkVersion) { if (unitTestProviderType == UnitTestProviderType.Undefined || microsoftTestingFrameworkVersion == null) { //TODO: Print message telling the user what the type is - and if they give it // we don't have to "reflect" on the xap to determine the test provider type. if (unitTestProviderType == UnitTestProviderType.Undefined) { unitTestProviderType = testFileCollection.UnitTestProvider; } if ( (testFileCollection.UnitTestProvider == UnitTestProviderType.MSTest || unitTestProviderType == UnitTestProviderType.MSTest || unitTestProviderType == UnitTestProviderType.MSTestWithCustomProvider) && microsoftTestingFrameworkVersion == null) { microsoftTestingFrameworkVersion = testFileCollection.MSTestVersion; } } }
public TestFileCollection LoadXapUnderTest(string archiveFileName) { var files = new List <ITestFile>(); string testAssemblyFullName = null; var fileStream = FileReader.ReadAllBytes(archiveFileName); using (IXapZipArchive archive = XapZipArchiveFactory.Create(fileStream)) { var appManifest = LoadAppManifest(archive); if (appManifest != null) { string testAssemblyName = GetTestAssemblyNameFromAppManifest(appManifest); AssemblyName assemblyName = GetAssemblyName(archive, testAssemblyName); if (assemblyName != null) { testAssemblyFullName = assemblyName.ToString(); } } files.AddRange(archive.ToList()); foreach (var item in files) { _logger.Debug("XapItems.FilesContainedWithinXap = {0}".FormatWith(item.FileName)); } } var xapItems = new TestFileCollection(_logger, testAssemblyFullName, files); return(xapItems); }
public TestFileCollection LoadXapUnderTest(string archiveFileName) { var files = new List<ITestFile>(); string testAssemblyFullName = null; var fileStream = FileReader.ReadAllBytes(archiveFileName); using (IXapZipArchive archive = XapZipArchiveFactory.Create(fileStream)) { var appManifest = LoadAppManifest(archive); if (appManifest != null) { string testAssemblyName = GetTestAssemblyNameFromAppManifest(appManifest); AssemblyName assemblyName = GetAssemblyName(archive, testAssemblyName); if (assemblyName != null) { testAssemblyFullName = assemblyName.ToString(); } } files.AddRange(archive.ToList()); foreach (var item in files) _logger.Debug("XapItems.FilesContainedWithinXap = {0}".FormatWith(item.FileName)); } var xapItems = new TestFileCollection(_logger, testAssemblyFullName, files); return xapItems; }
protected override void Before_all_tests() { base.Before_all_tests(); _xapPath = Path.GetTempFileName() + ".zip"; _filesToCleanup.Add(_xapPath); Action<ZipFile> addTempFileToZip = (zipFile) => { var pathToTempFileToPlaceInXap = Path.GetTempFileName(); using (var writer = File.CreateText(pathToTempFileToPlaceInXap)) { writer.Close(); } zipFile.AddFile(pathToTempFileToPlaceInXap); _filesToCleanup.Add(pathToTempFileToPlaceInXap); }; using (var zipFile = new ZipFile(_xapPath)) { addTempFileToZip(zipFile); addTempFileToZip(zipFile); addTempFileToZip(zipFile); addTempFileToZip(zipFile); zipFile.Save(); } _testFileCollection = new XapReader(new ConsoleLogger(LogChatterLevels.Full)).LoadXapUnderTest(_xapPath); }
private StatLightConfiguration GetStatLightConfigurationForDll(string dllPath) { Func<IEnumerable<ITestFile>> filesToCopyIntoHostXap = () => new List<ITestFile>(); string entryPointAssembly = string.Empty; string runtimeVersion = null; var dllFileInfo = new FileInfo(dllPath); var assemblyResolver = new AssemblyResolver(_logger); var dependentAssemblies = assemblyResolver.ResolveAllDependentAssemblies(dllFileInfo.FullName); var coreFileUnderTest = new TestFile(dllFileInfo.FullName); var dependentFilesUnderTest = dependentAssemblies.Select(file => new TestFile(file)).ToList(); dependentFilesUnderTest.Add(coreFileUnderTest); var xapReadItems = new TestFileCollection(_logger, AssemblyName.GetAssemblyName(dllFileInfo.FullName).ToString(), dependentFilesUnderTest); UnitTestProviderType unitTestProviderType = _options.UnitTestProviderType; MicrosoftTestingFrameworkVersion? microsoftTestingFrameworkVersion = _options.MicrosoftTestingFrameworkVersion; SetupUnitTestProviderType(xapReadItems, ref unitTestProviderType, ref microsoftTestingFrameworkVersion); entryPointAssembly = xapReadItems.TestAssemblyFullName; filesToCopyIntoHostXap = () => { return new TestFileCollection(_logger, AssemblyName.GetAssemblyName(dllFileInfo.FullName) .ToString(), dependentFilesUnderTest).FilesContainedWithinXap; }; var clientConfig = new ClientTestRunConfiguration(unitTestProviderType, _options.MethodsToTest, _options.TagFilters, _options.NumberOfBrowserHosts, _options.WebBrowserType, entryPointAssembly, _options.WindowGeometry); var serverConfig = CreateServerConfiguration( dllPath, clientConfig.UnitTestProviderType, microsoftTestingFrameworkVersion, filesToCopyIntoHostXap, _options.QueryString, _options.ForceBrowserStart, _options.WindowGeometry, runtimeVersion); return new StatLightConfiguration(clientConfig, serverConfig); }