@@ -2080,8 +2080,116 @@ exports['should return error on ordered insert with multiple unique key constrai
20802080 }
20812081}
20822082
2083+ exports [ 'Correctly allow forceServerObjectId for insertOne' ] = {
2084+ metadata : { requires : { topology : [ 'single' ] } } ,
20832085
2086+ // The actual test we wish to run
2087+ test : function ( configuration , test ) {
2088+ var started = [ ] ;
2089+ var succeeded = [ ] ;
2090+ var failed = [ ] ;
2091+ var callbackTriggered = false ;
2092+
2093+ var listener = require ( '../..' ) . instrument ( function ( err , instrumentations ) { } ) ;
2094+ listener . on ( 'started' , function ( event ) {
2095+ if ( event . commandName == 'insert' )
2096+ started . push ( event ) ;
2097+ } ) ;
2098+
2099+ listener . on ( 'succeeded' , function ( event ) {
2100+ if ( event . commandName == 'insert' )
2101+ succeeded . push ( event ) ;
2102+ } ) ;
2103+
2104+ var db = configuration . newDbInstance ( { w :1 } , { poolSize :1 , auto_reconnect :false } ) ;
2105+ db . open ( function ( err , db ) {
2106+ test . equal ( null , err ) ;
2107+
2108+ db . collection ( 'apm_test' ) . insertOne ( { a :1 } , { forceServerObjectId :true } ) . then ( function ( r ) {
2109+ test . equal ( null , err ) ;
2110+ test . equal ( undefined , started [ 0 ] . command . documents [ 0 ] . _id ) ;
2111+ listener . uninstrument ( ) ;
2112+
2113+ db . close ( ) ;
2114+ test . done ( ) ;
2115+ } ) ;
2116+ } ) ;
2117+ }
2118+ }
2119+
2120+ exports [ 'Correctly allow forceServerObjectId for insertMany' ] = {
2121+ metadata : { requires : { topology : [ 'single' ] } } ,
2122+
2123+ // The actual test we wish to run
2124+ test : function ( configuration , test ) {
2125+ var started = [ ] ;
2126+ var succeeded = [ ] ;
2127+ var failed = [ ] ;
2128+ var callbackTriggered = false ;
2129+
2130+ var listener = require ( '../..' ) . instrument ( function ( err , instrumentations ) { } ) ;
2131+ listener . on ( 'started' , function ( event ) {
2132+ if ( event . commandName == 'insert' )
2133+ started . push ( event ) ;
2134+ } ) ;
2135+
2136+ listener . on ( 'succeeded' , function ( event ) {
2137+ if ( event . commandName == 'insert' )
2138+ succeeded . push ( event ) ;
2139+ } ) ;
2140+
2141+ var db = configuration . newDbInstance ( { w :1 } , { poolSize :1 , auto_reconnect :false } ) ;
2142+ db . open ( function ( err , db ) {
2143+ test . equal ( null , err ) ;
20842144
2145+ db . collection ( 'apm_test' ) . insertMany ( [ { a :1 } ] , { forceServerObjectId :true } ) . then ( function ( r ) {
2146+ test . equal ( null , err ) ;
2147+ test . equal ( undefined , started [ 0 ] . command . documents [ 0 ] . _id ) ;
2148+
2149+ listener . uninstrument ( ) ;
2150+ db . close ( ) ;
2151+ test . done ( ) ;
2152+ } ) ;
2153+ } ) ;
2154+ }
2155+ }
2156+
2157+ exports [ 'Correctly allow forceServerObjectId for insertMany' ] = {
2158+ metadata : { requires : { topology : [ 'single' ] } } ,
2159+
2160+ // The actual test we wish to run
2161+ test : function ( configuration , test ) {
2162+ var started = [ ] ;
2163+ var succeeded = [ ] ;
2164+ var failed = [ ] ;
2165+ var callbackTriggered = false ;
2166+
2167+ var listener = require ( '../..' ) . instrument ( function ( err , instrumentations ) { } ) ;
2168+ listener . on ( 'started' , function ( event ) {
2169+ if ( event . commandName == 'insert' )
2170+ started . push ( event ) ;
2171+ } ) ;
2172+
2173+ listener . on ( 'succeeded' , function ( event ) {
2174+ if ( event . commandName == 'insert' )
2175+ succeeded . push ( event ) ;
2176+ } ) ;
2177+
2178+ var db = configuration . newDbInstance ( { w :1 } , { poolSize :1 , auto_reconnect :false } ) ;
2179+ db . open ( function ( err , db ) {
2180+ test . equal ( null , err ) ;
2181+
2182+ db . collection ( 'apm_test' ) . insertMany ( [ { a :1 } ] , { forceServerObjectId :true } ) . then ( function ( r ) {
2183+ test . equal ( null , err ) ;
2184+ test . equal ( undefined , started [ 0 ] . command . documents [ 0 ] . _id ) ;
2185+
2186+ listener . uninstrument ( ) ;
2187+ db . close ( ) ;
2188+ test . done ( ) ;
2189+ } ) ;
2190+ } ) ;
2191+ }
2192+ }
20852193
20862194
20872195
0 commit comments