public void BSP2_Aufgabe_016()
{
Random generator = new Random();
int anzahlDokumenteGescanned = generator.Next(101, 5000);
// 1
VirenScanner vs = new VirenScanner();
vs.WertSetzen<string>("lizenzSchlüssel", "keineLIZENZ");
vs.WertSetzen<int>("anzahlDokumenteGescanned", anzahlDokumenteGescanned);
vs.Lizenzieren();
Assert.IsTrue((bool)vs.WertAuslesen("virusGefunden"), "Ungültiger Wert für 'virusGefunden'. Bitte 'Lizenzieren()' kontrollieren!");
// 2
using (StringWriter sw = new StringWriter())
{
Console.SetOut(sw);
anzahlDokumenteGescanned = generator.Next(10, 99);
vs = new VirenScanner();
vs.WertSetzen<string>("lizenzSchlüssel", "keineLIZENZ");
vs.WertSetzen<int>("anzahlDokumenteGescanned", anzahlDokumenteGescanned);
vs.Lizenzieren();
StringBuilder sb = new StringBuilder();
for (int i = anzahlDokumenteGescanned; i > 0; i--)
{
sb.AppendLine(vs.WertAuslesen("lizenzSchlüssel").ToString());
}
Assert.IsTrue(sw.ToString() == sb.ToString(),
string.Format("Schleifenausgabe bei lizenzSchlüssel '{0}', anzahlDokumenteGescanned '{1}' falsch!\nBitte 'Lizenzieren()' kontrollieren!",
vs.WertAuslesen("lizenzSchlüssel"), vs.WertAuslesen("anzahlDokumenteGescanned")));
}
// 3
using (StringWriter sw = new StringWriter())
{
Console.SetOut(sw);
anzahlDokumenteGescanned = generator.Next(109, 999);
vs = new VirenScanner();
vs.WertSetzen<string>("lizenzSchlüssel", "asdf");
vs.WertSetzen<int>("anzahlDokumenteGescanned", anzahlDokumenteGescanned);
vs.Lizenzieren();
StringBuilder sb = new StringBuilder();
for (int i = anzahlDokumenteGescanned; i > 0; i--)
{
sb.AppendLine(vs.WertAuslesen("lizenzSchlüssel").ToString());
}
Assert.IsTrue(sw.ToString() == sb.ToString(),
string.Format("Schleifenausgabe bei lizenzSchlüssel '{0}', anzahlDokumenteGescanned '{1}' falsch!\nBitte 'Lizenzieren()' kontrollieren!",
vs.WertAuslesen("lizenzSchlüssel"), vs.WertAuslesen("anzahlDokumenteGescanned")));
}
}