示例#1
0
        private async Task InitAsync()
        {
            Client = new GraphApiClient(
                Config.ApplicationId,
                Config.ApplicationSecret,
                Config.Tenant
                );

            await Client.EnsureInitAsync();

            var b2cApp = await Client.GetB2cExtensionsApplicationAsync();

            var extProperties = await Client.GetApplicationExtensionsAsync(b2cApp.ObjectId);

            ExtensionPropertyName = extProperties.FirstOrDefault()?.GetSimpleName();

            TestUser = CreateTestUser();
            TestUser = await Client.UserCreateAsync(TestUser);

            var group = CreateTestGroup();

            group = await Client.GroupCreateAsync(group);

            TestGroupObjectId = group.ObjectId;

            await Client.GroupAddMemberAsync(group.ObjectId, TestUserObjectId);
        }
        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);
        }
示例#3
0
        public async Task TestGetExtensionsApp()
        {
            var r = await _client.GetB2cExtensionsApplicationAsync();

            Assert.NotNull(r);
        }