public async Task CreateProfileFuzzTest()
        {
            var inner = "\"Username\": {0}, \"Domain\": {1}, \"Sid\":{2}";

            for (var i = 0; i < 100000; ++i)
            {
                var usernameBytes = GenerateBytes();
                var domainBytes   = GenerateBytes();
                var sidBytes      = GenerateBytes();

                var username = Encoding.Unicode.GetString(usernameBytes);
                var domain   = Encoding.Unicode.GetString(domainBytes);
                var sid      = Encoding.Unicode.GetString(sidBytes);

                var json = "{" + string.Format(inner, username, domain, sid) + "}";

                var testResult  = string.Empty;
                var creator     = new UserProfileServiceFuzzTestMock();
                var pipeFactory = new UserProfileTestNamedPipeTestStreamFactory();
                try {
                    await CreateProfileFuzzTestRunnerAsync(creator, pipeFactory, json, 100, 100);
                } catch (IOException) {
                    // expect pipe to fail. The client side pipe throws an IOException when the server side pipe
                    // closes due to IO error or attempt to access unauthorized memory.
                } catch (TaskCanceledException) {
                } catch (OperationCanceledException) {
                }
            }
        }
        public async Task CreateProfileTest(string input, string username, string domain, string sid, bool isValidParse, bool isValidAccount, bool isExistingAccount)
        {
            var creator     = UserProfileServiceMock.Create(username, domain, sid, isValidParse, isValidAccount, isExistingAccount);
            var pipeFactory = new UserProfileTestNamedPipeTestStreamFactory();

            await CreateProfileTestRunnerAsync(creator, pipeFactory, input, isValidParse, isValidAccount, isExistingAccount, 500, 500);
        }