@@ -1691,58 +1691,63 @@ function tests(suiteName, dbName, dbType, viewType) {
16911691 }
16921692 } ) ;
16931693
1694- it ( 'Test unsafe object usage (#244)' , function ( ) {
1694+ it ( 'Test unsafe object usage (#244)' , async function ( ) {
16951695 const db = new PouchDB ( dbName ) ;
1696- return db . bulkDocs ( [
1696+ const writeRes = await db . bulkDocs ( [
16971697 { _id : 'constructor' }
1698- ] ) . then ( function ( res ) {
1699- let rev = res [ 0 ] . rev ;
1700- return createView ( db , {
1701- map : function ( doc ) {
1702- emit ( doc . _id ) ;
1703- }
1704- } ) . then ( function ( queryFun ) {
1705- return db . query ( queryFun , { include_docs : true } ) . then ( function ( res ) {
1706- res . rows . should . deep . equal ( [
1707- {
1708- "key" : "constructor" ,
1709- "id" : "constructor" ,
1710- "value" : null ,
1711- "doc" : {
1712- "_id" : "constructor" ,
1713- "_rev" : rev
1714- }
1715- }
1716- ] ) ;
1717- return db . bulkDocs ( [
1718- { _id : 'constructor' , _rev : rev }
1719- ] ) ;
1720- } ) . then ( function ( res ) {
1721- rev = res [ 0 ] . rev ;
1722- return db . query ( queryFun , { include_docs : true } ) ;
1723- } ) . then ( function ( res ) {
1724- res . rows . should . deep . equal ( [
1725- {
1726- "key" : "constructor" ,
1727- "id" : "constructor" ,
1728- "value" : null ,
1729- "doc" : {
1730- "_id" : "constructor" ,
1731- "_rev" : rev
1732- }
1733- }
1734- ] ) ;
1735- return db . bulkDocs ( [
1736- { _id : 'constructor' , _rev : rev , _deleted : true }
1737- ] ) ;
1738- } ) . then ( function ( res ) {
1739- rev = res [ 0 ] . rev ;
1740- return db . query ( queryFun , { include_docs : true } ) ;
1741- } ) . then ( function ( res ) {
1742- res . rows . should . deep . equal ( [ ] ) ;
1743- } ) ;
1744- } ) ;
1698+ ] ) ;
1699+ const rev = writeRes [ 0 ] . rev ;
1700+
1701+ const queryFun = await createView ( db , {
1702+ map : function ( doc ) {
1703+ emit ( doc . _id ) ;
1704+ } ,
17451705 } ) ;
1706+
1707+ const queryRes = await db . query ( queryFun , { include_docs : true } ) ;
1708+
1709+ queryRes . rows . should . deep . equal ( [
1710+ {
1711+ "key" : "constructor" ,
1712+ "id" : "constructor" ,
1713+ "value" : null ,
1714+ "doc" : {
1715+ "_id" : "constructor" ,
1716+ "_rev" : rev
1717+ }
1718+ }
1719+ ] ) ;
1720+
1721+ const writeResWithRev = await db . bulkDocs ( [
1722+ { _id : 'constructor' , _rev : rev }
1723+ ] ) ;
1724+
1725+ const rev1 = writeResWithRev [ 0 ] . rev ;
1726+
1727+ const queryRes1 = await db . query ( queryFun , { include_docs : true } ) ;
1728+
1729+ queryRes1 . rows . should . deep . equal ( [
1730+ {
1731+ "key" : "constructor" ,
1732+ "id" : "constructor" ,
1733+ "value" : null ,
1734+ "doc" : {
1735+ "_id" : "constructor" ,
1736+ "_rev" : rev1
1737+ }
1738+ }
1739+ ] ) ;
1740+
1741+ const deletedDoc = await db . bulkDocs ( [
1742+ { _id : 'constructor' , _rev : rev1 , _deleted : true }
1743+ ] ) ;
1744+
1745+ const rev2 = deletedDoc [ 0 ] . rev ;
1746+
1747+ const queryRes2 = await db . query ( queryFun , { include_docs : true } ) ;
1748+
1749+ queryRes2 . rows . should . deep . equal ( [ ] ) ;
1750+ rev2 [ 0 ] . should . equal ( '3' ) ;
17461751 } ) ;
17471752
17481753 it ( "Test view querying with a skip option and reduce" , function ( ) {
0 commit comments