Tests (jetzt 48 grün): - DbContextMappingTests: sichert core_/mod_-Tabellennamen, Position-Composite-Key, TrackedTrader-Key, ClosedTradeRow nicht gemappt, AccountState.OpenPositions ignoriert. - PositionRepositoryTests: Live/Demo-Trennung, Upsert setzt Account+Demo-Flag, Update ohne Duplikat, DeleteLive, DropDemo. - MarketRepositoryTests: GetActive filtert Closed, Upsert-Update, FindByTokenId. - TradeLogRepositoryTests: GetRecent (Sortierung+Limit), Find-Predikat, Guid-Id unique. - MongoExportParserTests: String-Dezimale, null->"", fehlende Felder->Default, AssignedAccountIds-Array, Category-Default, Nicht-Array->leer. Refactor: - Mongo-Export-Parsing aus ConfigMigrator in testbare Klasse PolyTrader.Modules.CopyTrading.ConfigImport.MongoExportParser ausgelagert (ParseAccounts -> Account+Settings, ParseTraders). ConfigMigrator nutzt sie; --migrate-json end-to-end verifiziert (3/3/32). - PolyTrader.App.csproj: tests/** vom Default-Glob ausgeschlossen (App zog sonst die Testdateien mit rein -> doppelte AssemblyInfo/Xunit-Fehler). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
91 lines
3.3 KiB
XML
91 lines
3.3 KiB
XML
<Project Sdk="Microsoft.NET.Sdk">
|
|
|
|
<PropertyGroup>
|
|
<TargetFramework>net8.0-windows7.0</TargetFramework>
|
|
<Nullable>enable</Nullable>
|
|
<ImplicitUsings>enable</ImplicitUsings>
|
|
<ApplicationIcon>favicon.ico</ApplicationIcon>
|
|
<OutputType>WinExe</OutputType>
|
|
<UseWindowsForms>true</UseWindowsForms>
|
|
<!-- Assembly heißt jetzt PolyTrader.App; RootNamespace bleibt PolyTraderSharp,
|
|
damit die bestehenden Namespaces und die .resx-Ressourcenauflösung intakt bleiben. -->
|
|
<AssemblyName>PolyTrader.App</AssemblyName>
|
|
<RootNamespace>PolyTraderSharp</RootNamespace>
|
|
</PropertyGroup>
|
|
|
|
<ItemGroup>
|
|
<Compile Remove="agentspace\**" />
|
|
<None Remove="agentspace\**" />
|
|
<Compile Remove="libs\**" />
|
|
<None Remove="libs\**" />
|
|
<!-- Neue Modul-/Core-Projekte liegen unter src/ und werden separat kompiliert. -->
|
|
<Compile Remove="src\**" />
|
|
<None Remove="src\**" />
|
|
<EmbeddedResource Remove="src\**" />
|
|
<!-- Testprojekt unter tests/ wird separat kompiliert (nicht in die App ziehen). -->
|
|
<Compile Remove="tests\**" />
|
|
<None Remove="tests\**" />
|
|
<EmbeddedResource Remove="tests\**" />
|
|
</ItemGroup>
|
|
|
|
<ItemGroup>
|
|
<Content Include="favicon.ico" />
|
|
</ItemGroup>
|
|
|
|
<ItemGroup>
|
|
<None Update="appsettings.json">
|
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
|
</None>
|
|
<!-- Gitignorierte Local-Datei (MySQL-Connection) neben die EXE kopieren, damit die App
|
|
die Verbindung auch findet, wenn sie NICHT aus dem Projekt-Root gestartet wird. -->
|
|
<None Update="appsettings.Local.json" Condition="Exists('appsettings.Local.json')">
|
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
|
</None>
|
|
</ItemGroup>
|
|
|
|
<ItemGroup>
|
|
<Folder Include="agentspace\antigravity\" />
|
|
</ItemGroup>
|
|
|
|
<ItemGroup>
|
|
<Compile Update="Properties\Resources.Designer.cs">
|
|
<DesignTime>True</DesignTime>
|
|
<AutoGen>True</AutoGen>
|
|
<DependentUpon>Resources.resx</DependentUpon>
|
|
</Compile>
|
|
<Compile Update="Properties\Settings.Designer.cs">
|
|
<DesignTimeSharedInput>True</DesignTimeSharedInput>
|
|
<AutoGen>True</AutoGen>
|
|
<DependentUpon>Settings.settings</DependentUpon>
|
|
</Compile>
|
|
</ItemGroup>
|
|
|
|
<ItemGroup>
|
|
<EmbeddedResource Update="Properties\Resources.resx">
|
|
<Generator>ResXFileCodeGenerator</Generator>
|
|
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
|
|
</EmbeddedResource>
|
|
</ItemGroup>
|
|
|
|
<ItemGroup>
|
|
<PackageReference Include="Nethereum.Web3" Version="6.1.0" />
|
|
<PackageReference Include="Newtonsoft.Json" Version="13.0.4" />
|
|
<PackageReference Include="Microsoft.Extensions.Hosting" Version="8.0.0" />
|
|
<PackageReference Include="Microsoft.Extensions.Http" Version="8.0.0" />
|
|
<!-- Angehoben, um Downgrade-Konflikt (EF Core zieht 8.0.2) aufzulösen. -->
|
|
<PackageReference Include="Microsoft.Extensions.DependencyInjection.Abstractions" Version="8.0.2" />
|
|
</ItemGroup>
|
|
|
|
<ItemGroup>
|
|
<None Update="Properties\Settings.settings">
|
|
<Generator>SettingsSingleFileGenerator</Generator>
|
|
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
|
|
</None>
|
|
</ItemGroup>
|
|
|
|
<ItemGroup>
|
|
<ProjectReference Include="src\PolyTrader.Core\PolyTrader.Core.csproj" />
|
|
<ProjectReference Include="src\PolyTrader.Modules.CopyTrading\PolyTrader.Modules.CopyTrading.csproj" />
|
|
</ItemGroup>
|
|
|
|
</Project> |