39 lines
1.0 KiB
Python
39 lines
1.0 KiB
Python
import pytest
|
|
from escpos.capabilities import get_profile, NotSupported, BARCODE_B, Profile
|
|
|
|
|
|
@pytest.fixture
|
|
def profile():
|
|
return get_profile('default')
|
|
|
|
|
|
class TestBaseProfile:
|
|
"""Test the `BaseProfile` class.
|
|
"""
|
|
|
|
def test_get_font(self, profile):
|
|
with pytest.raises(NotSupported):
|
|
assert profile.get_font('3')
|
|
assert profile.get_font(1) == 1
|
|
assert profile.get_font('a') == 0
|
|
|
|
def test_supports(self, profile):
|
|
assert not profile.supports('asdf asdf')
|
|
assert profile.supports(BARCODE_B)
|
|
|
|
def test_get_columns(self, profile):
|
|
assert profile.get_columns('a') > 5
|
|
with pytest.raises(NotSupported):
|
|
assert profile.get_columns('asdfasdf')
|
|
|
|
|
|
class TestCustomProfile:
|
|
"""Test custom profile options with the `Profile` class.
|
|
"""
|
|
|
|
def test_columns(self):
|
|
assert Profile(columns=10).get_columns('sdfasdf') == 10
|
|
|
|
def test_features(self):
|
|
assert Profile(features={'foo': True}).supports('foo')
|