예제 #1
0
        public static void Main(string[] args)
        {
#if DEBUG
            //args = new string[] { "einzahlung", "400" };
            //args = new string[] { "auszahlung", "5,99", "Restaurantbesuche", "Schokobecher" };
            //args = new string[] { "auszahlung", "01.01.2015", "700", "Miete" };
            //args = new string[] { "einzahlung", "01.01.2015", "400" };
            //args = new string[] { "übersicht" };
            //args = new string[] { "übersicht", "12", "2014" };
            //args = new string[] { "übersicht", "01", "2015" };

            //Hinweis: 228,02 wird in Datum {01.02.0228 00:00:00} geparsed
            //args = new string[] { "auszahlung", "228,02", "Sonstiges" };


            //args = new string[] { "einzahlung", "01.01.2015", "700" };
            args = new string[] { "auszahlung", "01.01.2015", "700", "Miete" };
#endif

            Ui.Start();

            Interaktionen interaktionen = new Interaktionen(new TransaktionenRepository("Buchungsdatenbank.data"), new Benutzerabfragen(Ui.Benutzerabfrage_Kategorie_neu_anlegen));

            interaktionen.Start(
                args,
                onEinAuszahlung: (kassenbestand, aktuelleKategorie) => {
                Ui.Zeige_EinAuszahlung(kassenbestand, aktuelleKategorie);
            },
                onUebersicht: (kategorieUebersicht) => {
                Ui.Zeige_Uebersicht(kategorieUebersicht);
            }
                );

            Ui.Ende();
        }
예제 #2
0
        public void Start_Erwarte_Erfolg(string[] args, int sollLaenge)
        {
            Interaktionen interaktionen = new Interaktionen();
            var           result        = interaktionen.Start(args);

            Assert.That(result.Count, Is.EqualTo(sollLaenge));

            Assert.That(Status.Instanz.AktuelleSeitenummer.Lade(), Is.EqualTo(1));
        }
예제 #3
0
        public void Start_mit_leerer_Datei_Erwarte_Exception(string[] args, int x)
        {
            Interaktionen interaktionen = new Interaktionen();

            ArgumentException ex = Assert.Throws <ArgumentException>(() =>
            {
                var result = interaktionen.Start(args);
            });

            Assert.That(ex.Message, Is.EqualTo("Es wurden keine Datensätze übermittelt."));
            Assert.That(Status.Instanz.AktuelleSeitenummer.Lade(), Is.EqualTo(1));
        }
예제 #4
0
        public void NaechsteSeite_Erwarte_Erfolg(string[] args, int sollLaenge, List <CsvDatensatz> erwarteteListe)
        {
            Interaktionen interaktionen = new Interaktionen();

            interaktionen.Start(args);
            var result = interaktionen.Naechste_Seite();

            Assert.That(result.Count, Is.EqualTo(sollLaenge));
            Assert.That(Status.Instanz.AktuelleSeitenummer.Lade(), Is.EqualTo(2));

            for (int i = 0; i < result.Count; i++)
            {
                var element  = result.ElementAt(i);
                var erwartet = erwarteteListe.ElementAt(i);

                Assert.That(JsonConvert.SerializeObject(element), Is.EqualTo(JsonConvert.SerializeObject(erwartet)));
            }
        }
예제 #5
0
        private List <CsvDatensatz> HandleEvent(string entry)
        {
            Interaktionen       interatkion = new Interaktionen();
            List <CsvDatensatz> daten       = null;

            switch (entry)
            {
            case "F":
                daten = interatkion.ErsteSeite();
                break;

            case "N":
                daten = interatkion.NaechsteSeite();
                break;

            case "P":
                daten = interatkion.VorherigeSeite();
                break;

            case "L":
                daten = interatkion.LetzeSeite();
                break;

            case "E":
                Console.Clear();
                Console.WriteLine("Das Programm wird beendet.");
                Console.ReadKey();
                Environment.Exit(0);
                break;

            default:
                Console.Clear();
                Console.WriteLine("Ein Fehler ist aufgetreten.");
                Console.ReadKey();
                Environment.Exit(0);
                break;
            }

            return(daten);
        }
예제 #6
0
 public UiEvents(Interaktionen interaktionen)
 {
     _interaktionen = interaktionen;
 }
예제 #7
0
 public Prozess()
 {
     _view          = new Display();
     _interaktionen = new Interaktionen();
 }