2021-08-31 18:10:07 +03:00
|
|
|
import { CyHttpMessages } from 'cypress/types/net-stubbing'
|
2021-09-22 02:21:28 +03:00
|
|
|
|
2021-08-31 18:10:07 +03:00
|
|
|
import { aliasQuery, hasQuery } from '../utils/graphql-test-utils'
|
|
|
|
|
2020-05-21 06:31:05 +03:00
|
|
|
describe('Add Liquidity', () => {
|
2021-08-31 18:10:07 +03:00
|
|
|
beforeEach(() => {
|
|
|
|
cy.intercept('POST', '/subgraphs/name/uniswap/uniswap-v3', (req) => {
|
|
|
|
aliasQuery(req, 'feeTierDistribution')
|
|
|
|
})
|
|
|
|
})
|
|
|
|
|
2020-05-21 06:45:49 +03:00
|
|
|
it('loads the two correct tokens', () => {
|
2021-04-14 17:12:35 +03:00
|
|
|
cy.visit('/add/0xF9bA5210F91D0474bd1e1DcDAeC4C58E359AaD85/0xc778417E063141139Fce010982780140Aa0cD5Ab/500')
|
2020-05-27 18:42:25 +03:00
|
|
|
cy.get('#add-liquidity-input-tokena .token-symbol-container').should('contain.text', 'MKR')
|
|
|
|
cy.get('#add-liquidity-input-tokenb .token-symbol-container').should('contain.text', 'ETH')
|
2020-05-21 06:45:49 +03:00
|
|
|
})
|
2020-05-21 06:31:05 +03:00
|
|
|
|
2020-05-21 06:45:49 +03:00
|
|
|
it('does not crash if ETH is duplicated', () => {
|
2021-04-14 17:12:35 +03:00
|
|
|
cy.visit('/add/0xc778417E063141139Fce010982780140Aa0cD5Ab/0xc778417E063141139Fce010982780140Aa0cD5Ab')
|
2020-05-27 18:42:25 +03:00
|
|
|
cy.get('#add-liquidity-input-tokena .token-symbol-container').should('contain.text', 'ETH')
|
|
|
|
cy.get('#add-liquidity-input-tokenb .token-symbol-container').should('not.contain.text', 'ETH')
|
2020-05-21 06:45:49 +03:00
|
|
|
})
|
|
|
|
|
|
|
|
it('token not in storage is loaded', () => {
|
2021-04-14 17:12:35 +03:00
|
|
|
cy.visit('/add/0xb290b2f9f8f108d03ff2af3ac5c8de6de31cdf6d/0xF9bA5210F91D0474bd1e1DcDAeC4C58E359AaD85')
|
2020-05-27 18:42:25 +03:00
|
|
|
cy.get('#add-liquidity-input-tokena .token-symbol-container').should('contain.text', 'SKL')
|
|
|
|
cy.get('#add-liquidity-input-tokenb .token-symbol-container').should('contain.text', 'MKR')
|
2020-05-21 06:31:05 +03:00
|
|
|
})
|
2020-07-10 22:25:15 +03:00
|
|
|
|
|
|
|
it('single token can be selected', () => {
|
|
|
|
cy.visit('/add/0xb290b2f9f8f108d03ff2af3ac5c8de6de31cdf6d')
|
|
|
|
cy.get('#add-liquidity-input-tokena .token-symbol-container').should('contain.text', 'SKL')
|
|
|
|
cy.visit('/add/0xF9bA5210F91D0474bd1e1DcDAeC4C58E359AaD85')
|
|
|
|
cy.get('#add-liquidity-input-tokena .token-symbol-container').should('contain.text', 'MKR')
|
|
|
|
})
|
2021-07-13 22:54:49 +03:00
|
|
|
|
2021-08-31 18:10:07 +03:00
|
|
|
it('loads fee tier distribution', () => {
|
|
|
|
cy.fixture('feeTierDistribution.json').then((feeTierDistribution) => {
|
|
|
|
cy.intercept('POST', '/subgraphs/name/uniswap/uniswap-v3', (req: CyHttpMessages.IncomingHttpRequest) => {
|
2022-08-17 03:01:12 +03:00
|
|
|
if (hasQuery(req, 'FeeTierDistributionQuery')) {
|
|
|
|
req.alias = 'FeeTierDistributionQuery'
|
2021-08-31 18:10:07 +03:00
|
|
|
|
|
|
|
req.reply({
|
|
|
|
body: {
|
|
|
|
data: {
|
|
|
|
...feeTierDistribution,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
headers: {
|
|
|
|
'access-control-allow-origin': '*',
|
|
|
|
},
|
|
|
|
})
|
|
|
|
}
|
|
|
|
})
|
2021-07-13 22:54:49 +03:00
|
|
|
|
|
|
|
cy.visit('/add/0xF9bA5210F91D0474bd1e1DcDAeC4C58E359AaD85/0xc778417E063141139Fce010982780140Aa0cD5Ab')
|
|
|
|
|
2022-08-17 03:01:12 +03:00
|
|
|
cy.wait('@FeeTierDistributionQuery')
|
2021-07-13 22:54:49 +03:00
|
|
|
|
2021-08-31 18:10:07 +03:00
|
|
|
cy.get('#add-liquidity-selected-fee .selected-fee-label').should('contain.text', '0.3% fee tier')
|
2021-11-12 17:46:26 +03:00
|
|
|
cy.get('#add-liquidity-selected-fee .selected-fee-percentage').should('contain.text', '40%')
|
2021-07-13 22:54:49 +03:00
|
|
|
})
|
|
|
|
})
|
2020-05-21 06:31:05 +03:00
|
|
|
})
|