def __init__(self, expected_content, expected_code=<NUM_LIT:200>, decode=None):
if isinstance(expected_content, str):<EOL><INDENT>self._decode = True<EOL>expected_content = Equals(expected_content)<EOL><DEDENT>elif isinstance(expected_content, bytes):<EOL><INDENT>self._decode = False<EOL>expected_content = Equals(expected_content)<EOL><DEDENT>else:<EOL><INDENT>self._decode = decode or True<EOL><DEDENT>self.expected_content = expected_content<EOL>self.expected_code = Equals(expected_code)<EOL>
Construct a new IsResponse matcher.

        :param expected_content: The content you want to match against the
            response body. This can either be a matcher, a string, or a
            bytestring.

        :param expected_code: Tht HTTP status code you want to match against.

        :param decode: Whether to decode the response data according to the
            response charset. This can either be set implicitly or explicitly.
            If the 'expected_content' parameter is a string, this will
            implicitly be set to True. If 'expected_content' is a bytestring,
            this will be set to False. If 'expected_content' is a matcher,
            this will be set to True. Setting this parameter to a value
            explicitly disables this implicit behavior.