public void VersementEntreePlusSortiesAvecCca() { var source = new MockSourceRepository(); var destination = new MockDestinationRepository(); source.Sorties.Add(new SourceLine(1, "TEST 1", 1, 1, new Compte("111111"), new DateTime(2016, 11, 01), 1, false)); source.Sorties.Add(new SourceLine(2, "TEST 2", 2, 2, new Compte("222222"), new DateTime(2017, 04, 05), 2, true)); source.Sorties.Add(new SourceLine(3, "TEST 3", 3, 3, new Compte("333333"), new DateTime(2017, 04, 05), 2, false)); source.Entrees.Add(new SourceLine(1, "Capital social", 1000, 0, new Compte("101200"), new DateTime(2016, 10, 07), 1, false)); source.Entrees.Add(new SourceLine(2, "Facture apollo octobre 2016", 4680, 936, new Compte("622600"), new DateTime(2017, 01, 01), 2, false)); new ExtractCompta(source, destination).Execute(); destination.LinesBanque.Should().HaveCount(10) .And.Contain(a => a.Compte.Valeur == "111111" && a.Debit == 1 && a.Libelle == "TEST 1") .And.Contain(a => a.Compte.Valeur == Compte.TVA && a.Debit == 1 && a.Libelle == "TEST 1") .And.Contain(a => a.Compte.Valeur == Compte.BANQUE && a.Credit == 2 && a.Libelle == "TEST 1") .And.Contain(a => a.Compte.Valeur == Compte.COMPTE_COURANT && a.Debit == 10 && a.Libelle == Libelle.Virement) .And.Contain(a => a.Compte.Valeur == Compte.BANQUE && a.Credit == 10 && a.Libelle == Libelle.Virement) .And.Contain(a => a.Compte.Valeur == "101200" && a.Credit == 1000 && a.Libelle == "Capital social") .And.Contain(a => a.Compte.Valeur == Compte.BANQUE && a.Debit == 1000 && a.Libelle == "Capital social") .And.Contain(a => a.Compte.Valeur == "622600" && a.Credit == 4680 && a.Libelle == "Facture apollo octobre 2016") .And.Contain(a => a.Compte.Valeur == Compte.TVA_COLLECTEE && a.Credit == 936 && a.Libelle == "Facture apollo octobre 2016") .And.Contain(a => a.Compte.Valeur == Compte.BANQUE && a.Debit == 5616 && a.Libelle == "Facture apollo octobre 2016"); destination.LinesOD.Should().HaveCount(6) .And.Contain(a => a.Compte.Valeur == "222222" && a.Debit == 2 && a.Libelle == "TEST 2") .And.Contain(a => a.Compte.Valeur == Compte.TVA && a.Debit == 2 && a.Libelle == "TEST 2") .And.Contain(a => a.Compte.Valeur == Compte.COMPTE_COURANT && a.Credit == 4 && a.Libelle == "TEST 2") .And.Contain(a => a.Compte.Valeur == "333333" && a.Debit == 3 && a.Libelle == "TEST 3") .And.Contain(a => a.Compte.Valeur == Compte.TVA && a.Debit == 3 && a.Libelle == "TEST 3") .And.Contain(a => a.Compte.Valeur == Compte.COMPTE_COURANT && a.Credit == 6 && a.Libelle == "TEST 3"); destination.LinesOD[0].Libelle.Should().Be("TEST 2"); destination.LinesOD[1].Libelle.Should().Be("TEST 2"); destination.LinesOD[2].Libelle.Should().Be("TEST 2"); destination.LinesOD[3].Libelle.Should().Be("TEST 3"); destination.LinesOD[4].Libelle.Should().Be("TEST 3"); destination.LinesOD[5].Libelle.Should().Be("TEST 3"); destination.LinesBanque[0].Libelle.Should().Be("Capital social"); destination.LinesBanque[1].Libelle.Should().Be("Capital social"); destination.LinesBanque[2].Libelle.Should().Be("TEST 1"); destination.LinesBanque[3].Libelle.Should().Be("TEST 1"); destination.LinesBanque[4].Libelle.Should().Be("TEST 1"); destination.LinesBanque[5].Libelle.Should().Be("Facture apollo octobre 2016"); destination.LinesBanque[6].Libelle.Should().Be("Facture apollo octobre 2016"); destination.LinesBanque[7].Libelle.Should().Be("Facture apollo octobre 2016"); destination.LinesBanque[8].Libelle.Should().Be(Libelle.Virement); destination.LinesBanque[9].Libelle.Should().Be(Libelle.Virement); }
public void VersementSimpleEtVersementMultipleAvecCca() { var source = new MockSourceRepository(); var destination = new MockDestinationRepository(); source.Sorties.Add(new SourceLine(1, "TEST 1", 1, 1, new Compte("111111"), new DateTime(2017, 04, 05), 1, false)); source.Sorties.Add(new SourceLine(2, "TEST 2", 2, 2, new Compte("222222"), new DateTime(2017, 04, 05), 2, true)); source.Sorties.Add(new SourceLine(3, "TEST 3", 3, 3, new Compte("333333"), new DateTime(2017, 04, 05), 2, false)); source.Sorties.Add(new SourceLine(4, "TEST 4", 4, 4, new Compte("444444"), new DateTime(2017, 04, 05), 3, true)); source.Sorties.Add(new SourceLine(5, "TEST 5", 5, 5, new Compte("555555"), new DateTime(2017, 04, 05), 3, false)); source.Sorties.Add(new SourceLine(6, "TEST 6", 6, 6, new Compte("666666"), new DateTime(2017, 04, 05), 4, false)); source.Sorties.Add(new SourceLine(7, "TEST 7", 7, 0, new Compte("777777"), new DateTime(2017, 04, 05), 5, false)); new ExtractCompta(source, destination).Execute(); destination.LinesBanque.Should().HaveCount(12) .And.Contain(a => a.Compte.Valeur == "111111" && a.Debit == 1 && a.Libelle == "TEST 1") .And.Contain(a => a.Compte.Valeur == Compte.TVA && a.Debit == 1 && a.Libelle == "TEST 1") .And.Contain(a => a.Compte.Valeur == Compte.BANQUE && a.Credit == 2 && a.Libelle == "TEST 1") .And.Contain(a => a.Compte.Valeur == Compte.COMPTE_COURANT && a.Debit == 10 && a.Libelle == Libelle.Virement) .And.Contain(a => a.Compte.Valeur == Compte.BANQUE && a.Credit == 10 && a.Libelle == Libelle.Virement) .And.Contain(a => a.Compte.Valeur == Compte.COMPTE_COURANT && a.Debit == 18 && a.Libelle == Libelle.Virement) .And.Contain(a => a.Compte.Valeur == Compte.BANQUE && a.Credit == 18 && a.Libelle == Libelle.Virement) .And.Contain(a => a.Compte.Valeur == "666666" && a.Debit == 6 && a.Libelle == "TEST 6") .And.Contain(a => a.Compte.Valeur == Compte.TVA && a.Debit == 6 && a.Libelle == "TEST 6") .And.Contain(a => a.Compte.Valeur == Compte.BANQUE && a.Credit == 12 && a.Libelle == "TEST 6") .And.Contain(a => a.Compte.Valeur == "777777" && a.Debit == 7 && a.Libelle == "TEST 7") .And.Contain(a => a.Compte.Valeur == Compte.BANQUE && a.Credit == 7 && a.Libelle == "TEST 7"); destination.LinesOD.Should().HaveCount(12) .And.Contain(a => a.Compte.Valeur == "222222" && a.Debit == 2 && a.Libelle == "TEST 2") .And.Contain(a => a.Compte.Valeur == Compte.TVA && a.Debit == 2 && a.Libelle == "TEST 2") .And.Contain(a => a.Compte.Valeur == Compte.COMPTE_COURANT && a.Credit == 4 && a.Libelle == "TEST 2") .And.Contain(a => a.Compte.Valeur == "333333" && a.Debit == 3 && a.Libelle == "TEST 3") .And.Contain(a => a.Compte.Valeur == Compte.TVA && a.Debit == 3 && a.Libelle == "TEST 3") .And.Contain(a => a.Compte.Valeur == Compte.COMPTE_COURANT && a.Credit == 6 && a.Libelle == "TEST 3") .And.Contain(a => a.Compte.Valeur == "444444" && a.Debit == 4 && a.Libelle == "TEST 4") .And.Contain(a => a.Compte.Valeur == Compte.TVA && a.Debit == 4 && a.Libelle == "TEST 4") .And.Contain(a => a.Compte.Valeur == Compte.COMPTE_COURANT && a.Credit == 8 && a.Libelle == "TEST 4") .And.Contain(a => a.Compte.Valeur == "555555" && a.Debit == 5 && a.Libelle == "TEST 5") .And.Contain(a => a.Compte.Valeur == Compte.TVA && a.Debit == 5 && a.Libelle == "TEST 5") .And.Contain(a => a.Compte.Valeur == Compte.COMPTE_COURANT && a.Credit == 10 && a.Libelle == "TEST 5"); }
public void UnSeulVersementEnSortieGenereUnVirementBancaire() { var source = new MockSourceRepository(); var output = new MockDestinationRepository(); source.Sorties.Add(new SourceLine(1, "TEST", 10, 2, new Compte("123456"), new DateTime(2017, 04, 03), 1, false)); new ExtractCompta(source, output).Execute(); output.LinesBanque.Should().HaveCount(3) .And.Contain(a => a.Compte.Valeur == "123456" && a.Debit == 10 && a.Libelle == "TEST") .And.Contain(a => a.Compte.Valeur == Compte.TVA && a.Debit == 2 && a.Libelle == "TEST") .And.Contain(a => a.Compte.Valeur == Compte.BANQUE && a.Credit == 12 && a.Libelle == "TEST"); output.LinesOD.Should().BeEmpty(); }
public void VersementEntreeSimple() { var source = new MockSourceRepository(); var destination = new MockDestinationRepository(); source.Entrees.Add(new SourceLine(1, "Capital social", 1000, 0, new Compte("101200"), new DateTime(2016, 10, 07), 1, false)); source.Entrees.Add(new SourceLine(2, "Facture apollo octobre 2016", 4680, 936, new Compte("622600"), new DateTime(2016, 12, 02), 2, false)); new ExtractCompta(source, destination).Execute(); destination.LinesBanque.Should().HaveCount(5) .And.Contain(a => a.Compte.Valeur == "101200" && a.Credit == 1000 && a.Libelle == "Capital social") .And.Contain(a => a.Compte.Valeur == Compte.BANQUE && a.Debit == 1000 && a.Libelle == "Capital social") .And.Contain(a => a.Compte.Valeur == "622600" && a.Credit == 4680 && a.Libelle == "Facture apollo octobre 2016") .And.Contain(a => a.Compte.Valeur == Compte.TVA_COLLECTEE && a.Credit == 936 && a.Libelle == "Facture apollo octobre 2016") .And.Contain(a => a.Compte.Valeur == Compte.BANQUE && a.Debit == 5616 && a.Libelle == "Facture apollo octobre 2016"); }
public void PlusieurVersementEnSortieDontGenerespPlusieursUnVirement() { var source = new MockSourceRepository(); var output = new MockDestinationRepository(); source.Sorties.Add(new SourceLine(1, "TEST 1", 10, 2, new Compte("111111"), new DateTime(2017, 04, 05), 1, false)); source.Sorties.Add(new SourceLine(1, "TEST 2", 5, 1, new Compte("222222"), new DateTime(2017, 04, 05), 1, false)); new ExtractCompta(source, output).Execute(); output.LinesOD.Should().BeEmpty(); output.LinesBanque.Should().HaveCount(5) .And.Contain(a => a.Compte.Valeur == "111111" && a.Debit == 10 && a.Libelle == "TEST 1") .And.Contain(a => a.Compte.Valeur == Compte.TVA && a.Debit == 2 && a.Libelle == "TEST 1") .And.Contain(a => a.Compte.Valeur == "222222" && a.Debit == 5 && a.Libelle == "TEST 2") .And.Contain(a => a.Compte.Valeur == Compte.TVA && a.Debit == 1 && a.Libelle == "TEST 2") .And.Contain(a => a.Compte.Valeur == Compte.BANQUE && a.Credit == 18 && a.Libelle == Libelle.Virement); }