added UI tests

This commit is contained in:
dennis00010011b 2018-04-04 15:29:51 -07:00
parent 7d61364042
commit 1830ea0a96
11 changed files with 705 additions and 257 deletions

3
.gitignore vendored
View File

@ -7,4 +7,5 @@ temp
results
.env
.DS_Store
index.js
index.js
.idea

View File

@ -2,8 +2,17 @@
<project version="4">
<component name="ChangeListManager">
<list default="true" id="40b9626d-5f4f-46c4-8096-7de331aaa15a" name="Default" comment="">
<change beforePath="$PROJECT_DIR$/.gitignore" afterPath="$PROJECT_DIR$/.gitignore" />
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" afterPath="$PROJECT_DIR$/.idea/workspace.xml" />
<change beforePath="$PROJECT_DIR$/config.json" afterPath="$PROJECT_DIR$/config.json" />
<change beforePath="$PROJECT_DIR$/entity/User.js" afterPath="$PROJECT_DIR$/entity/User.js" />
<change beforePath="$PROJECT_DIR$/pages/Page.js" afterPath="$PROJECT_DIR$/pages/Page.js" />
<change beforePath="$PROJECT_DIR$/pages/ReservedTokensPage.js" afterPath="$PROJECT_DIR$/pages/ReservedTokensPage.js" />
<change beforePath="$PROJECT_DIR$/pages/TierPage.js" afterPath="$PROJECT_DIR$/pages/TierPage.js" />
<change beforePath="$PROJECT_DIR$/pages/WizardStep2.js" afterPath="$PROJECT_DIR$/pages/WizardStep2.js" />
<change beforePath="$PROJECT_DIR$/pages/WizardStep3.js" afterPath="$PROJECT_DIR$/pages/WizardStep3.js" />
<change beforePath="$PROJECT_DIR$/test/testSuite1.js" afterPath="$PROJECT_DIR$/test/testSuite1.js" />
<change beforePath="$PROJECT_DIR$/test/testSuite2.js" afterPath="$PROJECT_DIR$/test/testSuite2.js" />
</list>
<ignored path="$PROJECT_DIR$/.tmp/" />
<ignored path="$PROJECT_DIR$/temp/" />
@ -23,48 +32,28 @@
<file leaf-file-name="User.js" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/entity/User.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="150">
<caret line="187" column="24" lean-forward="false" selection-start-line="187" selection-start-column="24" selection-end-line="187" selection-end-column="24" />
<state relative-caret-position="-563">
<caret line="397" column="16" lean-forward="false" selection-start-line="397" selection-start-column="10" selection-end-line="397" selection-end-column="16" />
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="testSuite2.js" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/test/testSuite2.js">
<file leaf-file-name="WizardStep3.js" pinned="false" current-in-tab="true">
<entry file="file://$PROJECT_DIR$/pages/WizardStep3.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="468">
<caret line="379" column="25" lean-forward="false" selection-start-line="379" selection-start-column="25" selection-end-line="379" selection-end-column="25" />
<state relative-caret-position="78">
<caret line="230" column="0" lean-forward="true" selection-start-line="230" selection-start-column="0" selection-end-line="230" selection-end-column="0" />
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="WizardStep2.js" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/pages/WizardStep2.js">
<file leaf-file-name="config.json" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/config.json">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="60">
<caret line="61" column="26" lean-forward="false" selection-start-line="61" selection-start-column="26" selection-end-line="61" selection-end-column="26" />
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="testSuite1.json" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/scenarios/testSuite1.json">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="226">
<caret line="18" column="20" lean-forward="false" selection-start-line="18" selection-start-column="20" selection-end-line="18" selection-end-column="20" />
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="testSuite1.js" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/test/testSuite1.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="1027">
<caret line="106" column="23" lean-forward="false" selection-start-line="106" selection-start-column="23" selection-end-line="106" selection-end-column="23" />
<state relative-caret-position="90">
<caret line="6" column="0" lean-forward="false" selection-start-line="6" selection-start-column="0" selection-end-line="6" selection-end-column="0" />
<folding />
</state>
</provider>
@ -73,18 +62,28 @@
<file leaf-file-name="TierPage.js" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/pages/TierPage.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="3900">
<caret line="260" column="9" lean-forward="false" selection-start-line="260" selection-start-column="9" selection-end-line="260" selection-end-column="9" />
<state relative-caret-position="240">
<caret line="236" column="45" lean-forward="false" selection-start-line="236" selection-start-column="45" selection-end-line="236" selection-end-column="45" />
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="ManagePage.js" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/pages/ManagePage.js">
<file leaf-file-name="WizardStep2.js" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/pages/WizardStep2.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="255">
<caret line="17" column="29" lean-forward="false" selection-start-line="17" selection-start-column="29" selection-end-line="17" selection-end-column="29" />
<state relative-caret-position="93">
<caret line="54" column="56" lean-forward="true" selection-start-line="54" selection-start-column="56" selection-end-line="54" selection-end-column="56" />
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="testSuite1.js" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/test/testSuite1.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="112">
<caret line="616" column="0" lean-forward="true" selection-start-line="616" selection-start-column="0" selection-end-line="616" selection-end-column="0" />
<folding />
</state>
</provider>
@ -93,28 +92,8 @@
<file leaf-file-name="Page.js" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/pages/Page.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="1845">
<caret line="123" column="39" lean-forward="false" selection-start-line="123" selection-start-column="39" selection-end-line="123" selection-end-column="39" />
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="config.json" pinned="false" current-in-tab="true">
<entry file="file://$PROJECT_DIR$/config.json">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="90">
<caret line="6" column="0" lean-forward="true" selection-start-line="6" selection-start-column="0" selection-end-line="6" selection-end-column="0" />
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="ReservedTokens.json" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/scenarios/ReservedTokens.json">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="915">
<caret line="61" column="19" lean-forward="false" selection-start-line="61" selection-start-column="19" selection-end-line="61" selection-end-column="19" />
<state relative-caret-position="171">
<caret line="131" column="10" lean-forward="false" selection-start-line="131" selection-start-column="10" selection-end-line="131" selection-end-column="10" />
<folding />
</state>
</provider>
@ -131,36 +110,36 @@
</component>
<component name="FindInProjectRecents">
<findStrings>
<find>rate</find>
<find>getBalance</find>
<find>distr</find>
<find>distri</find>
<find>open</find>
<find>isElementPr</find>
<find>distri</find>
<find>fill</find>
<find>getU</find>
<find>reserved</find>
<find>driver.sleep</find>
<find>Fast</find>
<find>fillName</find>
<find>Custom</find>
<find>gasprice</find>
<find>get</find>
<find>white</find>
<find>bulk</find>
<find>fillWhitelist</find>
<find>amou</find>
<find>clear</find>
<find>Tier</find>
<find>getAtt</find>
<find>smallAmount</find>
<find>tierPage</find>
<find>clickCheckboxWhitelist</find>
<find>create</find>
<find>red</find>
<find>uplo</find>
<find>test</find>
<find>Investor can buy amount equal mincap</find>
<find>isElementPre</find>
<find>isElement</find>
<find>constructor</find>
<find>getText</find>
<find>fieldName</find>
<find>getFieldD</find>
<find>isPresent</find>
<find>testte</find>
<find>throw</find>
<find>getBalance</find>
<find>crea</find>
<find>CSV</find>
<find>Disabled</find>
<find>clear</find>
<find>create</find>
<find>proceed</find>
<find>upload</find>
</findStrings>
<dirStrings>
<dir>$PROJECT_DIR$/temp</dir>
@ -204,27 +183,27 @@
<option value="$PROJECT_DIR$/entity/Logger.js" />
<option value="$PROJECT_DIR$/temp.txt" />
<option value="$PROJECT_DIR$/package.json" />
<option value="$PROJECT_DIR$/.gitignore" />
<option value="$PROJECT_DIR$/pages/InvestPage.js" />
<option value="$PROJECT_DIR$/pages/MetaMask.js" />
<option value="$PROJECT_DIR$/pages/WizardStep4.js" />
<option value="$PROJECT_DIR$/entity/Tier.js" />
<option value="$PROJECT_DIR$/entity/Whitelist.js" />
<option value="$PROJECT_DIR$/pages/ManagePage.js" />
<option value="$PROJECT_DIR$/pages/WizardWelcome.js" />
<option value="$PROJECT_DIR$/entity/User.js" />
<option value="$PROJECT_DIR$/pages/ReservedTokensPage.js" />
<option value="$PROJECT_DIR$/scenarios/testSuite1.json" />
<option value="$PROJECT_DIR$/pages/Page.js" />
<option value="$PROJECT_DIR$/README.md" />
<option value="$PROJECT_DIR$/scenarios/ReservedTokens.json" />
<option value="$PROJECT_DIR$/pages/TierPage.js" />
<option value="$PROJECT_DIR$/MyWhitelist1.csv" />
<option value="$PROJECT_DIR$/pages/WizardStep3.js" />
<option value="$PROJECT_DIR$/test/testSuite2.js" />
<option value="$PROJECT_DIR$/pages/WizardStep2.js" />
<option value="$PROJECT_DIR$/test/testSuite1.js" />
<option value="$PROJECT_DIR$/.gitignore" />
<option value="$PROJECT_DIR$/pages/InvestPage.js" />
<option value="$PROJECT_DIR$/scenarios/testSuite1.json" />
<option value="$PROJECT_DIR$/config.json" />
<option value="$PROJECT_DIR$/pages/Page.js" />
<option value="$PROJECT_DIR$/pages/ReservedTokensPage.js" />
<option value="$PROJECT_DIR$/pages/WizardStep2.js" />
<option value="$PROJECT_DIR$/test/testSuite2.js" />
<option value="$PROJECT_DIR$/test/testSuite1.js" />
<option value="$PROJECT_DIR$/pages/WizardStep3.js" />
<option value="$PROJECT_DIR$/entity/User.js" />
<option value="$PROJECT_DIR$/pages/TierPage.js" />
</list>
</option>
</component>
@ -244,9 +223,9 @@
<handled-path value="$PROJECT_DIR$/node_modules" />
</component>
<component name="ProjectFrameBounds">
<option name="x" value="553" />
<option name="y" value="27" />
<option name="width" value="1177" />
<option name="x" value="584" />
<option name="y" value="54" />
<option name="width" value="988" />
<option name="height" value="787" />
</component>
<component name="ProjectLevelVcsManager">
@ -276,6 +255,11 @@
<item name="token-wizard-test-automation" type="b2602c69:ProjectViewProjectNode" />
<item name="token-wizard-test-automation" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="token-wizard-test-automation" type="b2602c69:ProjectViewProjectNode" />
<item name="token-wizard-test-automation" type="462c0819:PsiDirectoryNode" />
<item name="entity" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="token-wizard-test-automation" type="b2602c69:ProjectViewProjectNode" />
<item name="token-wizard-test-automation" type="462c0819:PsiDirectoryNode" />
@ -406,12 +390,12 @@
<workItem from="1522394698987" duration="61423000" />
<workItem from="1522709650105" duration="57000" />
<workItem from="1522710272938" duration="1626000" />
<workItem from="1522725218348" duration="3128000" />
<workItem from="1522725218348" duration="30486000" />
</task>
<servers />
</component>
<component name="TimeTrackingManager">
<option name="totallyTimeSpent" value="726202000" />
<option name="totallyTimeSpent" value="753560000" />
</component>
<component name="TodoView">
<todo-panel id="selected-file">
@ -424,17 +408,16 @@
</todo-panel>
</component>
<component name="ToolWindowManager">
<frame x="553" y="27" width="1177" height="787" extended-state="0" />
<editor active="true" />
<frame x="584" y="54" width="988" height="787" extended-state="0" />
<layout>
<window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.2482699" sideWeight="0.49213484" order="0" side_tool="false" content_ui="combo" />
<window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.014477766" sideWeight="0.49213484" order="0" side_tool="false" content_ui="combo" />
<window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32840237" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" />
<window_info id="Docker" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="false" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
<window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.86538464" sideWeight="0.40791476" order="8" side_tool="true" content_ui="tabs" />
<window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.34911242" sideWeight="0.49753347" order="2" side_tool="false" content_ui="tabs" />
<window_info id="Version Control" active="false" anchor="bottom" auto_hide="true" internal_type="SLIDING" type="SLIDING" visible="false" show_stripe_button="true" weight="0.68491125" sideWeight="0.5" order="9" side_tool="false" content_ui="tabs" />
<window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.24947146" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
<window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.20179372" sideWeight="0.59208524" order="10" side_tool="false" content_ui="tabs" x="134" y="236" width="1254" height="290" />
<window_info id="Terminal" active="true" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.44095665" sideWeight="0.59208524" order="10" side_tool="false" content_ui="tabs" x="134" y="236" width="1254" height="290" />
<window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.39940828" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
<window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.27391976" sideWeight="0.5078652" order="2" side_tool="true" content_ui="tabs" />
<window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" />
@ -511,7 +494,7 @@
</line-breakpoint>
<line-breakpoint enabled="true" type="javascript">
<url>file://$PROJECT_DIR$/test/testSuite1.js</url>
<line>355</line>
<line>534</line>
<properties lambdaOrdinal="-1" />
<option name="timeStamp" value="6" />
</line-breakpoint>
@ -592,13 +575,6 @@
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/utils/Utils.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="182">
<caret line="204" column="22" lean-forward="false" selection-start-line="204" selection-start-column="22" selection-end-line="204" selection-end-column="22" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/entity/Logger.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="227">
@ -623,27 +599,6 @@
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/.gitignore">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="135">
<caret line="9" column="8" lean-forward="false" selection-start-line="9" selection-start-column="8" selection-end-line="9" selection-end-column="8" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/pages/InvestPage.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="-940">
<caret line="9" column="5" lean-forward="false" selection-start-line="9" selection-start-column="5" selection-end-line="9" selection-end-column="5" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/pages/WizardStep4.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="395">
<caret line="91" column="40" lean-forward="false" selection-start-line="91" selection-start-column="40" selection-end-line="91" selection-end-column="40" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/contracts/DeployRegistry.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="252">
@ -744,13 +699,6 @@
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/pages/ReservedTokensPage.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="174">
<caret line="14" column="0" lean-forward="false" selection-start-line="13" selection-start-column="0" selection-end-line="14" selection-end-column="0" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/README.md">
<provider selected="true" editor-type-id="split-provider[text-editor;markdown-preview-editor]">
<state split_layout="SPLIT">
@ -768,22 +716,6 @@
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/scenarios/ReservedTokens.json">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="915">
<caret line="61" column="19" lean-forward="false" selection-start-line="61" selection-start-column="19" selection-end-line="61" selection-end-column="19" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/pages/TierPage.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="3900">
<caret line="260" column="9" lean-forward="false" selection-start-line="260" selection-start-column="9" selection-end-line="260" selection-end-column="9" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/MyWhitelist1.csv" />
<entry file="file://$PROJECT_DIR$/MyWhitelist.csv">
<provider selected="true" editor-type-id="text-editor">
@ -792,66 +724,58 @@
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/pages/Page.js">
<entry file="file://$PROJECT_DIR$/.gitignore">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="1845">
<caret line="123" column="39" lean-forward="false" selection-start-line="123" selection-start-column="39" selection-end-line="123" selection-end-column="39" />
<state relative-caret-position="150">
<caret line="10" column="5" lean-forward="false" selection-start-line="10" selection-start-column="5" selection-end-line="10" selection-end-column="5" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/pages/WizardStep3.js">
<entry file="file://$PROJECT_DIR$/utils/Utils.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="343">
<caret line="216" column="8" lean-forward="true" selection-start-line="216" selection-start-column="8" selection-end-line="216" selection-end-column="8" />
<state relative-caret-position="175">
<caret line="89" column="13" lean-forward="false" selection-start-line="89" selection-start-column="13" selection-end-line="89" selection-end-column="13" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/pages/ManagePage.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="255">
<caret line="17" column="29" lean-forward="false" selection-start-line="17" selection-start-column="29" selection-end-line="17" selection-end-column="29" />
<state relative-caret-position="254">
<caret line="46" column="48" lean-forward="false" selection-start-line="46" selection-start-column="4" selection-end-line="46" selection-end-column="48" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/pages/WizardStep2.js">
<entry file="file://$PROJECT_DIR$/pages/ReservedTokensPage.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="60">
<caret line="61" column="26" lean-forward="false" selection-start-line="61" selection-start-column="26" selection-end-line="61" selection-end-column="26" />
<state relative-caret-position="-430">
<caret line="115" column="5" lean-forward="false" selection-start-line="115" selection-start-column="5" selection-end-line="115" selection-end-column="5" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/entity/User.js">
<entry file="file://$PROJECT_DIR$/scenarios/ReservedTokens.json">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="150">
<caret line="187" column="24" lean-forward="false" selection-start-line="187" selection-start-column="24" selection-end-line="187" selection-end-column="24" />
<state relative-caret-position="350">
<caret line="42" column="27" lean-forward="false" selection-start-line="42" selection-start-column="27" selection-end-line="42" selection-end-column="27" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/test/testSuite2.js">
<entry file="file://$PROJECT_DIR$/pages/InvestPage.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="468">
<caret line="379" column="25" lean-forward="false" selection-start-line="379" selection-start-column="25" selection-end-line="379" selection-end-column="25" />
<state relative-caret-position="198">
<caret line="73" column="38" lean-forward="false" selection-start-line="73" selection-start-column="38" selection-end-line="73" selection-end-column="38" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/scenarios/testSuite1.json">
<entry file="file://$PROJECT_DIR$/pages/WizardStep4.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="226">
<caret line="18" column="20" lean-forward="false" selection-start-line="18" selection-start-column="20" selection-end-line="18" selection-end-column="20" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/test/testSuite1.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="1027">
<caret line="106" column="23" lean-forward="false" selection-start-line="106" selection-start-column="23" selection-end-line="106" selection-end-column="23" />
<state relative-caret-position="180">
<caret line="12" column="6" lean-forward="false" selection-start-line="12" selection-start-column="6" selection-end-line="12" selection-end-column="6" />
<folding />
</state>
</provider>
@ -859,7 +783,71 @@
<entry file="file://$PROJECT_DIR$/config.json">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="90">
<caret line="6" column="0" lean-forward="true" selection-start-line="6" selection-start-column="0" selection-end-line="6" selection-end-column="0" />
<caret line="6" column="0" lean-forward="false" selection-start-line="6" selection-start-column="0" selection-end-line="6" selection-end-column="0" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/scenarios/testSuite1.json">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="160">
<caret line="15" column="23" lean-forward="false" selection-start-line="15" selection-start-column="23" selection-end-line="15" selection-end-column="23" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/test/testSuite2.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="148">
<caret line="501" column="11" lean-forward="false" selection-start-line="501" selection-start-column="11" selection-end-line="501" selection-end-column="11" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/pages/Page.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="171">
<caret line="131" column="10" lean-forward="false" selection-start-line="131" selection-start-column="10" selection-end-line="131" selection-end-column="10" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/entity/User.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="-563">
<caret line="397" column="16" lean-forward="false" selection-start-line="397" selection-start-column="10" selection-end-line="397" selection-end-column="16" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/pages/TierPage.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="240">
<caret line="236" column="45" lean-forward="false" selection-start-line="236" selection-start-column="45" selection-end-line="236" selection-end-column="45" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/test/testSuite1.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="112">
<caret line="616" column="0" lean-forward="true" selection-start-line="616" selection-start-column="0" selection-end-line="616" selection-end-column="0" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/pages/WizardStep2.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="93">
<caret line="54" column="56" lean-forward="true" selection-start-line="54" selection-start-column="56" selection-end-line="54" selection-end-column="56" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/pages/WizardStep3.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="78">
<caret line="230" column="0" lean-forward="true" selection-start-line="230" selection-start-column="0" selection-end-line="230" selection-end-column="0" />
<folding />
</state>
</provider>

