Add Policy DSL Validator, Schema Exporter, and Simulation Smoke tools
- Implemented PolicyDslValidator with command-line options for strict mode and JSON output. - Created PolicySchemaExporter to generate JSON schemas for policy-related models. - Developed PolicySimulationSmoke tool to validate policy simulations against expected outcomes. - Added project files and necessary dependencies for each tool. - Ensured proper error handling and usage instructions across tools.
This commit is contained in:
		@@ -1,93 +1,93 @@
 | 
			
		||||
<Project Sdk="Microsoft.NET.Sdk">
 | 
			
		||||
 | 
			
		||||
  <PropertyGroup>
 | 
			
		||||
    <TargetFrameworks>net472;netstandard2.1</TargetFrameworks>
 | 
			
		||||
    <Authors>Johannes Hoppe and many contributors</Authors>
 | 
			
		||||
    <Description>Mongo2Go is a managed wrapper around MongoDB binaries. It targets .NET Framework 4.7.2 and .NET Standard 2.1.
 | 
			
		||||
This Nuget package contains the executables of mongod, mongoimport and mongoexport v4.4.4 for Windows, Linux and macOS.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Mongo2Go has two use cases:
 | 
			
		||||
 | 
			
		||||
1. Providing multiple, temporary and isolated MongoDB databases for integration tests
 | 
			
		||||
2. Providing a quick to set up MongoDB database for a local developer environment</Description>
 | 
			
		||||
    <Company>HAUS HOPPE - ITS</Company>
 | 
			
		||||
    <Copyright>Copyright © 2012-2025 Johannes Hoppe and many ❤️ contributors</Copyright>
 | 
			
		||||
    <GenerateDocumentationFile>true</GenerateDocumentationFile>
 | 
			
		||||
    <PackageIcon>icon.png</PackageIcon>
 | 
			
		||||
    <PackageLicenseExpression>MIT</PackageLicenseExpression>
 | 
			
		||||
    <PackageProjectUrl>https://github.com/Mongo2Go/Mongo2Go</PackageProjectUrl>
 | 
			
		||||
    <PackageReleaseNotes>https://github.com/Mongo2Go/Mongo2Go/releases</PackageReleaseNotes>
 | 
			
		||||
    <PackageTags>MongoDB Mongo unit test integration runner</PackageTags>
 | 
			
		||||
    <RepositoryUrl>https://github.com/Mongo2Go/Mongo2Go</RepositoryUrl>
 | 
			
		||||
    <RepositoryType>git</RepositoryType>
 | 
			
		||||
    <AssemblyTitle>Mongo2Go</AssemblyTitle>
 | 
			
		||||
    <AssemblyDescription>Mongo2Go is a managed wrapper around MongoDB binaries.</AssemblyDescription>
 | 
			
		||||
  </PropertyGroup>
 | 
			
		||||
 | 
			
		||||
  <PropertyGroup Condition="'$(Configuration)|$(TargetFramework)|$(Platform)'=='Debug|netstandard2.1|AnyCPU'">
 | 
			
		||||
    <WarningLevel>4</WarningLevel>
 | 
			
		||||
    <NoWarn>1701;1702;1591;1573</NoWarn>
 | 
			
		||||
  </PropertyGroup>
 | 
			
		||||
 | 
			
		||||
  <PropertyGroup Condition="'$(Configuration)|$(TargetFramework)|$(Platform)'=='Release|netstandard2.1|AnyCPU'">
 | 
			
		||||
    <WarningLevel>4</WarningLevel>
 | 
			
		||||
    <NoWarn>1701;1702;1591;1573</NoWarn>
 | 
			
		||||
  </PropertyGroup>
 | 
			
		||||
 | 
			
		||||
  <PropertyGroup Condition="'$(Configuration)|$(TargetFramework)|$(Platform)'=='Debug|net48|AnyCPU'">
 | 
			
		||||
    <NoWarn>1701;1702;1591;1573</NoWarn>
 | 
			
		||||
  </PropertyGroup>
 | 
			
		||||
 | 
			
		||||
  <PropertyGroup Condition="'$(Configuration)|$(TargetFramework)|$(Platform)'=='Release|net48|AnyCPU'">
 | 
			
		||||
    <NoWarn>1701;1702;1591;1573</NoWarn>
 | 
			
		||||
  </PropertyGroup>
 | 
			
		||||
 | 
			
		||||
  <PropertyGroup Label="Restoring">
 | 
			
		||||
    <DisableImplicitNuGetFallbackFolder>true</DisableImplicitNuGetFallbackFolder>
 | 
			
		||||
    <RestorePackagesWithLockFile>true</RestorePackagesWithLockFile>
 | 
			
		||||
    <RestoreLockedMode Condition="$(ContinuousIntegrationBuild) == 'true'">true</RestoreLockedMode>
 | 
			
		||||
  </PropertyGroup>
 | 
			
		||||
 | 
			
		||||
  <PropertyGroup Label="SourceLink">
 | 
			
		||||
    <DebugType>embedded</DebugType>
 | 
			
		||||
    <EmbedUntrackedSources>true</EmbedUntrackedSources>
 | 
			
		||||
    <PublishRepositoryUrl>true</PublishRepositoryUrl>
 | 
			
		||||
  </PropertyGroup>
 | 
			
		||||
 | 
			
		||||
  <PropertyGroup Label="MinVer">
 | 
			
		||||
    <MinVerTagPrefix>v</MinVerTagPrefix>
 | 
			
		||||
  </PropertyGroup>
 | 
			
		||||
 | 
			
		||||
  <ItemGroup>
 | 
			
		||||
    <None Update="packages.lock.json" Visible="false" />
 | 
			
		||||
    <None Include="../mongo2go_200_200.png" Visible="false">
 | 
			
		||||
      <Pack>true</Pack>
 | 
			
		||||
      <PackagePath>icon.png</PackagePath>
 | 
			
		||||
    </None>
 | 
			
		||||
    <None Include="../../tools/mongodb*/**" Visible="false">
 | 
			
		||||
      <Pack>true</Pack>
 | 
			
		||||
      <PackagePath>tools</PackagePath>
 | 
			
		||||
    </None>
 | 
			
		||||
  </ItemGroup>
 | 
			
		||||
 | 
			
		||||
  <ItemGroup>
 | 
			
		||||
    <PackageReference Include="Microsoft.Extensions.Logging.Abstractions" Version="6.0.0" />
 | 
			
		||||
    <PackageReference Include="Microsoft.SourceLink.GitHub" Version="1.0.0" PrivateAssets="all" />
 | 
			
		||||
    <PackageReference Include="MinVer" Version="2.5.0" PrivateAssets="all" />
 | 
			
		||||
    <PackageReference Include="MongoDB.Driver" Version="3.5.0" />
 | 
			
		||||
    <PackageReference Include="SharpCompress" Version="0.41.0" />
 | 
			
		||||
    <PackageReference Include="System.Text.Json" Version="6.0.10" />
 | 
			
		||||
    <PackageReference Include="Microsoft.NETFramework.ReferenceAssemblies" Version="1.0.3" PrivateAssets="all" />
 | 
			
		||||
  </ItemGroup>
 | 
			
		||||
 | 
			
		||||
  <ItemGroup>
 | 
			
		||||
    <InternalsVisibleTo Include="Mongo2GoTests" />
 | 
			
		||||
  </ItemGroup>
 | 
			
		||||
 | 
			
		||||
  <Target Name="PrintPackageVersionForGitHubActions" AfterTargets="Pack">
 | 
			
		||||
    <Message Importance="high" Text="version=$(PackageVersion)" />
 | 
			
		||||
    <Message Importance="high" Text="nupkg-filename=$(PackageId).$(PackageVersion).nupkg" />
 | 
			
		||||
  </Target>
 | 
			
		||||
 | 
			
		||||
