Has anyone started using xUnit 2.0 with RavenDb.Embedded in a unit test situation?
I've just migrated a project (slowly) over to it and just added my first library that is using RavenDb.Embedded and i'm getting some really random and weird errors now.
Now before the HR krew says: Please make a repo, etc ... I'm just checking to see if there _is_ an issue .. and not just more stupid code _I've_ made.
Why am i thinking there's an issue with xUnit 2.0 and RavenDB.Embedded? xUnit has a much better Parallel story that's been really fixed up .. so I'm wondering if this new sparkle-magic is now highlighting some deficiencies in RDB.Embedded?
I'm wondering if one of the tests has locked something .. so the rest of the tests just fall over and cry...
Here's some sample errors from one xUnit-run-session (i'm running around 40 tests, where about 6 are RavenDb.Embedded tests).
NOTE:
<package id="RavenDB.Client" version="3.0.3599" targetFramework="net451" />
<package id="RavenDB.Database" version="3.0.3599" targetFramework="net451" />
<package id="RavenDB.Embedded" version="3.0.3599" targetFramework="net451" />
1.
Exception doesn't have a stacktrace
System.IO.IOException
The process cannot access the file 'C:\Projects\Hornet\Code\Hornet.Tests\bin\Debug\Assemblies\Lucene.Net.dll' because it is being used by another process.
at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost)
at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options, String msgPath, Boolean bFromProxy)
at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize)
at Raven.Database.Server.AssemblyExtractor.Extract(Assembly assemblyToExtractFrom, IEnumerable`1 assembliesToExtract, String location) in c:\Builds\RavenDB-Stable-3.0\Raven.Database\Server\AssemblyExtractor.cs: line 116
at Raven.Database.Server.AssemblyExtractor.ExtractEmbeddedAssemblies(InMemoryRavenConfiguration configuration) in c:\Builds\RavenDB-Stable-3.0\Raven.Database\Server\AssemblyExtractor.cs: line 49
at Owin.AppBuilderExtensions.UseRavenDB(IAppBuilder app, RavenDBOptions options) in c:\Builds\RavenDB-Stable-3.0\Raven.Database\Server\AppBuilderExtensions.cs: line 79
2.
System.Reflection.ReflectionTypeLoadExceptionUnable to load one or more of the requested types. Retrieve the LoaderExceptions property for more information.
at System.Reflection.RuntimeModule.GetTypes(RuntimeModule module)
at System.Reflection.RuntimeModule.GetTypes()
at System.Reflection.Assembly.GetTypes()
at System.ComponentModel.Composition.Hosting.AssemblyCatalog.get_InnerCatalog()
at System.ComponentModel.Composition.Hosting.AssemblyCatalog.GetExports(ImportDefinition definition)
at Raven.Database.Plugins.Catalogs.FilteredCatalog.GetExports(ImportDefinition definition) in c:\Builds\RavenDB-Stable-3.0\Raven.Database\Plugins\Catalogs\FilteredCatalog.cs: line 41
at System.ComponentModel.Composition.Hosting.AggregateCatalog.GetExports(ImportDefinition definition)
at System.ComponentModel.Composition.Hosting.CatalogExportProvider.InternalGetExportsCore(ImportDefinition definition, AtomicComposition atomicComposition)
at System.ComponentModel.Composition.Hosting.ExportProvider.TryGetExportsCore(ImportDefinition definition, AtomicComposition atomicComposition, ref IEnumerable`1 exports)
at System.ComponentModel.Composition.Hosting.CatalogExportProvider.GetExportsCore(ImportDefinition definition, AtomicComposition atomicComposition)
at System.ComponentModel.Composition.Hosting.ExportProvider.TryGetExportsCore(ImportDefinition definition, AtomicComposition atomicComposition, ref IEnumerable`1 exports)
at System.ComponentModel.Composition.Hosting.ExportProvider.GetExports(ImportDefinition definition, AtomicComposition atomicComposition)
at System.ComponentModel.Composition.Hosting.AggregateExportProvider.GetExportsCore(ImportDefinition definition, AtomicComposition atomicComposition)
at System.ComponentModel.Composition.Hosting.ExportProvider.TryGetExports(ImportDefinition definition, AtomicComposition atomicComposition, ref IEnumerable`1 exports)
at System.ComponentModel.Composition.Hosting.CompositionContainer.GetExportsCore(ImportDefinition definition, AtomicComposition atomicComposition)
at System.ComponentModel.Composition.Hosting.ExportProvider.TryGetExportsCore(ImportDefinition definition, AtomicComposition atomicComposition, ref IEnumerable`1 exports)
at System.ComponentModel.Composition.Hosting.ExportProvider.GetExports(ImportDefinition definition, AtomicComposition atomicComposition)
at System.ComponentModel.Composition.Hosting.ExportProvider.GetExportedValuesCore(String contractName)
at Raven.Database.DocumentDatabase.DocumentDatabaseInitializer.ExecuteAlterConfiguration() in c:\Builds\RavenDB-Stable-3.0\Raven.Database\DocumentDatabase.cs: line 1146
at Raven.Database.DocumentDatabase..ctor(InMemoryRavenConfiguration configuration, TransportState recievedTransportState) in c:\Builds\RavenDB-Stable-3.0\Raven.Database\DocumentDatabase.cs: line 111
at Raven.Database.Server.RavenDBOptions..ctor(InMemoryRavenConfiguration configuration, DocumentDatabase db) in c:\Builds\RavenDB-Stable-3.0\Raven.Database\Server\RavenDBOptions.cs: line 54
at Raven.Database.Server.OwinHttpServer..ctor(InMemoryRavenConfiguration config, DocumentDatabase db, Boolean useHttpServer, Action`1 configure) in c:\Builds\RavenDB-Stable-3.0\Raven.Database\Server\OwinHttpServer.cs: line 24
3.
System.NullReferenceExceptionObject reference not set to an instance of an object.
at System.Collections.Generic.HashSet`1.AddIfNotPresent(T value)
at Raven.Abstractions.Logging.LogManager.RegisterTarget() in c:\Builds\RavenDB-Stable-3.0\Raven.Abstractions\Logging\LogManager.cs: line 66
at Raven.Database.Server.RavenDBOptions..ctor(InMemoryRavenConfiguration configuration, DocumentDatabase db) in c:\Builds\RavenDB-Stable-3.0\Raven.Database\Server\RavenDBOptions.cs: line 54
at Raven.Database.Server.OwinHttpServer..ctor(InMemoryRavenConfiguration config, DocumentDatabase db, Boolean useHttpServer, Action`1 configure) in c:\Builds\RavenDB-Stable-3.0\Raven.Database\Server\OwinHttpServer.cs: line 24
at Raven.Server.RavenDbServer.Initialize(Action`1 configure) in c:\Builds\RavenDB-Stable-3.0\Raven.Database\Server\RavenDbServer.cs: line 106
at Raven.Database.Client.EmbeddedDocumentStore.Initialize() in c:\Builds\RavenDB-Stable-3.0\Raven.Database\Client\EmbeddedDocumentStore.cs: line 225
at Raven.Client.Embedded.EmbeddableDocumentStore.Initialize() in c:\Builds\RavenDB-Stable-3.0\Raven.Database\Client\EmbeddableDocumentStore.cs: line 138
4.
System.Reflection.ReflectionTypeLoadExceptionUnable to load one or more of the requested types. Retrieve the LoaderExceptions property for more information.
at System.Reflection.RuntimeModule.GetTypes(RuntimeModule module)
at System.Reflection.RuntimeModule.GetTypes()
at System.Reflection.Assembly.GetTypes()
at System.ComponentModel.Composition.Hosting.AssemblyCatalog.get_InnerCatalog()
at System.ComponentModel.Composition.Hosting.AssemblyCatalog.GetExports(ImportDefinition definition)
at Raven.Database.Plugins.Catalogs.FilteredCatalog.GetExports(ImportDefinition definition) in c:\Builds\RavenDB-Stable-3.0\Raven.Database\Plugins\Catalogs\FilteredCatalog.cs: line 41
at System.ComponentModel.Composition.Hosting.AggregateCatalog.GetExports(ImportDefinition definition)
at System.ComponentModel.Composition.Hosting.CatalogExportProvider.InternalGetExportsCore(ImportDefinition definition, AtomicComposition atomicComposition)
at System.ComponentModel.Composition.Hosting.ExportProvider.TryGetExportsCore(ImportDefinition definition, AtomicComposition atomicComposition, ref IEnumerable`1 exports)
at System.ComponentModel.Composition.Hosting.CatalogExportProvider.GetExportsCore(ImportDefinition definition, AtomicComposition atomicComposition)
at System.ComponentModel.Composition.Hosting.ExportProvider.TryGetExportsCore(ImportDefinition definition, AtomicComposition atomicComposition, ref IEnumerable`1 exports)
at System.ComponentModel.Composition.Hosting.ExportProvider.GetExports(ImportDefinition definition, AtomicComposition atomicComposition)
at System.ComponentModel.Composition.Hosting.AggregateExportProvider.GetExportsCore(ImportDefinition definition, AtomicComposition atomicComposition)
at System.ComponentModel.Composition.Hosting.ExportProvider.TryGetExports(ImportDefinition definition, AtomicComposition atomicComposition, ref IEnumerable`1 exports)
at System.ComponentModel.Composition.Hosting.CompositionContainer.GetExportsCore(ImportDefinition definition, AtomicComposition atomicComposition)
at System.ComponentModel.Composition.Hosting.ExportProvider.TryGetExportsCore(ImportDefinition definition, AtomicComposition atomicComposition, ref IEnumerable`1 exports)
at System.ComponentModel.Composition.Hosting.ExportProvider.GetExports(ImportDefinition definition, AtomicComposition atomicComposition)
at System.ComponentModel.Composition.Hosting.ExportProvider.GetExportedValuesCore(String contractName)
at Raven.Database.DocumentDatabase.DocumentDatabaseInitializer.ExecuteAlterConfiguration() in c:\Builds\RavenDB-Stable-3.0\Raven.Database\DocumentDatabase.cs: line 1146
at Raven.Database.DocumentDatabase..ctor(InMemoryRavenConfiguration configuration, TransportState recievedTransportState) in c:\Builds\RavenDB-Stable-3.0\Raven.Database\DocumentDatabase.cs: line 111
at Raven.Database.Server.RavenDBOptions..ctor(InMemoryRavenConfiguration configuration, DocumentDatabase db) in c:\Builds\RavenDB-Stable-3.0\Raven.Database\Server\RavenDBOptions.cs: line 54
at Raven.Database.Server.OwinHttpServer..ctor(InMemoryRavenConfiguration config, DocumentDatabase db, Boolean useHttpServer, Action`1 configure) in c:\Builds\RavenDB-Stable-3.0\Raven.Database\Server\OwinHttpServer.cs: line 24
at Raven.Server.RavenDbServer.Initialize(Action`1 configure) in c:\Builds\RavenDB-Stable-3.0\Raven.Database\Server\RavenDbServer.cs: line 106
at Raven.Database.Client.EmbeddedDocumentStore.Initialize() in c:\Builds\RavenDB-Stable-3.0\Raven.Database\Client\EmbeddedDocumentStore.cs: line 225
at Raven.Client.Embedded.EmbeddableDocumentStore.Initialize() in c:\Builds\RavenDB-Stable-3.0\Raven.Database\Client\EmbeddableDocumentStore.cs: line 138
cheers!
-me-