summaryrefslogtreecommitdiffstats
path: root/tests/pipelinetest.cpp
Commit message (Collapse)AuthorAge
* More Log::ContextChristian Mollekopf2016-12-22
|
* Ensure we always process the full queue and that flushing works.Christian Mollekopf2016-11-22
|
* Removed the whole revision cleanup into the entitystoreChristian Mollekopf2016-10-21
|
* Ported the pipeline to the entitystoreChristian Mollekopf2016-10-21
|
* Refactor how the storage is used.Christian Mollekopf2016-10-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is the initial refactoring to improve how we deal with the storage. It does a couple of things: * Rename Sink::Storage to Sink::Storage::DataStore to free up the Sink::Storage namespace * Introduce a Sink::ResourceContext to have a single object that can be passed around containing everything that is necessary to operate on a resource. This is a lot better than the multiple separate parameters that we used to pass around all over the place, while still allowing for dependency injection for tests. * Tie storage access together using the new EntityStore that directly works with ApplicationDomainTypes. This gives us a central place where main storage, indexes and buffer adaptors are tied together, which will also give us a place to implement external indexes, such as a fulltextindex using xapian. * Use ApplicationDomainTypes as the default way to pass around entities. Instead of using various ways to pass around entities (buffers, buffer adaptors, ApplicationDomainTypes), only use a single way. The old approach was confusing, and was only done as: * optimization; really shouldn't be necessary and otherwise I'm sure we can find better ways to optimize ApplicationDomainType itself. * a way to account for entities that have multiple buffers, a concept that I no longer deem relevant. While this commit does the bulk of the work to get there, the following commits will refactor more stuff to get things back to normal.
* Shorten the types to be more distinctive.Christian Mollekopf2016-07-08
| | | | | The org.kde prefix is useless and possibly misleading. Simply prefixing with sink is more unique and shorter.
* Control debugoutput during tests with sinksh.Christian Mollekopf2016-07-08
|
* Fixed testsChristian Mollekopf2016-07-06
|
* These checks are no longer necessaryChristian Mollekopf2016-06-05
|
* Fixed pipelinetestChristian Mollekopf2016-06-03
|
* Refactored the generic resource to use separate classes forChristian Mollekopf2016-05-28
| | | | | | | | changereplay and synchronization. This cleans up the API and avoids the excessive passing around of transactions. It also provides more flexibility in eventually using different synchronization strategies for different resources.
* Run preprocessors before persising the value.Christian Mollekopf2016-05-08
| | | | And allow preprocessors to modify the result.
* Fromatted the whole codebase with clang-format.Christian Mollekopf2016-03-03
| | | | clang-format -i */**{.cpp,.h}
* Use slots/signals instead of Q_SLOTS/Q_SIGNALS for clang-format compatibilityChristian Mollekopf2016-02-17
|
* Stop using clientapi.hChristian Mollekopf2016-02-10
|
* Fixed modificationsChristian Mollekopf2016-02-01
|
* Renamed Akonadi2 to SinkChristian Mollekopf2016-01-20
| | | | (except for documentation).
* Removed most uses of SyncListResult and brought back theChristian Mollekopf2015-11-28
| | | | dummyresourcetest
* Fixed buildChristian Mollekopf2015-11-21
|
* Correctly execute modifications and removalsChristian Mollekopf2015-10-28
| | | | ... also if there are intermediate revisions.
* Made pipeline preprocessing synchronous.Christian Mollekopf2015-10-28
| | | | | | | | | | | | | | | | Instead of having the asynchronous preprocessor concept with different pipelines for new/modify/delete we have a single pipeline with synchronous preprocessors that act upon new/modify/delete. This keeps the code simpler due to lack of asynchronity and keeps the new/modify/delete operations together (which at least for the indexing makes a lot of sense). Not supporting asynchronity is ok because the tasks done in preprocessing are not cpu intensive (if they were we had a problem since they are directly involved in the round-trip time), and the main cost comes from i/o, meaning we don't gain much by doing multithreading. Costly tasks (such as full-text indexing) should rather be implemented as post-processing, since that doesn't increase the round-trip time directly, and eventually consistent is typically good enough for that.
* Documentation on what tests are supposed to test.Christian Mollekopf2015-10-24
|
* Moved test implementations to central location.Christian Mollekopf2015-10-13
|
* Create a new revision for removals as well.Christian Mollekopf2015-10-10
| | | | So we can replay the change.
* Revision cleanupChristian Mollekopf2015-09-29
|
* Work with revisions in store + pipelinetestChristian Mollekopf2015-09-24
Cleanup of revisions, and revision for removed entity is yet missing.