sharee.bike-App/TestShareeLib/Model/TestWhatsNewMessage.cs
Anja Müller-Meißner 0468955d49 Version 3.0.338
2022-09-08 09:55:14 +02:00

453 lines
14 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using NUnit.Framework;
using TINK.Model;
using TINK.ViewModel.WhatsNew;
using Xamarin.Essentials;
namespace TestShareeLib.Model
{
[TestFixture]
public class TestWhatsNewMessage
{
[Test]
public void TestAdd_Text()
{
Assert.That(
new WhatsNewMessages
{
{
new Version(3, 0, 115),
"Whats new text."
}
}[0].Message,
Is.EqualTo("Whats new text."));
}
[Test]
public void TestAdd_Text_Null()
{
Assert.That(
new WhatsNewMessages
{
{
new Version(3, 0, 115),
null
}
}.Count,
Is.EqualTo(0));
}
[Test]
public void Test_Add_Version()
{
Assert.That(
new WhatsNewMessages
{
{
new Version(3, 0, 115),
"Whats new text."
}
}[0].Version,
Is.EqualTo(new Version(3, 0, 115)));
}
[Test]
public void Test_Add_Version_Null()
{
Assert.That(
new WhatsNewMessages
{
{
null,
"Whats new text."
}
}.Count,
Is.EqualTo(0));
}
[Test]
public void Test_Add_Flavors_GeneralEntry()
{
Assert.That(
new WhatsNewMessages
{
{
new Version(3, 0, 115),
"Whats new text."
}
}[0].Flavors.Count,
Is.EqualTo(0));
}
[Test]
public void Test_Add_Flavors_ShareeBike()
{
Assert.That(
new WhatsNewMessages
{
{
new Version(3, 0, 115),
"Whats new text.",
new List<AppFlavor> { AppFlavor.MeinKonrad }
}
}[0].Flavors,
Is.EqualTo(new List<AppFlavor> { AppFlavor.MeinKonrad }));
}
[Test]
public void TestPlatforms_Add_Platform_GeneralEntry()
{
Assert.That(
new WhatsNewMessages
{
{
new Version(3, 0, 115),
"Whats new text."
}
}[0].Platforms.Count,
Is.EqualTo(0));
}
[Test]
public void TestPlatforms_Add_Platform_IOs()
{
Assert.That(
new WhatsNewMessages
{
{
new Version(3, 0, 115),
"Whats new text.",
null,
new List<DevicePlatform> { DevicePlatform.iOS }
}
}[0].Platforms,
Is.EqualTo(new List<DevicePlatform> { DevicePlatform.iOS }));
}
[Test]
public void TestWhatsNewText_MajorUpdate_Lastenradbayern_iOS()
{
var whatsNew = new WhatsNew(new Version(3, 0, 120),
new Version(3, 0, 0, 114),
new Version(3, 0, 0, 114),
AppFlavor.LastenradBayern,
DevicePlatform.iOS,
new WhatsNewMessages {
{
new Version(3, 0, 0, 113),
"3.0.0.113 verbessert.\r\n\r\n"
},
{
new Version(3, 0, 0, 115),
"Benutzeroberfläche verbessert.\r\n\r\n"
},
{
new Version(3, 0, 0, 116),
"sharee.bike und Lastenrad Bayern verbessert unter iOS und Android.\r\n\r\n",
new List<AppFlavor> {AppFlavor.ShareeBike, AppFlavor.LastenradBayern}
},
{
new Version(3, 0, 0, 117),
"iOS Implementierungen verbessert.\r\n\r\n",
null,
new List<DevicePlatform> { DevicePlatform.iOS }
},
{
new Version(3, 0, 0, 118),
"iOS version Lastenrad Bayern verbessert.\r\n\r\n",
new List<AppFlavor> { AppFlavor.LastenradBayern },
new List<DevicePlatform> { DevicePlatform.iOS }
},
{
new Version(3, 0, 0, 119),
"In Mein konrad unter Droid in 119 was anderes als unter iOS gemacht.\r\n\r\n",
new List<AppFlavor> { AppFlavor.MeinKonrad },
new List<DevicePlatform> { DevicePlatform.Android }
},
{
new Version(3, 0, 0, 119),
"In Mein konrad unter iOS in 119 was anderes als unter Droid gemacht.\r\n\r\n",
new List<AppFlavor> { AppFlavor.MeinKonrad },
new List<DevicePlatform> { DevicePlatform.iOS }
},
{
new Version(3, 0, 120),
"Verbesserung: Keine Fehler mehr beim schnellen Tippen.\r\n" +
"Offlineanzeige Stationen/ Räderinfo.\r\n\r\n"
},
{
new Version(3, 0, 121),
"3.0.121 verbessert.\r\n\r\n"
}
});
Assert.AreEqual(
"<p><b>3.0.0.115</b><br/>Benutzeroberfläche verbessert.\r\n\r\n</p>" +
"<p><b>3.0.0.116</b><br/>sharee.bike und Lastenrad Bayern verbessert unter iOS und Android.\r\n\r\n</p>" +
"<p><b>3.0.0.117</b><br/>iOS Implementierungen verbessert.\r\n\r\n</p>" +
"<p><b>3.0.0.118</b><br/>iOS version Lastenrad Bayern verbessert.\r\n\r\n</p>" +
"<p><b>3.0.120</b><br/>Verbesserung: Keine Fehler mehr beim schnellen Tippen.\r\nOfflineanzeige Stationen/ Räderinfo.\r\n\r\n</p>",
WhatsNewViewModel.GetWhatNextHtmlText(whatsNew.WhatsNewText));
}
[Test]
public void TestWhatsNewText_MajorUpdate_ShareeBike_iOS()
{
var whatsNew = new WhatsNew(new Version(3, 0, 120),
new Version(3, 0, 0, 114),
new Version(3, 0, 0, 114),
AppFlavor.ShareeBike,
DevicePlatform.iOS,
new WhatsNewMessages {
{
new Version(3, 0, 0, 113),
"3.0.0.113 verbessert.\r\n\r\n"
},
{
new Version(3, 0, 0, 115),
"Benutzeroberfläche verbessert.\r\n\r\n"
},
{
new Version(3, 0, 0, 116),
"sharee.bike und Lastenrad Bayern verbessert unter iOS und Android.\r\n\r\n",
new List<AppFlavor> {AppFlavor.ShareeBike, AppFlavor.LastenradBayern}
},
{
new Version(3, 0, 0, 117),
"iOS Implementierungen verbessert.\r\n\r\n",
null,
new List<DevicePlatform> { DevicePlatform.iOS }
},
{
new Version(3, 0, 0, 118),
"iOS version Lastenrad Bayern verbessert.\r\n\r\n",
new List<AppFlavor> { AppFlavor.LastenradBayern },
new List<DevicePlatform> { DevicePlatform.iOS }
},
{
new Version(3, 0, 0, 119),
"In Mein konrad unter Droid in 119 was anderes als unter iOS gemacht.\r\n\r\n",
new List<AppFlavor> { AppFlavor.MeinKonrad },
new List<DevicePlatform> { DevicePlatform.Android }
},
{
new Version(3, 0, 0, 119),
"In Mein konrad unter iOS in 119 was anderes als unter Droid gemacht.\r\n\r\n",
new List<AppFlavor> { AppFlavor.MeinKonrad },
new List<DevicePlatform> { DevicePlatform.iOS }
},
{
new Version(3, 0, 120),
"Verbesserung: Keine Fehler mehr beim schnellen Tippen.\r\n" +
"Offlineanzeige Stationen/ Räderinfo.\r\n\r\n"
},
{
new Version(3, 0, 121),
"3.0.121 verbessert.\r\n\r\n"
}
});
Assert.AreEqual(
"<p><b>3.0.0.115</b><br/>Benutzeroberfläche verbessert.\r\n\r\n</p>" +
"<p><b>3.0.0.116</b><br/>sharee.bike und Lastenrad Bayern verbessert unter iOS und Android.\r\n\r\n</p>" +
"<p><b>3.0.0.117</b><br/>iOS Implementierungen verbessert.\r\n\r\n</p>" +
"<p><b>3.0.120</b><br/>Verbesserung: Keine Fehler mehr beim schnellen Tippen.\r\nOfflineanzeige Stationen/ Räderinfo.\r\n\r\n</p>",
WhatsNewViewModel.GetWhatNextHtmlText(whatsNew.WhatsNewText));
}
[Test]
public void TestWhatsNewText_MajorUpdate_ShareeBike_Android()
{
var whatsNew = new WhatsNew(new Version(3, 0, 120),
new Version(3, 0, 0, 114),
new Version(3, 0, 0, 114),
AppFlavor.ShareeBike,
DevicePlatform.Android,
new WhatsNewMessages {
{
new Version(3, 0, 0, 113),
"3.0.0.113 verbessert.\r\n\r\n"
},
{
new Version(3, 0, 0, 115),
"Benutzeroberfläche verbessert.\r\n\r\n"
},
{
new Version(3, 0, 0, 116),
"sharee.bike und Lastenrad Bayern verbessert unter iOS und Android.\r\n\r\n",
new List<AppFlavor> {AppFlavor.ShareeBike, AppFlavor.LastenradBayern}
},
{
new Version(3, 0, 0, 117),
"iOS Implementierungen verbessert.\r\n\r\n",
null,
new List<DevicePlatform> { DevicePlatform.iOS }
},
{
new Version(3, 0, 0, 118),
"iOS version Lastenrad Bayern verbessert.\r\n\r\n",
new List<AppFlavor> { AppFlavor.LastenradBayern },
new List<DevicePlatform> { DevicePlatform.iOS }
},
{
new Version(3, 0, 0, 119),
"In Mein konrad unter Droid in 119 was anderes als unter iOS gemacht.\r\n\r\n",
new List<AppFlavor> { AppFlavor.MeinKonrad },
new List<DevicePlatform> { DevicePlatform.Android }
},
{
new Version(3, 0, 0, 119),
"In Mein konrad unter iOS in 119 was anderes als unter Droid gemacht.\r\n\r\n",
new List<AppFlavor> { AppFlavor.MeinKonrad },
new List<DevicePlatform> { DevicePlatform.iOS }
},
{
new Version(3, 0, 120),
"Verbesserung: Keine Fehler mehr beim schnellen Tippen.\r\n" +
"Offlineanzeige Stationen/ Räderinfo.\r\n\r\n"
},
{
new Version(3, 0, 121),
"3.0.121 verbessert.\r\n\r\n"
}
});
Assert.AreEqual(
"<p><b>3.0.0.115</b><br/>Benutzeroberfläche verbessert.\r\n\r\n</p>" +
"<p><b>3.0.0.116</b><br/>sharee.bike und Lastenrad Bayern verbessert unter iOS und Android.\r\n\r\n</p>" +
"<p><b>3.0.120</b><br/>Verbesserung: Keine Fehler mehr beim schnellen Tippen.\r\nOfflineanzeige Stationen/ Räderinfo.\r\n\r\n</p>",
WhatsNewViewModel.GetWhatNextHtmlText(whatsNew.WhatsNewText));
}
[Test]
public void TestWhatsNewText_MajorUpdate_Meinkonrad_Android()
{
var whatsNew = new WhatsNew(new Version(3, 0, 120),
new Version(3, 0, 0, 114),
new Version(3, 0, 0, 114),
AppFlavor.MeinKonrad,
DevicePlatform.Android,
new WhatsNewMessages {
{
new Version(3, 0, 0, 113),
"3.0.0.113 verbessert.\r\n\r\n"
},
{
new Version(3, 0, 0, 115),
"Benutzeroberfläche verbessert.\r\n\r\n"
},
{
new Version(3, 0, 0, 116),
"sharee.bike und Lastenrad Bayern verbessert unter iOS und Android.\r\n\r\n",
new List<AppFlavor> {AppFlavor.ShareeBike, AppFlavor.LastenradBayern}
},
{
new Version(3, 0, 0, 117),
"iOS Implementierungen verbessert.\r\n\r\n",
null,
new List<DevicePlatform> { DevicePlatform.iOS }
},
{
new Version(3, 0, 0, 118),
"iOS version Lastenrad Bayern verbessert.\r\n\r\n",
new List<AppFlavor> { AppFlavor.LastenradBayern },
new List<DevicePlatform> { DevicePlatform.iOS }
},
{
new Version(3, 0, 0, 119),
"In Mein konrad unter Droid in 119 was anderes als unter iOS gemacht.\r\n\r\n",
new List<AppFlavor> { AppFlavor.MeinKonrad },
new List<DevicePlatform> { DevicePlatform.Android }
},
{
new Version(3, 0, 0, 119),
"In Mein konrad unter iOS in 119 was anderes als unter Droid gemacht.\r\n\r\n",
new List<AppFlavor> { AppFlavor.MeinKonrad },
new List<DevicePlatform> { DevicePlatform.iOS }
},
{
new Version(3, 0, 120),
"Verbesserung: Keine Fehler mehr beim schnellen Tippen.\r\n" +
"Offlineanzeige Stationen/ Räderinfo.\r\n\r\n"
},
{
new Version(3, 0, 121),
"3.0.121 verbessert.\r\n\r\n"
} });
Assert.AreEqual(
"<p><b>3.0.0.115</b><br/>Benutzeroberfläche verbessert.\r\n\r\n</p>" +
"<p><b>3.0.0.119</b><br/>In Mein konrad unter Droid in 119 was anderes als unter iOS gemacht.\r\n\r\n</p>" +
"<p><b>3.0.120</b><br/>Verbesserung: Keine Fehler mehr beim schnellen Tippen.\r\nOfflineanzeige Stationen/ Räderinfo.\r\n\r\n</p>",
WhatsNewViewModel.GetWhatNextHtmlText(whatsNew.WhatsNewText));
}
[Test]
public void TestWhatsNewText_MajorUpdate_Meinkonrad_iOS()
{
var whatsNew = new WhatsNew(new Version(3, 0, 120),
new Version(3, 0, 0, 114),
new Version(3, 0, 0, 114),
AppFlavor.MeinKonrad,
DevicePlatform.iOS,
new WhatsNewMessages {
{
new Version(3, 0, 0, 113),
"3.0.0.113 verbessert.\r\n\r\n"
},
{
new Version(3, 0, 0, 115),
"Benutzeroberfläche verbessert.\r\n\r\n"
},
{
new Version(3, 0, 0, 116),
"sharee.bike und Lastenrad Bayern verbessert unter iOS und Android.\r\n\r\n",
new List<AppFlavor> {AppFlavor.ShareeBike, AppFlavor.LastenradBayern}
},
{
new Version(3, 0, 0, 117),
"iOS Implementierungen verbessert.\r\n\r\n",
null,
new List<DevicePlatform> { DevicePlatform.iOS }
},
{
new Version(3, 0, 0, 118),
"iOS version Lastenrad Bayern verbessert.\r\n\r\n",
new List<AppFlavor> { AppFlavor.LastenradBayern },
new List<DevicePlatform> { DevicePlatform.iOS }
},
{
new Version(3, 0, 0, 119),
"In Mein konrad unter Droid in 119 was anderes als unter iOS gemacht.\r\n\r\n",
new List<AppFlavor> { AppFlavor.MeinKonrad },
new List<DevicePlatform> { DevicePlatform.Android }
},
{
new Version(3, 0, 0, 119),
"In Mein konrad unter iOS in 119 was anderes als unter Droid gemacht.\r\n\r\n",
new List<AppFlavor> { AppFlavor.MeinKonrad },
new List<DevicePlatform> { DevicePlatform.iOS }
},
{
new Version(3, 0, 120),
"Verbesserung: Keine Fehler mehr beim schnellen Tippen.\r\n" +
"Offlineanzeige Stationen/ Räderinfo.\r\n\r\n"
},
{
new Version(3, 0, 121),
"3.0.121 verbessert.\r\n\r\n"
} });
Assert.AreEqual(
"<p><b>3.0.0.115</b><br/>Benutzeroberfläche verbessert.\r\n\r\n</p>" +
"<p><b>3.0.0.117</b><br/>iOS Implementierungen verbessert.\r\n\r\n</p>" +
"<p><b>3.0.0.119</b><br/>In Mein konrad unter iOS in 119 was anderes als unter Droid gemacht.\r\n\r\n</p>" +
"<p><b>3.0.120</b><br/>Verbesserung: Keine Fehler mehr beim schnellen Tippen.\r\nOfflineanzeige Stationen/ Räderinfo.\r\n\r\n</p>",
WhatsNewViewModel.GetWhatNextHtmlText(whatsNew.WhatsNewText));
}
}
}