mirror of
https://github.com/ultimatepp/ultimatepp.git
synced 2026-05-21 06:45:39 -06:00
.autotest
git-svn-id: svn://ultimatepp.org/upp/trunk@8575 f0d560ea-af0d-0410-9eb7-867de7ffcac7
This commit is contained in:
parent
50b8505a0b
commit
26d2cae864
4 changed files with 26 additions and 14 deletions
|
|
@ -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");
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 {
|
||||
|
|
|
|||
|
|
@ -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
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue