'``log_info`` encodes module, function, and line number in the
message_type, and passes other keyword arguments onto the message
structure.'

@capture_logging(None)
def test_log_info(self, logger):

    frame = getframeinfo(currentframe())
    log_info(key='VAL')
    line_no = (frame.lineno + 1)
    self.assertThat(logger.messages, AnyMatch(_dict_values_match(message_type=ContainsAll([__name__, u'test_log_info', unicode(line_no)]), key=Equals('VAL'))))
