public void TestBraille() { //setup Encoding enc = RoboBrailleProcessor.GetEncodingByCountryCode((Language)Enum.Parse(typeof(Language), language, true)); resultPath = InputSourceRepository.GetTestResultDirectory() + @"\Braille-" + language + "-" + contraction + "-" + format; Directory.CreateDirectory(resultPath); InputSourceRepository isr = new InputSourceRepository(); File.WriteAllBytes(brailleTest, enc.GetBytes(isr.GetTestForLanguage(language))); PageNumbering pn = PageNumbering.none; if (((OutputFormat)Enum.Parse(typeof(OutputFormat), format, true)).Equals(OutputFormat.Pef)) { charsPerLine = new Random().Next(25, 33); linesPerPage = new Random().Next(25, 33); switch (new Random().Next(0, 2)) { case 0: pn = PageNumbering.none; break; case 1: pn = PageNumbering.left; break; case 2: pn = PageNumbering.right; break; default: break; } } BrailleJob brj = new BrailleJob() { Id = Guid.NewGuid(), FileContent = File.ReadAllBytes(brailleTest), UserId = Guid.Parse("d2b97532-e8c5-e411-8270-f0def103cfd0"), FileExtension = ".txt", FileName = "testBraille", MimeType = "plaint/text", Status = JobStatus.Started, SubmitTime = DateTime.Now, DownloadCounter = 0, InputFileHash = new byte[8], BrailleLanguage = (Language)Enum.Parse(typeof(Language), language, true), BrailleFormat = BrailleFormat.sixdot, CharactersPerLine = charsPerLine, LinesPerPage = linesPerPage, Contraction = (BrailleContraction)Enum.Parse(typeof(BrailleContraction), contraction, true), ConversionPath = ConversionPath.texttobraille, OutputFormat = (OutputFormat)Enum.Parse(typeof(OutputFormat), format, true), PageNumbering = pn }; if (language == "daDK") { switch (contraction) { case "small": contraction = "Lille"; break; case "large": contraction = "Grade2"; break; case "full": contraction = "Grade1"; break; default: break; } } if (language == "nnNO") { switch (contraction) { case "level0": contraction = "Grade1"; break; case "level1": contraction = "Kortskrift1"; break; case "level2": contraction = "Kortskrift2"; break; default: break; } language = "nbNO"; } string destFile = Guid.NewGuid().ToString() + ".txt"; SensusRequest sr = new SensusRequest() { Process = "Braille", SubProcess = contraction, Option = format, Language = language.ToLowerInvariant().Insert(2, "-"), Prefix = "", RequesterID = "sensus-test", FTPServer = "2.109.50.19", FTPUser = "******", FTPPassword = "******", SourcePath = brailleTest, DestinationFile = destFile }; //act var apiTask = Task.Run(() => WebAPICall(brj)); //var ftpTask = Task.Run(() => FTPCall(sr)); //Task.WaitAll(new Task[] { apiTask, ftpTask }); byte[] apiRes = apiTask.Result; //byte[] ftpRes = ftpTask.Result; //assert //NUnit.Framework.Assert.IsNotNull(ftpRes); //string expected = enc.GetString(ftpRes).Trim(); NUnit.Framework.Assert.IsNotNull(apiRes); string result = enc.GetString(apiRes).Trim(); //byte assertion fails because the files are not the same encoding //NUnit.Framework.Assert.AreEqual(ftpRes, apiRes); //NUnit.Framework.Assert.AreEqual(expected,result); }
public void TestAudio() { //setup Language lang = (Language)Enum.Parse(typeof(Language), language, true); resultPath = InputSourceRepository.GetTestResultDirectory() + @"\Audio-" + language; Directory.CreateDirectory(resultPath); InputSourceRepository isr = new InputSourceRepository(); File.WriteAllBytes(audioTest, RoboBrailleProcessor.GetEncodingByCountryCode(lang).GetBytes(isr.GetTestForLanguage(language))); AudioJob auj = new AudioJob() { Id = Guid.NewGuid(), FileContent = File.ReadAllBytes(audioTest), UserId = Guid.Parse("d2b97532-e8c5-e411-8270-f0def103cfd0"), FileExtension = ".txt", FileName = "testAudio", MimeType = "plaint/text", Status = JobStatus.Started, SubmitTime = DateTime.Now, DownloadCounter = 0, InputFileHash = new byte[8], AudioLanguage = lang, FormatOptions = AudioFormat.Mp3, SpeedOptions = AudioSpeed.Normal, VoicePropriety = new VoicePropriety[] { VoicePropriety.None } }; string destFile = Guid.NewGuid().ToString() + ".txt"; SensusRequest sr = new SensusRequest() { Process = "MP3", Option = "", // + ++ +++ - -- --- Language = language.ToLowerInvariant().Insert(2, "-"), Gender = "", Age = "", Prefix = "", RequesterID = "sensus-test", FTPServer = "2.109.50.19", FTPUser = "******", FTPPassword = "******", SourcePath = audioTest, DestinationFile = destFile }; //act var apiTask = Task.Run(() => WebAPICall(auj)); var ftpTask = Task.Run(() => FTPCall(sr)); Task.WaitAll(new Task[] { apiTask, ftpTask }); byte[] apiRes = apiTask.Result; byte[] ftpRes = ftpTask.Result; //assert NUnit.Framework.Assert.IsNotNull(ftpRes); //string expected = RoboBrailleProcessor.GetEncodingByCountryCode((Language)Enum.Parse(typeof(Language), language, true)).GetString(ftpRes).Trim(); //string result = Encoding.UTF8.GetString(apiRes).Trim(); //byte assertion fails because the files are not the same encoding File.WriteAllBytes(resultPath + @"\api.mp3", apiRes); File.WriteAllBytes(resultPath + @"\ftp.mp3", ftpRes); NUnit.Framework.Assert.AreEqual(ftpRes, apiRes); //NUnit.Framework.Assert.AreEqual(expected, result); }