private void TestCreateTestUserFactory <T>(string json) where T : class, ICreateTestUserRequest
        {
            var request = CreateTestUserFactory <T> .CreateTestUserFull();

            Assert.NotEmpty(request.ServiceNames);

            var fromDocs = JsonConvert.DeserializeObject <T>(json);

            request.ServiceNames.Sort();
            fromDocs.ServiceNames.Sort();

            Assert.Equal(fromDocs.ServiceNames.Count, request.ServiceNames.Count);
            for (int i = 0; i < request.ServiceNames.Count; i++)
            {
                Assert.Equal(fromDocs.ServiceNames[i], request.ServiceNames[i]);
            }
        }
        private void TestCreateUser <TRequest, TUser>() where TRequest : class, ICreateTestUserRequest where TUser : UserResultBase
        {
            var request = CreateTestUserFactory <TRequest> .CreateTestUserFull();

            var client = GetClient();

            var result = client.CreateTestUser.CreateUser(request);

            Assert.NotNull(result);

            foreach (var prop in result.GetType().GetProperties())
            {
                var value = prop.GetValue(result);
                Assert.NotNull(value);
            }

            Output.WriteLine($"Created {result.GetType()}:");
            Output.WriteLine(JsonConvert.SerializeObject(result, Formatting.Indented));
        }