I didn't realize that Microsoft had changed their position. When I run code analysis on a non-.NET Core solution inside of VS 2017, even today, I receive the warning CA2210 'Sign ... with a strong name key'. Of course, I continued this practice in my .NET Core solution and when adding your package, it being unsigned, resulted in the error above. It results in an error because I turned on Warnings as Errors to prevent developers from checking in code that has warnings (that haven't been addressed). But okay, I will actually unsign my assemblies as a result of the guidance they are providing now. It is interesting though they have not corrected Code Analysis.
This changeset moves core tests in MiniProfiler.Tests (StackExchange.Profiling.Tests) and MiniProfiler.Tests.AspNet.
- Table names are added to each of the DatabaseStorageBase classes which can now also create and drop their own schemas (extensions list in the tests project for safety). This allows flexibility to use whatever table names a user wants in normal operation as well as unique table names for testing.
- IAsyncStorage.SetUnviewedAfterSave has been removed, the provider (Redis and memory) are now directly responsible instead.
- MySql has moved to using the MySql.Data library instead of MySqlConnector, since MySqlConnector shows no signs on strong naming which we need.
- InternalsVisibleTo has been removed. RedisStorageHelpers is exposed in .Internal instead.
- xUnit upgraded to 2.3.0-beta5-build3769
- MiniProfilers.Providers.RavenDB.Tests removed (it wouldn't live here anyway if completed)
- IAsyncStorage testing is not unified in an abstract, so testing additional providers is very easy and adding a test adds a test for all.
Note: DbProfilerTests fails in netcoreapp1.1 only (data reader end event not firing), this may be a bug in .NET Core 1.1 or MiniProfiler...I need to dig a little and see.
Note 2: Sqlite skips loading various frameworks as well - need to see how many we can reliably test here. The Microsoft.Data.Sqlite vs. System.Data.Sqlite story is nuts.
Next: Need to add .AspNetCore test project and test both memory providers...along with everything else.
TL;DR: This is a major testing overhaul to greatly improve testing, coverage, and the ability to add new tests, new providers, and test new providers.