예제 #1
0
        public async Task TestQueryByExtensionProperty()
        {
            var extPropertyName = _fixture.ExtensionPropertyName;

            Skip.If(string.IsNullOrEmpty(extPropertyName), "No extension property defined");

            var userQuery = await _client.UserQueryCreateAsync();

            userQuery
            .WhereExtendedProperty(extPropertyName, "1235453", ODataOperator.Equals)
            .Where(u => u.GivenName, "nikos", ODataOperator.GreaterThanEquals)
            .Top(20)
            .OrderBy(u => u.MailNickname);

            var extApp = await _client.GetB2cExtensionsApplicationAsync();

            var extAppId      = extApp.AppId;
            var expected      = $"$top=20&$orderby=mailNickname&$filter=extension_{extAppId.Replace("-", string.Empty)}_{extPropertyName} eq '1235453' and givenName ge 'nikos'";
            var actualDecoded = System.Net.WebUtility.UrlDecode(userQuery.ToString());

            Assert.Equal(expected, actualDecoded);
        }