// Copyright (C) Stichting Deltares 2025. All rights reserved. // // This file is part of the application DAM - UI. // // DAM - UI is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation, either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program. If not, see . // // All names, logos, and references to "Deltares" are registered trademarks of // Stichting Deltares and remain full property of Stichting Deltares at all times. // All rights reserved. using Deltares.Dam.Data; using NUnit.Framework; namespace Deltares.Dam.Tests { [TestFixture] public class DamJobTest { [Test] public void SingleJob() { using (var location = new Location()) { location.Name = "Jan"; var job = new DamJob(location); Assert.That(job.Run.Value, Is.EqualTo(false), "Initial run value"); Assert.That(job.Name, Is.EqualTo("Jan"), "Name of the job"); Assert.That(job.Subject, Is.EqualTo(location), "Subject of the job"); } } [Test] public void CompositeJob() { using (var location1 = new Location()) using (var location2 = new Location()) using (var dike = new Dike()) { location1.Name = "Jan"; location2.Name = "Piet"; var compositeJob = new CompositeJob(dike); compositeJob.Jobs.Add(new DamJob(location1)); compositeJob.Jobs.Add(new DamJob(location2)); Assert.That(compositeJob.Run.Value, Is.EqualTo(false), "Initial run value"); compositeJob.Run = true; Assert.That(compositeJob.Jobs[0].Run.Value, Is.EqualTo(true), "Set run value to sub job"); Assert.That(compositeJob.Jobs[1].Run.Value, Is.EqualTo(true), "Set run vale to sub job"); compositeJob.Jobs[0].Run = false; Assert.That(compositeJob.Run.HasValue, Is.EqualTo(false), "Set run value to parent job"); compositeJob.Jobs[1].Run = false; Assert.That(compositeJob.Run.Value, Is.EqualTo(false), "Set run value to parent job"); } } } }