Skip to content

Commit

Permalink
Merge pull request #804 from madfish-solutions/v3.0.23
Browse files Browse the repository at this point in the history
V3.0.23
  • Loading branch information
herkoss authored Jun 22, 2022
2 parents 07a1ba0 + 22f1f47 commit cb42a3d
Show file tree
Hide file tree
Showing 277 changed files with 4,639 additions and 1,557 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
# testing
/coverage
/cypress/videos
/cypress/screenshots

# production
/build
Expand Down
8 changes: 6 additions & 2 deletions cypress.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
{
"projectId": "4ytwek",
"baseUrl": "http://localhost:3000/",
"ignoreTestFiles": "**/1-getting-started/*",
"ignoreTestFiles": "**/2-advanced-examples/*"
"defaultCommandTimeout": 10000,
"retries": {
"runMode": 2,
"openMode": 2
}
}
2 changes: 2 additions & 0 deletions cypress/const.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
export const DEFAULT_WAIT_TIMEOUT = 3000;
export const REPEAT_WAIT_TIMEOUT = 10000;
4 changes: 2 additions & 2 deletions cypress/integration/Farming/FarmingDetails.spec.js
Original file line number Diff line number Diff line change
Expand Up @@ -5,14 +5,14 @@ describe('Form exists', () => {
// Go to the Farming page
cy.visit('/farming');
// Find first farming and go in the farm form, check if title in the list contains tex/quipu
cy.get('[href="/farming/0"]').click();
cy.get('[data-test-id="acceptCookieButton"]').click();
cy.get('[data-test-id="farming-item-0"]').click();
//check the title
cy.get('[data-test-id="farmingItemPageTitle"]').should('contain', 'TEZ / QUIPU');
// check the title of the form
cy.get('[data-test-id="tokenInputSelectButton"]').should('contain', 'TEZ / QUIPU');
});
// check if 'back to list' arrow works