</Project>
 | 
			
		||||
<Project Sdk="Microsoft.NET.Sdk">
 | 
			
		||||
 | 
			
		||||
  <PropertyGroup>
 | 
			
		||||
    <TargetFrameworks>net472;netstandard2.1</TargetFrameworks>
 | 
			
		||||
    <Authors>Johannes Hoppe and many contributors</Authors>
 | 
			
		||||
    <Description>Mongo2Go is a managed wrapper around MongoDB binaries. It targets .NET Framework 4.7.2 and .NET Standard 2.1.
 | 
			
		||||
This Nuget package contains the executables of mongod, mongoimport and mongoexport v4.4.4 for Windows, Linux and macOS.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Mongo2Go has two use cases:
 | 
			
		||||
 | 
			
		||||
1. Providing multiple, temporary and isolated MongoDB databases for integration tests
 | 
			
		||||
2. Providing a quick to set up MongoDB database for a local developer environment</Description>
 | 
			
		||||
    <Company>HAUS HOPPE - ITS</Company>
 | 
			
		||||
    <Copyright>Copyright © 2012-2025 Johannes Hoppe and many ❤️ contributors</Copyright>
 | 
			
		||||
    <GenerateDocumentationFile>true</GenerateDocumentationFile>
 | 
			
		||||
    <PackageIcon>icon.png</PackageIcon>
 | 
			
		||||
    <PackageLicenseExpression>MIT</PackageLicenseExpression>
 | 
			
		||||
    <PackageProjectUrl>https://github.com/Mongo2Go/Mongo2Go</PackageProjectUrl>
 | 
			
		||||
    <PackageReleaseNotes>https://github.com/Mongo2Go/Mongo2Go/releases</PackageReleaseNotes>
 | 
			
		||||
    <PackageTags>MongoDB Mongo unit test integration runner</PackageTags>
 | 
			
		||||
    <RepositoryUrl>https://github.com/Mongo2Go/Mongo2Go</RepositoryUrl>
 | 
			
		||||
    <RepositoryType>git</RepositoryType>
 | 
			
		||||
    <AssemblyTitle>Mongo2Go</AssemblyTitle>
 | 
			
		||||
    <AssemblyDescription>Mongo2Go is a managed wrapper around MongoDB binaries.</AssemblyDescription>
 | 
			
		||||
  </PropertyGroup>
 | 
			
		||||
 | 
			
		||||
  <PropertyGroup Condition="'$(Configuration)|$(TargetFramework)|$(Platform)'=='Debug|netstandard2.1|AnyCPU'">
 | 
			
		||||
    <WarningLevel>4</WarningLevel>
 | 
			
		||||
    <NoWarn>1701;1702;1591;1573</NoWarn>
 | 
			
		||||
  </PropertyGroup>
 | 
			
		||||
 | 
			
		||||
  <PropertyGroup Condition="'$(Configuration)|$(TargetFramework)|$(Platform)'=='Release|netstandard2.1|AnyCPU'">
 | 
			
		||||
    <WarningLevel>4</WarningLevel>
 | 
			
		||||
    <NoWarn>1701;1702;1591;1573</NoWarn>
 | 
			
		||||
  </PropertyGroup>
 | 
			
		||||
 | 
			
		||||
  <PropertyGroup Condition="'$(Configuration)|$(TargetFramework)|$(Platform)'=='Debug|net48|AnyCPU'">
 | 
			
		||||
    <NoWarn>1701;1702;1591;1573</NoWarn>
 | 
			
		||||
  </PropertyGroup>
 | 
			
		||||
 | 
			
		||||
  <PropertyGroup Condition="'$(Configuration)|$(TargetFramework)|$(Platform)'=='Release|net48|AnyCPU'">
 | 
			
		||||
    <NoWarn>1701;1702;1591;1573</NoWarn>
 | 
			
		||||
  </PropertyGroup>
 | 
			
		||||
 | 
			
		||||
  <PropertyGroup Label="Restoring">
 | 
			
		||||
    <DisableImplicitNuGetFallbackFolder>true</DisableImplicitNuGetFallbackFolder>
 | 
			
		||||
    <RestorePackagesWithLockFile>true</RestorePackagesWithLockFile>
 | 
			
		||||
    <RestoreLockedMode Condition="$(ContinuousIntegrationBuild) == 'true'">true</RestoreLockedMode>
 | 
			
		||||
  </PropertyGroup>
 | 
			
		||||
 | 
			
		||||
  <PropertyGroup Label="SourceLink">
 | 
			
		||||
    <DebugType>embedded</DebugType>
 | 
			
		||||
    <EmbedUntrackedSources>true</EmbedUntrackedSources>
 | 
			
		||||
    <PublishRepositoryUrl>true</PublishRepositoryUrl>
 | 
			
		||||
  </PropertyGroup>
 | 
			
		||||
 | 
			
		||||
  <PropertyGroup Label="MinVer">
 | 
			
		||||
    <MinVerTagPrefix>v</MinVerTagPrefix>
 | 
			
		||||
  </PropertyGroup>
 | 
			
		||||
 | 
			
		||||
  <ItemGroup>
 | 
			
		||||
    <None Update="packages.lock.json" Visible="false" />
 | 
			
		||||
    <None Include="../mongo2go_200_200.png" Visible="false">
 | 
			
		||||
      <Pack>true</Pack>
 | 
			
		||||
      <PackagePath>icon.png</PackagePath>
 | 
			
		||||
    </None>
 | 
			
		||||
    <None Include="../../tools/mongodb*/**" Visible="false">
 | 
			
		||||
      <Pack>true</Pack>
 | 
			
		||||
      <PackagePath>tools</PackagePath>
 | 
			
		||||
    </None>
 | 
			
		||||
  </ItemGroup>
 | 
			
		||||
 | 
			
		||||
  <ItemGroup>
 | 
			
		||||
    <PackageReference Include="Microsoft.Extensions.Logging.Abstractions" Version="10.0.0-rc.2.25502.107" />
 | 
			
		||||
    <PackageReference Include="Microsoft.SourceLink.GitHub" Version="1.0.0" PrivateAssets="all" />
 | 
			
		||||
    <PackageReference Include="MinVer" Version="2.5.0" PrivateAssets="all" />
 | 
			
		||||
    <PackageReference Include="MongoDB.Driver" Version="3.5.0" />
 | 
			
		||||
    <PackageReference Include="SharpCompress" Version="0.41.0" />
 | 
			
		||||
    <PackageReference Include="System.Text.Json" Version="6.0.10" />
 | 
			
		||||
    <PackageReference Include="Microsoft.NETFramework.ReferenceAssemblies" Version="1.0.3" PrivateAssets="all" />
 | 
			
		||||
  </ItemGroup>
 | 
			
		||||
 | 
			
		||||
  <ItemGroup>
 | 
			
		||||
    <InternalsVisibleTo Include="Mongo2GoTests" />
 | 
			
		||||
  </ItemGroup>
 | 
			
		||||
 | 
			
		||||
  <Target Name="PrintPackageVersionForGitHubActions" AfterTargets="Pack">
 | 
			
		||||
    <Message Importance="high" Text="version=$(PackageVersion)" />
 | 
			
		||||
    <Message Importance="high" Text="nupkg-filename=$(PackageId).$(PackageVersion).nupkg" />
 | 
			
		||||
  </Target>
 | 
			
		||||
 | 
			
		||||