View File

@ -1,5 +1,5 @@
{
"startURL" : "http://localhost:3000/",
"startURL" : "https://wizard.oracles.org/",
"outputPath":"./results",
"installMetaMask":true

View File

@ -343,8 +343,6 @@ class User {
bb=bb|await mngPage.isEnabledDistribute();
}
if (bb)
{
await mngPage.clickButtonDistribute();
@ -449,27 +447,32 @@ class User {
await reservedTokens.clickButtonAddReservedTokens();
}
await wizardStep2.clickButtonContinue();
await wizardStep3.fillWalletAddress(cur.walletAddress);
await wizardStep3.setGasPrice(cur.gasPrice);
if (cur.whitelisting) await wizardStep3.clickCheckboxWhitelistYes();
else (await wizardStep3.fillMinCap(cur.minCap));
for (var i=0;i<cur.tiers.length-1;i++)
{
await tiers[i].fillTier();
await wizardStep3.clickButtonAddTier();
}
await tiers[cur.tiers.length-1].fillTier();
await Utils.takeScreenshoot(this.driver);
await wizardStep3.clickButtonContinue();
await this.driver.sleep(5000);
await Utils.takeScreenshoot(this.driver);
if (!(await wizardStep4.isPage())) {
logger.info("Incorrect data in tiers");
throw ('Incorrect data in tiers');
}
await wizardStep3.fillWalletAddress(cur.walletAddress);
await wizardStep3.setGasPrice(cur.gasPrice);
if (cur.whitelisting) await wizardStep3.clickCheckboxWhitelistYes();
else (await wizardStep3.fillMinCap(cur.minCap));
for (var i = 0; i < cur.tiers.length - 1; i++) {
await tiers[i].fillTier();
await wizardStep3.clickButtonAddTier();
}
await tiers[cur.tiers.length - 1].fillTier();
await this.driver.sleep(5000);
await wizardStep3.clickButtonContinue();
await this.driver.sleep(5000);
if (!(await wizardStep4.isPage())) {
logger.info("Incorrect data in tiers");
await wizardStep3.printWarnings();
await wizardStep3.fillWalletAddress(cur.walletAddress);
}
////////////////////////////////////////////////////////////////////
var trCounter=0;
var skippedTr=0;
@ -584,7 +587,7 @@ class User {
async contribute(amount){
logger.info(this.account + " contribution = "+amount);
logger.info(this. account+" balance = "+ Utils.getBalance(this));
logger.info(this. account+" balance = "+ Utils.getBalance(this. account));
var investPage = new InvestPage(this.driver);
await investPage.waitUntilLoaderGone();
await investPage.fillInvest(amount);
@ -646,9 +649,8 @@ class User {
await investPage.waitUntilLoaderGone();
await this.driver.sleep(2000);
await investPage.refresh();
await this.driver.sleep(2000);
await investPage.refresh();
await this.driver.sleep(2000);
await this.driver.sleep(4000);
let s=await investPage.getBalance();
let arr=s.split(" ");

View File

@ -25,8 +25,36 @@ class Page {
this.pageID;
this.footer;
this.header;
this.pageTitle;
}
async initTitles(){
try{
logger.info("init titles");
var locator = By.className("title");
var arr = await this.findWithWait(locator);
this.pageTitle=arr[0];
return arr;
}
catch(err){
logger.info("Page has no title");
return null;
}
}
async getTitleText(){
let arr=await this.initTitles();
if (arr!=null){
let s=await this.getTextByElement(this.pageTitle);
return s;}
else return "";
}
async isElementDisabled(element)
{
logger.info("isElementDisabled ")
@ -196,8 +224,7 @@ async clearField(element,n){
async fillField(field,address){
logger.info("fill: value = "+address);
logger.info("fill: value = "+address);
await field.sendKeys(address);
}
@ -326,6 +353,10 @@ catch(err){
}
async goBack(){
this.driver.navigate().back();
}
async switchToNextPage(){
logger.info("switch to next tab");

View File

@ -26,6 +26,20 @@ class ReservedTokensPage extends Page{
}
async initWarnings(){
try {
logger.info(this.name + " :init warnings:");
const locator = By.xpath("//p[@style='color: red; font-weight: bold; font-size: 12px; width: 100%; height: 10px;']");
var arr = await super.findWithWait(locator);
this.warningAddress = arr[3];
this.warningValue = arr[4];
return arr;
}
catch(err){
logger.info(this.name+": dont contain warning elements");
return null;
}
}
async initItemsRemove(){
var arr = await super.findWithWait(itemsRemove);
@ -90,18 +104,22 @@ class ReservedTokensPage extends Page{
async fillAddress(address){
logger.info(this.name+"field Address :");
if (address=="") return;
else {
logger.info("Waallet address"+address);
logger.info("Wallet address"+address);
await this.init();
await super.clearField(this.fieldAddress);
await super.fillField(this.fieldAddress, address);
}
}
async fillValue(value){
logger.info(this.name+"field Value :");
if (value==undefined) return;
await this.init();
await super.clearField(this.fieldValue);
await super.fillField(this.fieldValue,value);
}
@ -135,11 +153,6 @@ class ReservedTokensPage extends Page{
async isPresentButtonClearAll(){
return await super.isElementPresent(buttonClearAll);
}
async bulkDelete(){
await this.clickButtonClearAll();
}
async isPresentButtonYesAlert(){
return await super.isElementPresent(buttonYesAlert);
@ -156,7 +169,19 @@ class ReservedTokensPage extends Page{
await super.clickWithWait(buttonNoAlert);
}
async isPresentWarningAddress(){
await this.initWarnings();
let s=await super.getTextByElement(this.warningAddress);
if (s!="") return true;
else return false;
}
async isPresentWarningValue(){
await this.initWarnings();
let s=await super.getTextByElement(this.warningValue);
if (s!="") return true;
else return false;
}
}

View File

@ -215,15 +215,13 @@ class TierPage extends page.Page {
}
catch (err){return false;}
}
async fillAddress(address){
await this.init();
logger.info(this.name+"field Address: ");
let locator=this.fieldWhAddressTier;
await super.clearField(this.fieldWhAddressTier);
await super.fillWithWait(locator,address);
}
@ -231,12 +229,14 @@ class TierPage extends page.Page {
await this.init();
logger.info(this.name+"field Address: ");
let locator=this.fieldMinTier;
await super.clearField(this.fieldMinTier);
await super.fillWithWait(locator,value);
}
async fillMax(value){
await this.init();
logger.info(this.name+"field Max: ");
let locator=this.fieldMaxTier;
await super.clearField(this.fieldMaxTier);
await super.fillWithWait(locator,value);
}
async clickButtonAdd(){

View File

@ -21,18 +21,48 @@ class WizardStep2 extends page.Page {
this.fieldTicker;
this.fieldDecimals;
this.name="WizardStep2 page: ";
this.warningName;
this.warningTicker;
this.warningDecimals;
this.warningAddress;
this.warningValue;
this.title="TOKEN SETUP";
}
async init(){
try {
var locator = By.className("input");
var arr = await super.findWithWait(locator);
this.fieldName = arr[0];
this.fieldTicker = arr[1];
this.fieldDecimals = arr[2];
return arr;
}
var locator = By.className("input");
var arr = await super.findWithWait(locator);
this.fieldName = arr[0];
this.fieldTicker = arr[1];
this.fieldDecimals = arr[2];
catch(err){
logger.info(this.name+": dont contain input elements");
return null;
}
}
async initWarnings(){
try {
logger.info(this.name + " :init warnings:");
const locator = By.xpath("//p[@style='color: red; font-weight: bold; font-size: 12px; width: 100%; height: 10px;']");
var arr = await super.findWithWait(locator);
this.warningName = arr[0];
this.warningTicker = arr[1];
this.warningDecimals = arr[2];
return arr;
}
catch(err){
logger.info(this.name+": dont contain warning elements");
return null;
}
}
async isPresentFieldName(){
@ -43,19 +73,7 @@ async isPresentFieldName(){
else return false;
}
async testtest(){
console.log("Testtttt");
//const locator=By.css('style');
const locator=By.xpath("style[color: red]");
var arr=await this.driver.findElements(locator);
console.log("ARRRR="+ arr.length);
for (var i=0;i<arr.length;i++)
console.log("DDDDDFFF= "+ await arr[i].getText());
throw("The end");
}
async fillName(name){
try{
logger.info(this.name+"field Name: ");
@ -71,6 +89,7 @@ async fillTicker(name){
try {
logger.info(this.name + "field Ticker: ");
await this.init();
await super.clearField(this.fieldTicker);
await super.fillField(this.fieldTicker, name);
return true;
}
@ -82,6 +101,7 @@ async fillDecimals(name) {
try{
logger.info(this.name + "field Decimals: ");
await this.init();
await super.clearField(this.fieldDecimals);
await super.fillField(this.fieldDecimals, name);
return true;
}
@ -94,6 +114,8 @@ catch (err)
async clickButtonContinue(){
logger.info(this.name+"button Continue: ");
await super.clickWithWait(buttonContinue);
}
async isPresentButtonContinue(){
var b=await super.isElementPresent(buttonContinue);
@ -102,5 +124,47 @@ async clickButtonContinue(){
}
async isPresentWarningName(){
await this.initWarnings();
let s=await super.getTextByElement(this.warningName);
if (s!="") return true;
else return false;
}
async isPresentWarningTicker(){
await this.initWarnings();
let s=await super.getTextByElement(this.warningTicker);
if (s!="") return true;
else return false;
}
async isPresentWarningDecimals(){
await this.initWarnings();
let s=await super.getTextByElement(this.warningDecimals);
if (s!="") return true;
else return false;
}
async getFieldDecimals(){
logger.info(this.name+"getFieldDecimals: ");
try {
await this.init();
let s = super.getAttribute(this.fieldDecimals, "value");
return s;
}
catch (err)
{
logger.info(err);
return "";
}
}
async isDisabledDecimals(){
await this.init();
return await super.isElementDisabled(this.fieldDecimals);
}
}
module.exports.WizardStep2=WizardStep2;

View File

@ -34,6 +34,8 @@ class WizardStep3 extends page.Page{
this.fieldGasPriceCustom ;
this.fieldWalletAddress;
this.fieldMinCap;
this.title="CROWDSALE SETUP";
this.warningWalletAddress;
}
static getFlagCustom(){return flagCustom;}
static getFlagWHitelising(){return flagWHitelising;}
@ -42,6 +44,29 @@ static setFlagWHitelising(value){flagWHitelising=value;}
static getCountTiers(){return COUNT_TIERS}
static setCountTiers(value){COUNT_TIERS=value}
async printWarnings(){
var arr=await this.initWarnings();
for (var i=0;i<arr.length;i++)
{
logger.info(i+" : "+ await super.getTextByElement(arr[i]));
}
}
async initWarnings(){
try {
logger.info(this.name + " :init warnings:");
const locator = By.xpath("//p[@style='color: red; font-weight: bold; font-size: 12px; width: 100%; height: 10px;']");
var arr = await super.findWithWait(locator);
this.warningWalletAddress = arr[0];
return arr;
}
catch(err){
logger.info(this.name+": dont contain warning elements");
return null;
}
}
async init(){
try{
var locator = By.className("input");
@ -208,13 +233,11 @@ catch(err)
logger.info('Upload CSV');
try {
const loc = By.xpath("//*[@id=\"root\"]/div/section/div[3]/div/div[2]/div[2]/div[2]/div/input");
const loc=By.xpath('//input[@type="file"]');
var el = this.driver.findElement(loc);
//el.sendKeys("/home/travis/build/dennis00010011b/travistest/node_modules/token-wizard-test-automation/MyWhitelist.csv");
el.sendKeys("/home/travis/build/poanetwork/token-wizard/submodules/token-wizard-test-automation/MyWhitelist.csv");
//el.sendKeys("https://github.com/poanetwork/token-wizard-test-automation/blob/rpc/MyWhitelist.csv");
//el.sendKeys(".Downloads/MyWhitelist.csv");
// el.sendKeys("/Users/person/WebstormProjects/token-wizard-test-automation/MyWhitelist.csv")
//el.sendKeys("/Users/person/WebstormProjects/token-wizard-test-automation/MyWhitelist.csv")
return true;
}
@ -246,5 +269,7 @@ async clickButtonOk(){
}
}
module.exports.WizardStep3=WizardStep3;

View File

@ -205,26 +205,192 @@ test.describe('POA token-wizard. Test suite #2', function() {
logger.error("Test PASSED. User is able to open Step2 by clicking button Continue");
});
test.it('Wizard step#2: user able to fill Name field with valid data',
////////////////////////// S T E P 2 //////////////////////////////////////////////////////////////////////////////
test.it('Wizard step#2: user able to fill out field Ticker with valid data',
async function () {
b= await wizardStep2.fillName(currencyForE2e.name);
assert.equal(b, true, "Test FAILED. Wizard step#2: button Continue not present ");
await wizardStep2.fillTicker("test");
b=await wizardStep2.isPresentWarningTicker();
assert.equal(b, false, "Test FAILED. Wizard step#2: user is not able to fill out field Ticker with valid data ");
});
///////Name////
test.it("Wizard step#2: warning is presented if field Name is empty ",
async function () {
await wizardStep2.fillName(" ");
b=await wizardStep2.isPresentWarningName();
assert.equal(b, true, "Test FAILED. Wizard step#2: warning doesnt present if field Name empty");
});
test.it('Wizard step#2: warning is presented if Name length more than 30 symbols',
async function () {
await wizardStep2.fillName("012345678901234567890123456789q");
b=await wizardStep2.isPresentWarningName();
assert.equal(b, true, "Test FAILED. Wizard step#2: warning doesnt present if Name length more than 30 symbols");
});
test.it("Wizard step#2: user is not able to proceed if name's warning is presented ",
async function () {
await wizardStep2.clickButtonContinue();
b=await wizardStep2.getTitleText();
b=(b==wizardStep2.title);
if (!b) await wizardStep3.goBack();
assert.equal(b, true, "Test FAILED. Wizard step#2: user is able to proceed if name's warning presented");
});
test.it('Wizard step#2: user able to fill Name field with valid data',
async function () {
await wizardStep2.fillName(currencyForE2e.name);
b=await wizardStep2.isPresentWarningName();
assert.equal(b, false, "Test FAILED. Wizard step#2: user able to fill Name field with valid data ");
});
////Ticker////
test.it("Wizard step#2: warning is presented if field Ticker is empty ",
async function () {
await wizardStep2.fillTicker(" ");
b=await wizardStep2.isPresentWarningTicker();
assert.equal(b, true, "Test FAILED. Wizard step#2: warning does not present if field Ticker empty ");
});
test.it('Wizard step#2: warning is presented if field Ticker length more than 5 symbols',
async function () {
await wizardStep2.fillTicker("qwerty");
b=await wizardStep2.isPresentWarningTicker();
assert.equal(b, true, "Test FAILED. Wizard step#2: warning does not present if field Ticker length more than 5 symbols");
});
test.it('Wizard step#2: warning is presented if field Ticker contains special symbols',
async function () {
await wizardStep2.fillTicker("qwer$");
b=await wizardStep2.isPresentWarningTicker();
assert.equal(b, true, "Test FAILED. Wizard step#2: warning does not present if field Ticker length more than 5 symbols");
});
test.it("Wizard step#2: user is not able to proceed if ticker's warning is presented ",
async function () {
await wizardStep2.clickButtonContinue();
b=await wizardStep2.getTitleText();
b=(b==wizardStep2.title);
if (!b) await wizardStep3.goBack();
assert.equal(b, true, "Test FAILED. Wizard step#2: user is able to proceed if ticker's warning presented");
});
test.it('Wizard step#2: user able to fill Ticker field with valid data',
async function () {
b=await wizardStep2.fillTicker(currencyForE2e.ticker);
assert.equal(b, true, "Test FAILED. User able to fill Ticker field with valid data ");
await wizardStep2.fillTicker(currencyForE2e.ticker);
b=await wizardStep2.isPresentWarningName();
assert.equal(b, false, "Test FAILED. Wizard step#2: user able to fill Name field with valid data ");
});
test.it('Wizard step#2: user able to fill Decimals field with valid data',
///////Decimals/////
test.it("Wizard step#2: warning is presented if Decimals more than 18 ",
async function () {
b=await wizardStep2.fillDecimals(currencyForE2e.decimals);
assert.equal(b, true, "Test FAILED. User able to fill Decimals field with valid data ");
await wizardStep2.fillDecimals("19");
b=await wizardStep2.isPresentWarningDecimals();
assert.equal(b, true, "Test FAILED. Wizard step#2: warning does not present if field Decimals empty ");
});
test.it("Wizard step#2: disable to fill out Decimals with negative value ",
async function () {
await wizardStep2.fillDecimals("-2");
b=await wizardStep2.getFieldDecimals();
assert.equal(b,"2", "Test FAILED. Wizard step#2: enable to fill out Decimals with negative value ");
});
test.it("Wizard step#2: disable to fill out Decimals with non-number value ",
async function () {
await wizardStep2.fillDecimals("qwerty");
b=await wizardStep2.getFieldDecimals();
assert.equal(b,"", "Test FAILED. Wizard step#2: enable to fill out Decimals with non-number value ");
});
test.it("Wizard step#2: disable to fill out Decimals with negative value ",
async function () {
await wizardStep2.fillDecimals("-2");
b=await wizardStep2.getFieldDecimals();
assert.equal(b,"2", "Test FAILED. Wizard step#2: enable to fill out Decimals with negative value ");
});
test.it.skip("Wizard step#2: user is not able to proceed if Decimals field empty ",
async function () {
await wizardStep2.fillDecimals("");
await wizardStep2.clickButtonContinue();
b=await wizardStep2.getTitleText();
b=(b==wizardStep2.title);
if (!b) await wizardStep3.goBack();
assert.equal(b, true, "Test FAILED. Wizard step#2: user is able to proceed if Decimals field empty ");
});
test.it('Wizard step#2: user able to fill out field Decimals with valid data',
async function () {
await wizardStep2.fillDecimals(currencyForE2e.decimals);
b=await wizardStep2.isPresentWarningDecimals();
assert.equal(b, false, "Test FAILED. Wizard step#2: user is not able to fill Decimals field with valid data ");
});
/////////// Reserved
test.it("Wizard step#2: warnings are presented if user try to add empty reserved token ",
async function () {
await reservedTokens.clickButtonAddReservedTokens();
b=(await reservedTokens.isPresentWarningAddress())&&(await reservedTokens.isPresentWarningValue());
assert.equal(b, true, "Test FAILED. Wizard step#2: warnings are not presented if user try to add empty reserved token ");
});
test.it("Wizard step#2: warnings are disappeared if user fill out address and value fields with valid data ",
async function () {
await reservedTokens.fillAddress(currency.reservedTokens[0].address);
await reservedTokens.fillValue(currency.reservedTokens[0].value);
b=(await reservedTokens.isPresentWarningAddress())||(await reservedTokens.isPresentWarningValue());
assert.equal(b, false, "Test FAILED. Wizard step#2: warnings are presented if user fill out address and value fields with valid data ");
});
test.it("Wizard step#2: warning is presented if address of reserved tokens is invalid ",
async function () {
await reservedTokens.fillAddress("qwertyuiopasdfghjklz");
b=await reservedTokens.isPresentWarningAddress();
assert.equal(b, true, "Test FAILED. Wizard step#2: warning does not present if address of reserved tokens is invalid ");
});
test.it("Wizard step#2: user is not able to add reserved tokens if address is invalid ",
async function () {
await reservedTokens.clickButtonAddReservedTokens();
newBalance=await reservedTokens.amountAddedReservedTokens();
assert.equal(newBalance, 0, "Test FAILED. Wizard step#2: user is not able to add reserved tokens if address is invalid");
});
test.it("Wizard step#2: warning present if value of reserved tokens is negative ",
async function () {
await reservedTokens.fillValue("-123");
b=await reservedTokens.isPresentWarningValue();
assert.equal(b, true, "Test FAILED. Wizard step#2: warning does not present if address of reserved tokens is negative ");
});
test.it("Wizard step#2: user is not able to add reserved tokens if value is invalid ",
async function () {
await reservedTokens.fillAddress(currency.reservedTokens[0].address);
await reservedTokens.clickButtonAddReservedTokens();
newBalance=await reservedTokens.amountAddedReservedTokens();
assert.equal(newBalance, 0, "Test FAILED. Wizard step#2: user is not able to add reserved tokens if address is invalid");
});
test.it('Wizard step#2: user is able to add reserved tokens ',
async function () {
@ -239,6 +405,14 @@ test.describe('POA token-wizard. Test suite #2', function() {
logger.error("Test PASSED. Wizard step#2: user is able to add reserved tokens");
});
test.it('Wizard step#2: field Decimals disabled if reserved tokens added ',
async function () {
b = await wizardStep2.isDisabledDecimals();
assert.equal(b, true, "Wizard step#2: field Decimals enabled if reserved tokens added ");
});
test.it('Wizard step#2: user is able to remove one of reserved tokens ',
async function () {
b=false;
@ -290,7 +464,12 @@ test.describe('POA token-wizard. Test suite #2', function() {
});
test.it('Wizard step#2: field Decimals enabled if no reserved tokens',
async function () {
b = await wizardStep2.isDisabledDecimals();
assert.equal(b, false, "Wizard step#2: field Decimals disabled after deletion of reserved tokens");
});
test.it('Wizard step#2: user is able to add one reserved tokens address after deletion ',
async function () {
b=false;
@ -434,12 +613,8 @@ test.describe('POA token-wizard. Test suite #2', function() {
assert.equal(newBalance,0, "Test FAILED. Wizard step#3: User is NOT able to bulk delete all whitelisted addresses");
});
/////////////////////////////////////////////////////////////////////////////
test.it('Owner can create crowdsale(scenario testSuite1.json),1 tier, not modifiable, no whitelist,1 reserved',
async function () {
b=false;

View File

@ -139,7 +139,7 @@ test.describe('POA token-wizard. Test suite #2', function() {
test.after(async function() {
// Utils.killProcess(ganache);
await Utils.sendEmail(tempOutputFile);
//await Utils.sendEmail(tempOutputFile);
let outputPath=Utils.getOutputPath();
outputPath=outputPath+"/result"+Utils.getDate();
await fs.ensureDirSync(outputPath);
@ -202,17 +202,154 @@ test.describe('POA token-wizard. Test suite #2', function() {
logger.error("Test PASSED. User is able to open Step2 by clicking button Continue");
});
test.it('Wizard step#2: user able to fill Name field with valid data',
////////////////////////////////////////////////////////////////////////////////////////////////////////////////
test.it('Wizard step#2: user able to fill out field Ticker with valid data',
async function () {
b= await wizardStep2.fillName("012345678901234567890123456789q");
await wizardStep2.testtest();
assert.equal(b, true, "Test FAILED. Wizard step#2: button Continue not present ");
await wizardStep2.fillTicker("test");
b=await wizardStep2.isPresentWarningTicker();
assert.equal(b, false, "Test FAILED. Wizard step#2: user is not able to fill out field Ticker with valid data ");
});
///////Name////
test.it.skip("Wizard step#2: warning is presented if field Name is empty ",
async function () {
await wizardStep2.fillName(" ");
b=await wizardStep2.isPresentWarningName();
assert.equal(b, true, "Test FAILED. Wizard step#2: warning doesnt present if field Name empty");
});
test.it.skip('Wizard step#2: warning is presented if Name length more than 30 symbols',
async function () {
await wizardStep2.fillName("012345678901234567890123456789q");
b=await wizardStep2.isPresentWarningName();
assert.equal(b, true, "Test FAILED. Wizard step#2: warning doesnt present if Name length more than 30 symbols");
});
test.it.skip("Wizard step#2: user is not able to proceed if name's warning is presented ",
async function () {
await wizardStep2.clickButtonContinue();
b=await wizardStep2.getTitleText();
b=(b==wizardStep2.title);
if (!b) await wizardStep3.goBack();
assert.equal(b, true, "Test FAILED. Wizard step#2: user is able to proceed if name's warning presented");
});
test.it('Wizard step#2: user able to fill Name field with valid data',
async function () {
await wizardStep2.fillName(currencyForE2e.name);
b=await wizardStep2.isPresentWarningName();
assert.equal(b, false, "Test FAILED. Wizard step#2: user able to fill Name field with valid data ");
});
////Ticker////
test.it.skip("Wizard step#2: warning is presented if field Ticker is empty ",
async function () {
await wizardStep2.fillTicker(" ");
b=await wizardStep2.isPresentWarningTicker();
assert.equal(b, true, "Test FAILED. Wizard step#2: warning does not present if field Ticker empty ");
});
test.it.skip('Wizard step#2: warning is presented if field Ticker length more than 5 symbols',
async function () {
await wizardStep2.fillTicker("qwerty");
b=await wizardStep2.isPresentWarningTicker();
assert.equal(b, true, "Test FAILED. Wizard step#2: warning does not present if field Ticker length more than 5 symbols");
});
test.it.skip('Wizard step#2: warning is presented if field Ticker contains special symbols',
async function () {
await wizardStep2.fillTicker("qwer$");
b=await wizardStep2.isPresentWarningTicker();
assert.equal(b, true, "Test FAILED. Wizard step#2: warning does not present if field Ticker length more than 5 symbols");
});
test.it.skip("Wizard step#2: user is not able to proceed if ticker's warning is presented ",
async function () {
await wizardStep2.clickButtonContinue();
b=await wizardStep2.getTitleText();
b=(b==wizardStep2.title);
if (!b) await wizardStep3.goBack();
assert.equal(b, true, "Test FAILED. Wizard step#2: user is able to proceed if ticker's warning presented");
});
test.it('Wizard step#2: user able to fill Ticker field with valid data',
async function () {
await wizardStep2.fillTicker(currencyForE2e.ticker);
b=await wizardStep2.isPresentWarningName();
assert.equal(b, false, "Test FAILED. Wizard step#2: user able to fill Name field with valid data ");
});
///////Decimals/////
test.it.skip("Wizard step#2: warning is presented if Decimals more than 18 ",
async function () {
await wizardStep2.fillDecimals("19");
b=await wizardStep2.isPresentWarningDecimals();
assert.equal(b, true, "Test FAILED. Wizard step#2: warning does not present if field Decimals empty ");
});
test.it.skip("Wizard step#2: disable to fill out Decimals with negative value ",
async function () {
await wizardStep2.fillDecimals("-2");
b=await wizardStep2.getFieldDecimals();
assert.equal(b,"2", "Test FAILED. Wizard step#2: enable to fill out Decimals with negative value ");
});
test.it.skip("Wizard step#2: disable to fill out Decimals with non-number value ",
async function () {
await wizardStep2.fillDecimals("qwerty");
b=await wizardStep2.getFieldDecimals();
assert.equal(b,"", "Test FAILED. Wizard step#2: enable to fill out Decimals with non-number value ");
});
test.it.skip("Wizard step#2: disable to fill out Decimals with negative value ",
async function () {
await wizardStep2.fillDecimals("-2");
b=await wizardStep2.getFieldDecimals();
assert.equal(b,"2", "Test FAILED. Wizard step#2: enable to fill out Decimals with negative value ");
});
test.it.skip("Wizard step#2: user is not able to proceed if Decimals field empty ",
async function () {
await wizardStep2.fillDecimals("");
await wizardStep2.clickButtonContinue();
b=await wizardStep2.getTitleText();
b=(b==wizardStep2.title);
if (!b) await wizardStep3.goBack();
assert.equal(b, true, "Test FAILED. Wizard step#2: user is able to proceed if Decimals field empty ");
});
test.it('Wizard step#2: user able to fill out field Decimals with valid data',
async function () {
await wizardStep2.fillDecimals(currencyForE2e.decimals);
b=await wizardStep2.isPresentWarningDecimals();
assert.equal(b, false, "Test FAILED. Wizard step#2: user is not able to fill Decimals field with valid data ");
});
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
test.it.skip('Wizard step#2: user able to fill Ticker field with valid data',
async function () {
b=await wizardStep2.fillTicker(currencyForE2e.ticker);
throw("ERRORRR!!");
b=await wizardStep2.fillTicker(currencyForE2e.ticker);
assert.equal(b, true, "Test FAILED. User able to fill Ticker field with valid data ");
});
@ -312,7 +449,7 @@ test.describe('POA token-wizard. Test suite #2', function() {
assert.equal(b, true, "Test FAILED. Wizard step#2: button Continue not present ");
});
test.it.skip('Wizard step#2: user is able to open Step3 by clicking button Continue ',
test.it('Wizard step#2: user is able to open Step3 by clicking button Continue ',
async function () {
b=false;
await wizardStep2.clickButtonContinue();
@ -377,7 +514,7 @@ test.describe('POA token-wizard. Test suite #2', function() {
assert.equal(b, true, 'Test FAILED. Wizard step#3: Checkbox "Whitelist disabled" does not set by default');
});
test.it.skip('Wizard step#3: User is able to set checkbox "Whitelist enabled"',
test.it('Wizard step#3: User is able to set checkbox "Whitelist enabled"',
async function () {
b=await wizardStep3.clickCheckboxWhitelistYes();