FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Download Repo ZIP]   [Original HTTPS Page]

Encode Ukrainian cyrillic "decimal i" by saper · Pull Request #765 · python-escpos/python-escpos · GitHub

Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension .py  (1) All 1 file type selected
Viewed files
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Unified
Split
Hide whitespace
Diff view
Unified
Split
Hide whitespace
50 changes: 50 additions & 0 deletions test/test_magicencode.py
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,12 @@ def test_can_encode(self) -> None:
assert Encoder({"CP437": 1}).can_encode("CP437", "á")
assert not Encoder({"foobar": 1}).can_encode("foobar", "a")

def test_encode_cyrillic_decimal_i(self) -> None:
assert Encoder({"CP1251": 1}).can_encode("CP1251", "і")
assert Encoder({"CP1125": 1}).can_encode("CP1125", "і")
assert Encoder({"CP855": 1}).can_encode("CP855", "і")
assert not Encoder({"CP866": 1}).can_encode("CP866", "і")

def test_find_suitable_encoding(self) -> None:
assert not Encoder({"CP437": 1}).find_suitable_encoding("€")
assert Encoder({"CP858": 1}).find_suitable_encoding("€") == "CP858"
Expand Down Expand Up @@ -103,6 +109,50 @@ def test_write_no_codepage(self, driver: printer.Dummy) -> None:
encode.write("€ ist teuro.")
assert driver.output == b"_ ist teuro."

def test_cyrillic_decimal_i_cp855(self, driver: printer.Dummy) -> None:
encode = MagicEncode(
driver,
encoder=Encoder({"CP855": 2}),
)
encode.write("і is like i.")
assert driver.output == b"\x1bt\x02\x8a is like i."

def test_cyrillic_decimal_i_cp1251(self, driver: printer.Dummy) -> None:
encode = MagicEncode(
driver,
encoder=Encoder({"CP1251": 1}),
)
encode.write("і is like i.")
assert driver.output == b"\x1bt\x01\xb3 is like i."

def test_cyrillic_decimal_i_two_slots(self, driver: printer.Dummy) -> None:
encode = MagicEncode(
driver,
encoder=Encoder({"CP1251": 1}),
)
encode.write("і is like i.")
assert driver.output == b"\x1bt\x01\xb3 is like i."
encode = MagicEncode(
driver,
encoder=Encoder({"CP855": 2}),
)
encode.write("і is like i.")
assert driver.output == b"\x1bt\x02\x8a is like i."

def test_cyrillic_decimal_i_same_slot(self, driver: printer.Dummy) -> None:
encode = MagicEncode(
driver,
encoder=Encoder({"CP1251": 2}),
)
encode.write("і is like i.")
assert driver.output == b"\x1bt\x02\xb3 is like i."
encode = MagicEncode(
driver,
encoder=Encoder({"CP855": 2}),
)
encode.write("і is like i.")
assert driver.output == b"\x1bt\x02\x8a is like i."

class TestForceEncoding:
def test(self, driver: printer.Dummy) -> None:
encode = MagicEncode(driver)
Expand Down
Loading

Back | FazBrowse Home | New Git URL