</Project>
 | 
			
		||||
 
 | 
			
		||||
@@ -1,21 +1,21 @@
 | 
			
		||||
<Project Sdk="Microsoft.NET.Sdk">
 | 
			
		||||
  <PropertyGroup>
 | 
			
		||||
    <TargetFramework>net8.0</TargetFramework>
 | 
			
		||||
    <IsPackable>false</IsPackable>
 | 
			
		||||
  </PropertyGroup>
 | 
			
		||||
  <ItemGroup>
 | 
			
		||||
    <ProjectReference Include="..\Mongo2Go\Mongo2Go.csproj" />
 | 
			
		||||
  </ItemGroup>
 | 
			
		||||
  <ItemGroup>
 | 
			
		||||
    <PackageReference Include="FluentAssertions" Version="5.10.3" />
 | 
			
		||||
    <PackageReference Include="Machine.Specifications" Version="1.0.0" />
 | 
			
		||||
    <PackageReference Include="Machine.Specifications.Runner.VisualStudio" Version="2.10.1" />
 | 
			
		||||
    <PackageReference Include="MELT" Version="0.7.0" />
 | 
			
		||||
    <PackageReference Include="Microsoft.Extensions.Logging" Version="6.0.0" />
 | 
			
		||||
    <PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.9.1" />
 | 
			
		||||
    <PackageReference Include="Moq" Version="4.16.1" />
 | 
			
		||||
    <PackageReference Include="Newtonsoft.Json" Version="13.0.3" />
 | 
			
		||||
    <PackageReference Include="System.Net.Http" Version="4.3.4" />
 | 
			
		||||
    <PackageReference Include="System.Text.RegularExpressions" Version="4.3.1" />
 | 
			
		||||
  </ItemGroup>
 | 
			
		||||
