public void CreateUpdateDelete_Pass()
        {
            string documentNumber  = $"test{Guid.NewGuid().ToString().Substring( 12 )}";
            string documentNumber2 = $"{documentNumber}2";
            var    date            = new DateTime(2019, 05, 11);

            //Create
            var dtoToInsert = new JournalEntryDto(m_tenantId, date, 0, "USD", documentNumber, $"{documentNumber} notes.");
            int num         = m_sut.InsertJournalEntry(dtoToInsert);

            Assert.True(num > 0, "failed on InsertJournalEntry");

            //Get
            JournalEntryDto journalEntry = m_sut.GetJournalEntry(m_tenantId, num);

            Assert.NotNull(journalEntry);
            Assert.Equal(m_tenantId, journalEntry.Tenant);
            Assert.Equal(date, journalEntry.Date);
            Assert.Equal("USD", journalEntry.Currency);
            Assert.Equal(documentNumber, journalEntry.DocumentNumber);
            Assert.Equal($"{documentNumber} notes.", journalEntry.PrivateNote);

            try {
                //Update
                var dtoToUpdate = new JournalEntryDto(m_tenantId, date, num, "EUR", documentNumber2, $"{documentNumber2} notes.");
                m_sut.UpdateJournalEntry(dtoToUpdate);
                JournalEntryDto updatedJournalEntry = m_sut.GetJournalEntry(m_tenantId, num);
                Assert.NotNull(updatedJournalEntry);
                Assert.Equal(m_tenantId, updatedJournalEntry.Tenant);
                Assert.Equal(date, updatedJournalEntry.Date);
                Assert.Equal("EUR", updatedJournalEntry.Currency);
                Assert.Equal(documentNumber2, updatedJournalEntry.DocumentNumber);
                Assert.Equal($"{documentNumber2} notes.", updatedJournalEntry.PrivateNote);
            }
            finally {
                //Cleanup
                m_sut.DeleteJournalEntry(m_tenantId, num);
                journalEntry = m_sut.GetJournalEntry(m_tenantId, num);
                Assert.Null(journalEntry);
            }
        }
        public JournalLineProviderTests()
        {
            m_sut                  = DependencyLoader.ServiceLocator.GetService <IJournalLineProvider>();
            m_tenantProvider       = DependencyLoader.ServiceLocator.GetService <ITenantProvider>();
            m_accountProvider      = DependencyLoader.ServiceLocator.GetService <IAccountProvider>();
            m_journalEntryProvider = DependencyLoader.ServiceLocator.GetService <IJournalEntryProvider>();

            m_journalDate = new DateTime(2019, 05, 11);
            m_tenantId    = m_tenantProvider.InsertTenant(new TenantDto(0, $"test tenant {Guid.NewGuid()}"));
            m_accountId   = m_accountProvider.InsertAccount(new AccountDto(m_tenantId, 0, "test account", 111));
            m_journalNum  = m_journalEntryProvider.InsertJournalEntry(new JournalEntryDto(
                                                                          m_tenantId, m_journalDate, 0, "USD", "test-doc-num", "test-doc-notes"
                                                                          ));
        }