<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def get_metric_values(self):
 """ Get the faked metrics, for all metric groups and all resources that have been prepared on the manager object of this context object. Returns: iterable of tuple (group_name, iterable of values):
 The faked metrics, in the order they had been added, where: group_name (string):
 Metric group name. values (:class:~zhmcclient.FakedMetricObjectValues`):
 The metric values for one resource at one point in time. """

        group_names = self.properties.get('metric-groups', None)
        if not group_names:
            group_names = self.manager.get_metric_values_group_names()
        ret = []
        for group_name in group_names:
            try:
                mo_val = self.manager.get_metric_values(group_name)
                ret_item = (group_name, mo_val)
                ret.append(ret_item)
            except ValueError:
                pass  # ignore metric groups without metric values
        return ret