Exemplo n.º 1
0
        public void ExplorerItemFactory_CreateExplorerItemWithType_ReservedServicesNotReturned_SecondtGen_ExpectSecondGenChildren()
        {
            //------------Setup for test--------------------------
            var auth      = new Mock <IAuthorizationService>();
            var catalogue = new Mock <IResourceCatalog>();
            var directory = new Mock <IDirectory>();
            var resources = MoqUtil.GenerateMockEnumerable <IResource>(4).ToList();

            for (int i = 0; i < resources.Count; i++)
            {
                var resource = resources[i];
                resource.Setup(a => a.GetResourcePath(It.IsAny <Guid>())).Returns("1\\" + i);
                resource.Setup(a => a.ResourceName).Returns(i.ToString);
                resource.Setup(a => a.ResourceID).Returns(Guid.NewGuid);
                resource.Setup(a => a.ResourceType).Returns("EmailSource");
            }
            var mockReserverService = new Mock <IResource>();

            mockReserverService.Setup(a => a.GetResourcePath(It.IsAny <Guid>())).Returns("1");
            mockReserverService.Setup(a => a.ResourceName).Returns("TestReservedService");
            mockReserverService.Setup(a => a.ResourceID).Returns(Guid.NewGuid);
            mockReserverService.Setup(a => a.ResourceType).Returns("ReservedService");
            resources.Add(mockReserverService);
            directory.Setup(a => a.GetDirectories(@"b:\bob")).Returns(new[] { @"b:\bob\1" });
            catalogue.Setup(a => a.GetResourceList(It.IsAny <Guid>())).Returns(MoqUtil.ProxiesFromMockEnumerable(resources).ToList());
            var explorerItemFactory = new ExplorerItemFactory(catalogue.Object, directory.Object, auth.Object);

            //------------Execute Test---------------------------
            var item = explorerItemFactory.CreateRootExplorerItem(@"b:\bob", Guid.NewGuid());

            //------------Assert Results-------------------------
            Assert.AreEqual(1, item.Children.Count);
            Assert.AreEqual(4, item.Children[0].Children.Count);
            var found = item.Children[0].Children.FirstOrDefault(explorerItem => explorerItem.DisplayName == "TestReservedService");

            Assert.IsNull(found);
        }