MCPcopy Create free account
hub / github.com/FDio/vpp / test_ring_buffer_empty_operations

Method test_ring_buffer_empty_operations

test/test_ring_buffer.py:374–398  ·  view source on GitHub ↗

Test ring buffer operations on empty buffer

(self)

Source from the content-addressed store, hash-verified

372 assert isinstance(collected_data, list), "Callback should collect data in list"
373
374 def test_ring_buffer_empty_operations(self):
375 """Test ring buffer operations on empty buffer"""
376 ring_name = "/test/ring_buffer_empty"
377
378 # Step 1: Create ring buffer but don't generate data
379 cli_cmd = (
380 f"test stats ring-buffer-gen {ring_name} 0 {INTERVAL_USEC} {RING_SIZE}"
381 )
382 result = self.vapi.cli(cli_cmd)
383 assert "Generated" in result, f"CLI failed: {result}"
384
385 # Step 2: Get ring buffer
386 ring_buffer = self.statistics.get_ring_buffer(f"{ring_name}")
387
388 # Step 3: Test empty consume
389 data = ring_buffer.consume_data(thread_index=0)
390 assert data == [], "Empty buffer should return empty list"
391
392 # Step 4: Test empty batch consume
393 data = ring_buffer.consume_data_batch(thread_index=0)
394 assert data == [], "Empty buffer should return empty list for batch"
395
396 # Step 5: Test empty poll
397 data = ring_buffer.poll_for_data(thread_index=0, timeout=0.1)
398 assert data == [], "Empty buffer should return empty list for poll"
399
400 def test_ring_buffer_prefetch_parameter(self):
401 """Test prefetch parameter in batch consume"""

Callers

nothing calls this directly

Calls 5

get_ring_bufferMethod · 0.80
consume_dataMethod · 0.80
consume_data_batchMethod · 0.80
poll_for_dataMethod · 0.80
cliMethod · 0.45

Tested by

no test coverage detected