static int getLonghaulTestDurationInSeconds(char *testName, int defaultDurationInSeconds)
{
	int testDuration;
	char* envVarName;

	if ((envVarName = (char*)malloc(sizeof(char) * (strlen(testName) + 17))) == NULL)
	{
		LogError("Failed computing name of ENV VAR to read test duration (malloc failed)");
	}
	else if (sprintf(envVarName, "%s_DURATION_IN_SEC", testName) <= 0)
	{
		LogError("Failed computing name of ENV VAR to read test duration (sprintf failed)");
		free(envVarName);
	}
	else
	{
		strToUpperCase(envVarName);

#ifndef MBED_BUILD_TIMESTAMP
		char *envVarValue = getenv(envVarName);
#else
		char *envVarValue = getMbedParameter(envVarName);
#endif

		if (envVarValue != NULL)
		{
			testDuration = atoi(envVarValue);

			if (testDuration <= 0)
			{
				testDuration = defaultDurationInSeconds;
			}
		}
		else
		{
			testDuration = 0;
		}

		free(envVarName);
	}

	return testDuration;
}
예제 #2
0
Immediate::Immediate(char* pValue,ImmediateEncoding base, AccessMode am)
{
	Operand::setAccessMode(am);
	m_orig = std::string(pValue);
		
	m_data = Immediate::parse(m_orig,base);
	switch(base) {
		case BASE_HEX:
			strToUpperCase(m_orig);
			break;
		case BASE_ASC:
			m_orig = "'" + m_orig;
			m_orig = m_orig + "'";
			break;
			m_orig = "0x" + m_orig ;
			break;
		case BASE_BIN:
			m_orig = "0b" + m_orig;
		default:
			break;
	}
}
예제 #3
0
String toUpperCase(const String &str) {
  String result(str);
  strToUpperCase(result.cstr());
  return result;
}