using Centron.BusinessLogic.Administration.Scripts.ScriptMethods.RecurringScriptMethods; using Centron.DAO; using Centron.Interfaces.BL; using Centron.Tests.EndToEnd.Infrastructure; using Xunit; using Xunit.Abstractions; namespace Centron.Tests.EndToEnd.Tests.Administration.Scripts.RecurringScripts; public class FixNullStockQuantitiesTest : EndToEndTest { public FixNullStockQuantitiesTest(ITestOutputHelper testOutputHelper) : base(testOutputHelper) { } public override void Execute() { Sql("UPDATE TOP (3) ARTIK SET Menge = NULL"); Sql("UPDATE TOP (3) NebenlagerArtikel SET Bestand = NULL"); Assert.True( Sql("SELECT COUNT(*) FROM ARTIK WHERE Menge IS NULL") >= 1, "Setup fehlgeschlagen: kein ARTIK-Datensatz mit Menge IS NULL vorhanden"); Assert.True( Sql("SELECT COUNT(*) FROM NebenlagerArtikel WHERE Bestand IS NULL") >= 1, "Setup fehlgeschlagen: kein NebenlagerArtikel-Datensatz mit Bestand IS NULL vorhanden"); using (var session = new DAOSession()) { session.WithTransaction(() => new FixArticleMainStockQuantityNull().ExecuteScript(session)) .ThrowIfError(); session.WithTransaction(() => new FixSecondaryStockArticleStockNull().ExecuteScript(session)) .ThrowIfError(); } Assert.Equal(0, Sql("SELECT COUNT(*) FROM ARTIK WHERE Menge IS NULL")); Assert.Equal(0, Sql("SELECT COUNT(*) FROM NebenlagerArtikel WHERE Bestand IS NULL")); } }