From 19f979e38d7dc9a067697e9bff1e0c333517e341 Mon Sep 17 00:00:00 2001 From: aniket-engg Date: Fri, 29 May 2020 16:30:25 +0530 Subject: [PATCH] noReturn test cases --- .../staticAnalysisIntegration-test-0.5.0.ts | 36 +++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/remix-analyzer/test/analysis/staticAnalysisIntegration-test-0.5.0.ts b/remix-analyzer/test/analysis/staticAnalysisIntegration-test-0.5.0.ts index 05c1b0efe1..b76a0c9c0c 100644 --- a/remix-analyzer/test/analysis/staticAnalysisIntegration-test-0.5.0.ts +++ b/remix-analyzer/test/analysis/staticAnalysisIntegration-test-0.5.0.ts @@ -407,6 +407,42 @@ test('Integration test blockBlockhash module', function (t: test.Test) { }) }) +test('Integration test noReturn module', function (t: test.Test) { + t.plan(testFiles.length) + const module = modules.noReturn + const lengthCheck = { + 'KingOfTheEtherThrone.sol': 0, + 'assembly.sol': 1, + 'ballot.sol': 0, + 'ballot_reentrant.sol': 0, + 'ballot_withoutWarnings.sol': 0, + 'cross_contract.sol': 0, + 'inheritance.sol': 0, + 'modifier1.sol': 0, + 'modifier2.sol': 0, + 'notReentrant.sol': 0, + 'structReentrant.sol': 0, + 'thisLocal.sol': 1, + 'globals.sol': 0, + 'library.sol': 0, + 'transfer.sol': 0, + 'ctor.sol': 0, + 'forgottenReturn.sol': 1, + 'selfdestruct.sol': 0, + 'deleteDynamicArray.sol': 0, + 'deleteFromDynamicArray.sol': 0, + 'blockLevelCompare.sol': 0, + 'intDivisionTruncate.sol': 0, + 'ERC20.sol': 0, + 'stringBytesLength.sol': 0, + 'etherTransferInLoop.sol': 0, + 'forLoopIteratesOverDynamicArray.sol': 0 + } + runModuleOnFiles(module, t, (file: string, report: AnalysisReportObj[]) => { + t.equal(report.length, lengthCheck[file], `${file} has right amount of noReturn warnings`) + }) +}) + test('Integration test selfdestruct module', function (t: test.Test) { t.plan(testFiles.length) const module: any = modules.selfdestruct