diff --git a/README.adoc b/README.adoc index ff92178..ad2aaec 100644 --- a/README.adoc +++ b/README.adoc @@ -199,18 +199,42 @@ You now have the granularity required to control the scope and lifecycle of the While implementing a fully capable GemFire/Geode Region would defeat the purpose of Mocking and Unit Testing in general, it is desirable to sometimes perform basic Region data access operations, such as `get` and `put`, with small quantities -of data and emulate the same effects. +of data and emulate, or simulate the same effects. As such, with STDG, it is currently possible to perform the following Region data access operations: -* `containsKey(key)`, -* `get(key)`, -* `getEntry(key)`, -* `invalidate(key)`, -* `put(key, value)`, +* `clear()` +* `containsKey(key)` +* `containsValue(value)` +* `containsValueForKey(value)` +* `forEach(:BiConsumer)` +* `get(key)` +* `getAll()` +* `getEntry(key)` +* `getOrDefault(key, defaultValue)` +* `invalidate(key)` +* `isEmpty()` +* `keySet()` +* `localClear()` +* `localValidate()` +* `put(key, value)` +* `putAll(:Map)` +* `remove(key)` +* `removeAll(:Collection)` * `size()` +* `values()` -The "mock" Region will function and behave similarly to an actual GemFire/Geode Region involving these +NOTE: Some mock Map/Region data access operations are still being considered, such as: `putIfAbsent(key, value)`, +`remove(key, value)`, `replace(key, value)`, `replace(key, oldValue, newValue)` and `replaceAll(:BiFunction)`. +Other mock Region data access operations will not be implemented at all (e.g. `keySetOnServer()` or `sizeOnServer()`, +etc) since they necessarily involve a more complex topology. Regardless, you can still mock any Map/Region operation +you like by following these <>. + +WARNING: Some mock Map/Region data access operations are implemented in terms of other Map/Region operations +(e.g. `putAll(:Map