def METHOD_NAME(self):
    hier = hier_block_with_message_inout()
    input = block_with_message_output()
    output = block_with_message_input()
    self.tb.msg_connect(input, "test", hier, "test")
    self.tb.msg_connect(hier, "test", output, "test")
    self.run_top_block()
    self.assert_has_num_subscriptions(input, "test", 1)
    self.assert_has_subscription(input, "test", hier.input, "test")
    self.assert_has_num_subscriptions(hier, "test", 0)
    self.assert_has_num_subscriptions(hier.output, "test", 1)
    self.assert_has_subscription(hier.output, "test", output, "test")
    self.tb.msg_disconnect(input, "test", hier, "test")
    self.tb.msg_disconnect(hier, "test", output, "test")
    self.assert_has_num_subscriptions(input, "test", 0)
    self.assert_has_num_subscriptions(hier.output, "test", 0)