it('Should_DisplayFarmingList_When_ClickOnBackArrow', () => {
cy.get('[data-test-id="farmingListPendingRewards"] [data-test-id="backTTListButton"]').click();
cy.get('[data-test-id="farmingListPageTitle"]').should('contain', 'Farming');
Expand Down
42 changes: 12 additions & 30 deletions cypress/integration/General/Social.spec.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,35 +6,17 @@ describe('Social media links', () => {
cy.visit('/');
// Find social media links and clicking on it
cy.get('[data-test-id="header"] [data-test-id="menuButton"]').click();
cy.get('[data-test-id="menu"] [data-test-id="socialButton-Twitter"]').should(
'have.attr',
'href',
'https://twitter.com/madfishofficial'
);
cy.get('[data-test-id="menu"] [data-test-id="socialButton-Telegram"]').should(
'have.attr',
'href',
'https://t.me/MadFishCommunity'
);
cy.get('[data-test-id="menu"] [data-test-id="socialButton-Discord"]').should(
'have.attr',
'href',
'https://discord.com/invite/qFRZ8kVzkv'
);
cy.get('[data-test-id="menu"] [data-test-id="socialButton-Github"]').should(
'have.attr',
'href',
'https://github.com/madfish-solutions/'
);
cy.get('[data-test-id="menu"] [data-test-id="socialButton-Reddit"]').should(
'have.attr',
'href',
'https://www.reddit.com/r/MadFishCommunity/'
);
cy.get('[data-test-id="menu"] [data-test-id="madFishLogoButton"]').should(
'have.attr',
'href',
'https://www.madfish.solutions/'
);
cy.get('[data-test-id="menu"] [data-test-id="socialButton-Twitter"]')
.should('have.attr', 'href', 'https://twitter.com/madfishofficial');
cy.get('[data-test-id="menu"] [data-test-id="socialButton-Telegram"]')
.should('have.attr', 'href', 'https://t.me/MadFishCommunity');
cy.get('[data-test-id="menu"] [data-test-id="socialButton-Discord"]')
.should('have.attr', 'href', 'https://discord.com/invite/qFRZ8kVzkv');
cy.get('[data-test-id="menu"] [data-test-id="socialButton-Github"]')
.should('have.attr', 'href', 'https://github.com/madfish-solutions/');
cy.get('[data-test-id="menu"] [data-test-id="socialButton-Reddit"]')
.should('have.attr', 'href', 'https://www.reddit.com/r/MadFishCommunity/');
cy.get('[data-test-id="menu"] [data-test-id="madFishLogoButton"]')
.should('have.attr', 'href', 'https://www.madfish.solutions/');
});
});
5 changes: 2 additions & 3 deletions cypress/integration/General/Support.spec.js
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,8 @@ describe('Support section', () => {
cy.get('[data-test-id="menu"] [data-test-id="donationButton"]').click();
// Support popup should opened
cy.get('h5').should('contain', 'Donate');
cy.get(
'[data-test-id="modalCard"] [data-test-id="connectButton"], [data-test-id="modalCard"] [data-test-id="donateButton"]'
).should('exist');
cy.get('[data-test-id="modalCard"] [data-test-id="connectButton"], [data-test-id="modalCard"] [data-test-id="donateButton"]')
.should('exist');
cy.get('[data-test-id="modalCard"] [data-test-id="closeButton"]').click();
});
it('Should_OpenPopup_When_ClickingOnConnectWallet', () => {
Expand Down
3 changes: 0 additions & 3 deletions cypress/integration/General/ThemeSwitcher.spec.js
Original file line number Diff line number Diff line change
Expand Up @@ -5,16 +5,13 @@ describe('Theme Switcher', () => {
// Go to home page
cy.visit('/');
cy.get('[data-test-id="acceptCookieButton"]').click();

// click on the theme swithcer sun, check if theme is white

cy.get('[data-test-id="header"] [data-test-id="menuButton"]').click();
cy.get('[data-test-id="menu"] [data-test-id="lightButton"]').click();
cy.get('[data-test-id="header"]').should('have.css', 'background-color', 'rgb(255, 255, 255)');
});
it('Should_ChangeBackgroundColour_When_ClickingOnMoon', () => {
// click on the theme swithcer moon, check if theme is black

cy.get('[data-test-id="menu"] [data-test-id="darkButton"]').click();
cy.get('[data-test-id="header"]').should('have.css', 'background-color', 'rgb(7, 12, 18)');
});
Expand Down
25 changes: 10 additions & 15 deletions cypress/integration/Home/QSOpportunities.spec.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,28 +6,23 @@ describe('QuipuSwap Opportunities section', () => {
cy.get('[data-test-id="acceptCookieButton"]').click();
//'Start Trading' button should lead to the swap page, tez, quipu tokens are selected
cy.get('[data-test-id="QSOpportunitiesSection"] [data-test-id="QSOpportunitiesButton-0"]').click();
cy.get('[data-test-id="swapPageTokenSelect"] [data-test-id="from"] [data-test-id="changeToken"]').should(
'contain',
'TEZ'
);
cy.get('[data-test-id="swapPageTokenSelect"] [data-test-id="to"] [data-test-id="changeToken"]').should(
'contain',
'QUIPU'
);
cy.get('[data-test-id="swapPageTitle"]').should('contain', 'Swap TEZ / QUIPU');
cy.get('[data-test-id="swapPageTokenSelect"] [data-test-id="from"] [data-test-id="changeToken"]')
.should('contain', 'TEZ');
cy.get('[data-test-id="swapPageTokenSelect"] [data-test-id="to"] [data-test-id="changeToken"]')
.should('contain', 'QUIPU');
cy.get('[data-test-id="swapPageTitle"]')
.should('contain', 'Swap TEZ / QUIPU');
});

it('Should_RedirectToLiquidityPage_When_ClickingOnAddLiquidityButton', () => {
cy.visit('/');
cy.get('[data-test-id="acceptCookieButton"]').click();
//'Add Liquidity button on the home page leads to the Liquidity page, tez, quipu token are selected
cy.get('[data-test-id="QSOpportunitiesSection"] [data-test-id="QSOpportunitiesButton-2"]').click();
cy.get(
'[data-test-id="liquidityPageTokenSelect"] [data-test-id="addLiquidityTokenA"] [data-test-id="tokenSelectButton"]'
).should('contain', 'TEZ');
cy.get(
'[data-test-id="liquidityPageTokenSelect"] [data-test-id="addLiquidityTokenB"] [data-test-id="tokenSelectButton"]'
).should('contain', 'QUIPU');
cy.get('[data-test-id="liquidityPageTokenSelect"] [data-test-id="addLiquidityTokenA"] [data-test-id="tokenSelectButton"]')
.should('contain', 'TEZ');
cy.get('[data-test-id="liquidityPageTokenSelect"] [data-test-id="addLiquidityTokenB"] [data-test-id="tokenSelectButton"]')
.should('contain', 'QUIPU');
});

it('Should_RedirectToFarmingPage_When_ClickingOnStartFarmingButton', () => {
Expand Down
30 changes: 30 additions & 0 deletions cypress/integration/Liquidity/FieldsCalculation.spec.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
/// <reference types="cypress" />

import { DEFAULT_WAIT_TIMEOUT } from '../../const';

describe('Input fields are recalculating after entering in another field data', () => {
before(() => {
//before each 'it' go to liquidity tab'
//cy.visit('/liquidity/add/tez-KT19363aZDTjeRyoDkSLZhCk62pS4xfvxo6c_0');
cy.visit('/');
cy.get('[data-test-id="header"] [data-test-id="menuButton"]').click();
cy.get('[data-test-id="menu"] [data-test-id="navigationButton-Liquidity"]').click();
});
it('Should_DisplayDataInSecondInput_When_FirstInputIs1', () => {
cy.get('[data-test-id="addLiquidityTokenA"] [data-test-id="addLiquidityTokenA"]').click().type('1');
cy.wait(DEFAULT_WAIT_TIMEOUT);
cy.get('[data-test-id="addLiquidityTokenB"] [data-test-id="addLiquidityTokenB"]')
.invoke('val')
.then(parseFloat)
.should('be.gte', 0);
cy.reload();
});
it('Should_DisplayDataInFirstInput_When_SecondInputIs1', () => {
cy.get('[data-test-id="addLiquidityTokenB"] [data-test-id="addLiquidityTokenB"]').click().type('1');
cy.wait(DEFAULT_WAIT_TIMEOUT);
cy.get('[data-test-id="addLiquidityTokenA"] [data-test-id="addLiquidityTokenA"]')
.invoke('val')
.then(parseFloat)
.should('be.gte', 0);
});
});
62 changes: 62 additions & 0 deletions cypress/integration/Liquidity/LiquiditySlippage.spec.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
/// <reference types="cypress" />

describe('Select different slippage and check if max invested is ok', () => {
before(() => {
//choose 0.5% slippage, check if max invested is greater than input
cy.visit('/');
cy.get('[data-test-id="header"] [data-test-id="menuButton"]').click();
cy.get('[data-test-id="menu"] [data-test-id="navigationButton-Liquidity"]').click();
cy.get('[data-test-id="acceptCookieButton"]').click();
cy.get('[data-test-id="liquidityPageTokenSelect"] [data-test-id="settingsButton"]').click();
cy.get('[data-test-id="modalCard"] [data-test-id="slippageLiquidity"] [data-test-id="presetButton-1"]').click()
cy.get('[data-test-id="saveButton"]').click();
});
it('Should_DisplayCorrectMaxInvestedB_When_SecondFieldIs15Slippage5', () => {
cy.get('[data-test-id="addLiquidityTokenA"] [data-test-id="tokenSelectButton"]').click();
cy.get('[data-test-id="KUSD"]').click();
cy.get('[data-test-id="addLiquidityTokenB"] [data-test-id="tokenSelectButton"]').click();
cy.get('[data-test-id="uUSD"]').click();
cy.get('[data-test-id="addLiquidityTokenB"] [data-test-id="addLiquidityTokenB"]').click().type('15');
cy.contains('[title="15.075"]', '15.075')
.invoke('text').then(parseFloat).should('be.gte', 15);
cy.get('[data-test-id="addLiquidityTokenB"] [data-test-id="addLiquidityTokenB"]')
.click().type('{backspace}').type('{backspace}');
});
it('Should_DisplayCorrectMaxInvestedA_When_FirstFieldIs50Slippage5', () => {
cy.get('[data-test-id="addLiquidityTokenA"] [data-test-id="addLiquidityTokenA"]').click().type('50');
cy.contains('[title="50.25"]', '50.25')
.invoke('text').then(parseFloat).should('be.gte', 50);
});
//choose 10% slippage, check if max invested is greater than input
it('Should_DisplayCorrectMaxInvestedA_When_FirstFieldIs50Slippage10', () => {
cy.get('[data-test-id="liquidityPageTokenSelect"] [data-test-id="settingsButton"]').click();
cy.get('[data-test-id="modalCard"] [data-test-id="slippageLiquidity"] [data-test-id="presetButton-2"]')
.next().click().type('10')
cy.get('[data-test-id="saveButton"]').click();
cy.contains('[title="55"]', '55')
.invoke('text').then(parseFloat).should('be.gte', 50);
});
it('Should_DisplayCorrectMaxInvestedB_When_SecondFieldIs100Slippage10', () => {
cy.get('[data-test-id="addLiquidityTokenA"] [data-test-id="addLiquidityTokenA"]')
.click().type('{backspace}').type('{backspace}');
cy.get('[data-test-id="addLiquidityTokenB"] [data-test-id="addLiquidityTokenB"]').click().type('100');
cy.contains('[title="110"]', '110')
.invoke('text').then(parseFloat).should('be.gte', 100);
});
//choose 1% slippage, check if invested is ok
it('Should_DisplayCorrectMaxInvestedA_When_FirstFieldIs1000Slippage1', () => {
cy.get('[data-test-id="liquidityPageTokenSelect"] [data-test-id="settingsButton"]').click();
cy.get('[data-test-id="modalCard"] [data-test-id="slippageLiquidity"] [data-test-id="presetButton-2"]')
.click()
cy.get('[data-test-id="saveButton"]').click();
cy.contains('[title="101"]', '101')
.invoke('text').then(parseFloat).should('be.gte', 100);
});
it('Should_DisplayCorrectMaxInvestedA_When_FirstFieldIs22Slippage1', () => {
cy.get('[data-test-id="addLiquidityTokenB"] [data-test-id="addLiquidityTokenB"]')
.click().type('{backspace}').type('{backspace}').type('{backspace}');
cy.get('[data-test-id="addLiquidityTokenA"] [data-test-id="addLiquidityTokenA"]').click().type('22');
cy.contains('[title="22.22"]', '22.22')
.invoke('text').then(parseFloat).should('be.gte', 22);
});
});
83 changes: 83 additions & 0 deletions cypress/integration/Liquidity/RemoveChangeToken.spec.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
/// <reference types="cypress" />

import { DEFAULT_WAIT_TIMEOUT } from '../../const';

describe('Remove liquidity tab, calculating field', () => {
before(() => {
// Go to the remove page from home page
cy.visit('/');
cy.get('[data-test-id="header"] [data-test-id="menuButton"]').click();
cy.get('[data-test-id="menu"] [data-test-id="navigationButton-Liquidity"]').click();
cy.get('[data-test-id="liquidityPageTokenSelect"] [data-test-id="cardTab-1"]').click();
});
it('Should_DisplayOutputFields_When_InputIs1', () => {
cy.get('[data-test-id="positionSelectInput"]').click().type('1');
cy.wait(DEFAULT_WAIT_TIMEOUT);
cy.get('[data-test-id="outputA"] [data-test-id="outputA"]').invoke('val').then(parseFloat).should('be.gte', 0);
cy.get('[data-test-id="outputB"] [data-test-id="outputB"]').invoke('val').then(parseFloat).should('be.gte', 0);
});
//change tez/quipu to kusd/quipu, check if output is kusd/quipu
it('Should_HaveKusdQuipuPair_When_TokenIsChanged', () => {
cy.get(
'[data-test-id="liquidityPageTokenSelect"] [data-test-id="positionSelectInput"] [data-test-id="selectLPButton"]'
).click();
cy.get('[data-test-id="TEZ"] [data-test-id="checkbox"]').click();
cy.get('[data-test-id="KUSD"] [data-test-id="checkbox"]').click();
cy.get('[data-test-id="buttonSelect"]').click();
cy.get(
'[data-test-id="liquidityPageTokenSelect"] [data-test-id="positionSelectInput"] [data-test-id="selectLPButton"]'
)
.invoke('text')
.should('contain', 'QUIPU / KUSD');
});
it('Should_DisplayMaxInvested_When_InputIs1QuipuKusd', () => {
cy.reload();
cy.get('[data-test-id="positionSelectInput"]').click().type('1');
cy.get('[data-test-id="acceptCookieButton"]').click();
cy.wait(DEFAULT_WAIT_TIMEOUT);
cy.get('[data-test-id="amount"]').invoke('text').then(parseFloat).should('be.gte', 0);
cy.get('[data-test-id="amount"]').eq(1).invoke('text').then(parseFloat).should('be.gte', 0);
});
it('Should_DisplayQuipuKusdInDetailsSection_When_InputIs1', () => {
//Sell price in pool details section 1 quipu
cy.get('[data-test-id="detailsCardCells"] [data-test-id="amount"]')
.eq(0)
.invoke('text')
.then(parseFloat)
.should('be.eq', 1);
cy.get('[data-test-id="detailsCardCells"] [data-test-id="rightVisibleCurrency"]')
.eq(0)
.invoke('text')
.should('contain', 'QUIPU');
//sell price in pool details section =kusd
cy.get('[data-test-id="detailsCardCells"] [data-test-id="rightVisibleCurrency"]')
.eq(1)
.invoke('text')
.should('contain', 'KUSD');
//Buy price in pool details section 1kusd = ...quipu
cy.get('[data-test-id="detailsCardCells"] [data-test-id="amount"]')
.eq(2)
.invoke('text')
.then(parseFloat)
.should('be.eq', 1);
cy.get('[data-test-id="detailsCardCells"] [data-test-id="rightVisibleCurrency"]')
.eq(2)
.invoke('text')
.should('contain', 'KUSD');
cy.get('[data-test-id="detailsCardCells"] [data-test-id="rightVisibleCurrency"]')
.eq(3)
.invoke('text')
.should('contain', 'QUIPU');
});
it('Should_DisplayNotification_When_PoolDoesntExist', () => {
cy.get(
'[data-test-id="liquidityPageTokenSelect"] [data-test-id="positionSelectInput"] [data-test-id="selectLPButton"]'
).click();
cy.get('[data-test-id="QUIPU"] [data-test-id="checkbox"]').click();
cy.get('[data-test-id="WRAP"] [data-test-id="checkbox"]').click();
cy.get('[data-test-id="buttonSelect"]').click();
cy.get('[data-test-id="liquidityPageTokenSelect"] [data-test-id="connectButton"]')
.prev()
.should('contain', 'Note! The pool does');
});
});
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@ describe('Form exists', () => {
cy.get('[data-test-id="header"] [data-test-id="menuButton"]').click();
cy.get('[data-test-id="menu"] [data-test-id="navigationButton-Liquidity"]').click();
cy.get('[data-test-id="liquidityPageTokenSelect"] [data-test-id="cardTab-1"]').click();

// Check if Title 'Pool Details' ok
cy.get('[data-test-id="poolDetails"] [data-test-id="headerContent"]').should('contain', 'Pool Details');
});
Expand Down
Loading

0 comments on commit cb42a3d

Please sign in to comment.