Codebasis als Dateien ins Arbeitsrepo statt als Gitlink

QuellCode/CentronERP war nur als Gitlink (Submodul-Referenz auf 79c1142)
getrackt, ohne .gitmodules und ohne erreichbares Remote. Der
Untersuchungsgegenstand der Versuchsreihe war damit nicht reproduzierbar
gesichert: Ein Klon haette ein leeres Verzeichnis erhalten, und die Belege
der 3.287 Anforderungen waeren nicht ueberpruefbar gewesen.

Umstellung:
- Historie nach c:\DEV\CentronERP_git_snapshot_79c1142 ausgelagert
  (vollstaendig lesbar, enthaelt 79c1142 und Vorgaenger 89ccfd6)
- Gitlink aus dem Index entfernt
- Dateiinhalt aufgenommen: 24.557 Dateien, rund 333 MB

Die verschachtelte .gitignore der Codebasis gilt weiter, Build-Artefakte
bleiben ausgeschlossen. Details in Versuche/Versuch_01/_Codebasis-Nachweis.md
This commit is contained in:
Christoph Schwörer
2026-08-26 07:43:51 +02:00
parent 18edae75b6
commit f045b99a25
24664 changed files with 5846716 additions and 1 deletions
@@ -0,0 +1,19 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net10.0</TargetFramework>
<IsPackable>false</IsPackable>
<IsTestProject>true</IsTestProject>
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\..\..\src\apis\Centron.APIs.EgisDataAccess\Centron.APIs.EgisDataAccess.csproj" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.12.0" />
<PackageReference Include="xunit" Version="2.9.3" />
<PackageReference Include="xunit.runner.visualstudio" Version="3.1.5" PrivateAssets="all" />
</ItemGroup>
</Project>
@@ -0,0 +1,77 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using CentronSoftware.Centron.APIs.EgisDataAccess;
using CentronSoftware.Centron.APIs.EgisDataAccess.RequestTemplates;
using Xunit;
namespace Centron.APIs.EgisDataAccess.Tests
{
public class Class1
{
[Fact]
public async Task Test()
{
var api = EgisApi.Create("centron_test", "5jlXRihn");
var availability1 = api.GetPriceAndAvailability(false,
"PCS5712930",
"PCS5712931",
"PCS5712932",
"PCS5712933",
"PCS5712934",
"PCS5712935",
"PCS5712936",
"PCS5712937",
"PCS5712938",
"PCS5712939");
var availability2 = api.GetPriceAndAvailability(false,
"PCS5712940",
"PCS5712941",
"PCS5712942",
"PCS5712943",
"PCS5712944",
"PCS5712945",
"PCS5712946",
"PCS5712947",
"PCS5712948",
"PCS5712949");
var availability3 = api.GetPriceAndAvailability(false,
"PCS5712950",
"PCS5712951",
"PCS5712952",
"PCS5712953",
"PCS5712954",
"PCS5712955",
"PCS5712956",
"PCS5712957",
"PCS5712958",
"PCS5712959");
var availability4 = api.GetPriceAndAvailability(false,
"PCS5712960",
"PCS5712961",
"PCS5712962",
"PCS5712963",
"PCS5712964",
"PCS5712965",
"PCS5712966",
"PCS5712967",
"PCS5712968",
"PCS5712969");
var availability5 = api.GetPriceAndAvailability(false,
"PCS5712970",
"PCS5712971",
"PCS5712972",
"PCS5712973",
"PCS5712974",
"PCS5712975",
"PCS5712976",
"PCS5712977",
"PCS5712978",
"PCS5712979");
await Task.WhenAll(availability1, availability2, availability3, availability4, availability5);
}
}
}
@@ -0,0 +1,39 @@
using CentronSoftware.Centron.APIs.EgisDataAccess;
using Xunit;
namespace Centron.APIs.EgisDataAccess.Tests
{
public class EgisApiSearchRequirementsTests
{
[Fact]
public void CanSearchArticles_ReturnsTrue_WhenAllRequirementsAreMet()
{
var api = EgisApi.Create("username", "password");
var result = api.CanSearchArticles(true, "manufacturer-code");
Assert.True(result);
}
[Theory]
[InlineData(false, "username", "password", "manufacturer-code")]
[InlineData(true, null, "password", "manufacturer-code")]
[InlineData(true, "", "password", "manufacturer-code")]
[InlineData(true, " ", "password", "manufacturer-code")]
[InlineData(true, "EBC Benutzername", "password", "manufacturer-code")]
[InlineData(true, "username", null, "manufacturer-code")]
[InlineData(true, "username", "", "manufacturer-code")]
[InlineData(true, "username", " ", "manufacturer-code")]
[InlineData(true, "username", "password", null)]
[InlineData(true, "username", "password", "")]
[InlineData(true, "username", "password", " ")]
public void CanSearchArticles_ReturnsFalse_WhenARequirementIsMissing(bool isSearchEnabled, string username, string password, string searchText)
{
var api = EgisApi.Create(username, password);
var result = api.CanSearchArticles(isSearchEnabled, searchText);
Assert.False(result);
}
}
}