Commit graph

1214 commits

Author SHA1 Message Date
bd361523d1 better use functor-style access instead of implicit conversion 2010-11-06 22:49:32 +01:00
f597e7c8b4 optional object link implemented and working 2010-11-06 22:32:08 +01:00
07f7837a7b draft behaviour of a optional/switchable object link 2010-11-06 21:23:35 +01:00
1b95a02f14 Autotools fixes 2010-11-06 18:17:25 +01:00
40627b1c12 fix a regression, caused by removing the special Struct-ID handling 2010-11-05 04:32:35 +01:00
4cef8474ed fake-configrules: remove magic "make" token (closes #707)
use backdoor function on the StructFactory instead
Mark such backdoor-functions with Ticket #710
2010-11-02 04:09:06 +01:00
1f511c327a try to get rid of the query functions on asset::Struct (#706) 2010-10-31 02:02:31 +01:00
7a53f65508 remove the separate pipeID field, because now the asset name is sufficient 2010-10-29 06:09:06 +02:00
08d90be1b6 get the sesison element-tracker integration test to pass 2010-10-29 05:24:19 +02:00
7c758b04db rename Struct-Asset factory function to better reflect the semantics 2010-10-29 04:28:46 +02:00
da04e13213 re-thinking the pattern of the fake implementation 2010-10-28 03:57:12 +02:00
61a2e26bc8 rework fake-resolution, now searching the session
this whole creation-logic seems to be somewhat broken
2010-10-27 07:26:33 +02:00
987026f4c8 implement creation of "default" Timeline 2010-10-25 06:08:36 +02:00
ad452a9dd4 activate complete SessionElementTracker_test
(doesn't pass yet -- missing sesison initialisation)
2010-10-20 05:12:13 +02:00
d1dd3e2677 saveguard against deregistering from an alredy destroyed session 2010-10-20 04:42:22 +02:00
da45bb06f7 connect Timeline/Sequence tracking to current session on initialisation 2010-10-20 04:08:58 +02:00
fc0cefcadc review the asset dependency handling in AssetManager 2010-10-19 03:53:36 +02:00
3e9c337ac0 review and verify lib::ElementTracker 2010-10-18 05:33:46 +02:00
884e3600bd experimental: allow implicit converisons to/from Placement-ID 2010-10-17 06:30:56 +02:00
120973311a Session ElementQuery unit test pass (closes #639) 2010-10-17 05:54:21 +02:00
da994cf9fd draft a test to cover ElementQuery (Session API)
trying to get #639 closed...
discovered, that I had already implemented this
filtering query in 6/2010
2010-10-17 05:08:47 +02:00
bb3eb8f3aa Merge integration of placement scopes and QueryFocus 2010-10-16 03:39:33 +02:00
d8c06fac1e add diagnostic self display to QueryFocus 2010-10-16 02:21:20 +02:00
c772359440 add diagnostic self display to ScopePath 2010-10-16 02:21:20 +02:00
e48a9fb811 add diagnostic self display to placement-Scope 2010-10-16 02:21:20 +02:00
48605827a6 Add test to cover the very basic MObject interface 2010-10-16 02:21:20 +02:00
722ab4e583 corr. wrong ticket number 2010-10-16 02:21:20 +02:00
73a1adcdf5 QueryFocus_test working now (still without diagnostic output) 2010-10-16 02:21:19 +02:00
a0234ecc38 get QueryFocus_test to compile with the (now existing) implementation 2010-10-16 02:21:19 +02:00
9b5a24f6cc Integration: Placement Scope test pass 2010-10-16 02:21:19 +02:00
735af19891 getting PacementScope_test from last year to compile
...now using the real implementation!
2010-10-16 02:21:19 +02:00
64f017da43 QueryFocusStack_test pass 2010-10-16 02:21:19 +02:00
46597009f9 get the basic ScopePath_test to pass 2010-10-16 02:21:19 +02:00
6bb7886b54 define the proper behaviour expected when copying ScopePath (#662) 2010-10-16 02:21:19 +02:00
2c58e595c0 augment IterSource adapters by definition through classical iterator range 2010-10-16 02:21:18 +02:00
8078357e3c revisiting the binding scope problem 2010-10-16 02:21:17 +02:00
a29591c299 SCons: several small improvements, e.g. valgrind-suppressionfile 2010-07-26 03:24:15 +02:00
Christian Thaeter
c66b71deb2 extend fileheader with some flags and endianess mark 2010-07-21 06:13:59 +02:00
Christian Thaeter
c908cf4807 Start of 'fileheader' implementation
Lumiera will create and use some files on its own (caches, indices). This
lies the foundation for identifying this files.
2010-07-21 06:13:59 +02:00
Christian Thaeter
25c3b04ec8 FIX: tmpbuf.h include for tools 2010-07-21 05:05:33 +02:00
Christian Thaeter
2f92a958a8 FIX: tmpbuf.h includes in common/config 2010-07-21 05:05:33 +02:00
Christian Thaeter
f967f9427b FIX: tmpbuf.h includes in backend 2010-07-21 05:05:32 +02:00
Christian Thaeter
0158c1b88d WIP: factor tmpbuf out of safeclib
* tmpbuf got its own implementation files
 * Some optimizations on the tmpbuf implementation, handling tiny,
   small and huge allocations better.
 * tiny allocation smaller than sizeof(void*) are not aligned
 * Reduced the ring sizes to 16 (configureable in tmpbuf.h)

This is only the tmpbuf refactoring, fixes following on the next
commits.
2010-07-21 05:05:26 +02:00
Christian Thaeter
ccbdcfdef9 cosmetics, remove quotes in filedescriptor test 2010-07-21 04:50:03 +02:00
Christian Thaeter
da23204bf3 Exclusive file locking
This adds global exclusive advisory file locks on a per-thread basis.
Only exclusive locking for a whole file is supported to setup headers etc.
Finer grained locking will be handled somewhere else.
2010-07-21 04:49:51 +02:00
Christian Thaeter
2dfef6cac4 add nobug flag to FILE_MMAP_SECTION() macro 2010-07-21 04:49:50 +02:00
Christian Thaeter
a8339fb5d0 add mmaping of exact blocks
namely file headers needs to be accessed unaligned and exactly as given,
this adds mmap functions to create mmap objects to do this.
2010-07-21 04:49:50 +02:00
Christian Thaeter
c4cbde9853 add a 'bias' to offset mmaped clusters
We will need cluster/page aligned access for certain files (indices),
this files will contain an initial header describing the contents. A bias
is used to step over this header and align the following data.
2010-07-21 04:49:40 +02:00
Christian Thaeter
4fee3d85cf testsuite update, new test.h to be in sync with nobug
test.h introduces a PLANNED_TEST() macro for C code, shows what tests
are provided and so on (the nobug version did that since some time).

test names are now passed as identifers and translated to strings by the
macros.

A lot fixes for existing tests, replace some printfs with ECHO, cosmetics.

one threadpool (sync_many) test is broken and set to PLANNED, this needs
further testsuite support for dispatching output.

add a TEST nobug flag to test.h
2010-07-21 04:49:18 +02:00
Christian Thaeter
3201ae5d8c remove acquirer list for mmap regions in use, refcount is enough 2010-07-21 04:28:42 +02:00
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