def test_rolled_douse__should_implement_equal():
    rolled_douse_1_sym_1 = dse.RolledDouse(
        douse=Douse1(),
        symbol=Sym1(),
    )
    rolled_douse_1_sym_2 = dse.RolledDouse(
        douse=Douse1(),
        symbol=Sym2(),
    )
    rolled_douse_2_sym_1 = dse.RolledDouse(
        douse=Douse2(),
        symbol=Sym1(),
    )
    rolled_douse_2_sym_2 = dse.RolledDouse(
        douse=Douse2(),
        symbol=Sym2(),
    )
    assert rolled_douse_1_sym_1 == dse.RolledDouse(
        douse=Douse1(),
        symbol=Sym1(),
    )
    assert rolled_douse_2_sym_2 == dse.RolledDouse(
        douse=Douse2(),
        symbol=Sym2(),
    )
    assert rolled_douse_1_sym_1 != rolled_douse_1_sym_2
    assert rolled_douse_1_sym_1 != rolled_douse_2_sym_1
def test_dice_pool__should_be_created_from_list():
    dice_list = [
        Douse1(),
        Douse1(),
        Douse2(),
    ]
    dice_pool = dce.DicePool.from_dice_list(dice_list)
    assert dice_pool.get_probability_distribution().as_dict[
               dce.RolledDicePool.from_rolled_dice_list(
                   rolled_dice_list=[
                       dse.RolledDouse(
                           douse=Douse1(),
                           symbol=Sym1(),
                       ),
                       dse.RolledDouse(
                           douse=Douse1(),
                           symbol=Sym1(),
                       ),
                       dse.RolledDouse(
                           douse=Douse2(),
                           symbol=Sym1(),
                       )
                   ]
               )
           ] == fractions.Fraction(4, 27), 'Proper probability calculation'
def test_add_rolled_dice_pool__dice_pools():
    rolled_dice_pool_1 = dce.RolledDicePool(
        rolled_dice_counter=collections.Counter(
            [
                dse.RolledDouse(
                    douse=Douse1(),
                    symbol=Sym1(),
                ),
                dse.RolledDouse(
                    douse=Douse1(),
                    symbol=Sym2(),
                ),
            ]
        )
    )
    rolled_dice_pool_2 = dce.RolledDicePool(
        rolled_dice_counter=collections.Counter(
            [
                dse.RolledDouse(
                    douse=Douse2(),
                    symbol=Sym1(),
                ),
                dse.RolledDouse(
                    douse=Douse1(),
                    symbol=Sym2(),
                ),
            ]
        )
    )
    rolled_dice = rolled_dice_pool_1 + rolled_dice_pool_2
    assert len(rolled_dice.rolled_dice_counter) == 3
def test_douse__should_implement_hash():
    assert len(
        collections.Counter(
            [
                Douse1(),
                Douse1(),
                Douse2(),
            ]
        )
    ) == 2
Ejemplo n.º 5
0
def test_count_dice_pool():
    dice_pool = dce.DicePool.from_dice_list([
        Douse1(),
        Douse1(),
        Douse2(),
    ])
    symbols = syms.Symbols.from_symbols_list([
        Sym1(),
        Sym1(),
        Sym1(),
    ])
    assert CountSymbols().on(dice_pool).as_dict[symbols] == fractions.Fraction(
        4, 27)
Ejemplo n.º 6
0
def test_count_rolled_dice():
    rolled_dice_pool = dce.RolledDicePool.from_rolled_dice_list([
        dse.RolledDouse(
            douse=Douse1(),
            symbol=Sym1(),
        ),
        dse.RolledDouse(
            douse=Douse1(),
            symbol=Sym2(),
        ),
        dse.RolledDouse(
            douse=Douse2(),
            symbol=Sym1(),
        )
    ])
    symbols = syms.Symbols.from_symbols_list([
        Sym1(),
        Sym1(),
        Sym2(),
    ])
    assert CountSymbols().on(rolled_dice_pool) == symbols
def test_add_rolled_dice_pool__dice_pool_and_new_douse():
    appended_douse = dse.RolledDouse(
        douse=Douse2(),
        symbol=Sym2(),
    )
    rolled_dice = dce.RolledDicePool(
        rolled_dice_counter=collections.Counter(
            [
                dse.RolledDouse(
                    douse=Douse1(),
                    symbol=Sym1(),
                ),
                dse.RolledDouse(
                    douse=Douse1(),
                    symbol=Sym2(),
                ),
            ]
        )
    ) + appended_douse
    assert len(rolled_dice.rolled_dice_counter) == 3
    assert rolled_dice.rolled_dice_counter[appended_douse] == 1
def test_rolled_douse__should_implement_hash():
    assert len(
        collections.Counter(
            [
                dse.RolledDouse(
                    douse=Douse1(),
                    symbol=Sym1(),
                ),
                dse.RolledDouse(
                    douse=Douse1(),
                    symbol=Sym1(),
                ),
                dse.RolledDouse(
                    douse=Douse1(),
                    symbol=Sym2(),
                ),
                dse.RolledDouse(
                    douse=Douse2(),
                    symbol=Sym1(),
                ),
            ]
        )
    ) == 3
Ejemplo n.º 9
0
def test_add_rolled_dice_pool__dice_pool_and_dice_pool_with_tokens():
    rolled_dice_pool_1 = dce.RolledDicePool(
        rolled_dice_counter=collections.Counter([
            dse.RolledDouse(
                douse=Douse1(),
                symbol=Sym1(),
            ),
            dse.RolledDouse(
                douse=Douse1(),
                symbol=Sym2(),
            ),
        ]))
    rolled_dice_pool_2 = dce_toks.RolledDicePoolWithTokens(
        rolled_dice_counter=collections.Counter([
            dse.RolledDouse(
                douse=Douse2(),
                symbol=Sym1(),
            ),
            dse.RolledDouse(
                douse=Douse1(),
                symbol=Sym2(),
            ),
        ]),
        tokens=toks.Tokens.from_tokens_list([
            tok.Token(),
            tok.Token(),
        ]))
    rolled_dice = rolled_dice_pool_1 + rolled_dice_pool_2
    assert len(rolled_dice.rolled_dice_counter) == 3
    assert len(rolled_dice.tokens) == 2

    rolled_dice = rolled_dice_pool_2 + rolled_dice_pool_1
    assert len(rolled_dice.tokens) == 2

    rolled_dice = rolled_dice_pool_2 + rolled_dice_pool_2
    assert len(rolled_dice.tokens) == 4
def test_douse__should_implement_equal():
    assert Douse1() == Douse1()
    assert Douse1() != Douse2()