private static void Train_ErrorCreatingBuild(Assert assert) { var httpClient = new MockHttpClient(); var engineDto = new EngineDto { Id = "engine1" }; httpClient.Requests.Add(new MockRequest { Method = HttpRequestMethod.Get, Url = "translation/engines/project:project1", ResponseText = JsonConvert.SerializeObject(engineDto, RestClientBase.SerializerSettings) }); httpClient.Requests.Add(new MockRequest { Method = HttpRequestMethod.Post, Url = "translation/builds", ErrorStatus = 500 }); var engine = new TranslationEngine("http://localhost/", "project1", httpClient); Action done = assert.Async(); engine.Train( progress => {}, success => { assert.Equal(success, false); done(); }); }
private static void Train_NoErrors(Assert assert) { var httpClient = new MockHttpClient(); var engineDto = new EngineDto { Id = "engine1" }; httpClient.Requests.Add(new MockRequest { Method = HttpRequestMethod.Get, Url = "translation/engines/project:project1", ResponseText = JsonConvert.SerializeObject(engineDto, RestClientBase.SerializerSettings) }); var buildDto = new BuildDto { Id = "build1", StepCount = 10 }; httpClient.Requests.Add(new MockRequest { Method = HttpRequestMethod.Post, Url = "translation/builds", ResponseText = JsonConvert.SerializeObject(buildDto, RestClientBase.SerializerSettings) }); for (int i = 0; i < 10; i++) { buildDto.CurrentStep++; buildDto.Revision++; httpClient.Requests.Add(new MockRequest { Method = HttpRequestMethod.Get, Url = string.Format("translation/builds/engine:engine1?minRevision={0}", buildDto.Revision), Action = (body, ct) => Delay(10, ct), ResponseText = JsonConvert.SerializeObject(buildDto, RestClientBase.SerializerSettings) }); } var engine = new TranslationEngine("http://localhost/", "project1", httpClient); Action done = assert.Async(); int expectedStep = -1; engine.Train( progress => { expectedStep++; assert.Equal(progress.CurrentStep, expectedStep); }, success => { assert.Equal(expectedStep, 10); assert.Equal(success, true); done(); }); }