@@ -67,7 +67,8 @@ import reducer, {
67
67
claimPendingMessages ,
68
68
claimConsumerMessages ,
69
69
claimConsumerMessagesSuccess ,
70
- claimConsumerMessagesFailure
70
+ claimConsumerMessagesFailure ,
71
+ deleteMessageFromList
71
72
} from 'uiSrc/slices/browser/stream'
72
73
import { StreamViewType } from 'uiSrc/slices/interfaces/stream'
73
74
import { cleanup , initialStateDefault , mockedStore , } from 'uiSrc/utils/test-utils'
@@ -1403,7 +1404,6 @@ describe('stream slice', () => {
1403
1404
const entries = [ '0-1' ]
1404
1405
const responsePayload = { status : 200 }
1405
1406
1406
- apiService . post = jest . fn ( ) . mockResolvedValue ( responsePayload )
1407
1407
apiService . post = jest . fn ( ) . mockResolvedValue ( responsePayload )
1408
1408
apiService . post = jest . fn ( ) . mockResolvedValue ( responsePayload )
1409
1409
@@ -1414,7 +1414,7 @@ describe('stream slice', () => {
1414
1414
const expectedActions = [
1415
1415
ackPendingEntries ( ) ,
1416
1416
ackPendingEntriesSuccess ( ) ,
1417
- loadConsumerGroups ( ) ,
1417
+ deleteMessageFromList ( '0-1' ) ,
1418
1418
loadConsumerGroups ( ) ,
1419
1419
addMessageNotification (
1420
1420
successMessages . MESSAGE_ACTION (
@@ -1456,7 +1456,7 @@ describe('stream slice', () => {
1456
1456
} )
1457
1457
1458
1458
describe ( 'claimPendingMessagesAction' , ( ) => {
1459
- it ( 'succeed to fetch data ' , async ( ) => {
1459
+ it ( 'succeed to claim message ' , async ( ) => {
1460
1460
// Arrange
1461
1461
const data : Partial < ClaimPendingEntryDto > = {
1462
1462
keyName : 'key' ,
@@ -1468,7 +1468,6 @@ describe('stream slice', () => {
1468
1468
1469
1469
const responsePayload = { status : 200 }
1470
1470
1471
- apiService . post = jest . fn ( ) . mockResolvedValue ( responsePayload )
1472
1471
apiService . post = jest . fn ( ) . mockResolvedValue ( responsePayload )
1473
1472
1474
1473
const responsePayloadPost = { data : { affected : [ '0-1' ] } , status : 200 }
@@ -1483,7 +1482,7 @@ describe('stream slice', () => {
1483
1482
claimConsumerMessages ( ) ,
1484
1483
claimConsumerMessagesSuccess ( ) ,
1485
1484
loadConsumerGroups ( ) ,
1486
- loadConsumerGroups ( ) ,
1485
+ deleteMessageFromList ( '0-1' ) ,
1487
1486
addMessageNotification (
1488
1487
successMessages . MESSAGE_ACTION ( '0-1' , 'claimed' )
1489
1488
)
@@ -1492,6 +1491,40 @@ describe('stream slice', () => {
1492
1491
expect ( store . getActions ( ) ) . toEqual ( expectedActions )
1493
1492
} )
1494
1493
1494
+ it ( 'succeed to claim message with 0 affected' , async ( ) => {
1495
+ // Arrange
1496
+ const data : Partial < ClaimPendingEntryDto > = {
1497
+ keyName : 'key' ,
1498
+ groupName : 'group' ,
1499
+ consumerName : 'name' ,
1500
+ minIdleTime : 0 ,
1501
+ entries : [ '0-1' ]
1502
+ }
1503
+
1504
+ const responsePayload = { status : 200 }
1505
+
1506
+ apiService . post = jest . fn ( ) . mockResolvedValue ( responsePayload )
1507
+
1508
+ const responsePayloadPost = { data : { affected : [ ] } , status : 200 }
1509
+
1510
+ apiService . post = jest . fn ( ) . mockResolvedValue ( responsePayloadPost )
1511
+
1512
+ // Act
1513
+ await store . dispatch < any > ( claimPendingMessages ( data ) )
1514
+
1515
+ // Assert
1516
+ const expectedActions = [
1517
+ claimConsumerMessages ( ) ,
1518
+ claimConsumerMessagesSuccess ( ) ,
1519
+ loadConsumerGroups ( ) ,
1520
+ addMessageNotification (
1521
+ successMessages . NO_CLAIMED_MESSAGES ( )
1522
+ )
1523
+ ]
1524
+
1525
+ expect ( store . getActions ( ) ) . toEqual ( expectedActions )
1526
+ } )
1527
+
1495
1528
it ( 'failed to fetch data' , async ( ) => {
1496
1529
const data : Partial < ClaimPendingEntryDto > = {
1497
1530
keyName : 'key' ,
@@ -1524,4 +1557,4 @@ describe('stream slice', () => {
1524
1557
} )
1525
1558
} )
1526
1559
} )
1527
- } )
1560
+ } )
0 commit comments