mirror of
https://github.com/ultimatepp/ultimatepp.git
synced 2026-07-11 22:03:01 -06:00
.autotest
git-svn-id: svn://ultimatepp.org/upp/trunk@9772 f0d560ea-af0d-0410-9eb7-867de7ffcac7
This commit is contained in:
parent
b0af8f1bb3
commit
f8bf1bb387
2 changed files with 24 additions and 27 deletions
|
|
@ -4,95 +4,93 @@ using namespace Upp;
|
|||
|
||||
CONSOLE_APP_MAIN
|
||||
{
|
||||
#ifdef CPP_11
|
||||
StdLogSetup(LOG_COUT|LOG_FILE);
|
||||
int a = 0;
|
||||
|
||||
{
|
||||
Callback cb;
|
||||
cb = lambda([&] { a = 1; LOG("Callback"); });
|
||||
Event<> cb;
|
||||
cb << [&] { a = 1; LOG("Event"); };
|
||||
cb();
|
||||
ASSERT(a == 1);
|
||||
}
|
||||
|
||||
{
|
||||
Callback cb;
|
||||
cb = LAMBDA { a = 1; LOG("Callback"); };
|
||||
Event<> cb;
|
||||
cb << [&] { a = 1; LOG("Event"); };
|
||||
cb();
|
||||
ASSERT(a == 1);
|
||||
}
|
||||
|
||||
{
|
||||
Callback1<int> cb;
|
||||
cb = lambda([&](int b) { a = b; LOG("Callback1"); });
|
||||
Event<int> cb;
|
||||
cb << [&](int b) { a = b; LOG("Event1"); };
|
||||
cb(123);
|
||||
ASSERT(a == 123);
|
||||
}
|
||||
|
||||
{
|
||||
Callback1<int> cb;
|
||||
cb = LAMBDA(int b) { a = b; LOG("Callback1"); };
|
||||
Event<int> cb;
|
||||
cb << [&](int b) { a = b; LOG("Event1"); };
|
||||
cb(123);
|
||||
ASSERT(a == 123);
|
||||
}
|
||||
|
||||
{
|
||||
Callback2<int, int> cb;
|
||||
cb = lambda([&](int b, int c) { a = b + c; LOG("Callback2"); });
|
||||
Event<int, int> cb;
|
||||
cb << [&](int b, int c) { a = b + c; LOG("Event2"); };
|
||||
cb(1, 20);
|
||||
ASSERT(a == 21);
|
||||
}
|
||||
|
||||
{
|
||||
Callback3<int, int, int> cb;
|
||||
cb = lambda([&](int b, int c, int d) { a = b + c + d; LOG("Callback3"); });
|
||||
Event<int, int, int> cb;
|
||||
cb << [&](int b, int c, int d) { a = b + c + d; LOG("Event3"); };
|
||||
cb(1, 20, 300);
|
||||
ASSERT(a == 321);
|
||||
}
|
||||
|
||||
{
|
||||
Callback4<int, int, int, int> cb;
|
||||
cb = lambda([&](int b, int c, int d, int e) { a = b + c + d + e; LOG("Callback4"); });
|
||||
Event<int, int, int, int> cb;
|
||||
cb << [&](int b, int c, int d, int e) { a = b + c + d + e; LOG("Event4"); };
|
||||
cb(1, 20, 300, 4000);
|
||||
ASSERT(a == 4321);
|
||||
}
|
||||
|
||||
{
|
||||
Gate cb;
|
||||
cb = lambda([&] { a = 1; LOG("Gate"); return true; });
|
||||
EventGate<> cb;
|
||||
cb << [&] { a = 1; LOG("EventGate"); return true; };
|
||||
ASSERT(cb());
|
||||
ASSERT(a == 1);
|
||||
}
|
||||
|
||||
{
|
||||
Gate1<int> cb;
|
||||
cb = lambda([&](int b) { a = b; LOG("Gate1"); return false; });
|
||||
EventGate<int> cb;
|
||||
cb << [&](int b) { a = b; LOG("EventGate1"); return false; };
|
||||
ASSERT(!cb(123));
|
||||
ASSERT(a == 123);
|
||||
}
|
||||
|
||||
{
|
||||
Gate2<int, int> cb;
|
||||
cb = lambda([&](int b, int c) { a = b + c; LOG("Gate2"); return true; });
|
||||
EventGate<int, int> cb;
|
||||
cb << [&](int b, int c) { a = b + c; LOG("EventGate2"); return true; };
|
||||
ASSERT(cb(1, 20));
|
||||
ASSERT(a == 21);
|
||||
}
|
||||
|
||||
{
|
||||
Gate3<int, int, int> cb;
|
||||
cb = lambda([&](int b, int c, int d) { a = b + c + d; LOG("Gate3"); return true; });
|
||||
EventGate<int, int, int> cb;
|
||||
cb << [&](int b, int c, int d) { a = b + c + d; LOG("EventGate3"); return true; };
|
||||
ASSERT(cb(1, 20, 300));
|
||||
ASSERT(a == 321);
|
||||
}
|
||||
|
||||
{
|
||||
Gate4<int, int, int, int> cb;
|
||||
cb = lambda([&](int b, int c, int d, int e) { a = b + c + d + e; LOG("Gate4"); return true; });
|
||||
EventGate<int, int, int, int> cb;
|
||||
cb << [&](int b, int c, int d, int e) { a = b + c + d + e; LOG("EventGate4"); return true; };
|
||||
ASSERT(cb(1, 20, 300, 4000));
|
||||
ASSERT(a == 4321);
|
||||
}
|
||||
|
||||
LOG("========== OK");
|
||||
#endif
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -21,7 +21,6 @@ CONSOLE_APP_MAIN
|
|||
Check< BiArray<int> > ();
|
||||
|
||||
Check< Index<int> > ();
|
||||
Check< ArrayIndex<int> > ();
|
||||
Check< VectorMap<int, int> > ();
|
||||
Check< ArrayMap<int, int> > ();
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue