Christian Thaeter
e0939e9469
improve the mmap handling
...
* add frontend interfaces to file to get a mmaping
* SECTION macro to encapsulate mmap access
* mmap_address() translating an actual offset to address
* add some tests
* some test cosmetics
2010-07-21 04:28:42 +02:00
Christian Thaeter
b578c273d5
Increase valgrind time limits for tests and fix test.sh glitch
...
On my slow laptop some tests fail because of timeouts under
valgrind, going to 55/60 seconds should be sane.
Fixing an undiscovered bug ignoring timeout configs in test.sh.
2010-07-16 21:47:08 +02:00
Christian Thaeter
99d5d3765f
FIX: Add remaining tests to the Makefiles, sort Makefiles
2010-07-16 21:44:44 +02:00
Christian Thaeter
e6d7b39ffe
disable the resourcecollector test (not finished yet)
2010-07-16 05:39:11 +02:00
Christian Thaeter
d6a18ed9a7
post-merge autotools fixup
2010-07-16 05:39:01 +02:00
e16ca49894
Merge in new (experimental) 'advice' concept
2010-07-14 04:33:42 +02:00
5c6a6c150f
clean up any remaining use of wstring
...
I consider wstring a deprecated technology
UTF-8 is all we need
2010-06-27 03:48:00 +02:00
002f024ed8
SCons: improve dependency handling for the testsuite
2010-06-26 05:08:16 +02:00
639aff0fa5
(cont) analyzing the problem of output designation
2010-06-25 04:43:06 +02:00
a85d885104
Fix RegExp causing MObjectRef_test to fail randomly
...
...by matching an LUID in the previous line.
Thanks to Cehteh for spotting this
2010-06-21 03:47:18 +02:00
5e104b633a
querying for specific objects (automatically pick target type)
2010-06-19 08:47:28 +02:00
c1cb5320e0
factor the specific query into separate header
2010-06-19 05:37:39 +02:00
c80b1894e6
Clean up design of ScopeQuery, throw out Iterator mixin ( closes #641 )
2010-06-19 05:20:34 +02:00
fab1c699ea
draft test to verify behaviour
...
but doesn't work; somehow the filterfunciton of the baseclass
gets installed
2010-06-16 06:45:38 +02:00
a1f3ad835b
investigating the problem of finding an object with given conditions
2010-06-15 05:24:05 +02:00
fc3e43bb19
re-reading my design and plannings from March, identiyfying next steps to take
2010-06-13 03:34:12 +02:00
e574fdf702
fix a regression regarding struct-asset naming scheme
2010-06-13 00:31:41 +02:00
68aefe5074
implement a simple singleton holder for NIL/default objects
2010-06-12 19:45:01 +02:00
a6621703af
SCons: improve dependency handling for the testsuite
2010-06-12 19:44:38 +02:00
cb838ba5b6
extend killer-stash to allow registration of custom deleter functions
2010-06-12 03:12:02 +02:00
eb19f59ba0
deleter memorising component passes unit test ( #629 )
2010-06-07 03:32:41 +02:00
6b90767468
draft a component to manage deleter functions
2010-06-06 04:26:23 +02:00
dee4c33c55
change the index-interface from free to member functions
...
part of Ticket #628
2010-06-06 02:11:40 +02:00
2360f9b4c0
Advice colaboration: implemented and passes basic unit test
2010-06-05 05:09:42 +02:00
7895ce5f49
solve the problem with re-binding and advice::Request
2010-06-04 17:25:33 +02:00
72c01e12c9
implement a simple singleton holder for NIL/default objects
2010-06-03 04:40:38 +02:00
69af735070
reconsider advice implementation. Investigate some tricky implementation decisions
2010-06-03 04:40:37 +02:00
7dcdff3287
advice-basics: stubbed and fixed to pass compiler
2010-06-03 04:40:37 +02:00
83b5c8c2c2
WIP code up external advice API
2010-06-03 04:40:37 +02:00
c9437b3bff
binding index unit test pass
2010-06-03 04:40:37 +02:00
0c123e4af3
Bugfix
2010-06-03 04:40:36 +02:00
d00d42b58c
code up the core solution finding logic
2010-06-03 04:40:36 +02:00
bf02d6d03f
adapter interface for the test-entry
2010-06-03 04:40:36 +02:00
530940254e
stubbed advice binding index implementation
2010-06-03 04:40:36 +02:00
c8ac2b0447
planning the advice binding index implementation
2010-06-03 04:40:35 +02:00
5b48b9f864
fix a regression regarding struct-asset naming scheme
2010-06-03 04:40:35 +02:00
0514c24487
Advice binding pattern finished, passing unit test
...
now detecting a lot of syntax errors
2010-06-03 04:40:35 +02:00
6bc78064d1
SCons: improve dependency handling for the testsuite
2010-06-03 04:40:35 +02:00
1e28c7f1ab
get the advice binding unit test to pass thus far
2010-06-03 04:40:35 +02:00
85f8035f92
Implement parsing of Advice binding pattern spec
2010-06-03 04:40:35 +02:00
f2269b7e78
Implement Advice binding pattern
2010-06-03 04:40:35 +02:00
f27024172f
Implementation skeleton for advice binding match
2010-06-03 04:40:34 +02:00
e3c963378f
outline some implementation details regarding the Bindings to match
2010-06-03 04:40:34 +02:00
3e2b78b670
fill in the basic definitions to make the draft test compile
2010-06-03 04:40:34 +02:00
b789c110fa
test-driven brainstorming: how the basic advice collaboration should work
2010-06-03 04:40:34 +02:00
abe8d876dd
Start planning the Advice implementation: skeleton of unit tests
2010-06-03 04:40:34 +02:00
1f988e17cd
unfinished code commented out
2010-06-03 04:37:22 +02:00
0f6c2e84d2
test-driven brainstorming: TypedID usage
2010-06-03 04:37:22 +02:00
a78845507a
cleanup
2010-06-03 04:37:20 +02:00
e61eb01942
experimental fix for #307
2010-06-03 04:37:20 +02:00
debba6f769
Fix PlacementIndex corruption while deleting recursively
2010-06-03 04:37:20 +02:00
82d8d26308
extend the map iterator adapter to work on STL ranges
2010-06-03 04:37:20 +02:00
939270063e
helper: take snapshot of a given Lumiera or STL iterator
2010-06-03 04:37:20 +02:00
81f87ba852
similar low-level iterator adapter for multimap value groups
2010-06-03 04:37:20 +02:00
c5e4725dcb
implement another wrapper to filter duplicates
2010-06-03 04:37:19 +02:00
73a2aea50c
draft a low-level adapter to get all keys/vals of a stl::map
...
intention is just to use a thin wrapper, without
abstracting the implementation type (as IterSource does)
2010-06-03 04:37:19 +02:00
fc44e522e0
improve PlacementIndex self-verification
2010-06-03 04:37:19 +02:00
57a9b1a270
Iterator adapter to ennumerate all values to a multimap key ( closes #492 )
2010-06-03 04:37:19 +02:00
c9bf26d8c4
EntryID finished and passes unit test
2010-06-03 04:37:19 +02:00
c691213003
EntryID: fix symbol generation and improve ordering
2010-06-03 04:37:19 +02:00
b21db07aff
implement generic object attach-to-model and purge
2010-06-03 04:37:18 +02:00
c43040985c
more stubbing and compilation fixes
2010-06-03 04:37:18 +02:00
e4f015d622
WIP remaining parts of the EntryID implementation, untested
2010-06-03 04:37:18 +02:00
07146ad373
WIP parts of the EntryID implementation, refactor struct asset name generation
2010-06-03 04:37:18 +02:00
2131488afb
test-driven brainstorming: simplified asset-like ID
2010-06-03 04:37:17 +02:00
39355713fd
cleanup
2010-06-03 04:37:17 +02:00
1119b917a9
planning general refactoring to allow intended binding/sequence handling
2010-06-03 04:37:17 +02:00
c93dfc4f29
partially refactor into library
2010-06-03 04:37:16 +02:00
479bbbb6c7
clarify how deregistration works
2010-06-03 04:37:16 +02:00
dd3d22f950
implement registry for element-tracking. passes unit test
2010-06-03 04:37:16 +02:00
9ec865c3ab
Stubbing and definitions to get element-tracking to compile
2010-06-03 04:37:16 +02:00
55df5205a4
draft a mixin for adding element-tracking functionality
2010-06-03 04:37:15 +02:00
bdb21c4aa8
draft required functionality for the element-tracker
2010-06-03 04:37:15 +02:00
c7a9b04fba
refactor SessionImpl to support nested interface modules on the API
2010-06-03 04:37:15 +02:00
fa0482fab4
WIP add sub-interfaces to the session API
2010-06-03 04:37:15 +02:00
bfc18dfb94
consider using RefArray for the Session API
2010-06-03 04:37:14 +02:00
ea538d962f
test-driven brainstorming: adding and removing session parts
2010-06-03 04:37:14 +02:00
8f34129f60
planning: structural assets and the track-ID
2010-06-03 04:37:14 +02:00
8eb0a16134
cast the new spec regarding timeline/session into unit test code
2010-06-03 04:37:14 +02:00
4594ddde3a
WIP: test driven brainstorming regarding sequence/timeline handling
2010-06-03 04:37:13 +02:00
c2cbe4c9e8
change Timeline and Sequence to be structural assets
2010-06-03 04:37:13 +02:00
d4b66a42ad
WIP: test driven brainstorming about the session API
2010-06-03 04:37:13 +02:00
092ea07b76
kill "the EDL"
2010-06-03 04:37:12 +02:00
f0aed2c2cc
fix dummy compilation/tests
2010-05-21 03:50:41 +02:00
86bc30a10a
Merge Ubuntu/Lucid adjustments. Drop pre 1.0 compatibility
2010-05-21 03:43:09 +02:00
Christian Thaeter
9d99300841
FIX : #619 , New Nobug required! version 201005.1
...
add the 'extra' argument to mpool dumps.
Solves Linking problems on some distros.
2010-05-12 00:46:39 +02:00
030320352d
Bugfix test.sh: detecting literally defined output
2010-04-16 02:23:25 +02:00
9f2affb41b
SCons: feed test.conf to test.sh (for correct output filtering)
2010-02-15 03:25:01 +01:00
5b9aa5deb2
landing the new threadpool implementation
2010-02-15 00:48:52 +01:00
1c63a02e23
augment and round up the C++ thread wrapper
2010-02-14 23:39:15 +01:00
90d311dc1d
Error integration: error::Flag as subclass of State. Wrapped throw
2010-02-13 20:56:41 +01:00
dc991ca563
valgrind suppression: add some more cases to be filtered
2010-02-13 06:00:38 +01:00
Michael Ploujnikov
433448ff44
use _join() instead of a second _sync() to wait for the worker to finish
2010-02-12 07:20:32 -05:00
b556343fb6
re-enable typed-counter-test; passing just fine again
2010-02-12 01:54:12 +01:00
dfd70c6069
replace GThreads by the Lumiera thread wrapper
2010-02-11 03:06:42 +01:00
Michael Ploujnikov
d80ae17ea4
test simple-sync: avoid a race condition in output checking by using an assert
2010-02-10 20:53:44 -05:00
Michael Ploujnikov
62b70bfd7e
test sync-joinable: use asserts instead of checking the program output
2010-02-10 20:53:32 -05:00
Michael Ploujnikov
5d929f1522
test sync-many: replace output checking with asserts
...
Also modify the input value right after passing to a worker thread. This is a better test of synchronization.
2010-02-10 20:53:13 -05:00
Christian Thaeter
26f88bc3f1
Merge remote branch 'plouj/second-tp-attempt' into backend_devel
...
* plouj/second-tp-attempt:
basic joinable thread test
joinable thread sync test
2010-02-08 18:20:05 +01:00
5386fe6fbc
clarify (and treat) the race; considered to be test-only
...
After removing the explicit locking, there is a small
race in case of a "floundering" (simulated) subsystem:
the starting context may go away before the child thread
actually teminates. I consider this a shortcoming of
this test fixture, which isn't intended to be an example
of a real world subsystem, but rather focusses on
error detection within the subsystem runner.
2010-02-07 17:31:28 +01:00
8ad3bf1736
Change subsystem-runner test to remove explicit locking entirely
2010-02-07 02:56:30 +01:00
Christian Thaeter
33a0591689
Make resourcecollector initialization explicit
...
instead automatic initialization, the resourcecollector is pulled up as
backend service.
2010-02-05 09:20:52 +01:00
Christian Thaeter
d350a250fa
Move the resourcecollector to the backend, closes #521
2010-02-05 08:58:19 +01:00
Michael Ploujnikov
c64984b859
Merge remote branch 'ct/backend_devel' into second-tp-attempt
2010-02-04 22:48:03 -05:00
Christian Thaeter
53a747dcca
add little more cleanups to mmap.tests
2010-02-04 22:30:46 +01:00
c406d16fbc
threadwrapper-test should have been better written this way...
2010-02-04 18:48:47 +01:00
Christian Thaeter
cdd8136524
uppercase the 'TESTS' nobug flag for the testsuite, fix tests
...
this flag is little special and can be confused with runtime flags
2010-02-04 09:47:29 +01:00
Michael Ploujnikov
48829bc9ad
basic joinable thread test
2010-02-03 17:06:27 -05:00
Michael Ploujnikov
bd6ed5aa88
joinable thread sync test
...
Right now causes 32bytes to be lost
2010-02-03 08:02:41 -05:00
Christian Thaeter
711af29605
Merge remote branch 'plouj/second-tp-attempt' into backend_devel
...
* plouj/second-tp-attempt:
added two sync tests
show the state name string
it is more proper to use cond_sync flags for *CONDITION_SECTIONs
add a threads/threadpool NOBUG flag hierarchy
replace an old test with a compile-only one which spawns way too many threads
increase the delay in threads to 10ms
wrap prime test in usleep() to make the thread likely to be re-scheduled
2010-02-03 10:51:03 +01:00
Christian Thaeter
7ef1bab914
premature fix for the threadwrapper test
...
Added some more fuzz and sleeping to the test calculation to have a actual
chance to fail when something is not well locked.
Using a premature classlock, locking instances was insufficient.
2010-02-03 10:45:58 +01:00
Christian Thaeter
01839d4e48
update for nobug-201002.1
2010-02-03 10:38:12 +01:00
Michael Ploujnikov
73f1bbae2a
added two sync tests
...
one with a single thread and one with 100 randomly sleeping ones
2010-02-02 20:44:35 -05:00
Michael Ploujnikov
8588fa2b9c
it is more proper to use cond_sync flags for *CONDITION_SECTIONs
2010-02-01 07:25:49 -05:00
Michael Ploujnikov
b799321dff
add a threads/threadpool NOBUG flag hierarchy
...
and remove redundant/errorneous flag initializations as a result
also use the test flag from logging.h
2010-02-01 07:25:06 -05:00
Michael Ploujnikov
c57c02ea45
replace an old test with a compile-only one which spawns way too many threads
2010-01-31 20:05:05 -05:00
Michael Ploujnikov
79f8481f99
increase the delay in threads to 10ms
2010-01-31 19:46:48 -05:00
Michael Ploujnikov
64ab9f6bf7
wrap prime test in usleep() to make the thread likely to be re-scheduled
2010-01-31 13:33:47 -05:00
Christian Thaeter
2b74d82f13
remove threadpool initialization, this is done elsewhere now
...
Subsystem runner/-test is still broken, sometimes segfaults
2010-01-30 07:37:32 +01:00
Christian Thaeter
e4e87e8cdd
log error while setting it
2010-01-30 07:20:09 +01:00
Michael Ploujnikov
6aacf490a3
add a comile-only test with threads sleeping for random intervals
2010-01-29 22:42:28 -05:00
Michael Ploujnikov
362069ea53
make the process-function test run really quickly
2010-01-29 22:42:28 -05:00
Michael Ploujnikov
f69006aa54
test spawning a bunch of short sleeping threads
2010-01-29 22:42:20 -05:00
Michael Ploujnikov
b87db7eb8f
re-add a test message that I forgot
2010-01-29 22:01:48 -05:00
Michael Ploujnikov
9d7f6a1fce
don't test the kind anymore (too simple)
...
Conflicts:
tests/30backend-threadpool.tests
2010-01-29 21:52:12 -05:00
Michael Ploujnikov
3611fbcf7c
also ignore RESOURCE_ENTER, RESOURCE_STATE and RESOURCE_LEAVE in the test output
2010-01-29 21:49:11 -05:00
Christian Thaeter
74560cdd99
remove some lock sections in thread two_acquire_test
...
After acquired, the caller 'owns' the thread handle and can inspect it,
the associated thread is defined to be waiting for a wakeup signal
(and then one shouldn't do unlocked access to the thread handle)
2010-01-30 03:30:08 +01:00
Christian Thaeter
4aa5380311
FIX: two-threads-acquire test, eternal wait for wakeup signal
2010-01-30 02:57:57 +01:00
Christian Thaeter
f57d637b59
Merge commit 'dc87e78590ea86615d3ebe90d23af4548445b941' into backend_devel
...
* commit 'dc87e78590ea86615d3ebe90d23af4548445b941':
add a two-thread acquire test
show the state of the thread in question
minor fixes: remove an old comment and change another
fix the prime test algorithm
use unsigned long for even more digits!
2010-01-30 00:48:04 +01:00
Michael Ploujnikov
dc87e78590
add a two-thread acquire test
...
currently this results in a deadlock between lumiera_threadpool_destroy() and thread_loop()
2010-01-26 17:02:31 -05:00
Christian Thaeter
6659ab6ac1
Merge remote branch 'ichthyo/thread_integration' into backend_devel
...
* ichthyo/thread_integration:
automatically start the threadpool on demand, similar to NoBug
refactor the C++ thread-wrapper, remove JoinHandle
2010-01-24 16:24:38 +01:00
ede06e63d5
automatically start the threadpool on demand, similar to NoBug
...
but the difference is: threadpool comes up application init i.e. at the begin of main(),
while NoBug comes up in static init already.
2010-01-24 15:48:48 +01:00
93af4ed017
refactor the C++ thread-wrapper, remove JoinHandle
2010-01-24 14:05:32 +01:00
8419f4acb9
Scope queries in general pass unit test
2010-01-23 15:50:46 +01:00
82967191b3
PlacementIndexQueryResolver passes unit test
2010-01-23 15:50:46 +01:00
018801895b
Add some test-dummy MObjects *temporarily* to core tree (Ticket #532 )
2010-01-23 15:50:46 +01:00
f6cf3195cf
* MObjectRef_test pass *
...
This is the integration of some months of work
2010-01-23 15:50:46 +01:00
0f9fc7e3dd
PlacementRef works! that's a milestone. Closes #78
2010-01-23 15:50:46 +01:00
9a6f9b2ba5
PlacementIndex: possibly retaining type information on insert
2010-01-23 15:50:46 +01:00
26972376de
MobjectRef_test passes compiler as a whole
2010-01-23 15:50:45 +01:00
71428ccf6f
activating an MObject ref implemented, passes compiler
2010-01-23 15:50:45 +01:00
e9d641babd
nail down all the MObjectRef equality comparison cases
2010-01-23 15:50:45 +01:00
e04672936a
getting MObjectRef_test partially through the compiler
2010-01-23 15:50:45 +01:00
Christian Thaeter
f17249713c
WIP: subsystem runner test, still broken
...
using new thread synchronization
Disabled further tests, making one after another working.
Some notes:
* currently running this leads to different outcomes on differnt runs,
there are some races/unsyncronized things left, to be investigated.
* I suggest to make Subsystems joinable, this prolly needs some work in
the error handling department (thread-wrapper.hpp too)
* using nonrecursive/waitable lock, recursive locks are have some bad
taste unless absolutely necessary
* after all a timed lock with polling is not the right approach to check
for subsystem shutdowns, I opted against thread cancelation because of
its programming overhead and complexity. We may refine this and allow
synchronous cancellation (with an approbiate thread flag) in some cases.
2010-01-23 06:57:15 +01:00
Christian Thaeter
8607a4006a
update the thread-wrapper to use the new threading API
...
This removes the explicit Sync things from the thread wraper since
the functionality is almost exactly provided by the backend.
Thread encapsulates a lumiera thread handle now, but this is strictly
optional and might be dropped on the floor (using a temporary as thread).
Thread has a sync() function which allows user controlled syncronous
startup:
Thread("foo", myoperation).sync();
will startup myoperation and only return from the ctor after myoperation
called a matching lumiera_thread_sync().
The related tests need to initialize/destroy the threadpool accordingly
2010-01-23 06:57:14 +01:00
Christian Thaeter
9fc68c9d32
Merge remote branch 'public/nobug201001.2' into backend_devel
...
* public/nobug201001.2:
integrating nobug context passing
updates for nobug 201001.2
Conflicts:
configure.ac
src/lib/condition.h
src/lib/reccondition.h
tests/backend/test-threads.c
2010-01-23 06:56:39 +01:00
Christian Thaeter
c15f2247d7
integrating nobug context passing
...
Somewhat more intrusive than the previous patch,
adds contexts everywhere except for sync.hpp where only default ctors
are used.
2010-01-23 01:40:27 +01:00
Michael Ploujnikov
fc15a2ac2c
Merge commit '6f07e4eedc6b624b1f9ae1004ad3e6a77027e028' into second-tp-attempt
...
Conflicts:
src/backend/threads.c
2010-01-20 21:41:14 -05:00
Michael Ploujnikov
fca6cd786b
fix the prime test algorithm
...
actually test for the output of the function
2010-01-20 07:54:26 -05:00
Christian Thaeter
cd39533899
the thread-wrapper tests need to init/destroy the threadpool
2010-01-19 18:46:32 +01:00
Michael Ploujnikov
fb61813650
use unsigned long for even more digits!
2010-01-18 12:43:28 -05:00
Michael Ploujnikov
ffdbc7083b
use the largest prime that can fit in an it
...
don't hard-code the number in the test
2010-01-18 12:16:45 -05:00
Michael Ploujnikov
045311db49
don't expect a message about waiting anymore
2010-01-18 12:07:17 -05:00
Christian Thaeter
020908d623
Make threadpool_destroy wait until all threads are finished
...
adds a state to each threadpool which can be only offline or online.
One can not acquire new threads when the pool is offline.
no need for waits in the teststuite anymore.
2010-01-18 17:53:33 +01:00
Christian Thaeter
d659b1e8e7
fix a PLANNED test glitch
2010-01-17 17:34:23 +01:00
Christian Thaeter
72d9cbe91c
Merge remote branch 'plouj/second-tp-attempt' into backend_devel
...
* plouj/second-tp-attempt: (68 commits)
partially fix a pkg-config problem with scons on Fedora12
fix comilation by using an existing TEST macro
more formatting fixes to put spaces before function/macro call opening brackets
add a stronger REQUIRE check
ignore RESOURCE_ANNOUNCE in tests
fix the code by re-merging some of cehteh's changes
remove redundant info from TRACE
match the filename in the header comment
add a thread state check and remove an old comment
python-2.6 fix: loading the icon_rener.py script (Ticket #222 )
Use a fully qualified name for PlacementMO in PlacementIndex
fix compilation errors
die regardless of what type of failure pthread_create() encounters
mark thread as worker
remote unnecessary calls to llist_unlink() insert is enough
continuation of working_list introduction
begin adding a second list to store working threads
merge ECHO with TRACE
don't expect any more output from the basic test
fix compilation
...
Conflicts:
src/tool/Makefile.am
tests/Makefile.am
2010-01-17 17:32:43 +01:00
Christian Thaeter
b532a3e2ac
Merge branch 'master' into backend
...
* master:
autoconf/automake cleanup
2010-01-17 15:55:49 +01:00
Christian Thaeter
b8336879f7
autoconf/automake cleanup
...
* refactor configure.ac to have distinct sections to configure each
subsystem.
* Dedicated LUMIERA_<subsys>_CFLAGS|_LIBS vars
* Fix Makefile.am's to use them, remove unnecessary dependencies
Stray dependencies to be refacored:
* tests/Makefile.am has dependencies on proc and backend
- should be moved to tests/library/Makefile.am etc anyways
* tests/lib/Makefile.am has dependency on GUI left
* src/tool/Makefile.am links GUI stuff generally, thats ok
* one threading test is broken, we don't care, merging new threadpool in
next.
2010-01-17 15:48:30 +01:00
Michael Ploujnikov
de7debc557
fix comilation by using an existing TEST macro
2010-01-16 17:27:02 -05:00
Michael Ploujnikov
207e8e7a6d
Merge remote branch 'ct/backend' into second-tp-attempt
2010-01-16 14:52:11 -05:00
Michael Ploujnikov
464ab920dd
ignore RESOURCE_ANNOUNCE in tests
...
makes my threadpool process-function test pass :)
2010-01-16 12:52:30 -05:00
Michael Ploujnikov
02c9ee33c7
fix the code by re-merging some of cehteh's changes
...
test still fails
2010-01-16 11:48:48 -05:00
Christian Thaeter
c85dc85ec1
planned test for clearing errors, just a note not to forget this
2010-01-16 11:47:58 +01:00
Michael Ploujnikov
523e898fbe
Merge branch 'master' into second-tp-attempt
...
Conflicts:
src/lib/condition.h
src/lib/reccondition.h
2010-01-13 19:17:24 -05:00
Michael Ploujnikov
a045479c63
Merge branch 'master' of git://git.lumiera.org/LUMIERA
2010-01-13 19:12:15 -05:00
Christian Thaeter
63346c7dff
Fix remaining test, forgot to link tests in
2010-01-13 10:25:33 +01:00
Michael Ploujnikov
564e6c94a0
Merge remote branch 'origin/master'
...
Conflicts:
tests/test.sh
2010-01-12 08:05:12 -05:00
Michael Ploujnikov
49da609e80
Merge branch 'master' of git://git.lumiera.org/LUMIERA into second-tp-attempt
...
Conflicts:
src/lib/condition.h
src/lib/mutex.h
src/lib/reccondition.h
src/lib/rwlock.h
tests/test.sh
2010-01-11 16:47:45 -05:00
Christian Thaeter
b30ca384cb
new test.sh|.conf from nobug
2010-01-10 10:36:24 +01:00
Christian Thaeter
799fe34980
Fix: race conditions with the nobug resource tracker
...
* requires new nobug version
* 40components.test "Type-based contexts" TypedCounter_test hangs
for unknown reason, temporary disabled
2010-01-10 10:36:24 +01:00
Christian Thaeter
4e7d656b71
WIP: autotools fixup for ichthyo
2010-01-09 22:17:34 +01:00
14c7f7fc62
PlacementIndex implemented, unit test pass
2010-01-09 05:10:32 +01:00
Michael Ploujnikov
b679bfa236
don't expect any more output from the basic test
2010-01-08 07:33:25 -05:00
e01b41cd1a
WIP: draft test to cover object identity handling
2010-01-08 04:00:47 +01:00
836f533a2f
add equality comparison and identity handling
2010-01-08 03:59:01 +01:00
Michael Ploujnikov
56cf53adb3
fix compilation
2010-01-07 18:36:51 -05:00
Michael Ploujnikov
6e2970aa56
Merge branch 'reccond-chain' into second-tp-attempt
...
Conflicts:
tests/15locking.tests
tests/library/test-locking.c
2010-01-07 16:53:02 -05:00
2fd7a2f6f9
patch temporary re-entrance problems on session creation (maybe #495 )
2010-01-07 08:28:54 +01:00
5cc3af3009
document the changed/new behaviour by unit test
2010-01-07 04:40:10 +01:00
Michael Ploujnikov
d8234db7b3
Merge remote branch 'ct/for_plouj2' into second-tp-attempt
2010-01-06 07:48:36 -05:00
665bd19f8a
use this to get the distinct keys of a multimap
2010-01-06 06:53:29 +01:00
ff2113e61f
implement an duplicate-value filtering iterator
2010-01-06 06:19:30 +01:00
2ad85dbb07
bugfix and test coverage
2010-01-06 04:14:16 +01:00
030a7d3813
basic IterSource implementation passes unit test ( #490 )
2010-01-05 05:21:13 +01:00
16962ae714
IterSource implementation draft
2010-01-05 04:10:23 +01:00
ea5668c5e3
WIP define expected usage of IterSouce
2010-01-05 02:53:20 +01:00
330eb2c243
extended for-each looping helpers. Closes #479
2010-01-04 14:48:00 +01:00
bf48ebc272
add special for-each handling for Lumiera Forward Iterator
2010-01-04 14:23:15 +01:00
d2f24504bd
verify/fix the test
2010-01-04 13:34:51 +01:00
cd3a77649e
use the (new) iterable classification to mask for_each overloads
2010-01-04 11:19:01 +01:00
64cedb6345
implemented compile-time detection of STL or Lumiera iterator
...
closes #482
2010-01-03 05:43:33 +01:00
ce6767b71f
Testcase to verify the iterable type detection
2010-01-03 00:02:53 +01:00
e27d03c501
simple duck detecor components pass unit test
2010-01-02 09:07:10 +01:00
8777aa585a
duck detector (lib helpers): initial implementation draft
2010-01-02 08:09:40 +01:00
e94927d5a3
standard case (using STL container) solved, incl. binding arguments and member functions
2009-12-31 03:25:25 +01:00
Michael Ploujnikov
12a2eed583
fix variable names in the LUMIERA_RECCONDITION_SECTION_CHAIN macro (seems like a copy+paste error from recmutex.h)
2009-12-29 16:52:39 -05:00
484213e42d
Implementation draft
2009-12-29 05:34:32 +01:00
2b46574da3
move the for_each helpers into a separate header
...
(because util.hpp is used pervasively, and I don't want
<tr1/functional> in such a widely used header...
2009-12-29 04:39:27 +01:00
0dca7cbb4d
not-yet-implemented....
2009-12-29 04:30:11 +01:00
c8c359d648
specify expected behaviour of the for_each helpers
2009-12-29 03:42:33 +01:00
c49d8321f6
fill in documentation and missing test cases
2009-12-27 06:36:52 +01:00
0a085acf74
add coverage for the simple standard case
...
(function returing a value)
2009-12-25 05:24:49 +01:00
Christian Thaeter
a698128cfc
new no-function test, sleep a bit before destroying the threadpool
2009-12-24 01:55:24 +01:00
Christian Thaeter
88195087d6
recondition to condition,
...
remove the mutex from the pool
rename park to release :P
2009-12-24 01:54:49 +01:00
Michael Ploujnikov
6f5578ba10
fix a copy+paste mistake in LUMIERA_RECCONDITION_SECTION_CHAIN and add a test-case for it
2009-12-23 18:14:29 -05:00
Michael Ploujnikov
f2406c23a1
bork bork bork
...
by pulling this you agree to...
2009-12-23 13:10:31 -05:00
534ae16605
implemented this FunctionResult template, needed for Ticket #175
2009-12-23 04:46:09 +01:00
4cb32047ae
WIP: define behaviour of a result remembering function...
2009-12-23 01:36:11 +01:00
97faf3dcb8
ItemWrapper unit test pass. Closes #476
2009-12-21 07:52:58 +01:00
e5ab9d73eb
add specialisation to deal with wrapping a reference...
2009-12-21 06:19:56 +01:00
3db676fa32
base implementation fo the ItemWrapper
2009-12-21 05:44:29 +01:00
83eb6976cd
draft an universal val/ref wrapper, needed by TransformIter.
...
Seemingly I've hit a nasty problem here, because PlacementIndex
should return an Placement&, but this is being fetched
after-the fact from within the iterator.
2009-12-20 04:33:24 +01:00
Michael Ploujnikov
547ff2b772
Merge branch 'for_plouj' of git://git.lumiera.org/lumiera/ct into second-tp-attempt
2009-12-16 22:36:38 -05:00
Christian Thaeter
5c7abbded9
Fix: race conditions with the nobug resource tracker
...
* requires new nobug version
* 40components.test "Type-based contexts" TypedCounter_test hangs
for unknown reason, temporary disabled
2009-12-17 03:49:02 +01:00
9f09a8aa49
push creation of the root MObject to users of PlacementIndex
2009-12-17 03:16:08 +01:00
73fcc78cb3
PlacementIndex checks for bottom (invalid) ID
2009-12-13 05:49:08 +01:00
6c187224eb
get it through the compiler again...
2009-12-12 05:03:50 +01:00
fd782eb139
WIP: change management of test/mock PlacementIndex
...
now lifecycle of this mock index is managed automatically
from within the session services. This allows to get
rid of the smart-ptr creating factory. As a consequence,
PlacementIndex now resides directly within SessionImpl.
2009-12-11 02:49:12 +01:00
Michael Ploujnikov
eedfafb0d0
convert lumiera_thread_state to using the enum string trick and use it in a test
2009-11-29 18:06:14 -05:00
Michael Ploujnikov
fc16de332f
convert lumiera_thread_class to using the enum string trick and use it in a test
2009-11-29 17:55:20 -05:00
488039c4c6
cleanup and write tests covering the newly implemented stuff
2009-11-28 23:37:58 +01:00
Michael Ploujnikov
98519c57da
reduce the number of threads spawned in tests to avoid EAGAIN errors from pthread_create (at least on my 2.6.31.5-127.fc12.x86_64 Core2Duo T9600 system)
2009-11-27 11:39:23 -05:00
cde45c021e
add basic storage and implementation of the PlacementIndex tables
2009-11-27 02:03:20 +01:00
Michael Ploujnikov
99eb790027
rename LUMIERA_THREAD_* to LUMIERA_THREADCLASS_* in enum lumiera_thread_class
2009-11-26 11:21:31 -05:00
Michael Ploujnikov
52e9259e8b
this was replaced with tests/backend/test-threadpool.c
2009-11-26 11:15:31 -05:00
Michael Ploujnikov
af80622ef5
begin implementing a 'soft' thread count limit per pool
...
add LUMIERA_DIE in cases where this soft limit is reached
add LUMIERA_DIE when pthread_create fails to create threads - serious
add a test which tries to break the soft limit
2009-11-26 10:24:18 -05:00
Michael Ploujnikov
bd076e4210
reduce the number of threads spawned in a test
2009-11-26 10:24:18 -05:00
Michael Ploujnikov
085216fd61
remove "allocated thread*" messages from lumiera_thread_new() and update tests
2009-11-26 10:24:17 -05:00
Michael Ploujnikov
07962b5314
add comments about locking in lumiera_threadpool_release_thread()
...
output the size of the created thread struct
don't print "destroying thread" (lets tests become shorter with repeated matching)
add a test which spans many threads in all pools
2009-11-26 10:24:17 -05:00
Michael Ploujnikov
8e3d4e7b7a
fixed lumiera_threadpool_destroy() by using LLIST_FOREACH
...
added some checks to lumiera_threadpool_release_thread(), maybe too much
modified thread_loop() to return a known value - 0
added checks to lumiera_thread_new()
added a check to lumiera_thread_destroy()
made lumiera_thread_destroy() unlink the thread from a pool list
updated test case to match new debug messages
2009-11-26 10:24:17 -05:00
Michael Ploujnikov
d6d81f2e44
added lumiera_threadpool_destroy()
...
added locking and checks to lumiera_threadpool_acquire_thread()
added a nobug flag to threads.c
added lumiera_thread_destroy()
added lumiera_thread_delete()
2009-11-26 10:24:17 -05:00
Michael Ploujnikov
414b8b99c3
updated test passes
...
fixed problem with copying lists
2009-11-26 10:24:17 -05:00
Michael Ploujnikov
75696986e4
test passes
2009-11-26 10:24:17 -05:00
Michael Ploujnikov
10f79290a1
add lumiera_threadpool_release_thread
...
make the test compile
change from type to kind
2009-11-26 10:24:17 -05:00
Michael Ploujnikov
9dd838b129
acquire() test started, so far, everything just compiles
2009-11-26 10:24:17 -05:00
Michael Ploujnikov
00eb4eda46
partial code skeleton
2009-11-26 10:24:17 -05:00
Michael Ploujnikov
4bac65df72
copied test.sh from nobug 1147947
2009-11-26 10:13:32 -05:00
0186343909
finished implementation of QueryFocus (frontend handle)
2009-11-22 11:13:49 +01:00
12dc0e2c2d
add unit test, write documentation. Closes #420
2009-11-22 07:26:51 +01:00
89aacf385e
relocate tests; they belong into namespace session
2009-11-22 04:42:50 +01:00
ed86c97881
Defined/Stubbed all required ScopePath operations
2009-11-21 20:55:14 +01:00
b7987cf3ce
define iteration on ScopePath as reverse iteration on the contained Scopes
2009-11-21 04:48:29 +01:00
b2849c6099
defined and implemented equality of scopes
2009-11-21 02:49:24 +01:00
218e1b8d60
add a start-element shortcut to the test-helper
...
This allows to get a start Placement, which is known
to be way down in the test-hierarchy of Placements
created by build_testScopes()
2009-11-21 01:07:56 +01:00
1a02239e26
write down all the ScopePath operations identified thus far
2009-11-20 23:06:27 +01:00
ce98bd9bca
Finished basic concept how to establish a current query focus (Ticket #403 )
2009-11-20 22:00:15 +01:00
cdb84a9b16
refining the draft for ScopeLocator
2009-11-20 19:58:22 +01:00
11463da463
better use an enum for the ScopeQuery kinds
2009-11-18 04:53:49 +01:00
002a0a97e6
add remaining bits to get query-for-session-contents impl to compile
2009-11-17 03:01:18 +01:00
Michael Ploujnikov
046dab0ca3
Add missing nobugmt ld flags to test_threads
2009-11-14 22:21:08 -05:00
017c668d7a
WIP outline of the index query resolution
2009-11-13 16:32:22 +01:00
981ea94708
finished the PlacementIndex API.
2009-11-13 04:52:48 +01:00
d0c905b5c9
add an transforming iterator to the itertools
2009-11-13 03:26:20 +01:00
d658415144
WIP about providing scope contents discovery, backed by the index
2009-11-12 02:15:02 +01:00
5535a7a00e
phase out the existing access functions, now superseeded by SessionServices
2009-11-11 05:44:58 +01:00
79d5e49a74
defined basic session lifecycle and service access. Closes Ticket #400
2009-11-09 05:21:59 +01:00
043d4f42fa
working example implementation of the access mechanism to session internal APIs
2009-11-09 02:08:37 +01:00
2765981db9
build a complete simplified mock Session/SessionManager
2009-11-08 20:13:11 +01:00
aaf19f4d89
First draft regarding the access of session implementation services (Ticket #400 )
2009-11-07 19:49:29 +01:00
78f9b2b1c5
WIP refactor ContentsQuery to share implementation with a PathQuery facility
2009-11-07 02:49:55 +01:00
bdb8bc2c98
move PlacementIndex into namespace session
2009-11-06 19:27:53 +01:00
bb8c018214
integrate QueryFocus with the new ContentsQuery facility
2009-11-06 18:42:15 +01:00
8c7727704c
Finish ContentQuery definition; relying on PlacementIndex
2009-11-02 07:37:15 +01:00
1c72cbb599
Iterator tools: (1) a filtering iterator
2009-11-02 06:06:43 +01:00
356fe8fd13
change the ContensQuery stub to fit into the QueryResolver in its current form
...
Actually, the implementation within PlacementIndex is missing.
Moreover, I think now that PlacementIndex shouldn't implement
QueryResolver directly.
2009-11-01 03:47:35 +01:00
2620c38ed9
documentation, close some tickets...
2009-11-01 02:02:21 +01:00
9ff7b1eaeb
Implement registration of a resolution function. QueryResolver_test pass
2009-10-30 20:33:44 +01:00
f70f8c4e4a
implemented the mechanism for dispatch-to-concrete resolution
2009-10-30 18:37:08 +01:00
f35b422316
SubID: add (preliminary) hash impl; unit test pass
2009-10-30 06:50:26 +01:00
df562a186f
oops... fix a bug in Literal's hash function
2009-10-30 05:15:26 +01:00
006392f6ea
yet another random test helper
2009-10-30 03:53:51 +01:00
ceb4d4b5ea
reworked MultiFact passes unit test. Closes Ticket #376
2009-10-30 00:32:26 +01:00
1dccd37c70
re-order MultiFact implementation to get it to compile
2009-10-29 22:00:17 +01:00
ee611224b6
disable the tests not ready yet (see Ticket 384)
2009-10-29 21:59:25 +01:00
d2721378d5
get QueryResolver to compile
2009-10-29 21:59:02 +01:00
3145064a21
change IterAdapter iteration control API to use free functions
2009-10-29 04:31:16 +01:00
0cef067c11
WIP adapt unit test and the argument-accepting MultiFact specialisation
2009-10-28 04:45:17 +01:00
2530e8c1a1
WIP try to create an extension point to MultiFact, allowing to accept argument(s)
...
sketch of an idea how to add an extension possibility
without messing up the basic MultiFact template
2009-10-27 05:13:38 +01:00
6dc09e66dc
WIP: test-driven brainstorming: how to pass additional factory arguments? (Ticket #377 )
2009-10-26 01:42:35 +01:00
ec4b2eef00
WIP: test-driven brainstorming: how to build the query dispatcher table?
2009-10-26 01:39:25 +01:00
5d9671cb2c
WIP place a ref-count into the result iterator
2009-10-25 16:18:53 +01:00
eb2d309601
WIP: reworked the design further
2009-10-24 16:03:14 +02:00
c3441ac26a
WIP Query<TY> implementation draft...
2009-10-24 00:23:22 +02:00
455ad14ae5
set up some steps which might lead to a solution of the typed-query-problem
2009-10-23 20:09:36 +02:00
90e09b9fa0
WIP trying to get ahed with the problem of issuing queries
2009-10-22 17:24:57 +02:00
452e1bb727
WIP draft an unit test detailing QueryFocus operation
2009-10-20 05:34:58 +02:00
f0c9beb5c6
WIP design the ScopePath API by unit test
2009-10-18 19:08:21 +02:00
2e62a3b01b
WIP continue design how to discover session contents
2009-10-17 21:31:03 +02:00
2ca89010d1
introduce pointer-to-PlacementIndex typedef
2009-10-17 21:29:16 +02:00
3b1301be14
WIP stubbed some of the operations to implement on class Scope
2009-10-17 02:16:19 +02:00
a662b176bb
WIP test-driven brainstorming: what is a Scope?
2009-10-17 02:15:28 +02:00
9451a6888f
start definition of new session::Scope interface
2009-10-16 03:13:57 +02:00
65f100c1a2
start 2 unit tests for scope handling
2009-10-14 06:18:25 +02:00
a8e606ba27
Merge NoBug release related changes
2009-10-11 07:00:48 +02:00
cd51e5fef0
Proc Command handling frontend finished and usable for now
...
Additional convenience shortcuts and a bit of polishing.
Closes Ticket #300
2009-10-11 05:57:46 +02:00
c6d5f8a0b4
Proc Command framework: *first integraton round finished*
2009-10-11 05:57:46 +02:00
36d615dd3a
add test case covering the string representation of commands
2009-10-11 05:57:46 +02:00
ae01f85452
replace existing implementation with CommandImplCloneBuilder
2009-10-11 05:57:45 +02:00
fdd940feba
clone builder implemented; problem resolved according to test
2009-10-11 05:57:45 +02:00
bb7ff5e317
WIP draft of clone builder implementation
2009-10-11 05:57:45 +02:00