Beispiel #1
0
        public void TestListenoperationen()
        {
            var mitarbeiter1 = new Mitarbeiter(new Person("1", "Mr.", "John", "Doe"), "Marketing");
            var mitarbeiter2 = new Mitarbeiter(new Person("2", "Ms.", "Jane", "Smith"), "Entwicklung");

            var mitarbeiterListe = new MitarbeiterListe();

            mitarbeiterListe.Add(mitarbeiter1);
            mitarbeiterListe.Add(mitarbeiter2);

            Assert.AreEqual(2, mitarbeiterListe.Count, "Anzahl nach dem Hinzufügen");
            Assert.AreEqual(mitarbeiter1, mitarbeiterListe.First, "Mitarbeiter an erster Position");
            Assert.AreEqual("1 / 2", mitarbeiterListe.Info, "Info");
            Assert.AreEqual(mitarbeiter2, mitarbeiterListe.Next, "Mitarbeiter an nächster Position");
            Assert.AreEqual("2 / 2", mitarbeiterListe.Info, "Info");
            Assert.AreEqual(mitarbeiter2, mitarbeiterListe.Next, "Mitarbeiter an nochmaliger nächster Position");
            Assert.AreEqual("2 / 2", mitarbeiterListe.Info, "Info");
            Assert.AreEqual(mitarbeiter1, mitarbeiterListe.Previous, "Mitarbeiter an vorheriger Position");
            Assert.AreEqual("1 / 2", mitarbeiterListe.Info, "Info");
            Assert.AreEqual(mitarbeiter1, mitarbeiterListe.Previous, "Mitarbeiter an nochmaliger vorheriger Position");
            Assert.AreEqual("1 / 2", mitarbeiterListe.Info, "Info");
            Assert.AreEqual(mitarbeiter2, mitarbeiterListe.Last, "Mitarbeiter an letzter Position");
            Assert.AreEqual("2 / 2", mitarbeiterListe.Info, "Info");
            Assert.AreEqual(mitarbeiter2, mitarbeiterListe.Current, "Mitarbeiter an aktueller Position");
            Assert.AreEqual("2 / 2", mitarbeiterListe.Info, "Info");
            Assert.IsNotNull(mitarbeiterListe.New, "Mitarbeiter an neuer Position");
            Assert.AreEqual(3, mitarbeiterListe.Count, "Anzahl nach dem Hinzufügen eines neuen Mitarbeiters");

            Assert.AreEqual("3 / 3", mitarbeiterListe.Info, "Info");
            var ma = mitarbeiterListe.First;

            Assert.AreEqual("1 / 3", mitarbeiterListe.Info, "Info");
        }
Beispiel #2
0
        public void TestSpeichereMitarbeiter()
        {
            var zugriffDatenquelleMock = new Mock <IZugriffDatenquelle>();
            var repository             = new Repository(zugriffDatenquelleMock.Object);

            var mitarbeiterListe = new MitarbeiterListe();

            repository.speichereAlleMitarbeiter(mitarbeiterListe);
            zugriffDatenquelleMock.Verify(mock => mock.speichereAlleMitarbeiter(mitarbeiterListe), Times.Once(), "Zugriff Datenquelle nicht aufgerufen");
        }
        /// <summary>
        /// Speichert eine Liste der Mitarbeiter in der XML-Datei.
        /// </summary>
        /// <param name="mitarbeiterListe">Eine <see cref="MitarbeiterListe"/>.</param>
        /// <exception cref="ArgumentNullException">Wird ausgelöst, wenn der Parameter <paramref name="mitarbeiterListe"/> <see langword="null"/> ist.</exception>
        public void speichereAlleMitarbeiter(MitarbeiterListe mitarbeiterListe)
        {
            Pruefung.ArgumentNichtNull(mitarbeiterListe, "mitarbeiterListe");

            var serializer = new XmlSerializer(typeof(MitarbeiterListe));

            using (var xmlWriter = new XmlTextWriter(dateiname_, Encoding.UTF8)) {
                serializer.Serialize(xmlWriter, mitarbeiterListe);
            }
        }
        public void TestMethode()
        {
            var zugriffXml       = new ZugriffXml(@"mitarbeiter_test.xml");
            var mitarbeiterListe = new MitarbeiterListe();

            mitarbeiterListe.Add(new Mitarbeiter(new Person("1", "Mr", "John", "Doe"), "Entwicklung"));
            zugriffXml.speichereAlleMitarbeiter(mitarbeiterListe);

            var mitarbeiter = zugriffXml.gibAlleMitarbeiter();

            Assert.AreEqual(1, mitarbeiter.Count, "Anzahl der Mitarbeiter");
        }
        /// <summary>
        /// Liest eine Liste aller Mitarbeiter aus der XML-Datei.
        /// </summary>
        /// <returns>Eine <see cref="MitarbeiterListe"/>.</returns>
        public MitarbeiterListe gibAlleMitarbeiter()
        {
            var serializer = new XmlSerializer(typeof(MitarbeiterListe));

            if (File.Exists(dateiname_) == false)
            {
                var mitarbeiterListe = new MitarbeiterListe();
                mitarbeiterListe.Add(new Mitarbeiter());
                return(mitarbeiterListe);
            }
            using (var xmlReader = new XmlTextReader(dateiname_)) {
                return(( MitarbeiterListe )serializer.Deserialize(xmlReader));
            }
        }
