AnalysisTests.cs 2.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. using System.IO;
  2. using System.Linq;
  3. using memoQAnalysis;
  4. using Xunit;
  5. namespace memoQAnalysisTests
  6. {
  7. public class AnalysisTests
  8. {
  9. private const string MainTestFile = "./testFiles/utf8.csv";
  10. private const string UTF16TestFile = "./testFiles/utf16.csv";
  11. private const string UTF16NoHeaderTestFile = "./testFiles/utf16NoHeader.csv";
  12. [Fact]
  13. public void ReadAnalysisUTF8Comma()
  14. {
  15. var test = new Analysis(MainTestFile);
  16. Assert.Equal(3, test.Data.Count);
  17. }
  18. [Fact]
  19. public void ReadAnalysisUTF16Semicolon()
  20. {
  21. var test = new Analysis(UTF16TestFile, ";");
  22. Assert.Equal(3, test.Data.Count);
  23. }
  24. [Fact]
  25. public void ReadAnalysisUTF16SemicolonNoHeader()
  26. {
  27. var test = new Analysis(UTF16NoHeaderTestFile, ";");
  28. Assert.Equal(3, test.Data.Count);
  29. }
  30. [Fact]
  31. public void WordsToTranslateWithoutRepetitions()
  32. {
  33. var test = new Analysis(MainTestFile);
  34. Assert.Equal(0, test.WordsToTranslateWithoutRepetitions());
  35. }
  36. [Fact]
  37. public void WordsToTranslateWithRepetitions()
  38. {
  39. var test = new Analysis(MainTestFile);
  40. Assert.Equal(601, test.WordsToTranslateWithRepetitions());
  41. }
  42. [Fact]
  43. public void ReadAnalysisFromBytes()
  44. {
  45. var data = File.ReadAllBytes(UTF16TestFile);
  46. var test = new Analysis(data);
  47. Assert.Equal(3, test.Data.Count);
  48. }
  49. [Fact]
  50. public void TotalWords()
  51. {
  52. var test = new Analysis(MainTestFile);
  53. var total = test.Data.Sum(x => x.TotalWords);
  54. var originalFirstFile = test.Data.FirstOrDefault();
  55. Assert.NotNull(originalFirstFile);
  56. originalFirstFile.NinentyFiveNineWords = 1050;
  57. var expectedTotal = total + 1050;
  58. var newTotal = test.Data.Sum(x => x.TotalWords);
  59. Assert.Equal(expectedTotal, newTotal);
  60. }
  61. [Fact]
  62. public void ReadModifySaveCheck()
  63. {
  64. var test = new Analysis(MainTestFile);
  65. var originalFirstFile = test.Data.FirstOrDefault();
  66. Assert.NotNull(originalFirstFile);
  67. originalFirstFile.NinentyFiveNineWords = 1050;
  68. var path = "testSave.csv";
  69. test.Save(path);
  70. var readTest = new Analysis(path);
  71. var readFirstFile = readTest.Data.FirstOrDefault();
  72. Assert.NotNull(readFirstFile);
  73. Assert.Equal(originalFirstFile.NinentyFiveNineWords, readFirstFile.NinentyFiveNineWords);
  74. File.Delete(path);
  75. }
  76. }
  77. }