コード例 #1
0
        public async void ReturnsInfoFromContainerClient()
        {
            var info = new ContainerInfo()
            {
                ContainerPath      = "c://some//path",
                ContainerIPAddress = "127.0.0.1",
                State = ContainerState.Active,
            };

            info.MemoryStat.PrivateBytes    = 1024 * 1024 * 1024;
            info.CpuStat.TotalProcessorTime = new TimeSpan(1000000);

            containerClient.GetInfoAsync().ReturnsTask(info);

            var response = (LinkResponse)await handler.HandleAsync();

            Assert.Equal(info.State.ToString(), response.Info.State);
            Assert.Equal(info.ContainerIPAddress, response.Info.ContainerIp);
            Assert.Equal(info.ContainerPath, response.Info.ContainerPath);
            Assert.Equal(info.ContainerPath, response.Info.ContainerPath);
            Assert.Equal(info.MemoryStat.PrivateBytes, response.Info.MemoryStatInfo.TotalRss);
            Assert.Equal((ulong)info.CpuStat.TotalProcessorTime.Ticks * 100, response.Info.CpuStatInfo.Usage);
        }
コード例 #2
0
        public async void RequestsDestroyContainerFromManager()
        {
            container.GetInfoAsync().ReturnsTask(new ContainerInfo()
            {
                State = ContainerState.Active
            });

            var request = new DestroyRequest()
            {
                Handle = "containerHandle",
            };

            var handler = new DestroyRequestHandler(manager, request);

            var response = await handler.HandleAsync();

            manager.Received(1, x => x.DestroyContainerAsync(Arg.Is <ContainerHandle>(h => h.ToString() == "containerHandle")));
        }
コード例 #3
0
        public LinkRequestHandlerTests()
        {
            containerClient = Substitute.For <IContainerClient>();
            containerClient.GetInfoAsync().ReturnsTask(new ContainerInfo());

            var containerManager = Substitute.For <IContainerManager>();

            containerManager.GetContainer("abcd1234").Returns(containerClient);

            jobManager = Substitute.For <Jobs.IJobManager>();

            var request = new LinkRequest()
            {
                Handle = "abcd1234",
                JobId  = 1,
            };

            handler = new LinkRequestHandler(containerManager, jobManager, request);
        }