def test_update_slave_last_heartbeat_time_calls_correspondig_slave_method(self, slave_alive, method_call_count):
        master = ClusterMaster()

        mock_slave = self.patch('app.master.cluster_master.Slave').return_value
        mock_slave.is_alive.return_value = slave_alive
        master.update_slave_last_heartbeat_time(mock_slave)

        self.assertEqual(mock_slave.update_last_heartbeat_time.call_count, method_call_count,
                         'last heartbeat time is updated for the target slave')
    def test_update_slave_last_heartbeat_time_calls_update_last_heartbeat_time_on_slave(
            self):
        master = ClusterMaster()

        mock_slave = self.patch('app.master.cluster_master.Slave').return_value
        master.update_slave_last_heartbeat_time(mock_slave)

        self.assertEqual(
            mock_slave.update_last_heartbeat_time.call_count, 1,
            'last heartbeat time is updated for the target slave')