agera icon indicating copy to clipboard operation
agera copied to clipboard

Add "thenCheck()" to CompiledRepository.

Open maxtroy opened this issue 8 years ago • 1 comments

"thenCheck()" can be used after another 'then' directive, which normally generates the new value of the repository. Using a "thenCheck()" directive, the would-have-been new value becomes a mere "candidate new value", and can be vetoed by the check -- the clause that follows "thenCheck()" can skip the update, end with another value, or even have the flow continue onwards.

The test cases use two demo-style repositories that perform a typical task of requesting a keyed item from the in-memory cache, then disk cache, then network, showcasing the real-life use of this new directive.

maxtroy avatar Nov 21 '16 18:11 maxtroy

Current coverage is 97.38% (diff: 100%)

Merging #113 into master will increase coverage by 0.05%

@@             master       #113   diff @@
==========================================
  Files            39         39          
  Lines          1611       1645    +34   
  Methods           0          0          
  Messages          0          0          
  Branches        280        284     +4   
==========================================
+ Hits           1568       1602    +34   
  Misses           13         13          
  Partials         30         30          

Powered by Codecov. Last update d816f6d...50a5b4b

codecov-io avatar Nov 21 '16 18:11 codecov-io