public void StatsBufferize() { var handler = new BufferBuilderHandlerMock(); var bufferBuilder = new BufferBuilder(handler, 30, "\n"); var serializers = new Serializers { EventSerializer = new EventSerializer(new SerializerHelper(null)), }; var statsRouter = new StatsRouter(serializers, bufferBuilder, null); using (var statsBufferize = new StatsBufferize(statsRouter, 10, null, TimeSpan.Zero)) { var pool = new Pool <Stats>(p => new Stats(p), 1); var stats = new Stats(pool) { Kind = StatsKind.Event }; stats.Event.Text = "test"; stats.Event.Title = "title"; statsBufferize.Send(stats); while (handler.Buffer == null) { Task.Delay(TimeSpan.FromMilliseconds(1)).Wait(); } // Sent because buffer is full. Assert.AreEqual("_e{5,4}:title|test", Encoding.UTF8.GetString(handler.Buffer)); } }
public void StatsBufferize() { var handler = new BufferBuilderHandlerMock(); var bufferBuilder = new BufferBuilder(handler, 3, "\n"); using (var statsBufferize = new StatsBufferize(new Telemetry(), bufferBuilder, 10, null, TimeSpan.Zero)) { statsBufferize.Send("1"); while (handler.Buffer == null) { Task.Delay(TimeSpan.FromMilliseconds(1)).Wait(); } // Sent because buffer is full. Assert.AreEqual("1", Encoding.UTF8.GetString(handler.Buffer)); } }
public async Task StatsBufferize() { var handler = new BufferBuilderHandlerMock(); var bufferBuilder = new BufferBuilder(handler, 3, "\n"); var timeout = TimeSpan.FromMilliseconds(300); var statsBufferize = new StatsBufferize(bufferBuilder, 10, null, timeout); statsBufferize.Send("123"); statsBufferize.Send("4"); await Task.Delay(timeout.Multiply(0.5)); // Sent because buffer is full. Assert.AreEqual(Encoding.UTF8.GetBytes("123"), handler.Buffer); // Sent because we wait more than the timeout. await Task.Delay(timeout.Multiply(2)); Assert.AreEqual(Encoding.UTF8.GetBytes("4"), handler.Buffer); }
public void StatsBufferize() { var handler = new BufferBuilderHandlerMock(); var bufferBuilder = new BufferBuilder(handler, 3, "\n"); using (var statsBufferize = new StatsBufferize(bufferBuilder, 10, null, TimeSpan.Zero)) { var serializedMetric = new SerializedMetric(new Pool <SerializedMetric>(p => new SerializedMetric(p), 10)); serializedMetric.Builder.Append("1"); statsBufferize.Send(serializedMetric); while (handler.Buffer == null) { Task.Delay(TimeSpan.FromMilliseconds(1)).Wait(); } // Sent because buffer is full. Assert.AreEqual("1", Encoding.UTF8.GetString(handler.Buffer)); } }
public void Init() { _handler = new BufferBuilderHandlerMock(); _bufferBuilder = new BufferBuilder(_handler, 12, "\n"); }