public void ReducersPushResultsBackToCoordinator() { var coordinatorStorage = new FileSystemStorage(@"c:\temp\netreduce\coordinator", true); var coordinatorProcess = Process.Start(new ProcessStartInfo(@"..\..\..\NetReduce.CoordinatorService.ConsoleHost\bin\Debug\NetReduce.CoordinatorService.ConsoleHost.exe")); Thread.Sleep(100); RemoteWorker<ServiceClientWrapper>.CoordinatorCallbackUri = new Uri("http://*****:*****@"(?<Key>.+)", "[0-9]+", RegexExtensions.GuidRegexString)); var uris = coordinatorStorage.ListFiles(); foreach (var uri in uris) { var fileName = coordinatorStorage.GetFileName(uri); if (regex.IsMatch(fileName)) { var key = regex.Match(fileName).Groups["Key"].Value; if (Base64.Decode(key) == "k1") { result = coordinatorStorage.Read(fileName); } } } result.ShouldBe("3"); coordinatorProcess.Kill(); }
public void RemoteReduceWorks() { var coordinatorStorage = new FileSystemStorage(@"c:\temp\netreduce\coordinator", true); var coordinatorProcess = Process.Start(new ProcessStartInfo(@"..\..\..\NetReduce.CoordinatorService.ConsoleHost\bin\Debug\NetReduce.CoordinatorService.ConsoleHost.exe")); Thread.Sleep(100); try { var workerStorage = new FileSystemStorage(@"c:\temp\netreduce\0", false); var reducerCodeFileName = new Uri("file:///SampleReducer.cs"); TestHelpers.LoadToStorage(@"..\..\..\NetReduce.Core.Tests\SampleReducer.cs", reducerCodeFileName, this.storage); IUriProvider uriProvider = new UriProvider(); uriProvider.Uris.Add(new Uri("http://*****:*****@"(?<Key>.+)", "[0-9]+", RegexExtensions.GuidRegexString)); var uris = workerStorage.ListFiles(); foreach (var uri in uris) { var fileName = workerStorage.GetFileName(uri); if (regex.IsMatch(fileName)) { var key = regex.Match(fileName).Groups["Key"].Value; if (Base64.Decode(key) == "k1") { result = workerStorage.Read(fileName); } } } result.ShouldBe("3"); } finally { coordinatorProcess.Kill(); } }