mirror of
https://github.com/beefytech/Beef.git
synced 2025-06-08 11:38:21 +02:00
Fixed test ShouldFail cases
This commit is contained in:
parent
a9872fcbac
commit
6c0b329d57
4 changed files with 38 additions and 12 deletions
|
@ -214,18 +214,20 @@ static void TestReadCmd(Beefy::String& str);
|
|||
|
||||
static void Internal_FatalError(const char* error)
|
||||
{
|
||||
if (gClientPipe != NULL)
|
||||
if ((gClientPipe != NULL) && (!gTestBreakOnFailure))
|
||||
{
|
||||
Beefy::String str = ":TestFatal\t";
|
||||
str += error;
|
||||
str.Replace('\n', '\r');
|
||||
str += "\n";
|
||||
TestString(str);
|
||||
|
||||
Beefy::String result;
|
||||
TestReadCmd(result);
|
||||
TestReadCmd(result);
|
||||
exit(1);
|
||||
}
|
||||
|
||||
BfpSystem_FatalError(error, "BEEF FATAL ERROR");
|
||||
else
|
||||
BfpSystem_FatalError(error, "BEEF FATAL ERROR");
|
||||
}
|
||||
|
||||
extern "C" BFRT_EXPORT int BF_CALLTYPE ftoa(float val, char* str)
|
||||
|
@ -396,6 +398,13 @@ void* Internal::UnsafeCastToPtr(Object* obj)
|
|||
|
||||
void Internal::ThrowIndexOutOfRange(intptr stackOffset)
|
||||
{
|
||||
if (gClientPipe != NULL)
|
||||
{
|
||||
Beefy::String str = ":TestFail\tIndex out of range\n";
|
||||
TestString(str);
|
||||
exit(1);
|
||||
}
|
||||
|
||||
if ((stackOffset != -1) && (::IsDebuggerPresent()))
|
||||
{
|
||||
SETUP_ERROR("Index out of range", (int)(2 + stackOffset));
|
||||
|
@ -406,7 +415,17 @@ void Internal::ThrowIndexOutOfRange(intptr stackOffset)
|
|||
}
|
||||
|
||||
void Internal::FatalError(bf::System::String* error, intptr stackOffset)
|
||||
{
|
||||
{
|
||||
if (gClientPipe != NULL)
|
||||
{
|
||||
Beefy::String str = ":TestFail\t";
|
||||
str += error->CStr();
|
||||
str.Replace('\n', '\r');
|
||||
str += "\n";
|
||||
TestString(str);
|
||||
exit(1);
|
||||
}
|
||||
|
||||
if ((stackOffset != -1) && (::IsDebuggerPresent()))
|
||||
{
|
||||
SETUP_ERROR(error->CStr(), (int)(2 + stackOffset));
|
||||
|
@ -640,6 +659,7 @@ void Internal::Test_Error(char* error)
|
|||
{
|
||||
Beefy::String str = ":TestFail\t";
|
||||
str += error;
|
||||
str.Replace('\n', '\r');
|
||||
str += "\n";
|
||||
TestString(str);
|
||||
}
|
||||
|
@ -651,12 +671,7 @@ void Internal::Test_Write(char* strPtr)
|
|||
{
|
||||
Beefy::String str = ":TestWrite\t";
|
||||
str += strPtr;
|
||||
for (char& c : str)
|
||||
{
|
||||
if (c == '\n')
|
||||
c = '\r';
|
||||
}
|
||||
|
||||
str.Replace('\n', '\r');
|
||||
str += "\n";
|
||||
TestString(str);
|
||||
}
|
||||
|
|
|
@ -690,6 +690,16 @@ void StringImpl::ReplaceLargerHelper(const StringView& find, const StringView& r
|
|||
mLength = (int_strsize)destLength;
|
||||
}
|
||||
|
||||
void StringImpl::Replace(char find, char replace)
|
||||
{
|
||||
auto ptr = GetMutablePtr();
|
||||
for (int i = 0; i < mLength; i++)
|
||||
{
|
||||
if (ptr[i] == find)
|
||||
ptr[i] = replace;
|
||||
}
|
||||
}
|
||||
|
||||
void StringImpl::Replace(const StringView& find, const StringView & replace)
|
||||
{
|
||||
if (replace.mLength > find.mLength)
|
||||
|
|
|
@ -1015,6 +1015,7 @@ public:
|
|||
}
|
||||
|
||||
void ReplaceLargerHelper(const StringView& find, const StringView& replace);
|
||||
void Replace(char find, char replace);
|
||||
void Replace(const StringView& find, const StringView& replace);
|
||||
void TrimEnd();
|
||||
void TrimStart();
|
||||
|
|
|
@ -301,7 +301,7 @@ namespace IDE
|
|||
testEntry.mExecuted = true;
|
||||
|
||||
String clientCmd = scope $":TestRun\t{testInstance.mCurTestIdx}";
|
||||
if ((gApp.mTestBreakOnFailure) && (mDebug))
|
||||
if ((gApp.mTestBreakOnFailure) && (mDebug) && (!testEntry.mShouldFail))
|
||||
clientCmd.Append("\tFailBreak");
|
||||
clientCmd.Append("\n");
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue