def test_given_type(compiler: RequestBodyCompiler, default_body, type_key, expected): replaced_body = NonCallableMock(RequestBodyCompiled) replaced_body.compile_and_replace = Mock(return_value=sentinel.new_result) default_body.replace = Mock(return_value=replaced_body) obj = {"type": Argument("type"), "foo": Argument("foo")} compiled = compiler.compile(obj, {"type": type_key, "foo": "bar"}) assert compiled is sentinel.new_result default_body.replace.assert_called_once_with(expected) replaced_body.compile_and_replace.assert_called_once_with({ "type": type_key, "foo": "bar" })
def default_body(): default = NonCallableMock(RequestBodyCompiled) default.compile_and_replace = Mock(return_value=sentinel.default_result) return default