|
|
@@ -3407,6 +3407,198 @@
|
|
|
}
|
|
|
]
|
|
|
},
|
|
|
+ "Held writes are not re-sent after disable/enable network.": {
|
|
|
+ "describeName": "Writes:",
|
|
|
+ "itName": "Held writes are not re-sent after disable/enable network.",
|
|
|
+ "tags": [],
|
|
|
+ "config": {
|
|
|
+ "useGarbageCollection": true
|
|
|
+ },
|
|
|
+ "steps": [
|
|
|
+ {
|
|
|
+ "userListen": [
|
|
|
+ 2,
|
|
|
+ {
|
|
|
+ "path": "collection",
|
|
|
+ "filters": [],
|
|
|
+ "orderBys": []
|
|
|
+ }
|
|
|
+ ],
|
|
|
+ "stateExpect": {
|
|
|
+ "activeTargets": {
|
|
|
+ "2": {
|
|
|
+ "query": {
|
|
|
+ "path": "collection",
|
|
|
+ "filters": [],
|
|
|
+ "orderBys": []
|
|
|
+ },
|
|
|
+ "resumeToken": ""
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "watchAck": [
|
|
|
+ 2
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "watchEntity": {
|
|
|
+ "docs": [],
|
|
|
+ "targets": [
|
|
|
+ 2
|
|
|
+ ]
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "watchCurrent": [
|
|
|
+ [
|
|
|
+ 2
|
|
|
+ ],
|
|
|
+ "resume-token-500"
|
|
|
+ ],
|
|
|
+ "watchSnapshot": 500,
|
|
|
+ "expect": [
|
|
|
+ {
|
|
|
+ "query": {
|
|
|
+ "path": "collection",
|
|
|
+ "filters": [],
|
|
|
+ "orderBys": []
|
|
|
+ },
|
|
|
+ "errorCode": 0,
|
|
|
+ "fromCache": false,
|
|
|
+ "hasPendingWrites": false
|
|
|
+ }
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "userSet": [
|
|
|
+ "collection/a",
|
|
|
+ {
|
|
|
+ "v": 1
|
|
|
+ }
|
|
|
+ ],
|
|
|
+ "expect": [
|
|
|
+ {
|
|
|
+ "query": {
|
|
|
+ "path": "collection",
|
|
|
+ "filters": [],
|
|
|
+ "orderBys": []
|
|
|
+ },
|
|
|
+ "added": [
|
|
|
+ [
|
|
|
+ "collection/a",
|
|
|
+ 0,
|
|
|
+ {
|
|
|
+ "v": 1
|
|
|
+ },
|
|
|
+ "local"
|
|
|
+ ]
|
|
|
+ ],
|
|
|
+ "errorCode": 0,
|
|
|
+ "fromCache": false,
|
|
|
+ "hasPendingWrites": true
|
|
|
+ }
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "writeAck": {
|
|
|
+ "version": 1000,
|
|
|
+ "expectUserCallback": true
|
|
|
+ },
|
|
|
+ "stateExpect": {
|
|
|
+ "writeStreamRequestCount": 2
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "enableNetwork": false,
|
|
|
+ "stateExpect": {
|
|
|
+ "activeTargets": {},
|
|
|
+ "limboDocs": [],
|
|
|
+ "writeStreamRequestCount": 3
|
|
|
+ },
|
|
|
+ "expect": [
|
|
|
+ {
|
|
|
+ "query": {
|
|
|
+ "path": "collection",
|
|
|
+ "filters": [],
|
|
|
+ "orderBys": []
|
|
|
+ },
|
|
|
+ "errorCode": 0,
|
|
|
+ "fromCache": true,
|
|
|
+ "hasPendingWrites": true
|
|
|
+ }
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "enableNetwork": true,
|
|
|
+ "stateExpect": {
|
|
|
+ "activeTargets": {
|
|
|
+ "2": {
|
|
|
+ "query": {
|
|
|
+ "path": "collection",
|
|
|
+ "filters": [],
|
|
|
+ "orderBys": []
|
|
|
+ },
|
|
|
+ "resumeToken": "resume-token-500"
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "writeStreamRequestCount": 3
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "watchAck": [
|
|
|
+ 2
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "watchEntity": {
|
|
|
+ "docs": [
|
|
|
+ [
|
|
|
+ "collection/a",
|
|
|
+ 1000,
|
|
|
+ {
|
|
|
+ "v": 1
|
|
|
+ }
|
|
|
+ ]
|
|
|
+ ],
|
|
|
+ "targets": [
|
|
|
+ 2
|
|
|
+ ]
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "watchCurrent": [
|
|
|
+ [
|
|
|
+ 2
|
|
|
+ ],
|
|
|
+ "resume-token-2000"
|
|
|
+ ],
|
|
|
+ "watchSnapshot": 2000,
|
|
|
+ "expect": [
|
|
|
+ {
|
|
|
+ "query": {
|
|
|
+ "path": "collection",
|
|
|
+ "filters": [],
|
|
|
+ "orderBys": []
|
|
|
+ },
|
|
|
+ "metadata": [
|
|
|
+ [
|
|
|
+ "collection/a",
|
|
|
+ 1000,
|
|
|
+ {
|
|
|
+ "v": 1
|
|
|
+ }
|
|
|
+ ]
|
|
|
+ ],
|
|
|
+ "errorCode": 0,
|
|
|
+ "fromCache": false,
|
|
|
+ "hasPendingWrites": false
|
|
|
+ }
|
|
|
+ ]
|
|
|
+ }
|
|
|
+ ]
|
|
|
+ },
|
|
|
"Held writes are released when there are no queries left.": {
|
|
|
"describeName": "Writes:",
|
|
|
"itName": "Held writes are released when there are no queries left.",
|