public void NotWildcardAndNotNamespaceQualifiedWildcardResultsWildcardSelectItem(string identifier) { // Arrange SelectItem selectItem; PathSegmentToken pathSegment = new NonSystemToken(identifier, null, null); // Act var result = SelectPathSegmentTokenBinder.TryBindAsWildcard(pathSegment, HardCodedTestModel.TestModel, out selectItem); // Assert Assert.False(result); Assert.Null(selectItem); }
public void WithWildcardResultsWildcardSelectItem() { // Arrange SelectItem selectItem; PathSegmentToken pathSegment = new NonSystemToken("*", null, null); // Act var result = SelectPathSegmentTokenBinder.TryBindAsWildcard(pathSegment, HardCodedTestModel.TestModel, out selectItem); // Assert Assert.True(result); Assert.NotNull(selectItem); Assert.IsType <WildcardSelectItem>(selectItem); }
/// <summary> /// Visit a NonSystemToken /// </summary> /// <param name="tokenIn">the non sytem token to visit</param> public override void Visit(NonSystemToken tokenIn) { ExceptionUtils.CheckArgumentNotNull(tokenIn, "tokenIn"); // before looking for type segments or paths, handle both of the wildcard cases. if (tokenIn.NextToken == null) { SelectItem newSelectItem; if (SelectPathSegmentTokenBinder.TryBindAsWildcard(tokenIn, this.model, out newSelectItem)) { this.expandClauseToDecorate.AddToSelectedItems(newSelectItem); return; } } this.ProcessTokenAsPath(tokenIn); }
public void NamespaceQualifiedWithWildcardResultsNamespaceQualifiedWildcardSelectItem() { // Arrange SelectItem selectItem; PathSegmentToken pathSegment = new NonSystemToken("Fully.Qualified.Namespace.*", null, null); // Act var result = SelectPathSegmentTokenBinder.TryBindAsWildcard(pathSegment, HardCodedTestModel.TestModel, out selectItem); // Assert Assert.True(result); Assert.NotNull(selectItem); NamespaceQualifiedWildcardSelectItem namesapceQualifiedSelectItem = Assert.IsType <NamespaceQualifiedWildcardSelectItem>(selectItem); Assert.NotNull(namesapceQualifiedSelectItem); Assert.Equal("Fully.Qualified.Namespace", namesapceQualifiedSelectItem.Namespace); }