<Project Sdk="Microsoft.NET.Sdk">
 | 
			
		||||
  <PropertyGroup>
 | 
			
		||||
    <TargetFramework>net8.0</TargetFramework>
 | 
			
		||||
    <IsPackable>false</IsPackable>
 | 
			
		||||
  </PropertyGroup>
 | 
			
		||||
  <ItemGroup>
 | 
			
		||||
    <ProjectReference Include="..\Mongo2Go\Mongo2Go.csproj" />
 | 
			
		||||
  </ItemGroup>
 | 
			
		||||
  <ItemGroup>
 | 
			
		||||
    <PackageReference Include="FluentAssertions" Version="5.10.3" />
 | 
			
		||||
    <PackageReference Include="Machine.Specifications" Version="1.0.0" />
 | 
			
		||||
    <PackageReference Include="Machine.Specifications.Runner.VisualStudio" Version="2.10.1" />
 | 
			
		||||
    <PackageReference Include="MELT" Version="0.7.0" />
 | 
			
		||||
    <PackageReference Include="Microsoft.Extensions.Logging" Version="6.0.0" />
 | 
			
		||||
    <PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.9.1" />
 | 
			
		||||
    <PackageReference Include="Moq" Version="4.16.1" />
 | 
			
		||||
    <PackageReference Include="Newtonsoft.Json" Version="13.0.3" />
 | 
			
		||||
    <PackageReference Include="System.Net.Http" Version="4.3.4" />
 | 
			
		||||
    <PackageReference Include="System.Text.RegularExpressions" Version="4.3.1" />
 | 
			
		||||
  </ItemGroup>
 | 
			
		||||
</Project>
 | 
			
		||||
		Reference in New Issue
	
	Block a user