public void GetRibbonProps_ContentTypesEnabledTrue_ReturnsGridGanttSettings() { // Arrange ShimSPSecurableObject.AllInstances.DoesUserHavePermissionsSPBasePermissions = (sender, permission) => true; var list = new ShimSPList() { FieldsGet = () => new ShimSPFieldCollection() { GetFieldByInternalNameString = internalName => { if (internalName == "AssignedTo") { return(new ShimSPField()); } return(null); } }, TitleGet = () => DummyTitle }; ShimSPSite.AllInstances.OpenWeb = sender => new ShimSPWeb() { ListsGet = () => new ShimSPListCollection() { ItemGetString = name => new ShimSPList(new ShimSPDocumentLibrary()) { ContentTypesEnabledGet = () => false, ContentTypesGet = () => new ShimSPContentTypeCollection().Bind( new SPContentType[] { new ShimSPContentType() { DocumentTemplateUrlGet = () => "mpp" } }) } } }; ShimSPSite.AllInstances.FeaturesGet = sender => new ShimSPFeatureCollection() { ItemGetGuid = guid => new ShimSPFeature() }; ShimSPSite.AllInstances.RootWebGet = sender => new ShimSPWeb(); var gridGranttSettings = new ShimGridGanttSettings(); gridGranttSettings.Instance.BuildTeam = true; ShimListCommands.GetGridGanttSettingsSPList = listParam => gridGranttSettings; // Act var actualResult = ListCommands.GetRibbonProps(list); // Assert this.ShouldSatisfyAllConditions( () => actualResult.bBuildTeam.ShouldBeTrue(), () => actualResult.bDisableProject.ShouldBeTrue(), () => actualResult.bDisablePlan.ShouldBeTrue(), () => actualResult.aEPKButtons.Count.ShouldBe(1), () => actualResult.aEPKButtons[0].ShouldBe("EPKMenus"), () => actualResult.aEPKActivex.Count.ShouldBe(1), () => actualResult.aEPKActivex[0].ShouldBe("epknonactivexs")); }