Skip to content

Restore sqlite3mc test project using SQLite3MC.PCLRaw.bundle#38015

Merged
AndriySvyryd merged 4 commits intomainfrom
copilot/restore-sqlite3mc-test-project
Mar 27, 2026
Merged

Restore sqlite3mc test project using SQLite3MC.PCLRaw.bundle#38015
AndriySvyryd merged 4 commits intomainfrom
copilot/restore-sqlite3mc-test-project

Conversation

Copy link
Copy Markdown
Contributor

Copilot AI commented Mar 26, 2026

PR #36551 removed Microsoft.Data.Sqlite.e_sqlite3mc.Tests.csproj when upgrading to SQLitePCLRaw 3.x because SQLitePCLRaw.bundle_e_sqlite3mc was deprecated. This restores sqlite3mc test coverage using the replacement SQLite3MC.PCLRaw.bundle package from the upstream SQLite3MultipleCiphers project, with naming aligned to the new package.

  • New test project: Microsoft.Data.Sqlite.sqlite3mc.Tests.csproj referencing SQLite3MC.PCLRaw.bundle with SQLITE3MC define constant (dropping the e_ prefix)
  • Version management: SQLite3MCPCLRawBundleVersion (2.3.2) in eng/Versions.props, package entry in test/Directory.Packages.props
  • Conditional compilation: Added SQLITE3MC to SqliteTestFramework.cs assembly attribute chain and encryption-aware #if directives in SqliteConnectionTest.cs; removed stale E_SQLITE3MC, E_SQLCIPHER, and SQLCIPHER references
  • InternalsVisibleTo: Added Microsoft.Data.Sqlite.sqlite3mc.Tests to Microsoft.Data.Sqlite.Core
  • Solution files: Added project to EFCore.slnx; cleaned up Microsoft.Data.Sqlite.slnf (removed stale e_sqlcipher/e_sqlite3mc entries)

💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.

Copilot AI and others added 2 commits March 26, 2026 18:18
Add Microsoft.Data.Sqlite.sqlite3mc.Tests.csproj using the
SQLite3MC.PCLRaw.bundle package (replacement for the deprecated
SQLitePCLRaw.bundle_e_sqlite3mc). Update conditional compilation
directives, InternalsVisibleTo, solution files, and package versions.

Agent-Logs-Url: https://github.com/dotnet/efcore/sessions/3d1bd0d1-7e29-42d2-b610-3df859ae04d7

Co-authored-by: AndriySvyryd <6539701+AndriySvyryd@users.noreply.github.com>
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Restores Microsoft.Data.Sqlite test coverage for the sqlite3mc (SQLite3MultipleCiphers) native bundle by introducing a new test project wired to SQLite3MC.PCLRaw.bundle, updating conditional compilation, and ensuring the project is included in solution entrypoints.

Changes:

  • Add Microsoft.Data.Sqlite.sqlite3mc.Tests project targeting both default .NET and .NET Framework, referencing SQLite3MC.PCLRaw.bundle and defining SQLITE3MC.
  • Introduce centralized versioning for SQLite3MC.PCLRaw.bundle via eng/Versions.props + test/Directory.Packages.props.
  • Update test-framework selection, encryption-related test conditionals, InternalsVisibleTo, and solution/project listings to include sqlite3mc.

Reviewed changes

Copilot reviewed 8 out of 8 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
test/Microsoft.Data.Sqlite.Tests/TestUtilities/SqliteTestFramework.cs Adds SQLITE3MC option to route the xUnit test framework to the sqlite3mc test assembly.
test/Microsoft.Data.Sqlite.Tests/SqliteConnectionTest.cs Updates encryption-related #if branches to use SQLITE3MC instead of removed E_SQLITE3MC.
test/Microsoft.Data.Sqlite.Tests/Microsoft.Data.Sqlite.sqlite3mc.Tests.csproj New test project referencing SQLite3MC.PCLRaw.bundle and defining SQLITE3MC.
test/Directory.Packages.props Adds centrally managed package version entry for SQLite3MC.PCLRaw.bundle.
src/Microsoft.Data.Sqlite.Core/Properties/InternalsVisibleTo.cs Grants test assembly access to Core internals for sqlite3mc tests.
eng/Versions.props Adds SQLite3MCPCLRawBundleVersion property used for test package versioning.
Microsoft.Data.Sqlite.slnf Updates solution filter to include sqlite3mc tests and remove stale removed projects.
EFCore.slnx Adds the sqlite3mc test project to the main solution manifest.

@AndriySvyryd AndriySvyryd marked this pull request as ready for review March 26, 2026 20:05
@AndriySvyryd AndriySvyryd requested review from a team and AndriySvyryd as code owners March 26, 2026 20:06
…mc.Tests.csproj

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Comment thread test/Microsoft.Data.Sqlite.Tests/SqliteConnectionTest.cs Outdated
@AndriySvyryd AndriySvyryd enabled auto-merge (squash) March 27, 2026 17:33
@AndriySvyryd AndriySvyryd merged commit 8babe4b into main Mar 27, 2026
11 checks passed
@AndriySvyryd AndriySvyryd deleted the copilot/restore-sqlite3mc-test-project branch March 27, 2026 18:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants