Пример #1
0
        public async void SearchTest()
        {
            var ng = new NowguaClient(ConnectionSettings);

            var Companies = await ng.Companies.SearchName("SEMAINTEX");

            Assert.NotNull(Companies);
            Assert.Empty(Companies);
        }
Пример #2
0
        public async void DownloadTest()
        {
            var    ng             = new NowguaClient(ConnectionSettings);
            string InterventionId = "59fb3ea8176d501c949306a8";
            var    intervention   = await ng.Interventions.DownloadReport(InterventionId);

            Assert.NotNull(intervention);
            File.WriteAllBytes("test.pdf", intervention);
        }
Пример #3
0
        public async void ConstructorTest()
        {
            var client = new NowguaClient(ConnectionSettings);

            Assert.NotNull(client.Users);
            Assert.NotNull(client.Files);
            Assert.NotNull(client.Interventions);
            Assert.NotNull(client.Sites);
            Assert.NotNull(client.WebHooks);
        }
Пример #4
0
        public async void SearchOnPublicTest()
        {
            var ng = new NowguaClient(ConnectionSettings);

            var Companies = await ng.Companies.SearchOnPublic("SEMAINTEX");

            Assert.NotNull(Companies);
            Assert.NotEmpty(Companies);
            Assert.True(Companies.Exists(s => s.Id == "59382cafb492ea18acbd9a79"));
        }
Пример #5
0
        public async void GetReportTest()
        {
            var    ng             = new NowguaClient(ConnectionSettings);
            string InterventionId = "5c474ddbaea3ff1728c0f0c5";
            var    intervention   = await ng.Interventions.Get(InterventionId);

            var interventionReport = await ng.Interventions.GetReport(InterventionId);

            Assert.NotNull(intervention);
            Assert.NotNull(interventionReport);
            //Assert.True(intervention.Report.Equals(interventionReport));
            Assert.Equal(intervention.Report.Pictures.Count, interventionReport.Pictures.Count);

            Assert.Equal(intervention.Report.Videos.Count, interventionReport.Videos.Count);
            Assert.Equal(intervention.Report.Instructions.Count, interventionReport.Instructions.Count);
        }
Пример #6
0
        public async void ScenarioTest()
        {
            var ng = new NowguaClient(ConnectionSettings);

            // Récupération du site
            string TransmetterNumber = "myt3";
            var    site = await ng.Sites.SearchTT(TransmetterNumber);

            // Création de l'intervention
            var interventionModel = new CreateInterventionModel(site[0].Id, 1, DateTime.Now, "Attention présence sur le site. Merci de contacter Mr Andre une fois arrivé sur place ...", "MemoCPGI");
            var interventionId    = await ng.Interventions.Create(interventionModel);

            if (interventionModel.MemoCogi != "")
            {
                var AddMemoCogi = await ng.Interventions.AddMemoCogi(interventionId, new InterventionCommentCreateModel { Message = interventionModel.MemoCogi });

                Assert.True(AddMemoCogi.result);
            }

            Assert.NotEmpty(interventionId);

            // Récupération de toutes les informations d'une intervention
            var intervention = await ng.Interventions.Get(interventionId);

            Assert.NotNull(intervention);
            Assert.Equal(site[0].Id, intervention.Site.Id);
            Assert.Equal(interventionModel.Commentaire, intervention.Commentaire);
            Assert.Equal(interventionModel.AlarmType.Id, intervention.AlarmType.Id);
            Assert.Equal(intervention.Status.Id, (int)InterventionStatus.WaitingForSecurityAgent);


            // Recherche d'intervention
            var interventions = await ng.Interventions.Search(i => i.Type(ng.Interventions.SearchTypeName)
                                                              .Query(q => q
                                                                     .Term(t => t.Site.TransmitterNumber, TransmetterNumber) &&
                                                                     q.Term(t => t.AlarmType.Id, 1)
                                                                     ).Take(1000)
                                                              );

            Assert.NotEmpty(interventions);
            Assert.True(interventions.Exists(i => i.Id == interventionId));

            var cancel = await ng.Interventions.Cancel(interventionId, new CancelInterventionModel { CancellationReason = "testdepuis lib" });

            Assert.True(cancel.result);
        }
Пример #7
0
        public async void ScenarioTest()
        {
            var ng = new NowguaClient(ConnectionSettings);

            string groupName = "NowGua-test";
            string groupId   = "5c2e04f1caaad304087ccaca";

            // Récupération des informations du groupe de site via le Nom
            var group = await ng.GroupsSites.GetByName(groupName);

            Assert.NotNull(group);
            Assert.Equal(groupName, group.Name);
            Assert.Equal(groupId, group.Id);

            // Récupération des informations du groupe de site via l'ID
            var group2 = await ng.GroupsSites.GetById(groupId);

            Assert.NotNull(group2);
            Assert.Equal(groupName, group2.Name);
            Assert.Equal(groupId, group2.Id);
        }
Пример #8
0
        public async void ScenarioTest()
        {
            var ng = new NowguaClient(ConnectionSettings);

            // Création d'un site
            var createModel = new CreateSiteModel("Site de Test", rd.Next(1000, 10000).ToString(), 2);

            // Adresse du site (obligatoire)
            createModel.Address = new Address("228 Boulevard Alsace-Lorraine, Rosny-sous-Bois, France", "", 48.882485, 2.494292);

            // Information de reconnaissance
            createModel.Recognition.Access           = "Moyen d'accès au site";
            createModel.Recognition.ExitInformations = "Information sur les issues du site";
            createModel.Notes = "Notes concernant le site";

            // Inscrutions d'intervention
            createModel.Instructions.Add(1, true); //L'agent doit t'il réaliser une ronde extérieure
            // ...

            // Ajout de contact
            createModel.Contacts.Add("Albert", "SMITH", "*****@*****.**", "+33600000000", true);             // reception automatique des rapports d'intervention du site
            createModel.Contacts.Add("Henry", "KESTREL", "*****@*****.**", "+33600000000", false);

            // Adresse du site (obligatoire)
            createModel.AccessInformation = new SiteAccessInformation(
                new List <LabelModel <int> >()
            {
                new LabelModel <int>(1, "Badge"), new LabelModel <int>(0, "Code")
            },
                "12345",
                null,
                "New Commentaire Test ! ",
                new LabelModel <int>(1, "embarque"),
                "referenceClef"
                );

            string siteId = await ng.Sites.Create(createModel);

            Assert.NotEmpty(siteId);

            // Récupération des informations du site
            var site = await ng.Sites.Get(siteId);

            Assert.NotNull(site);
            Assert.Equal(createModel.Name, site.Name);
            Assert.Equal(createModel.TransmitterNumber, site.TransmitterNumber);
            Assert.Equal(createModel.Address.Text, site.Address.Text);
            Assert.Equal(site.AccessInformation.Code, "12345");
            Assert.Equal(site.AccessInformation.KeyRef, "referenceClef");
            Assert.Equal(site.AccessInformation.Commentaire, "New Commentaire Test ! ");
            Assert.Equal(site.AccessInformation.LocationType.Label, "embarque");
            Assert.Equal(site.AccessInformation.Type.Count, 2);



            // Recherche d'un site via numéro télétransmeteur
            var site2 = await ng.Sites.SearchTT(site.TransmitterNumber);

            Assert.NotNull(site2);
            Assert.Equal(createModel.Name, site2[0].Name);
            Assert.Equal(createModel.TransmitterNumber, site2[0].TransmitterNumber);
            Assert.Equal(createModel.Address.Text, site2[0].Address.Text);

            // Modification du site
            EditSiteModel editSiteModel = await ng.Sites.Get(siteId);

            editSiteModel.Name = "Nouveau Nom";
            editSiteModel.TransmitterNumber = "T0123456789";
            editSiteModel.Address           = new Address("229 Boulevard Alsace-Lorraine, Rosny-sous-Bois, France", "", 48.882486, 2.494292);
            editSiteModel.AccessInformation = new SiteAccessInformation
                                              (
                new List <LabelModel <int> >()
            {
                new LabelModel <int>(0, "Code")
            },
                "54321",
                null,
                "edit Commentaire Test ! ",
                new LabelModel <int>(1, "embarque"),
                "referenceClef"
                                              );

            await ng.Sites.Edit(editSiteModel);

            site = await ng.Sites.Get(siteId);

            Assert.NotNull(site);
            Assert.Equal(editSiteModel.Name, site.Name);
            Assert.Equal(editSiteModel.TransmitterNumber, site.TransmitterNumber);
            Assert.Equal(editSiteModel.Address.Text, site.Address.Text);
            Assert.Equal(editSiteModel.AccessInformation.Code, site.AccessInformation.Code);
            Assert.Equal(editSiteModel.AccessInformation.KeyRef, site.AccessInformation.KeyRef);
            Assert.Equal(editSiteModel.AccessInformation.Commentaire, site.AccessInformation.Commentaire);
            Assert.Equal(editSiteModel.AccessInformation.LocationType.Id, 1);
            Assert.Equal(editSiteModel.AccessInformation.Type.Count, 1);


            // Get des logs
            var logs = await ng.Sites.GetLogs(siteId);

            Assert.NotNull(logs);
            Assert.NotEmpty(logs);

            // Suppression du site
            await ng.Sites.Delete(siteId);

            Thread.Sleep(3000);
            var sites = await ng.Sites.Search(s => s.Type(ng.Sites.SearchTypeName).Query(q => q.Bool(b => b.Must(m => m.Term("deleted", false)))).Take(1000));

            Assert.NotNull(sites);
            Assert.NotEmpty(sites);
            Assert.False(sites.Exists(s => s.Id == siteId));
        }