Ejemplo n.º 1
0
def test_load_empty_action():
    from sonic_platform_base.sonic_thermal_control.thermal_policy import ThermalPolicy
    with open(os.path.join(test_path, 'empty_action.json')) as f:
        json_obj = json.load(f)
        policy = ThermalPolicy()
        with pytest.raises(Exception):
            policy.load_from_json(json_obj)
    def _add_private_thermal_policy(cls):
        dynamic_min_speed_policy = ThermalPolicy()
        dynamic_min_speed_policy.conditions[
            MinCoolingLevelChangeCondition] = MinCoolingLevelChangeCondition()
        dynamic_min_speed_policy.actions[
            ChangeMinCoolingLevelAction] = ChangeMinCoolingLevelAction()
        cls._policy_dict[
            'DynamicMinCoolingLevelPolicy'] = dynamic_min_speed_policy

        update_psu_fan_speed_policy = ThermalPolicy()
        update_psu_fan_speed_policy.conditions[
            CoolingLevelChangeCondition] = CoolingLevelChangeCondition()
        update_psu_fan_speed_policy.actions[
            UpdatePsuFanSpeedAction] = UpdatePsuFanSpeedAction()
        cls._policy_dict[
            'UpdatePsuFanSpeedPolicy'] = update_psu_fan_speed_policy

        update_cooling_level_policy = ThermalPolicy()
        update_cooling_level_policy.conditions[
            UpdateCoolingLevelToMinCondition] = UpdateCoolingLevelToMinCondition(
            )
        update_cooling_level_policy.actions[
            UpdateCoolingLevelToMinAction] = UpdateCoolingLevelToMinAction()
        cls._policy_dict[
            'UpdateCoolingLevelPolicy'] = update_cooling_level_policy