Exemplo n.º 1
0
        public void AddPingCheckTest()
        {
            // Добавим проверку ping
            var account    = TestHelper.GetTestAccount();
            var component  = account.CreateTestApplicationComponent();
            var dispatcher = TestHelper.GetDispatcherClient();

            var data = new AddPingUnitTestRequestData()
            {
                ComponentId   = component.Id,
                SystemName    = "Ping_" + Guid.NewGuid(),
                PeriodSeconds = 600,
                ErrorColor    = UnitTestResult.Alarm,
                Host          = Guid.NewGuid() + ".ru",
                TimeoutMs     = 1000,
                Attemps       = 1
            };
            var response = dispatcher.AddPingUnitTest(account.Id, data);

            var result = response.Data;

            // Проверим параметры созданной проверки
            Assert.Equal(data.ComponentId, result.ComponentId);
            Assert.Equal(data.SystemName, result.SystemName);
            Assert.NotNull(result.DisplayName);
            Assert.Equal(data.PeriodSeconds, result.PeriodSeconds);
            Assert.Equal(data.ErrorColor, result.ErrorColor);
            Assert.Equal(data.Host, result.Host);
            Assert.Equal(data.TimeoutMs, result.TimeoutMs);
            Assert.Equal(data.Attemps, result.Attemps);
        }
Exemplo n.º 2
0
        public AddPingUnitTestResponse AddPingUnitTest(Guid accountId, AddPingUnitTestRequestData data)
        {
            var request = GetRequest <AddPingUnitTestRequest>(accountId);

            request.Data = data;
            var dispatcher = DispatcherHelper.GetDispatcherService();

            return(dispatcher.AddPingUnitTest(request));
        }
Exemplo n.º 3
0
        public UnitTest AddPingUnitTest(Guid accountId, AddPingUnitTestRequestData data)
        {
            var unitTestCache = GetOrCreateUnitTest(accountId, new GetOrCreateUnitTestRequestData()
            {
                UnitTestTypeId = SystemUnitTestTypes.PingTestType.Id,
                ComponentId    = data.ComponentId,
                SystemName     = data.SystemName,
                DisplayName    = data.DisplayName
            });

            using (var unitTest = AllCaches.UnitTests.Write(unitTestCache))
            {
                unitTest.PeriodSeconds = data.PeriodSeconds;
                unitTest.ErrorColor    = data.ErrorColor;
                unitTest.NextDate      = DateTime.Now;
                unitTest.BeginSave();
                unitTest.WaitSaveChanges(TimeSpan.FromSeconds(30));
            }

            var accountDbContext = Context.GetAccountDbContext(accountId);
            var repository       = accountDbContext.GetUnitTestRepository();
            var unitTestObj      = repository.GetById(unitTestCache.Id);

            if (unitTestObj.PingRule == null)
            {
                unitTestObj.PingRule = new UnitTestPingRule()
                {
                    UnitTest = unitTestObj
                }
            }
            ;

            unitTestObj.PingRule.Host      = data.Host;
            unitTestObj.PingRule.TimeoutMs = data.TimeoutMs;
            unitTestObj.PingRule.Attemps   = data.Attemps;

            accountDbContext.SaveChanges();

            return(unitTestObj);
        }