def process_min_max_values(self, component):
        guid = component['guid']
        name = component['name']

        if guid not in self.min_max_values.keys():
            self.min_max_values[guid] = dict()

        if name not in self.min_max_values[guid].keys():
            self.min_max_values[guid][name] = dict()

        for metric in component['metrics']:
            min_val, max_val = self.min_max_values[guid][name].get(metric,
                                                                   (None, None))
            value = component['metrics'][metric]['total']
            if min_val is not None and min_val > value:
                min_val = value

            if max_val is None or max_val < value:
                max_val = value

            if component['metrics'][metric]['min'] is None:
                component['metrics'][metric]['min'] = min_val or value

            if component['metrics'][metric]['max'] is None:
                component['metrics'][metric]['max'] = max_val

            self.min_max_values[guid][name][metric] = min_val, max_val
Test if it install an NPM package.
dataset/ETHPy150Open MeetMe/newrelic-plugin-agent/newrelic_plugin_agent/agent.py/NewRelicPluginAgent.process_min_max_values--crossover with--dataset/ETHPy150Open saltstack/salt/tests/unit/modules/npm_test.py/NpmTestCase.test_install