示例#1
0
        public async Task Execute(IJobExecutionContext context)
        {
            _logger.Info("Start StaticJob.Execute()");
            try
            {
                IAppSettings       appSettings       = new AppSettings("appSettings.json");
                IJsonSerializer    jsonSerializer    = new JsonSerializer();
                IRestClientFactory restClientFactory = new RestClientFactory();
                var serverConnector = new ServerConnector(
                    null,
                    appSettings,
                    jsonSerializer,
                    restClientFactory);

                var stableCollector =
                    new StableDeviceCollector(
                        new CpuCollector(null),
                        new MemoryCollector(null),
                        new NetworkCollector(null),
                        new DriveCollector(null),
                        new OsCollector(null),
                        new SoftwareCollector(null));

                var stableDeviceInfo = stableCollector.Read();

                await serverConnector.Send(await stableDeviceInfo);
            }
            catch (Exception ex)
            {
                _logger.Error($"StaticJob.Execute(): {ex.Message}");
                _logger.Error($"Stack Trace: {ex.StackTrace}");
            }
        }
        public async Task Read_HasAllProperties()
        {
            var collector = new StableDeviceCollector(
                new Mock <ICpuCollector>().Object,
                new Mock <IMemoryCollector>().Object,
                new Mock <INetworkCollector>().Object,
                new Mock <IDriveCollector>().Object,
                new Mock <IOsCollector>().Object);

            var info = await collector.Read();

            Assert.Equal(5, info.GetPublicPropertyCount());
        }