o
    gl                     @   s   d dl mZ d dlZd dlZd dlmZ d dlmZ dZdd Z	dd	 Z
d
d Zdd Zdd Zejdddgdd Zejdddgdd ZdS )    )BytesION)afm)font_managers  StartFontMetrics 2.0
Comment Comments are ignored.
Comment Creation Date:Mon Nov 13 12:34:11 GMT 2017
FontName MyFont-Bold
EncodingScheme FontSpecific
FullName My Font Bold
FamilyName Test Fonts
Weight Bold
ItalicAngle 0.0
IsFixedPitch false
UnderlinePosition -100
UnderlineThickness 56,789
Version 001.000
Notice Copyright  2017 No one.
FontBBox 0 -321 1234 369
StartCharMetrics 3
C 0 ; WX 250 ; N space ; B 0 0 0 0 ;
C 42 ; WX 1141 ; N foo ; B 40 60 800 360 ;
C 99 ; WX 583 ; N bar ; B 40 -10 543 210 ;
EndCharMetrics
EndFontMetrics
c                  C   s(   d} |  d}t|}|| ksJ d S )Nu   приветutf8)encoder   _to_str)inp_strbyte_strret r   W/home/ubuntu/cloudmapper/venv/lib/python3.10/site-packages/matplotlib/tests/test_afm.pytest_nonascii_str$   s   

r   c                  C   sD   t t} t| }|ddddddddd	d
ddg dddks J d S )Ng       @zMyFont-BoldFontSpecificzMy Font Boldz
Test FontsBoldg        FigEdL@z001.000s   Copyright  2017 No one.)r   ii  iq     )s   StartFontMetricss   FontNames   EncodingSchemes   FullName
   FamilyNames   Weights   ItalicAngles   IsFixedPitchs   UnderlinePositions   UnderlineThicknesss   Versions   Notices   FontBBoxs   StartCharMetrics)r   AFM_TEST_DATAr   _parse_header)fhheaderr   r   r   test_parse_header.   s$   
r   c                  C   s|   t t} t|  t| }|ddg dfddg dfddg d	fd
ddg dfddg dfddg d	fdfks<J d S )Ng     @o@space)r   r   r   r   g     ԑ@foo)(   <   i   ih  g     8@bar)r   ii     )r   *   c   )r   r   r   )r   r   r   r   _parse_char_metrics)r   metricsr   r   r   test_parse_char_metricsC   s   

r!   c                  C   s.   t t} t| }|jd= | dksJ d S )Nr   zMy Font)r   r   r   AFM_headerget_familyname)r   fontr   r   r   test_get_familyname_guessedR   s   
r&   c                  C   s0   t ttdd} td| jdksJ d S )Ns   Weight Bold
s   Weight Custom
 normal)r   r"   r   r   replacefmafmFontPropertyweight)r%   r   r   r   &test_font_manager_weight_normalizationY   s   
r-   afm_datas   nope
really nopes   StartFontMetrics 2.0
Comment Comments are ignored.
Comment Creation Date:Mon Nov 13 12:34:11 GMT 2017
FontName MyFont-Bold
EncodingScheme FontSpecificc                 C   sB   t | }tt t| W d    d S 1 sw   Y  d S )N)r   pytestraisesRuntimeErrorr   r   )r.   r   r   r   r   test_bad_afm_   s   "r2   s   StartFontMetrics 2.0
Comment Comments are ignored.
Comment Creation Date:Mon Nov 13 12:34:11 GMT 2017
Aardvark bob
FontName MyFont-Bold
EncodingScheme FontSpecific
StartCharMetrics 3s   StartFontMetrics 2.0
Comment Comments are ignored.
Comment Creation Date:Mon Nov 13 12:34:11 GMT 2017
ItalicAngle zero degrees
FontName MyFont-Bold
EncodingScheme FontSpecific
StartCharMetrics 3c                 C   sT   t | }|tj t| W d    n1 sw   Y  t|jdks(J d S )N   )r   at_levelloggingERRORr   r   lenrecords)r.   caplogr   r   r   r   test_malformed_headerq   s
   r:   )ior   r/   r5   
matplotlibr   r   r*   r   r   r   r!   r&   r-   markparametrizer2   r:   r   r   r   r   <module>   s2    

