sharee.bike-App/SharedBusinessLogic.Tests/ViewModel/TestViewModelHelper.cs
2024-04-09 12:53:23 +02:00

190 lines
4.5 KiB
C#

using System;
using NSubstitute;
using NUnit.Framework;
using ShareeBike.Model.Bikes.BikeInfoNS.BC;
using ShareeBike.Model.Bikes.BikeInfoNS.BikeNS;
using ShareeBike.ViewModel;
namespace SharedBusinessLogic.Tests.ViewModel
{
[TestFixture]
public class TestViewModelHelper
{
[Test]
public void TestGetFullDisplayName()
{
var bike = Substitute.For<IBikeInfoMutable>();
bike.Description.Returns("MyStation");
bike.Id.Returns("MyId");
Assert.That(
bike.GetFullDisplayName(),
Is.EqualTo("MyStation, Nr. MyId"));
}
[Test]
public void TestGetFullDisplayNameIdEmpty()
{
var bike = Substitute.For<IBikeInfoMutable>();
bike.Description.Returns("MyStation");
bike.Id.Returns("");
Assert.That(
bike.GetFullDisplayName(),
Is.EqualTo("MyStation, Nr. "));
}
[Test]
public void TestGetFullDisplayNameEmpty()
{
var bike = Substitute.For<IBikeInfoMutable>();
bike.Description.Returns("");
bike.Id.Returns("Id33");
Assert.That(
bike.GetDisplayName(),
Is.EqualTo("Id33"));
}
[Test]
public void TestGetDisplayName()
{
var bike = Substitute.For<IBikeInfoMutable>();
bike.Description.Returns("MyStation");
bike.Id.Returns("Id33");
Assert.That(
bike.GetDisplayName(),
Is.EqualTo("MyStation"));
}
[Test]
public void TestGetDisplayNameEmpty()
{
var bike = Substitute.For<IBikeInfoMutable>();
bike.Description.Returns("");
bike.Id.Returns("Id33");
Assert.That(
bike.GetDisplayName(),
Is.EqualTo("Id33"));
}
[Test]
public void TestGetDisplayId()
{
var bike = Substitute.For<IBikeInfoMutable>();
bike.Description.Returns("ValidName");
bike.Id.Returns("Id33");
Assert.That(
bike.GetDisplayId(),
Is.EqualTo("Id33"));
}
[Test]
public void TestGetDisplayIdNameEmpty()
{
var bike = Substitute.For<IBikeInfoMutable>();
bike.Description.Returns("");
bike.Id.Returns("Id33");
Assert.That(
bike.GetDisplayId(),
Is.EqualTo(""));
}
[Test]
public void TestGetErrorMessage_Null()
{
Assert.That(
ViewModelHelper.GetErrorMessage(null),
Is.Empty);
}
[Test]
public void TestGetErrorMessage_Ex()
{
Assert.That(
new Exception("Ja toll").GetErrorMessage(),
Is.EqualTo("Ja toll"));
}
[Test]
public void TestGetErrorMessage_Aggregate_One()
{
Assert.That(
new AggregateException(new Exception("Oh yes")).GetErrorMessage(),
Is.EqualTo("Oh yes"));
}
[Test]
public void TestGetErrorMessage_Aggregate_Two()
{
Assert.That(
new AggregateException(new Exception("Oh yes"), new Exception("Oh no")).GetErrorMessage(),
Is.EqualTo("One or more errors occurred.\r\nOh yes\r\nOh no"));
}
[Test]
public void TestGetDisplayName_DefinedTypes()
{
var bike = Substitute.For<IBikeInfoMutable>();
bike.WheelType.Returns(WheelType.Two);
bike.TypeOfBike.Returns(TypeOfBike.City);
bike.Description.Returns("MeinStadtrad");
bike.Id.Returns("22");
Assert.That(
bike.GetDisplayName(), Is.EqualTo("MeinStadtrad"));
Assert.That(
bike.GetDisplayId(), Is.EqualTo("22"));
bike = Substitute.For<IBikeInfoMutable>();
bike.WheelType.Returns(WheelType.Two);
bike.TypeOfBike.Returns(TypeOfBike.City);
bike.Id.Returns("22");
bike.IsDemo.Returns(true);
bike.Description.Returns("MeinStadtrad");
Assert.That(
bike.GetDisplayName(), Is.EqualTo("MeinStadtrad"));
Assert.That(
bike.GetDisplayId(), Is.EqualTo("22"));
bike = Substitute.For<IBikeInfoMutable>();
bike.WheelType.Returns(WheelType.Trike);
bike.TypeOfBike.Returns(TypeOfBike.Cargo);
bike.Description.Returns("MeinCargoDreiradl");
bike.Id.Returns("22");
Assert.That(
bike.GetDisplayName(), Is.EqualTo("MeinCargoDreiradl"));
Assert.That(
bike.GetDisplayId(), Is.EqualTo("22"));
bike = Substitute.For<IBikeInfoMutable>();
bike.WheelType.Returns(WheelType.Two);
bike.TypeOfBike.Returns(TypeOfBike.Cargo);
bike.Description.Returns("MeinCargoALololong");
bike.Id.Returns("22");
Assert.That(
bike.GetDisplayName(), Is.EqualTo("MeinCargoALololong"));
Assert.That(
bike.GetDisplayId(), Is.EqualTo("22"));
}
[Test]
public void TestGetDisplayName_UndefinedTypes()
{
var bike = Substitute.For<IBikeInfoMutable>();
bike.WheelType.Returns(WheelType.Mono);
bike.TypeOfBike.Returns(TypeOfBike.Cargo);
bike.Description.Returns("SuperCargo");
bike.Id.Returns("22");
Assert.That(
bike.GetDisplayName(), Is.EqualTo("SuperCargo"));
Assert.That(
bike.GetDisplayId(), Is.EqualTo("22"));
}
}
}