Files
ChanSort/source/Test.Loader.LG/DvbsCleanup/TestDvbsCleanup.cs
2015-06-04 13:31:43 +02:00

61 lines
1.9 KiB
C#

using System.IO;
using ChanSort.Loader.LG;
using Microsoft.VisualStudio.TestTools.UnitTesting;
namespace Test.Loader.LG
{
[TestClass]
public class TestDvbsCleanup : TestBase
{
[TestMethod]
public void TestLM620S_WithSatChannels()
{
// "VitorMartinsAugusto"
this.GenerateTestFiles("DvbsCleanup/xxLM620S-ZE00001", false);
this.ExecuteTest("DvbsCleanup/xxLM620S-ZE00001");
}
[TestMethod]
public void TestLM860V_WithoutSatChannels()
{
// "PDA-User"
this.GenerateTestFiles("DvbsCleanup/xxLM860V-ZB99998", false);
this.ExecuteTest("DvbsCleanup/xxLM860V-ZB99998");
}
[TestMethod]
public void TestLM640T_WithBogusDvbsBlock()
{
// "OmarGadzhiev"
this.GenerateTestFiles("DvbsCleanup/xxLM640T-ZA00000", false);
this.ExecuteTest("DvbsCleanup/xxLM640T-ZA00000");
}
private void ExecuteTest(string modelAndBaseName, bool generateReferenceFile = false)
{
// copy required input and assertion files
DeploymentItem("ChanSort.Loader.LG\\ChanSort.Loader.LG.ini");
DeploymentItem("Test.Loader.LG\\" + modelAndBaseName + ".TLL.in");
DeploymentItem("Test.Loader.LG\\" + modelAndBaseName + ".TLL.out");
var baseName = Path.GetFileNameWithoutExtension(modelAndBaseName);
// load the TLL file
TllFileSerializerPlugin plugin = new TllFileSerializerPlugin();
var serializer = (TllFileSerializer)plugin.CreateSerializer(baseName + ".TLL.in");
serializer.IsTesting = true;
serializer.Load();
serializer.DataRoot.ApplyCurrentProgramNumbers();
// save TLL file and compare to reference file
serializer.CleanUpChannelData();
serializer.Save(tempFile);
if (generateReferenceFile)
File.Copy(tempFile, this.GetSolutionBaseDir() + "\\Test.Loader.LG\\" + modelAndBaseName + ".TLL.out", true);
else
AssertBinaryFileContent(tempFile, baseName + ".TLL.out");
}
}
}