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); }