public async Task Should_index_many_documents() { var text = new Dictionary <string, string> { ["iv"] = "Hallo Welt" }; var ids = new Guid[10000]; for (var i = 0; i < ids.Length; i++) { ids[i] = Guid.NewGuid(); } var watch = ValueStopwatch.StartNew(); foreach (var id in ids) { await sut.IndexAsync(new Update { Text = text, Id = id }); } sut.OnDeactivateAsync().Wait(); var elapsed = watch.Stop(); Assert.InRange(elapsed, 0, 1); }
private async Task ExecuteAsync(Guid id, Func <TextIndexerGrain, Task> action) { var sut = new TextIndexerGrain(new IndexManager(Storage, A.Fake <ISemanticLog>())); try { await sut.ActivateAsync(id); await action(sut); } finally { await sut.OnDeactivateAsync(); } }
public async Task Should_read_index_and_retrieve() { await AddInvariantContent("Hello", "World", false); await sut.DeactivateAsync(true); var other = new TextIndexerGrain(assetStore); try { await other.ActivateAsync(schemaId); await TestSearchAsync(ids1, "Hello", grain : other); await TestSearchAsync(ids2, "World", grain : other); } finally { await other.OnDeactivateAsync(); } }
public void Dispose() { sut.OnDeactivateAsync().Wait(); }