コード例 #1
0
        public void TestRegistraUtente()
        {
            Utente utente = new UtenteNormale
            {
                Nome        = "tizio",
                Cognome     = "caio",
                Email       = "*****@*****.**",
                LoginRemoto = true,
                Username    = "******"
            };

            utente.ImpostaPasswordDaOriginale("password");

            // Verifico che non esista
            Assert.IsNull(gestioneUtentiController.ValidaCredenziali("tizio", "password"));

            // Lo registro, e verifico che adesso esiste
            Assert.IsTrue(gestioneUtentiController.Registra(utente));
            IUtente utenteValidato = gestioneUtentiController.ValidaCredenziali("tizio", "password");

            Assert.IsNotNull(utenteValidato);

            // Mi assicuro che sia del tipo giusto
            Assert.IsInstanceOfType(utenteValidato, typeof(UtenteNormale), "L'utente è di tipo sbagliato");
        }
コード例 #2
0
        public void TestCerca()
        {
            Utente utente = new UtenteNormale
            {
                Nome        = "tizio",
                Cognome     = "caio",
                Email       = "*****@*****.**",
                LoginRemoto = true,
                Username    = "******"
            };

            utente.ImpostaPasswordDaOriginale("password");

            // Lo registro, e verifico che adesso esiste
            Assert.IsTrue(gestioneUtentiController.Registra(utente));

            // Dovrebbe contenere Admin
            IList <IUtente> utenti = gestioneUtentiController.Cerca("dMin");

            Assert.AreEqual(utenti[0].Username, "admin");

            // Dovrebbe contenere tizio
            utenti = gestioneUtentiController.Cerca("@cAiO");
            Assert.AreEqual(utenti[0].Username, "tizio");
        }
コード例 #3
0
        private void btnCrea_Click(object sender, EventArgs e)
        {
            String error = validation();

            if (error != null)
            {
                MessageBox.Show("Il campo " + error + " non è corretto", "Inserimento dati non valido",
                                MessageBoxButtons.OK);
                return;
            }

            Utente utente;

            if (checkboxAmm.Checked)
            {
                utente = new Amministratore
                {
                    Nome        = inputNome.Text,
                    Cognome     = inputCognome.Text,
                    Email       = inputEmail.Text,
                    LoginRemoto = checkboxLoginRemoto.Checked,
                    Username    = inputUsername.Text
                }
            }
            ;
            else
            {
                utente = new UtenteNormale
                {
                    Nome        = inputNome.Text,
                    Cognome     = inputCognome.Text,
                    Email       = inputEmail.Text,
                    LoginRemoto = checkboxLoginRemoto.Checked,
                    Username    = inputUsername.Text
                }
            };
            utente.ImpostaPasswordDaOriginale(inputPassword.Text);
            bool res = Controller.Registra(utente);

            if (res)
            {
                this.ParentForm.DialogResult = DialogResult.Abort;
            }
            else
            {
                this.ParentForm.DialogResult = DialogResult.OK;
            }
        }
コード例 #4
0
        static void Main(string[] args)
        {
            //ISensore sensore = new MockSensore();
            ISensore sensore = new SensoreSeriale("COM10", 74880);
            //sensore.RicevitoriDatiSensore += dati => Console.WriteLine(String.Join(",", dati));

            // Creo il thread del sensore
            Thread threadSensore = new Thread(() => sensore.CicloPrincipale());

            threadSensore.Start();

            Utente utente = new UtenteNormale
            {
                Nome        = "tizio",
                Cognome     = "caio",
                Email       = "*****@*****.**",
                LoginRemoto = true,
                Username    = "******"
            };

            utente.ImpostaPasswordDaOriginale("password");

            if (File.Exists("test_server.db"))
            {
                File.Delete("test_server.db");
            }

            IGestioneUtentiController gestioneUtentiController = new GestioneUtentiController("test_server.db");

            gestioneUtentiController.Registra(utente);

            // Avvio il server della stazione
            ServerStazione server = new ServerStazione(sensore, gestioneUtentiController, SismioServer.CertificatoRisorsa.certificato, "passwordsismio");

            server.PortaServer = 8002;
            server.Avvia();
        }
コード例 #5
0
        static void Main()
        {
            // Inizializzo il sensore
            ISensore sensore = new MockSensore();
            //ISensore sensore = new SensoreSeriale("COM10", 74880);
            //sensore.RicevitoriDatiSensore += dati => Console.WriteLine(String.Join(",", dati));

            // Creo il thread del sensore e lo avvio
            Thread threadSensore = new Thread(() => sensore.CicloPrincipale());

            threadSensore.Name = "Thread Sensore";
            threadSensore.Start();

            IGestioneStazioniController stazioniController = new GestioneStazioniController(PERCORSO_DATABASE);

            Stazione stazione = new Stazione
            {
                Nome                   = "BolognaA1",
                Locazione              = "Bologna",
                IndirizzoDiRete        = IPAddress.Parse("127.0.0.1"),
                Porta                  = 8001,
                ImprontaChiavePubblica = "E2C9153221FE658AFDCEBE095EE5D2392AF8C4AE"
            };

            /*
             * // Inizializzo il gestore delle stazioni
             *
             * IGestioneStazioniController stazioniController = new GestioneStazioniController(PERCORSO_DATABASE);
             * stazioniController.Registra(stazione);
             *
             * stazione.Nome = "ReggioEmiliaA1";
             * stazione.Locazione = "Reggio Emilia";
             * stazione.IndirizzoDiRete = IPAddress.Parse("10.1.45.230");
             * stazione.Porta = 5555;
             *
             * stazioniController.Registra(stazione);*/

            // Inizializzo il gestore utenti

            IGestioneUtentiController gestioneUtentiController = new GestioneUtentiController(PERCORSO_DATABASE);
            AutenticazioneController  autenticazioneController = new AutenticazioneController(gestioneUtentiController);

            // Aggiungo l'utente tizio
            Utente utente = new UtenteNormale
            {
                Nome        = "tizio",
                Cognome     = "caio",
                Email       = "*****@*****.**",
                LoginRemoto = true,
                Username    = "******"
            };

            utente.ImpostaPasswordDaOriginale("password");
            if (gestioneUtentiController.ValidaCredenziali("tizio", "password") == null)
            {
                gestioneUtentiController.Registra(utente);
            }

            EventoSismico evento = new EventoSismico
            {
                Messaggio = "Frequenza",
                Priorita  = Priorita.Fatal,
                Stazione  = stazione,
                Tag       = "Frequenza",
                Timestamp = 1234
            };
            IStoricoController storicoController = new StoricoController(PERCORSO_DATABASE);

            storicoController.RegistraEvento(evento);

            GestoreEventi gestoreEventi = new GestoreEventi(storicoController);

            gestoreEventi.RicevitoriEventoSismico += sismico => Console.WriteLine(sismico);

            // Avvio il server della stazione
            ServerStazione server = new ServerStazione(sensore, gestioneUtentiController, Sismio.CertificatoResource.certificato, "passwordsismio");

            server.IndirizzoServer = "127.0.0.1";  // TODO: cambiare con il proprio locale ( tipo 192.168.1.105 )
            server.Avvia();

            CreatoreConnessioni creatore = new CreatoreConnessioni(stazioniController);
            SorgenteFactory     factory  = new SorgenteFactory(creatore, sensore, gestoreEventi);

            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);

            Form loginForm = new Login(autenticazioneController, gestioneUtentiController, stazioniController, storicoController, factory, gestoreEventi);

            Application.Run(loginForm);
        }