Skip to content

Commit 04e1706

Browse files
test(service): <- update tokens
1 parent 60f2b6b commit 04e1706

File tree

2 files changed

+25
-1
lines changed

2 files changed

+25
-1
lines changed

src/BasedAppManager.sol

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -257,6 +257,11 @@ contract BasedAppManager is Initializable, OwnableUpgradeable, UUPSUpgradeable {
257257
function addTokensToService(address serviceAddress, address[] calldata tokens) external {
258258
ICore.Service storage service = services[serviceAddress];
259259
for (uint256 i = 0; i < tokens.length; i++) {
260+
for (uint256 j = 0; j < service.tokens.length; j++) {
261+
if (service.tokens[j] == tokens[i]) {
262+
revert("Token already added");
263+
}
264+
}
260265
service.tokens.push(tokens[i]);
261266
}
262267
emit ServiceTokensUpdated(serviceAddress, tokens);

test/BasedAppManager.t.sol

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -711,5 +711,24 @@ contract BasedAppManagerTest is Test, OwnableUpgradeable {
711711
vm.stopPrank();
712712
}
713713

714-
function testUpdateService() public {}
714+
function testUpdateServiceWithNewTokens() public {
715+
testRegisterService();
716+
vm.startPrank(USER1);
717+
address[] memory tokensInput = new address[](2);
718+
tokensInput[0] = address(erc20mock2);
719+
tokensInput[1] = address(ETH_ADDRESS);
720+
proxiedManager.addTokensToService(SERVICE1, tokensInput);
721+
vm.stopPrank();
722+
}
723+
724+
function testUpdateServiceWithAlreadyPresentTokensRevert() public {
725+
testRegisterService();
726+
vm.startPrank(USER1);
727+
address[] memory tokensInput = new address[](2);
728+
tokensInput[0] = address(erc20mock);
729+
tokensInput[1] = address(ETH_ADDRESS);
730+
vm.expectRevert("Token already added");
731+
proxiedManager.addTokensToService(SERVICE1, tokensInput);
732+
vm.stopPrank();
733+
}
715734
}

0 commit comments

Comments
 (0)