@@ -54,7 +54,7 @@ describe("change log integration test", () => {
54
54
isUsed : false ,
55
55
netAmount : 0
56
56
} ;
57
-
57
+
58
58
await INSERT . into ( adminService . entities . Order ) . entries ( ordersData ) ;
59
59
let changes = await adminService . run ( SELECT . from ( ChangeView ) ) ;
60
60
@@ -122,11 +122,11 @@ describe("change log integration test", () => {
122
122
valueChangedTo : ""
123
123
} ,
124
124
] ) ;
125
-
125
+
126
126
delete cds . services . AdminService . entities . Order . elements . netAmount [ "@changelog" ] ;
127
127
delete cds . services . AdminService . entities . Order . elements . isUsed [ "@changelog" ] ;
128
128
} ) ;
129
-
129
+
130
130
it ( "1.9 For DateTime and Timestamp, support for input via Date objects." , async ( ) => {
131
131
cds . env . requires [ "change-tracking" ] . preserveDeletes = true ;
132
132
cds . services . AdminService . entities . RootEntity . elements . dateTime [ "@changelog" ] = true ;
@@ -217,15 +217,15 @@ describe("change log integration test", () => {
217
217
it ( "3.6 Composition operation of inline entity operation by QL API" , async ( ) => {
218
218
await UPDATE ( adminService . entities [ "Order.Items" ] )
219
219
. where ( {
220
- up__ID : "3b23bb4b-4ac7-4a24-ac02-aa10cabd842c" ,
220
+ up__ID : "3b23bb4b-4ac7-4a24-ac02-aa10cabd842c" ,
221
221
ID : "2b23bb4b-4ac7-4a24-ac02-aa10cabd842c"
222
222
} )
223
223
. with ( {
224
224
quantity : 12
225
225
} ) ;
226
226
227
227
const changes = await adminService . run ( SELECT . from ( ChangeView ) ) ;
228
-
228
+
229
229
expect ( changes . length ) . to . equal ( 1 ) ;
230
230
const change = changes [ 0 ] ;
231
231
expect ( change . attribute ) . to . equal ( "quantity" ) ;
@@ -254,7 +254,7 @@ describe("change log integration test", () => {
254
254
expect ( createBookStoresChange . objectID ) . to . equal ( "new name" ) ;
255
255
256
256
await UPDATE ( adminService . entities . BookStores )
257
- . where ( {
257
+ . where ( {
258
258
ID : "9d703c23-54a8-4eff-81c1-cdce6b6587c4"
259
259
} )
260
260
. with ( {
@@ -272,7 +272,7 @@ describe("change log integration test", () => {
272
272
expect ( updateBookStoresChange . objectID ) . to . equal ( "BookStores name changed" ) ;
273
273
274
274
cds . services . AdminService . entities . BookStores [ "@changelog" ] . pop ( ) ;
275
-
275
+
276
276
const level3EntityData = [
277
277
{
278
278
ID : "12ed5dd8-d45b-11ed-afa1-0242ac654321" ,
@@ -530,6 +530,84 @@ describe("change log integration test", () => {
530
530
expect ( changes [ 0 ] . valueChangedTo ) . to . equal ( "" ) ;
531
531
} ) ;
532
532
533
+ it ( `11.1 "disableUpdateTracking" setting` , async ( ) => {
534
+ cds . env . requires [ "change-tracking" ] . disableUpdateTracking = true ;
535
+ await UPDATE ( adminService . entities . BookStores )
536
+ . where ( { ID : "64625905-c234-4d0d-9bc1-283ee8946770" } )
537
+ . with ( { name : 'New name' } ) ;
538
+
539
+ let changes = await SELECT . from ( ChangeView ) . where ( {
540
+ entity : "sap.capire.bookshop.BookStores" ,
541
+ attribute : "name" ,
542
+ modification : "update"
543
+ } ) ;
544
+ expect ( changes . length ) . to . equal ( 0 ) ;
545
+
546
+ cds . env . requires [ "change-tracking" ] . disableUpdateTracking = false ;
547
+ await UPDATE ( adminService . entities . BookStores )
548
+ . where ( { ID : "64625905-c234-4d0d-9bc1-283ee8946770" } )
549
+ . with ( { name : 'Another name' } ) ;
550
+
551
+ changes = await SELECT . from ( ChangeView ) . where ( {
552
+ entity : "sap.capire.bookshop.BookStores" ,
553
+ attribute : "name" ,
554
+ modification : "update"
555
+ } ) ;
556
+ expect ( changes . length ) . to . equal ( 1 ) ;
557
+ } ) ;
558
+
559
+ it ( `11.2 "disableCreateTracking" setting` , async ( ) => {
560
+ cds . env . requires [ "change-tracking" ] . disableCreateTracking = true ;
561
+ await INSERT . into ( adminService . entities . BookStores ) . entries ( {
562
+ ID : "9d703c23-54a8-4eff-81c1-cdce6b6587c4" ,
563
+ name : "new name" ,
564
+ } ) ;
565
+
566
+ let changes = await SELECT . from ( ChangeView ) . where ( {
567
+ entity : "sap.capire.bookshop.BookStores" ,
568
+ attribute : "name" ,
569
+ modification : "create" ,
570
+ } ) ;
571
+ expect ( changes . length ) . to . equal ( 0 ) ;
572
+
573
+ cds . env . requires [ "change-tracking" ] . disableCreateTracking = false ;
574
+ await INSERT . into ( adminService . entities . BookStores ) . entries ( {
575
+ ID : "04e93234-a5cb-4bfb-89b3-f242ddfaa4ad" ,
576
+ name : "another name" ,
577
+ } ) ;
578
+
579
+ changes = await SELECT . from ( ChangeView ) . where ( {
580
+ entity : "sap.capire.bookshop.BookStores" ,
581
+ attribute : "name" ,
582
+ modification : "create" ,
583
+ } ) ;
584
+ expect ( changes . length ) . to . equal ( 1 ) ;
585
+ } ) ;
586
+
587
+ it ( `11.3 "disableDeleteTracking" setting` , async ( ) => {
588
+ cds . env . requires [ "change-tracking" ] . disableDeleteTracking = true ;
589
+ await DELETE . from ( adminService . entities . Level3Entity )
590
+ . where ( { ID : "12ed5dd8-d45b-11ed-afa1-0242ac654321" } ) ;
591
+
592
+ let changes = await SELECT . from ( ChangeView ) . where ( {
593
+ entity : "sap.capire.bookshop.Level3Entity" ,
594
+ attribute : "title" ,
595
+ modification : "delete" ,
596
+ } ) ;
597
+ expect ( changes . length ) . to . equal ( 0 ) ;
598
+
599
+ cds . env . requires [ "change-tracking" ] . disableDeleteTracking = false ;
600
+ await DELETE . from ( adminService . entities . Level2Entity )
601
+ . where ( { ID : "dd1fdd7d-da2a-4600-940b-0baf2946c4ff" } ) ;
602
+
603
+ changes = await SELECT . from ( ChangeView ) . where ( {
604
+ entity : "sap.capire.bookshop.Level2Entity" ,
605
+ attribute : "title" ,
606
+ modification : "delete" ,
607
+ } ) ;
608
+ expect ( changes . length ) . to . equal ( 1 ) ;
609
+ } ) ;
610
+
533
611
it ( "Do not change track personal data" , async ( ) => {
534
612
const allCustomers = await SELECT . from ( adminService . entities . Customers ) ;
535
613
await UPDATE ( adminService . entities . Customers ) . where ( { ID : allCustomers [ 0 ] . ID } ) . with ( {
0 commit comments