Exemplo n.º 1
0
        private void Crea_Richiesta_R1_Con_M1_e_M2_revocato_e_riassegnato_e_M1_revocato_e_M2_in_viaggio(out IEnumerable <SituazioneMezzo> expected, out IEnumerable <RichiestaAssistenza> richieste)
        {
            var richiesta = new RichiestaAssistenza()
            {
                Codice = "R1",
            };
            var richiestaSubentrata = new RichiestaAssistenza()
            {
                Codice = "R2",
            };

            richieste = new RichiestaAssistenza[] { richiesta, richiestaSubentrata };
            var now = DateTime.Now;
            var componentePartenza1       = new ComponentePartenza("CF1", "M1");
            var componentePartenza2       = new ComponentePartenza("CF2", "M2");
            var istanteEventoAssegnazione = now.AddMinutes(-10);
            var eventoComposizione        = new ComposizionePartenze(richiesta, istanteEventoAssegnazione, "Fonte", false)
            {
                Componenti = new HashSet <ComponentePartenza>()
                {
                    componentePartenza1, componentePartenza2
                }
            };
            var istanteEventoUscitaM1 = now.AddMinutes(-7);
            var eventoUscitaM1        = new UscitaPartenza(richiesta, "M1", istanteEventoUscitaM1, "Fonte");
            var istanteEventoUscitaM2 = now.AddMinutes(-6);
            var eventoUscitaM2        = new UscitaPartenza(richiesta, "M2", istanteEventoUscitaM2, "Fonte");
            var istanteSulPostoM1     = now.AddMinutes(-4);
            var eventoSulPostoM1      = new ArrivoSulPosto(richiesta, "M1", istanteSulPostoM1, "Fonte");
            var istanteSganciatoM1    = now.AddMinutes(-2);
            var eventoSganciatoM1     = new RevocaPerRiassegnazione(richiesta, richiestaSubentrata, "M1", istanteSganciatoM1, "Fonte");
            var istanteRiassegnatoM1  = now.AddMinutes(-1);
            var eventoComposizione2   = new ComposizionePartenze(richiestaSubentrata, istanteRiassegnatoM1, "Fonte", true)
            {
                Componenti = new HashSet <ComponentePartenza>()
                {
                    componentePartenza1
                }
            };

            expected = new SituazioneMezzo[]
            {
                new SituazioneMezzo()
                {
                    Codice      = "M1",
                    CodiceStato = new InViaggio(istanteRiassegnatoM1, "R2").Codice,
                    CodiceRichiestaAssistenza = "R2",
                    IstanteAggiornamentoStato = istanteRiassegnatoM1
                },
                new SituazioneMezzo()
                {
                    Codice      = "M2",
                    CodiceStato = new InViaggio(istanteEventoUscitaM2, "R1").Codice,
                    CodiceRichiestaAssistenza = "R1",
                    IstanteAggiornamentoStato = istanteEventoUscitaM2
                },
            };
        }
Exemplo n.º 2
0
        public void Un_evento_di_riassegnazione_con_parametri_corretti_e_correttamente_creato()
        {
            var now    = DateTime.Now;
            var evento = new RevocaPerRiassegnazione(this.richiesta, this.richiestaSubentrata, "M1", now, "Fonte");

            Assert.That(evento.RichiestaSubentrata, Is.SameAs(this.richiestaSubentrata));
            Assert.That(evento.CodiceMezzo, Is.EqualTo("M1"));
            Assert.That(evento.Istante, Is.EqualTo(now));
            Assert.That(evento.CodiceFonte, Is.EqualTo("Fonte"));
        }