コード例 #1
0
def test_dict_usage():
    """
    Opaque should be dict-like.

    """
    opaque = Opaque()
    assert_that(opaque.as_dict(), is_(equal_to(dict())))

    opaque[THIS] = VALUE
    assert_that(opaque.as_dict(), is_(equal_to({THIS: VALUE})))
    assert_that(opaque[THIS], is_(equal_to(VALUE)))
コード例 #2
0
def test_dict_usage():
    """
    Opaque should be dict-like.

    """
    opaque = Opaque()
    assert_that(opaque.as_dict(), is_(equal_to(dict())))

    opaque[THIS] = VALUE
    assert_that(opaque.as_dict(), is_(equal_to({THIS: VALUE})))
    assert_that(opaque[THIS], is_(equal_to(VALUE)))
コード例 #3
0
def test_composition():
    """
    Opaque.initialize should compose (within reason).

    """
    opaque = Opaque()
    opaque[THIS] = VALUE

    assert_that(opaque.as_dict(), is_(equal_to({THIS: VALUE})))
    with opaque.initialize(example_func, OTHER, OTHER):
        assert_that(opaque.as_dict(), is_(equal_to(example_func(OTHER, OTHER))))
        with opaque.initialize(example_func, ALSO, OTHER):
            assert_that(opaque.as_dict(), is_(equal_to(example_func(ALSO, OTHER))))
        assert_that(opaque.as_dict(), is_(equal_to(example_func(OTHER, OTHER))))
    assert_that(opaque.as_dict(), is_(equal_to({THIS: VALUE})))
コード例 #4
0
def test_composition():
    """
    Opaque.initialize should compose (within reason).

    """
    opaque = Opaque()
    opaque[THIS] = VALUE

    assert_that(opaque.as_dict(), is_(equal_to({THIS: VALUE})))
    with opaque.initialize(example_func, OTHER, OTHER):
        assert_that(opaque.as_dict(), is_(equal_to(example_func(OTHER, OTHER))))
        with opaque.initialize(example_func, ALSO, OTHER):
            assert_that(opaque.as_dict(), is_(equal_to(example_func(ALSO, OTHER))))
        assert_that(opaque.as_dict(), is_(equal_to(example_func(OTHER, OTHER))))
    assert_that(opaque.as_dict(), is_(equal_to({THIS: VALUE})))
コード例 #5
0
def test_decorator():
    """
    Opaque.initialize should act as a decorator and resets state properly.

    """
    opaque = Opaque()
    opaque[THIS] = VALUE

    @opaque.initialize(example_func, OTHER, OTHER)
    def function_to_decorate():
        return opaque.as_dict()

    assert_that(opaque.as_dict(), is_(equal_to({THIS: VALUE})))
    assert_that(function_to_decorate(), is_(equal_to(example_func(OTHER, OTHER))))
    assert_that(opaque.as_dict(), is_(equal_to({THIS: VALUE})))
    assert_that(function_to_decorate(), is_(equal_to(example_func(OTHER, OTHER))))
    assert_that(opaque.as_dict(), is_(equal_to({THIS: VALUE})))
コード例 #6
0
def test_decorator():
    """
    Opaque.initialize should act as a decorator and resets state properly.

    """
    opaque = Opaque()
    opaque[THIS] = VALUE

    @opaque.initialize(example_func, OTHER, OTHER)
    def function_to_decorate():
        return opaque.as_dict()

    assert_that(opaque.as_dict(), is_(equal_to({THIS: VALUE})))
    assert_that(function_to_decorate(), is_(equal_to(example_func(OTHER, OTHER))))
    assert_that(opaque.as_dict(), is_(equal_to({THIS: VALUE})))
    assert_that(function_to_decorate(), is_(equal_to(example_func(OTHER, OTHER))))
    assert_that(opaque.as_dict(), is_(equal_to({THIS: VALUE})))
コード例 #7
0
def test_context_manager():
    """
    Opaque.initialize should act as a context manager and resets state properly.

    """
    opaque = Opaque()

    opaque[THIS] = VALUE
    assert_that(opaque.as_dict(), is_(equal_to({THIS: VALUE})))

    with opaque.initialize(example_func, OTHER, OTHER):
        assert_that(opaque.as_dict(), is_(equal_to(example_func(OTHER, OTHER))))
        assert_that(opaque.as_dict(), is_(equal_to({THIS: OTHER, THAT: OTHER})))

    with opaque.initialize(example_func, OTHER, OTHER):
        assert_that(opaque.as_dict(), is_(equal_to(example_func(OTHER, OTHER))))
        assert_that(opaque.as_dict(), is_(equal_to({THIS: OTHER, THAT: OTHER})))

    assert_that(opaque.as_dict(), is_(equal_to({THIS: VALUE})))
コード例 #8
0
def test_context_manager():
    """
    Opaque.initialize should act as a context manager and resets state properly.

    """
    opaque = Opaque()

    opaque[THIS] = VALUE
    assert_that(opaque.as_dict(), is_(equal_to({THIS: VALUE})))

    with opaque.initialize(example_func, OTHER, OTHER):
        assert_that(opaque.as_dict(), is_(equal_to(example_func(OTHER, OTHER))))
        assert_that(opaque.as_dict(), is_(equal_to({THIS: OTHER, THAT: OTHER})))

    with opaque.initialize(example_func, OTHER, OTHER):
        assert_that(opaque.as_dict(), is_(equal_to(example_func(OTHER, OTHER))))
        assert_that(opaque.as_dict(), is_(equal_to({THIS: OTHER, THAT: OTHER})))

    assert_that(opaque.as_dict(), is_(equal_to({THIS: VALUE})))