예제 #1
0
//--------------------------------------------------------------------------------------------------
static void Testle_temp_SetGetRadioThresholds
(
)
{
    int32_t oldWarningTemp = 0;
    int32_t oldCriticalTemp = 0;
    int32_t warningTemp = 0;
    int32_t criticalTemp = 0;
    int32_t refwarningTemp = 0;
    int32_t refcriticalTemp = 0;
    le_result_t res = LE_FAULT;

    res = le_temp_GetRadioThresholds(&oldWarningTemp, &oldCriticalTemp);
    LE_ASSERT(res == LE_OK);
    LE_INFO("le_temp_GetRadioThresholds(%d, %d)", oldWarningTemp, oldCriticalTemp);

    refwarningTemp = oldWarningTemp - 30;
    refcriticalTemp = oldCriticalTemp - 20;

    res = le_temp_SetRadioThresholds(refwarningTemp, refcriticalTemp);
    LE_ASSERT(res == LE_OK);
    LE_INFO("le_temp_SetThreshold(%d, %d)", refwarningTemp, refcriticalTemp);

    res = le_temp_GetRadioThresholds(&warningTemp, &criticalTemp);
    LE_ASSERT(res == LE_OK);
    LE_INFO("le_temp_GetThreshold(%d, %d)", warningTemp, criticalTemp);
    LE_ASSERT(warningTemp == refwarningTemp);
    LE_ASSERT(criticalTemp == refcriticalTemp);

    // Test with critical threshold equal to the warning temperature.
    res = le_temp_SetRadioThresholds(warningTemp, warningTemp);
    LE_INFO("le_temp_SetThreshold(%d, %d)", warningTemp, warningTemp);
    LE_ASSERT(res == LE_BAD_PARAMETER);

    refwarningTemp = oldWarningTemp;
    refcriticalTemp = oldWarningTemp - 10;

    // Test with critical threshold temperature lesser than the warning temperature.
    res = le_temp_SetRadioThresholds(refwarningTemp, refcriticalTemp);
    LE_INFO("le_temp_SetThreshold(%d, %d)", refwarningTemp, refcriticalTemp);
    LE_ASSERT(res == LE_BAD_PARAMETER);

    LE_INFO("Restore Initial thresold values warning=%d, critical=%d",
        oldWarningTemp, oldCriticalTemp);

    res = le_temp_SetRadioThresholds(oldWarningTemp, oldCriticalTemp);
    LE_INFO("le_temp_SetThreshold(%d, %d)", oldWarningTemp, oldCriticalTemp);
    LE_ASSERT(res == LE_OK);
    res = le_temp_GetRadioThresholds(&warningTemp, &criticalTemp);
    LE_ASSERT(res == LE_OK);
    LE_INFO("le_temp_GetThreshold(%d, %d)", warningTemp, criticalTemp);
    LE_ASSERT(warningTemp == oldWarningTemp);
    LE_ASSERT(criticalTemp == oldCriticalTemp);
}
예제 #2
0
파일: main.c 프로젝트: H-H-bin/legato-af
//--------------------------------------------------------------------------------------------------
void Testle_Temp_TestBadReturnCode
(
    void
)
{
    int32_t platformTemp=0;
    int32_t lowCriticalTemp=1, lowCriticalTempTmp=0;;
    int32_t lowWarningTemp=3, lowWarningTempTmp=0;
    int32_t hiWarningTemp=5, hiWarningTempTmp=0;
    int32_t hiCriticalTemp=7, hiCriticalTempTmp=0;
    int32_t radioTemp=0;

    pa_tempSimu_SetReturnCode(LE_FAULT);
    LE_ASSERT(le_temp_GetPlatformTemperature(&platformTemp) == LE_FAULT);
    LE_ASSERT(le_temp_GetPlatformThresholds(&lowCriticalTempTmp,
                                            &lowWarningTempTmp,
                                            &hiWarningTempTmp,
                                            &hiCriticalTempTmp) == LE_FAULT);
    LE_ASSERT(le_temp_GetRadioTemperature(&radioTemp) == LE_FAULT);
    LE_ASSERT(le_temp_GetRadioThresholds(&hiWarningTempTmp, &hiCriticalTempTmp) == LE_FAULT);
    LE_ASSERT(le_temp_SetPlatformThresholds(lowCriticalTemp,
                                            lowWarningTemp,
                                            hiWarningTemp,
                                            hiCriticalTemp) == LE_FAULT);
    LE_ASSERT(le_temp_SetRadioThresholds(hiWarningTemp, hiCriticalTemp) == LE_FAULT);
}
예제 #3
0
파일: main.c 프로젝트: H-H-bin/legato-af
//--------------------------------------------------------------------------------------------------
void Testle_Temp_TestCorrectUsage
(
    void
)
{
    int32_t platformTemp=0;
    int32_t lowCriticalTemp=1, lowCriticalTempTmp=0;;
    int32_t lowWarningTemp=3, lowWarningTempTmp=0;
    int32_t hiWarningTemp=5, hiWarningTempTmp=0;
    int32_t hiCriticalTemp=7, hiCriticalTempTmp=0;
    int32_t radioTemp=0;

    pa_tempSimu_SetReturnCode(LE_OK);

    LE_ASSERT(le_temp_GetPlatformTemperature(&platformTemp) == LE_OK);
    LE_ASSERT(platformTemp==PA_SIMU_TEMP_DEFAULT_PLATFORM_TEMP);

    LE_ASSERT(le_temp_GetPlatformThresholds(&lowCriticalTempTmp,
                                            &lowWarningTempTmp,
                                            &hiWarningTempTmp,
                                            &hiCriticalTempTmp) == LE_OK);
    LE_ASSERT(lowCriticalTempTmp == PA_SIMU_TEMP_DEFAULT_PLATFORM_LOW_CRIT);
    LE_ASSERT(lowWarningTempTmp == PA_SIMU_TEMP_DEFAULT_PLATFORM_LOW_WARN);
    LE_ASSERT(hiWarningTempTmp == PA_SIMU_TEMP_DEFAULT_PLATFORM_HIGH_WARN);
    LE_ASSERT(hiCriticalTempTmp == PA_SIMU_TEMP_DEFAULT_PLATFORM_HIGH_CRIT);

    LE_ASSERT(le_temp_GetRadioTemperature(&radioTemp) == LE_OK);
    LE_ASSERT(radioTemp == PA_SIMU_TEMP_DEFAULT_RADIO_TEMP);

    LE_ASSERT(le_temp_GetRadioThresholds(&hiWarningTempTmp, &hiCriticalTempTmp) == LE_OK);
    LE_ASSERT(hiWarningTempTmp == PA_SIMU_TEMP_DEFAULT_RADIO_HIGH_WARN);
    LE_ASSERT(hiCriticalTempTmp == PA_SIMU_TEMP_DEFAULT_RADIO_HIGH_CRIT);

    LE_ASSERT(le_temp_SetPlatformThresholds(lowCriticalTemp,
                                            lowWarningTemp,
                                            hiWarningTemp,
                                            hiCriticalTemp) == LE_OK);

    // Check if the values are correctly set in the PA
    lowCriticalTempTmp = lowWarningTempTmp = hiWarningTempTmp = hiCriticalTempTmp = 0;
    pa_temp_GetPlatformThresholds(&lowCriticalTempTmp,
                                  &lowWarningTempTmp,
                                  &hiWarningTempTmp,
                                  &hiCriticalTempTmp);
    LE_ASSERT(lowCriticalTemp == lowCriticalTempTmp);
    LE_ASSERT(lowWarningTemp == lowWarningTempTmp);
    LE_ASSERT(hiWarningTemp == hiWarningTempTmp);
    LE_ASSERT(hiCriticalTemp == hiCriticalTempTmp);

    LE_ASSERT(le_temp_SetRadioThresholds(hiWarningTemp, hiCriticalTemp) == LE_OK);
    hiWarningTempTmp = hiCriticalTempTmp = 0;
    pa_temp_GetRadioThresholds(&hiWarningTempTmp, &hiCriticalTempTmp);
    LE_ASSERT(hiWarningTemp == hiWarningTempTmp);
    LE_ASSERT(hiCriticalTemp == hiCriticalTempTmp);
}
예제 #4
0
파일: main.c 프로젝트: H-H-bin/legato-af
//--------------------------------------------------------------------------------------------------
void Testle_Temp_TestBadParameters
(
    void
)
{
    pa_tempSimu_SetReturnCode(LE_OK);
    LE_ASSERT(le_temp_GetPlatformTemperature(NULL) == LE_FAULT);
    LE_ASSERT(le_temp_GetPlatformThresholds(NULL,NULL,NULL,NULL) == LE_FAULT);
    LE_ASSERT(le_temp_GetRadioTemperature(NULL) == LE_FAULT);
    LE_ASSERT(le_temp_GetRadioThresholds(NULL,NULL) == LE_FAULT);
    LE_ASSERT(le_temp_SetPlatformThresholds(2,2,3,5) == LE_BAD_PARAMETER);
    LE_ASSERT(le_temp_SetPlatformThresholds(1,0,3,5) == LE_BAD_PARAMETER);
    LE_ASSERT(le_temp_SetPlatformThresholds(1,2,0,5) == LE_BAD_PARAMETER);
    LE_ASSERT(le_temp_SetPlatformThresholds(1,2,3,4) == LE_BAD_PARAMETER);
    LE_ASSERT(le_temp_SetRadioThresholds(3,4) == LE_BAD_PARAMETER);
}