d dl mZmZ ddlmZmZmZ ddlmZ ddl m
Z
ddlmZ ddlZddl
Z
ddlmZ G d d
e ZdS ) )TestBaseFileCreator )WindowCursorSlidingWindowMapManagerStaticWindowMapManager)
align_to_mmap)randint)timeN)copyc e Zd Zd Zd Zd ZdS )TestMManc t | j d 5 }t }t | }| rJ | rJ | dk sJ | |j }| rJ | sJ | |j k sJ | |j k sJ d d d n# 1 swxY w Y t | }| s| sJ | rJ | | | s| sJ | | |
t |
d S )Ncursor_testr )r k_window_test_sizer r is_valid
is_associatedsizemake_cursorpath file_sizer assignunuse_region_destroy)selffcmancicvcios f/builddir/build/BUILD/cloudlinux-venv-1.0.10/venv/lib/python3.11/site-packages/smmap/test/test_mman.pytest_cursorzTestMMan.test_cursor s
0-
@
@ (B)++Cc""B{{}}$$$'')))))7799>>>>))B{{}}$$$##%%%%%<<>>RW,,,,7799''''' ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( 2hh<<>>9c&7&7&9&9999 ##%%%%%
"
;;==7R%5%5%7%7777
S""$$$$$s C(DDDc t }t }||fD ]}| dk sJ | dk sJ d}t |t rd}| |k sJ | dk sJ | dk sJ | d | d | t j
dk sJ t | j d 5 }t j |j t j } |j |fD ]}| | }| |u sJ | dd sJ | dk sJ | dk sJ t |j d 5 } | d d | d dd k sJ d d d n# 1 swxY w Y t |t2 r!| t6 |j n | t6 |j t j | n# t j | w xY w d d d n# 1 swxY w Y d S )Nr
manager_testrb )r r num_file_handlesnum_open_files
isinstancewindow_sizemapped_memory_sizemax_mapped_memory_size_collect_lru_regionsysmaxsizer r osopenr O_RDONLYr
path_or_fd
use_regionr ofs_beginr bufferreadintassertRaises
ValueErrorfdclose)
r slide_man
static_manr winsize_cmp_valr r= itemcfps
r! test_memory_managerzTestMMan.test_memory_manager2 s^ +-- +--
* ' ! ' !C''))Q....%%''1,,,,O#566
%"$??$$6666))++q0000--//!3333
##A&&&##B''' **3;771<<<< T4nEE
!WRWbk22!!#"
E EOOD11 ||~~5555 ||B33<<>>>>> {{}}2222 vvxx2~~~~!"'400 EB#$88::aaa=BGGBKK4D#D#D#D#D#DE E E E E E E E E E E E E E E "$,, <))*af====))*ad;;; HRLLLLBHRLLLLL'
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!)' ! ' !sP #%K B+J64>H? 3J6?I
J6I
AJ6!K6KKK #K c
t | j d 5 }t |j d 5 }| }d d d n# 1 swxY w Y t j |j t
j } d}t d|j dz |fft |j dz |j dz |fffD ]E\ }}|j |fD ]4}t | |j k sJ ||d |d |d } | | }
| dk sJ |
dk sJ d
}| dz }|
|| sJ |
}
|
dk sJ | dk sJ | dk sJ |
|
k sJ |
|k sJ |
dk sJ | r;|
t+ | d k sJ n|
|j k sJ |
d d ||||p|
z k sJ |p|j dz
}|
d| sJ |
|
k sJ | dk sJ |
|k sJ |
dk sJ |
d d |d | k sJ d
}|j |p|
z
|z }|
|| sJ | rg| dk sJ |
|k sJ |
|
usJ |
dk sJ n|
|j k sJ |
}
|
dk sJ |
|
k sJ |
|j k sJ |
d d ||||p|
z k sJ |
|
rJ | r| dk sJ d
}|}d}t3 }|
j }| }| }| j
}| j }|r|dz }t; d|j dz
}| r| | k sJ | | k sJ |
||p|
sJ |
}|
d d ||||z k sJ ||z
} || sJ |||z dz
sJ |||z rJ |t= t3 |z
d }t? d }tA d|||z |tC | |||z |z fz tD j# |
|j | rJ | sJ | $ sJ | dk sJ 6G t j% | n# t j% | w xY w d d d d S # 1 swxY w Y d S )Nmanager_operation_testr' r d r )r, max_memory_sizemax_open_handlesi Tr% i gMbP?i@B z`%s: Read %i mb of memory with %i random on cursor initialized with %s accesses in %fs (%f mb/s)
)file)&r r r3 r r9 r2 r4 r r r lenr r* r- r, r6 r regionclient_countr) r7 r r8 ofs_endr r includes_ofsr. max_file_handlesr
maxfloatprinttyper0 stderrcollectr> )r r rD datar= max_num_handlesmtypeargsrB r rC base_offsetr rrnsize overshootmax_random_accessesnum_random_accessesmemory_readstrS r. rT r- r) csizeelapsedmbs r! test_memman_operationzTestMMan.test_memman_operation` s#
02J
K
K ~ rbgt$$
!wwyy
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!"+..Bz
"$%;aA=_$`%