public async void Get_ShallReturnAllClaraAets() { var data = new List <ClaraApplicationEntity>(); for (int i = 1; i <= 5; i++) { data.Add(new ClaraApplicationEntity() { AeTitle = $"AET{i}", Name = $"AET{i}", Processor = typeof(MockJobProcessor).AssemblyQualifiedName, IgnoredSopClasses = new List <string>() { $"{i}" }, ProcessorSettings = new Dictionary <string, string>(), OverwriteSameInstance = (i % 2 == 0) }); } _repository.Setup(p => p.ToListAsync()).Returns(Task.FromResult(data)); var result = await _controller.Get(); Assert.Equal(data.Count, result.Value.Count()); _repository.Verify(p => p.ToListAsync(), Times.Once()); }
public async void Get_ShallReturnAvailableCrds() { var claraAeTitles = new ClaraApplicationEntityCustomResourceList { Items = new List <ClaraApplicationEntityCustomResource> { // use default values new ClaraApplicationEntityCustomResource { Spec = new ClaraApplicationEntity { Name = "ClaraSCP" }, Status = new AeTitleStatus { Enabled = true }, Metadata = new V1ObjectMeta { ResourceVersion = "1", Name = "ClaraSCP" } }, // use custom values new ClaraApplicationEntityCustomResource { Spec = new ClaraApplicationEntity { Name = "localAet", AeTitle = "MySCP", OverwriteSameInstance = true, IgnoredSopClasses = new List <string>() { "1.2.3.4.5.6" }, Processor = "test" }, Status = new AeTitleStatus { Enabled = true }, Metadata = new V1ObjectMeta { ResourceVersion = "1", Name = "localAet" } } } }; _kubernetesClient.Setup(p => p.ListNamespacedCustomObjectWithHttpMessagesAsync(CustomResourceDefinition.ClaraAeTitleCrd)) .Returns(Task.FromResult(new HttpOperationResponse <object> { Body = new object(), Response = new HttpResponseMessage { Content = new StringContent(JsonConvert.SerializeObject(claraAeTitles)) } })); var result = await _controller.Get(); _kubernetesClient.Verify(p => p.ListNamespacedCustomObjectWithHttpMessagesAsync(CustomResourceDefinition.ClaraAeTitleCrd), Times.Once()); var data = JsonConvert.DeserializeObject <ClaraApplicationEntityCustomResourceList>((result.Result as ContentResult).Content); Assert.Equal(2, data.Items.Count); foreach (var item in claraAeTitles.Items) { var actualItem = data.Items.FirstOrDefault(p => p.Spec.Name.Equals(item.Spec.Name)); Assert.NotNull(actualItem); Assert.Equal(item.Spec.AeTitle, actualItem.Spec.AeTitle); Assert.Equal(item.Spec.OverwriteSameInstance, actualItem.Spec.OverwriteSameInstance); Assert.Equal(item.Spec.IgnoredSopClasses, actualItem.Spec.IgnoredSopClasses); Assert.Equal(item.Spec.Processor, actualItem.Spec.Processor); } }