.autotest

git-svn-id: svn://ultimatepp.org/upp/trunk@8575 f0d560ea-af0d-0410-9eb7-867de7ffcac7
This commit is contained in:
cxl 2015-06-21 11:50:06 +00:00
parent 50b8505a0b
commit 26d2cae864
4 changed files with 26 additions and 14 deletions

View file

@ -9,6 +9,19 @@ void AddError(int ln, const String& s)
errs.Add(AsString(ln) + ": " + s);
}
void CleanAnonymous(String& s)
{
for(;;) {
int q = s.Find('@');
if(q < 0)
return;
int qq = s.Find("/title", q);
if(qq < 0)
return;
s.Remove(q, qq - q - 1);
}
}
void Test(const char *path)
{
CppBase base;
@ -61,6 +74,7 @@ void Test(const char *path)
out << ", line: " << p.local[i].line << "\n";
}
out << "}";
CleanAnonymous(out);
LOG("====");
LOG(out);
LOG("-------------------------------------------------------------------------------");
@ -76,12 +90,10 @@ void Test(const char *path)
CONSOLE_APP_MAIN {
StdLogSetup(LOG_COUT|LOG_FILE);
SeedRandom(0);
FindFile ff(GetDataFile("*.in"));
while(ff) {
Test(ff.GetPath());
ff.Next();
for(int i = 0; i < 10000; i++) {
String p = GetDataFile("test" + AsString(i) + ".in");
if(FileExists(p))
Test(p);
}
LOG("=========== OK");
}

View file

@ -7,8 +7,8 @@ _LARGE_INTEGER {
INSTANCEVARIABLE, name: u, qitem: u, qtype: .u, qptype: , natural: struct { DWORD LowPart; LONG HighPart; } u, line 10, using
INSTANCEVARIABLE, name: QuadPart, qitem: QuadPart, qtype: LONGLONG, qptype: , natural: LONGLONG QuadPart, line 13, using
}
_LARGE_INTEGER::@rAp/jC+qxJd1pha3wMwh2A==/title {
STRUCT, name: @rAp/jC+qxJd1pha3wMwh2A==/title, qitem: struct, qtype: @rAp/jC+qxJd1pha3wMwh2A==/title, qptype: , natural: struct @rAp/jC+qxJd1pha3wMwh2A==/title, line 4, using
_LARGE_INTEGER::=/title {
STRUCT, name: =/title, qitem: struct, qtype: =/title, qptype: , natural: struct =/title, line 4, using
INSTANCEVARIABLE, name: LowPart, qitem: LowPart, qtype: DWORD, qptype: , natural: DWORD LowPart, line 5, using
INSTANCEVARIABLE, name: HighPart, qitem: HighPart, qtype: LONG, qptype: , natural: LONG HighPart, line 6, using
}
@ -29,8 +29,8 @@ _ULARGE_INTEGER {
INSTANCEVARIABLE, name: u, qitem: u, qtype: .u, qptype: , natural: struct { DWORD LowPart; DWORD HighPart; } u, line 28, using
INSTANCEVARIABLE, name: QuadPart, qitem: QuadPart, qtype: ULONGLONG, qptype: , natural: ULONGLONG QuadPart, line 31, using
}
_ULARGE_INTEGER::@Q7NOmvtSotvDdn2LZ33l2A==/title {
STRUCT, name: @Q7NOmvtSotvDdn2LZ33l2A==/title, qitem: struct, qtype: @Q7NOmvtSotvDdn2LZ33l2A==/title, qptype: , natural: struct @Q7NOmvtSotvDdn2LZ33l2A==/title, line 22, using
_ULARGE_INTEGER::=/title {
STRUCT, name: =/title, qitem: struct, qtype: =/title, qptype: , natural: struct =/title, line 22, using
INSTANCEVARIABLE, name: LowPart, qitem: LowPart, qtype: DWORD, qptype: , natural: DWORD LowPart, line 23, using
INSTANCEVARIABLE, name: HighPart, qitem: HighPart, qtype: DWORD, qptype: , natural: DWORD HighPart, line 24, using
}

View file

@ -8,8 +8,8 @@
STRUCT, name: Foo, qitem: struct, qtype: .name::Foo, qptype: , natural: struct Foo, line 3, using
INSTANCEVARIABLE, name: a, qitem: a, qtype: , qptype: , natural: int a, line 4, using
}
.name::@WJqy9ozNzEU6OSliwUJIeg==/title {
STRUCT, name: @WJqy9ozNzEU6OSliwUJIeg==/title, qitem: struct, qtype: @WJqy9ozNzEU6OSliwUJIeg==/title, qptype: , natural: struct @WJqy9ozNzEU6OSliwUJIeg==/title, line 6, using
.name::=/title {
STRUCT, name: =/title, qitem: struct, qtype: =/title, qptype: , natural: struct =/title, line 6, using
INSTANCEVARIABLE, name: bar, qitem: bar, qtype: , qptype: , natural: int bar, line 7, using
}
.name::.quack {

View file

@ -61,8 +61,8 @@ TreeNodeInfo::Extended {
INSTANCEVARIABLE, name: erotica, qitem: erotica, qtype: , qptype: , natural: bool erotica, line 24, using
CONSTRUCTOR, name: Extended, qitem: Extended(), qtype: , qptype: , natural: Extended(), line 26, using
}
TreeNodeInfo::@WF5rkVGLjWSl5vPsGUIJ1g==/title {
STRUCT, name: @WF5rkVGLjWSl5vPsGUIJ1g==/title, qitem: union, qtype: @WF5rkVGLjWSl5vPsGUIJ1g==/title, qptype: , natural: union @WF5rkVGLjWSl5vPsGUIJ1g==/title, line 28, using
TreeNodeInfo::=/title {
STRUCT, name: =/title, qitem: union, qtype: =/title, qptype: , natural: union =/title, line 28, using
INSTANCEVARIABLE, name: extended, qitem: extended, qtype: TreeNodeInfo::Extended, qptype: , natural: Extended *extended, line 29, using , pointer
INSTANCEVARIABLE, name: text, qitem: text, qtype: , qptype: , natural: char text[SMALLCHARS], line 30, using , pointer
}