public void Setup() { this.commandArguments = new Mock <ICommandArguments>(); this.uri = new Uri(BaseUri); this.assembler = new Assembler(this.uri); this.iteration = new Iteration(Guid.NewGuid(), this.assembler.Cache, this.uri); this.siteDirectory = new SiteDirectory(Guid.NewGuid(), this.assembler.Cache, this.uri); this.domain = new DomainOfExpertise(Guid.NewGuid(), this.assembler.Cache, this.uri) { ShortName = "testDomain" }; this.siteDirectory.Domain.Add(this.domain); this.domain2 = new DomainOfExpertise(Guid.NewGuid(), this.assembler.Cache, this.uri) { ShortName = "testDomain2" }; this.siteDirectory.Domain.Add(this.domain2); this.domain3 = new DomainOfExpertise(Guid.NewGuid(), this.assembler.Cache, this.uri) { ShortName = "testDomain3" }; this.siteDirectory.Domain.Add(this.domain3); this.elementDefinition = new ElementDefinition(Guid.NewGuid(), this.assembler.Cache, this.uri) { ShortName = "e", Owner = this.domain }; this.elementDefinition2 = new ElementDefinition(Guid.NewGuid(), this.assembler.Cache, this.uri) { ShortName = "e2", Owner = this.domain }; this.elementDefinition.ContainedElement.Add(new ElementUsage(Guid.NewGuid(), this.assembler.Cache, this.uri) { ShortName = "e2u", Owner = this.domain, ElementDefinition = this.elementDefinition2 }); var parameterType = new DateTimeParameterType(Guid.NewGuid(), this.assembler.Cache, this.uri) { ShortName = "t" }; var parameterType2 = new SimpleQuantityKind(Guid.NewGuid(), this.assembler.Cache, this.uri) { ShortName = "o" }; this.parameter = new Parameter(Guid.NewGuid(), this.assembler.Cache, this.uri) { ParameterType = parameterType }; this.parameter2 = new Parameter(Guid.NewGuid(), this.assembler.Cache, this.uri) { ParameterType = parameterType }; this.iteration.Element.Add(this.elementDefinition); this.iteration.Element.Add(this.elementDefinition2); this.commandArguments.Setup(x => x.ElementDefinition).Returns(this.elementDefinition.ShortName); this.commandArguments.Setup(x => x.DomainOfExpertise).Returns(this.domain.ShortName); this.commandArguments.Setup(x => x.FilteredCategories).Returns(new List <string>()); this.commandArguments.Setup(x => x.IncludedOwners).Returns( new List <string>() { this.domain.ShortName, this.domain2.ShortName, this.domain3.ShortName }); this.commandArguments.Setup(x => x.ExcludedOwners).Returns( new List <string>() { this.domain3.ShortName }); this.commandArguments.Setup(x => x.SelectedParameters).Returns( new List <string>() { parameterType.ShortName, parameterType2.ShortName }); this.filterService = new FilterService(this.commandArguments.Object); }