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

Method test_ring_buffer_prefetch_parameter

test/test_ring_buffer.py:400–424  ·  view source on GitHub ↗

Test prefetch parameter in batch consume

(self)

Source from the content-addressed store, hash-verified

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"""
402 ring_name = "/test/ring_buffer_prefetch"
403
404 # Step 1: Create ring buffer
405 cli_cmd = (
406 f"test stats ring-buffer-gen {ring_name} 10 {INTERVAL_USEC} {RING_SIZE}"
407 )
408 result = self.vapi.cli(cli_cmd)
409 assert "Generated" in result, f"CLI failed: {result}"
410
411 # Step 2: Get ring buffer
412 ring_buffer = self.statistics.get_ring_buffer(f"{ring_name}")
413
414 # Step 3: Test with prefetch enabled
415 data1 = ring_buffer.consume_data_batch(thread_index=0, prefetch=True)
416
417 # Step 4: Reset and test with prefetch disabled
418 ring_buffer.local_tails[0] = 0
419 ring_buffer.last_sequences[0] = None
420
421 data2 = ring_buffer.consume_data_batch(thread_index=0, prefetch=False)
422
423 # Step 5: Results should be the same regardless of prefetch setting
424 assert data1 == data2, "Prefetch parameter should not affect results"

Callers

nothing calls this directly

Calls 3

get_ring_bufferMethod · 0.80
consume_data_batchMethod · 0.80
cliMethod · 0.45

Tested by

no test coverage detected