public void Store(SpecExecutionCompleted result) { var queue = _results[result.Id]; queue.Enqueue(result); while (queue.Count > 5) { queue.Dequeue(); } }
// The time comparison is off from using DateTime.UtcNow [Fact] public void last_counts() { var c = new ResultsCache(); var result1 = new SpecExecutionCompleted("foo", new SpecResults(), new Specification()); c.Store(result1); var result2 = new SpecExecutionCompleted("bar", new SpecResults(), new Specification()); c.Store(result2); var result3 = new SpecExecutionCompleted("foo", new SpecResults{Counts = new Counts()}, new Specification()); c.Store(result3); c.LastResultFor("foo") .ShouldBe(result3); }
public void retrieve_results_for_a_spec() { var result1 = new SpecExecutionCompleted("foo", new SpecResults(), new Specification()); theCache.Store(result1); var result2 = new SpecExecutionCompleted("bar", new SpecResults(), new Specification()); theCache.Store(result2); var result3 = new SpecExecutionCompleted("foo", new SpecResults(), new Specification()); theCache.Store(result3); var result4 = new SpecExecutionCompleted("bar", new SpecResults(), new Specification()); theCache.Store(result4); var result5 = new SpecExecutionCompleted("foo", new SpecResults(), new Specification()); theCache.Store(result5); var result6 = new SpecExecutionCompleted("bar", new SpecResults(), new Specification()); theCache.Store(result6); theCache.ResultsFor("foo").ShouldHaveTheSameElementsAs(result5, result3, result1); theCache.ResultsFor("bar").ShouldHaveTheSameElementsAs(result6, result4, result2); }
public void write_initial_model() { // You need to compile everything before trying to use this var input = new ProjectInput { Path = AppDomain.CurrentDomain.BaseDirectory.ParentDirectory() .ParentDirectory() .ParentDirectory() .AppendPath("Storyteller.Samples"), ProfileFlag = "Safari" }; using (var controller = input.BuildRemoteController()) { controller.Start(EngineMode.Batch).Wait(30.Seconds()); var hierarchy = HierarchyLoader.ReadHierarchy(input.Path.AppendPath("Specs")); var request = new BatchRunRequest(); var response = controller.Send(request).AndWaitFor<BatchRunResponse>(); var cache = new ResultsCache(); response.Result.records.Each( x => { var completed = new SpecExecutionCompleted(x.specification.id, x.results, x.specification); cache.Store(completed); }); response.Result.fixtures = controller.LatestSystemRecycled.fixtures; var hierarchyLoaded = new HierarchyLoaded(hierarchy, cache); var initialization = new InitialModel(controller.LatestSystemRecycled, hierarchyLoaded) { wsAddress = "ws://localhost:" + 8200 }; writeResponse(response.Result); //writeInitialization(initialization); } }
//[Fact] public void write_initial_model() { // You need to compile everything before trying to use this var input = new ProjectInput(EngineMode.Batch) { Path = samplesFolder, ProfileFlag = "Safari" }; using (var controller = input.BuildEngine()) { controller.Start().Wait(30.Seconds()); var hierarchy = HierarchyLoader.ReadHierarchy(input.Path.AppendPath("Specs")); var request = new BatchRunRequest { SpecPath = input.SpecPath }; var response = controller.Send(request).AndWaitFor<BatchRunResponse>(); var cache = new ResultsCache(); response.Result.records.Each( x => { var completed = new SpecExecutionCompleted(x.specification.id, x.results, x.specification); cache.Store(completed); }); response.Result.fixtures = controller.LatestSystemRecycled.fixtures; var hierarchyLoaded = new HierarchyLoaded(hierarchy, cache); writeResponse(response.Result); //writeInitialization(initialization); } }
public void get_all_results() { var result1 = new SpecExecutionCompleted("foo", new SpecResults(), new Specification()); theCache.Store(result1); var result2 = new SpecExecutionCompleted("bar", new SpecResults(), new Specification()); theCache.Store(result2); var result3 = new SpecExecutionCompleted("foo", new SpecResults(), new Specification()); theCache.Store(result3); var result4 = new SpecExecutionCompleted("bar", new SpecResults(), new Specification()); theCache.Store(result4); var result5 = new SpecExecutionCompleted("foo", new SpecResults(), new Specification()); theCache.Store(result5); var result6 = new SpecExecutionCompleted("bar", new SpecResults(), new Specification()); theCache.Store(result6); var all = theCache.AllResults().ToArray(); all.Count().ShouldBe(6); all.ShouldContain(result1); all.ShouldContain(result2); all.ShouldContain(result3); all.ShouldContain(result4); all.ShouldContain(result5); all.ShouldContain(result6); }
protected bool Equals(SpecExecutionCompleted other) { return string.Equals(Id, other.Id) && Equals(Results.Counts, other.Results.Counts); }
protected bool Equals(SpecExecutionCompleted other) { return(string.Equals(Id, other.Id) && Equals(Results.Counts, other.Results.Counts)); }