コード例 #1
0
ファイル: test_code.py プロジェクト: thedrow/codetransformer
def test_flag_packing():
    random.seed(8025816322119661921)  # ayy lmao
    nflags = len(Flag.__members__)
    cases = chain(
        random.sample(list(product((True, False), repeat=nflags)), 1000),
        [[True] * nflags],
        [[False] * nflags],
    )
    for flagvals in cases:
        flags = dict(zip(Flag.__members__.keys(), flagvals))
        assert Flag.unpack(Flag.pack(**flags)) == flags
コード例 #2
0
def test_flag_unpack_too_big():
    assert all(Flag.unpack(Flag.max).values())
    with pytest.raises(ValueError):
        Flag.unpack(Flag.max + 1)
コード例 #3
0
def test_flag_packing(sample_flags):
    for flags in sample_flags:
        assert Flag.unpack(Flag.pack(**flags)) == flags
コード例 #4
0
ファイル: test_code.py プロジェクト: thedrow/codetransformer
def test_flag_unpack_too_big():
    assert all(Flag.unpack(Flag.max).values())
    with pytest.raises(ValueError):
        Flag.unpack(Flag.max + 1)