public void GivenGetDataWhenDescendingIsFalseByFirstNameThenNullReferenceException(int sessionNumber, bool descending)
        {
            //Arrange
            AverageScoreForEachSpecialtyReport averageScoreForEachSpecialtyReport = new AverageScoreForEachSpecialtyReport(sessionNumber, x => x.AverageExamValue, descending);

            //Assert
            Assert.That(() => averageScoreForEachSpecialtyReport.GetData(), Throws.TypeOf <NullReferenceException>());
        }
        public void GivenGetDataHeaderTest()
        {
            //Arrnge
            AverageScoreForEachSpecialtyReport averageScoreForEachSpecialtyReport = new AverageScoreForEachSpecialtyReport(1, x => x.AverageExamValue, true);
            IEnumerable <string> expectedGetDataHeader = new List <string>
            {
                "SessionNumber", "SpecialtiesName", "AverageExamValue"
            };

            //Act
            var actualGetDataHeader = averageScoreForEachSpecialtyReport.GetDataHeader();

            //Assert
            Assert.AreEqual(expectedGetDataHeader, actualGetDataHeader);
        }
        public void SaveToXLSXTestWhenAverageScoreForEachSpecialtyReport(int sessionNumber, bool descending)
        {
            //Arrange
            var     location    = System.Reflection.Assembly.GetExecutingAssembly().Location;
            var     path        = Path.GetDirectoryName(location);
            IReport report      = new AverageScoreForEachSpecialtyReport(sessionNumber, x => x.AverageExamValue, descending);
            bool    fileIsExist = false;

            //Act
            Excel excel = new Excel(path + "\\Excel\\", "AverageScoreSpecialtyReport");

            excel.SaveToXLSX(report);
            if (File.Exists(path + "\\Excel\\" + "AverageScoreSpecialtyReport.xlsx"))
            {
                fileIsExist = true;
            }

            //Assert
            Assert.IsTrue(fileIsExist);
        }
        public void GivenGetDataWhenDescendingIsFalseByAverageExamValue(int sessionNumber, bool descending)
        {
            //Arrange
            AverageScoreForEachSpecialtyReport  averageScoreForEachSpecialtyReport = new AverageScoreForEachSpecialtyReport(sessionNumber, x => x.AverageExamValue, descending);
            IEnumerable <IEnumerable <string> > expectedGetData = new List <List <string> >()
            {
                new List <string> {
                    "1", "Programmer", "47,875"
                },
                new List <string> {
                    "1", "Tester", "48,1875"
                }
            };

            //Act
            IEnumerable <IEnumerable <string> > actualGetData = averageScoreForEachSpecialtyReport.GetData();

            //Assert
            Assert.AreEqual(expectedGetData, actualGetData);
        }