Files

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

37 lines
865 B
Python
Raw Permalink Normal View History

2022-04-29 21:11:59 +02:00
import mobase
2023-07-10 09:10:45 +02:00
import mobase_tests.guessed_string as m
2022-04-29 21:11:59 +02:00
def test_guessed_string():
# empty string
gs = mobase.GuessedString()
assert len(gs.variants()) == 0
assert not gs.variants()
assert str(gs) == ""
# automatic conversion from string
assert m.get_value("test") == "test"
assert m.get_variants("test") == {"test"}
# update
gs = mobase.GuessedString("fallback", mobase.GuessQuality.FALLBACK)
assert str(gs) == "fallback"
gs.update("good", mobase.GuessQuality.GOOD)
assert str(gs) == "good"
assert gs.variants() == {"fallback", "good"}
# back-and-forth
gs = mobase.GuessedString()
assert str(gs) == ""
def _update(gs: mobase.GuessedString):
gs.update("test")
m.set_from_callback(gs, _update)
2022-04-29 21:11:59 +02:00
assert str(gs) == "test"
assert m.get_from_callback(_update) == "test"