public void ExportAllJournalsWithNullStreamThrowsArgumentNullException()
        {
            // Arrange
            var journalsExport = new JournalsExport(Mock.Of<IJournalRepository>());
            Stream nullStream = null;

            // Act

            // Assert
            Assert.Throws<ArgumentNullException>(() => journalsExport.ExportAllJournals(nullStream));
        }
        public void ExportAllJournalsExportAllJournalsInCorrectCsvFormat()
        {
            // Arrange
            var mockJournalRepository = new Mock<IJournalRepository>();
            mockJournalRepository.Setup(j => j.AllIncluding(It.IsAny<Expression<Func<Journal, object>>[]>())).Returns(CreateJournals());

            var journalsExport = new JournalsExport(mockJournalRepository.Object);
            var memoryStream = new MemoryStream();

            // Act
            journalsExport.ExportAllJournals(memoryStream);

            // Assert
            var csvContent = Encoding.Default.GetString(memoryStream.ToArray());
            Assert.Equal(ExpectedJournalsCsv, csvContent);
        }