// Copyright (C) Stichting Deltares 2017. All rights reserved.
//
// This file is part of Ringtoets.
//
// Ringtoets 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 System.Collections.Generic;
using System.Linq;
using NUnit.Framework;
namespace Ringtoets.Common.IO.TestUtil
{
///
/// A helper for asserting progress notifications.
///
public static class ProgressNotificationTestHelper
{
///
/// Asserts that is equal to .
///
/// The value that is expected.
/// The actual value.
/// Thrown when the is
/// not equal to .
public static void AssertProgressNotificationsAreEqual(IEnumerable expected,
IEnumerable actual)
{
if (expected == null)
{
Assert.IsNull(expected);
return;
}
ProgressNotification[] expectedArray = expected.ToArray();
ProgressNotification[] actualArray = actual.ToArray();
Assert.AreEqual(expectedArray.Length, actualArray.Length);
for (var i = 0; i < expectedArray.Length; i++)
{
AssertProgressNotificationsAreEqual(expectedArray[i], actualArray[i]);
}
}
///
/// Asserts that is equal to .
///
/// The value that is expected.
/// The actual value.
/// Thrown when the is
/// not equal to .
private static void AssertProgressNotificationsAreEqual(ProgressNotification expected,
ProgressNotification actual)
{
if (expected == null)
{
Assert.IsNull(expected);
return;
}
Assert.AreEqual(expected.Description, actual.Description);
Assert.AreEqual(expected.CurrentStep, actual.CurrentStep);
Assert.AreEqual(expected.TotalSteps, actual.TotalSteps);
}
}
}