Beispiel #6
0
        /// <summary>
        /// Erstellt eine neue Instanz der <see cref="Presenter"/>-Klasse.
        /// </summary>
        /// <param name="view">Eine <see cref="IView"/>-Implementierung zur Darstellung eines Formulars.</param>
        /// <exception cref="ArgumentNullException">Wird ausgelöst, wenn ein Parameter <see langword="null"/> ist.</exception>
        public Presenter(IView view)
        {
            Pruefung.ArgumentNichtNull(view, "view");

            kernel_ = new StandardKernel();
            kernel_.Bind <IZugriffDatenquelle>().To <ZugriffXml>();
            kernel_.Bind <IRepository>().To <Repository>();
            kernel_.Bind <IView>().ToConstant(view);

            repository_            = kernel_.Get <IRepository>();
            view_                  = kernel_.Get <IView>();
            view_.PropertyChanged += ViewPropertyChanged;

            mitarbeiterListe_ = repository_.gibAlleMitarbeiter();
            if (mitarbeiterListe_.Count > 0)
            {
                aktualisiereMitarbeiter(mitarbeiterListe_.First);
            }
        }
Beispiel #7
0
        public void TestSerializationInfo()
        {
            var serializationInfo = new SerializationInfo(typeof(MitarbeiterListe), new FormatterConverter());

            serializationInfo.AddValue("Mitarbeiter", new List <Mitarbeiter> {
                new Mitarbeiter(new Person(), "Entwicklung")
            });
            var mitarbeiterListe = new MitarbeiterListe(serializationInfo, new StreamingContext());

            Assert.AreEqual(1, mitarbeiterListe.Mitarbeiter.Count, "Anzahl der Mitarbeiter");
            Assert.AreEqual("Entwicklung", mitarbeiterListe.Mitarbeiter[0].Abteilung);

            var serializationInfoGelesen = new SerializationInfo(typeof(List <Mitarbeiter>), new FormatterConverter());

            mitarbeiterListe.GetObjectData(serializationInfoGelesen, new StreamingContext());

            var mitarbeiterGelesen = (List <Mitarbeiter>)serializationInfo.GetValue("Mitarbeiter", typeof(List <Mitarbeiter>));

            Assert.AreEqual(1, mitarbeiterGelesen.Count, "Anzahl gelesener Mitarbeiter");
            Assert.AreEqual("Entwicklung", mitarbeiterGelesen[0].Abteilung, "Abteilung des gelesenen Mitarbeiters");
        }
Beispiel #8
0
        /// <summary>
        /// Speichert alle Mitarbeiter.
        /// </summary>
        /// <param name="mitarbeiterListe">Die <see cref="MitarbeiterListe"/>.</param>
        /// <exception cref="ArgumentNullException">Wird ausgelöst, wenn der Parameter <paramref name="mitarbeiterListe"/> <see langword="null"/> ist.</exception>
        public void speichereAlleMitarbeiter(MitarbeiterListe mitarbeiterListe)
        {
            Pruefung.ArgumentNichtNull(mitarbeiterListe, "mitarbeiterListe");

            zugriffDatenquelle_.speichereAlleMitarbeiter(mitarbeiterListe);
        }
 /// <summary>
 /// Speichert eine Liste der Mitarbeiter in einer Datenbank.
 /// </summary>
 /// <param name="mitarbeiterListe">Eine <see cref="MitarbeiterListe"/>.</param>
 /// <exception cref="NotImplementedException">Wird ausgelöst, weil kein Zugriff auf eine Datenbank existiert.</exception>
 public void speichereAlleMitarbeiter(MitarbeiterListe mitarbeiterListe)
 {
     throw new NotImplementedException();
 }
Beispiel #10
0
        public void TestLeererKonstruktor()
        {
            var mitarbeiterListe = new MitarbeiterListe();

            Assert.IsNotNull(mitarbeiterListe.Mitarbeiter, "Mitarbeiter");
        }