1
+ 'use strict'
2
+
3
+ import { NightwatchBrowser } from 'nightwatch'
4
+ import init from '../helpers/init'
5
+
6
+ module . exports = {
7
+ '@disabled' : true ,
8
+ before : function ( browser : NightwatchBrowser , done : VoidFunction ) {
9
+ init ( browser , done )
10
+ } ,
11
+ '@sources' : function ( ) {
12
+ return [ ]
13
+ } ,
14
+
15
+ 'Compile using the widget #group1' : function ( browser : NightwatchBrowser ) {
16
+ browser
17
+ . openFile ( 'contracts/3_Ballot.sol' )
18
+ . click ( '[data-id="compile-action"]' )
19
+ . waitForElementVisible ( '[data-id="compile_group"] i.fa-check' , 10000 )
20
+ . verifyContracts ( [ 'Ballot' ] )
21
+ } ,
22
+
23
+ 'Run script using the widget #group2' : function ( browser : NightwatchBrowser ) {
24
+ browser
25
+ . openFile ( 'scripts/deploy_with_web3.ts' )
26
+ . click ( '[data-id="compile-action"]' )
27
+ . waitForElementVisible ( '[data-id="compile_group"] i.fa-check' , 10000 )
28
+ } ,
29
+
30
+ 'Should activate Solidity Static Analysis and show "Solidity Analyzers" title from compile dropdown #group3' : function ( browser : NightwatchBrowser ) {
31
+ browser
32
+ . openFile ( 'contracts/3_Ballot.sol' )
33
+ . click ( '[data-id="compile-dropdown-trigger"]' )
34
+ . waitForElementVisible ( '[data-id="compile-dropdown-panel"]' , 5000 )
35
+ . click ( '[data-id="compile-run-analysis-menu-item"]' )
36
+ . waitForElementVisible ( '[data-id="compile-run-analysis-menu-item-panel"]' , 5000 )
37
+ . click ( '[data-id="run-remix-analysis-submenu-item"]' )
38
+ . waitForElementVisible ( '#icon-panel div[plugin="solidityStaticAnalysis"]' , 10000 )
39
+ . waitForElementVisible ( '[data-id="sidePanelSwapitTitle"]' , 5000 )
40
+ . assert . textContains ( '[data-id="sidePanelSwapitTitle"]' , 'SOLIDITY ANALYZERS' , 'Solidity Analyzers title should be visible.' )
41
+ . waitForElementVisible ( '#side-panel' , 5000 )
42
+ . verifyContracts ( [ 'Ballot' ] )
43
+ } ,
44
+
45
+ 'Should run Solidity Scan and display results in terminal #group4' : function ( browser : NightwatchBrowser ) {
46
+ browser
47
+ . openFile ( 'contracts/3_Ballot.sol' )
48
+ . click ( '[data-id="compile-dropdown-trigger"]' )
49
+ . waitForElementVisible ( '[data-id="compile-dropdown-panel"]' , 5000 )
50
+ . click ( '[data-id="compile-run-analysis-menu-item"]' )
51
+ . waitForElementVisible ( '[data-id="compile-run-analysis-menu-item-panel"]' , 5000 )
52
+ . click ( '[data-id="run-solidity-scan-submenu-item"]' )
53
+ . waitForElementVisible ( '[data-id="SolidityScanPermissionHandlerModalDialogModalTitle-react"]' , 10000 )
54
+ . waitForElementVisible ( '[data-id="SolidityScanPermissionHandler-modal-footer-ok-react"]' , 5000 )
55
+ . click ( '[data-id="SolidityScanPermissionHandler-modal-footer-ok-react"]' )
56
+ . waitForElementContainsText ( '*[data-id="terminalJournal"]' , 'Scan Summary:' , 30000 )
57
+ . verifyContracts ( [ 'Ballot' ] )
58
+ }
59
+
60
+
61
+ }
0 commit comments