Update mocks and fix RBF tests
This commit is contained in:
		
							parent
							
								
									4ede93f07a
								
							
						
					
					
						commit
						47181d2bc8
					
				@ -504,9 +504,17 @@ describe('Mainnet', () => {
 | 
			
		||||
 | 
			
		||||
    describe('RBF transactions', () => {
 | 
			
		||||
      it('shows RBF transactions properly (mobile)', () => {
 | 
			
		||||
        cy.intercept('/api/v1/tx/21518a98d1aa9df524865d2f88c578499f524eb1d0c4d3e70312ab863508692f/cached', {
 | 
			
		||||
          fixture: 'mainnet_tx_cached.json'
 | 
			
		||||
        }).as('cached_tx');
 | 
			
		||||
 | 
			
		||||
        cy.intercept('/api/v1/tx/f81a08699b62b2070ad8fe0f2a076f8bea0386a2fdcd8124caee42cbc564a0d5/rbf', {
 | 
			
		||||
          fixture: 'mainnet_rbf_new.json'
 | 
			
		||||
        }).as('rbf');
 | 
			
		||||
 | 
			
		||||
        cy.viewport('iphone-xr');
 | 
			
		||||
        cy.mockMempoolSocket();
 | 
			
		||||
        cy.visit('/tx/f81a08699b62b2070ad8fe0f2a076f8bea0386a2fdcd8124caee42cbc564a0d5');
 | 
			
		||||
        cy.visit('/tx/21518a98d1aa9df524865d2f88c578499f524eb1d0c4d3e70312ab863508692f');
 | 
			
		||||
 | 
			
		||||
        cy.waitForSkeletonGone();
 | 
			
		||||
 | 
			
		||||
@ -524,22 +532,30 @@ describe('Mainnet', () => {
 | 
			
		||||
          }
 | 
			
		||||
        });
 | 
			
		||||
 | 
			
		||||
        cy.get('.alert-mempool').should('be.visible');
 | 
			
		||||
        cy.get('.alert-mempool').invoke('css', 'width').then((alertWidth) => {
 | 
			
		||||
        cy.get('.alert').should('be.visible');
 | 
			
		||||
        cy.get('.alert').invoke('css', 'width').then((alertWidth) => {
 | 
			
		||||
          cy.get('.container-xl > :nth-child(3)').invoke('css', 'width').should('equal', alertWidth);
 | 
			
		||||
        });
 | 
			
		||||
 | 
			
		||||
        cy.get('.btn-success').then(getRectangle).then((rectA) => {
 | 
			
		||||
          cy.get('.alert-mempool').then(getRectangle).then((rectB) => {
 | 
			
		||||
        cy.get('.btn-danger').then(getRectangle).then((rectA) => {
 | 
			
		||||
          cy.get('.alert').then(getRectangle).then((rectB) => {
 | 
			
		||||
            expect(areOverlapping(rectA, rectB), 'Confirmations box and RBF alert are overlapping').to.be.false;
 | 
			
		||||
          });
 | 
			
		||||
        });
 | 
			
		||||
      });
 | 
			
		||||
 | 
			
		||||
      it('shows RBF transactions properly (desktop)', () => {
 | 
			
		||||
        cy.intercept('/api/v1/tx/21518a98d1aa9df524865d2f88c578499f524eb1d0c4d3e70312ab863508692f/cached', {
 | 
			
		||||
          fixture: 'mainnet_tx_cached.json'
 | 
			
		||||
        }).as('cached_tx');
 | 
			
		||||
 | 
			
		||||
        cy.intercept('/api/v1/tx/f81a08699b62b2070ad8fe0f2a076f8bea0386a2fdcd8124caee42cbc564a0d5/rbf', {
 | 
			
		||||
          fixture: 'mainnet_rbf_new.json'
 | 
			
		||||
        }).as('rbf');
 | 
			
		||||
 | 
			
		||||
        cy.viewport('macbook-16');
 | 
			
		||||
        cy.mockMempoolSocket();
 | 
			
		||||
        cy.visit('/tx/f81a08699b62b2070ad8fe0f2a076f8bea0386a2fdcd8124caee42cbc564a0d5');
 | 
			
		||||
        cy.visit('/tx/21518a98d1aa9df524865d2f88c578499f524eb1d0c4d3e70312ab863508692f');
 | 
			
		||||
 | 
			
		||||
        cy.waitForSkeletonGone();
 | 
			
		||||
 | 
			
		||||
@ -557,17 +573,17 @@ describe('Mainnet', () => {
 | 
			
		||||
          }
 | 
			
		||||
        });
 | 
			
		||||
 | 
			
		||||
        cy.get('.alert-mempool').should('be.visible');
 | 
			
		||||
        cy.get('.alert').should('be.visible');
 | 
			
		||||
 | 
			
		||||
        const alertLocator = '.alert-mempool';
 | 
			
		||||
        const alertLocator = '.alert';
 | 
			
		||||
        const tableLocator = '.container-xl > :nth-child(3)';
 | 
			
		||||
 | 
			
		||||
        cy.get(tableLocator).invoke('css', 'width').then((firstWidth) => {
 | 
			
		||||
          cy.get(alertLocator).invoke('css', 'width').should('equal', firstWidth);
 | 
			
		||||
        });
 | 
			
		||||
 | 
			
		||||
        cy.get('.btn-success').then(getRectangle).then((rectA) => {
 | 
			
		||||
          cy.get('.alert-mempool').then(getRectangle).then((rectB) => {
 | 
			
		||||
        cy.get('.btn-danger').then(getRectangle).then((rectA) => {
 | 
			
		||||
          cy.get('.alert').then(getRectangle).then((rectB) => {
 | 
			
		||||
            expect(areOverlapping(rectA, rectB), 'Confirmations box and RBF alert are overlapping').to.be.false;
 | 
			
		||||
          });
 | 
			
		||||
        });
 | 
			
		||||
 | 
			
		||||
@ -47,6 +47,8 @@
 | 
			
		||||
    "size": 372,
 | 
			
		||||
    "weight": 828,
 | 
			
		||||
    "fee": 1.5,
 | 
			
		||||
    "status": { "confirmed": false }
 | 
			
		||||
    "status": {
 | 
			
		||||
      "confirmed": false
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										31
									
								
								frontend/cypress/fixtures/mainnet_rbf_new.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										31
									
								
								frontend/cypress/fixtures/mainnet_rbf_new.json
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,31 @@
 | 
			
		||||
{
 | 
			
		||||
  "replacements": {
 | 
			
		||||
    "tx": {
 | 
			
		||||
      "txid": "f22735aaa8eb84bcae3e7705f78609c6f5f0cd7dfc34ae03094e61f2dab0cc64",
 | 
			
		||||
      "fee": 13843,
 | 
			
		||||
      "vsize": 109.25,
 | 
			
		||||
      "value": 253003805,
 | 
			
		||||
      "rate": 36.04666732302845,
 | 
			
		||||
      "rbf": true
 | 
			
		||||
    },
 | 
			
		||||
    "time": 1683865345,
 | 
			
		||||
    "fullRbf": false,
 | 
			
		||||
    "replaces": [
 | 
			
		||||
      {
 | 
			
		||||
        "tx": {
 | 
			
		||||
          "txid": "21518a98d1aa9df524865d2f88c578499f524eb1d0c4d3e70312ab863508692f",
 | 
			
		||||
          "fee": 8794,
 | 
			
		||||
          "vsize": 109.25,
 | 
			
		||||
          "value": 253008854,
 | 
			
		||||
          "rate": 35.05247612484001,
 | 
			
		||||
          "rbf": true
 | 
			
		||||
        },
 | 
			
		||||
        "time": 1683864993,
 | 
			
		||||
        "interval": 352,
 | 
			
		||||
        "fullRbf": false,
 | 
			
		||||
        "replaces": []
 | 
			
		||||
      }
 | 
			
		||||
    ]
 | 
			
		||||
  },
 | 
			
		||||
  "replaces": null
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										60
									
								
								frontend/cypress/fixtures/mainnet_tx_cached.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										60
									
								
								frontend/cypress/fixtures/mainnet_tx_cached.json
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,60 @@
 | 
			
		||||
{
 | 
			
		||||
  "vsize": 109,
 | 
			
		||||
  "feePerVsize": 80.49427917620137,
 | 
			
		||||
  "effectiveFeePerVsize": 35.05247612484001,
 | 
			
		||||
  "txid": "21518a98d1aa9df524865d2f88c578499f524eb1d0c4d3e70312ab863508692f",
 | 
			
		||||
  "version": 2,
 | 
			
		||||
  "locktime": 0,
 | 
			
		||||
  "vin": [
 | 
			
		||||
    {
 | 
			
		||||
      "txid": "1e3bd5c634781a6ba8bb3d3385b14739bf38cad5332d5fbc5c0ab775e54b9aef",
 | 
			
		||||
      "vout": 144,
 | 
			
		||||
      "prevout": {
 | 
			
		||||
        "scriptpubkey": "0014d98654186b90d95da7e31a30929f5b5b6a0af250",
 | 
			
		||||
        "scriptpubkey_asm": "OP_0 OP_PUSHBYTES_20 d98654186b90d95da7e31a30929f5b5b6a0af250",
 | 
			
		||||
        "scriptpubkey_type": "v0_p2wpkh",
 | 
			
		||||
        "scriptpubkey_address": "bc1qmxr9gxrtjrv4mflrrgcf986mtd4q4ujss432tk",
 | 
			
		||||
        "value": 253017648
 | 
			
		||||
      },
 | 
			
		||||
      "scriptsig": "",
 | 
			
		||||
      "scriptsig_asm": "",
 | 
			
		||||
      "witness": [
 | 
			
		||||
        "30440220448e8f58fcdea87c1969d58438b49da5b43712380bc4c68b02d22cf6b164907302207b2ed660f1a5b3b74f712961ffb3f3a7d1ac6e48b269ea6ff15df985042211f301",
 | 
			
		||||
        "02e39a1f3583e382cec1a1fab6a3f5950b6403c953fada58d809127a497f502ebe"
 | 
			
		||||
      ],
 | 
			
		||||
      "is_coinbase": false,
 | 
			
		||||
      "sequence": 4294967293
 | 
			
		||||
    }
 | 
			
		||||
  ],
 | 
			
		||||
  "vout": [
 | 
			
		||||
    {
 | 
			
		||||
      "scriptpubkey": "0014edb5167da7e97c73d7931eb2130ac3e34e6845a9",
 | 
			
		||||
      "scriptpubkey_asm": "OP_0 OP_PUSHBYTES_20 edb5167da7e97c73d7931eb2130ac3e34e6845a9",
 | 
			
		||||
      "scriptpubkey_type": "v0_p2wpkh",
 | 
			
		||||
      "scriptpubkey_address": "bc1qak63vld8a97884unr6epxzkrud8xs3dfdqswy2",
 | 
			
		||||
      "value": 253008854
 | 
			
		||||
    }
 | 
			
		||||
  ],
 | 
			
		||||
  "size": 191,
 | 
			
		||||
  "weight": 437,
 | 
			
		||||
  "fee": 8794,
 | 
			
		||||
  "status": {
 | 
			
		||||
    "confirmed": false
 | 
			
		||||
  },
 | 
			
		||||
  "firstSeen": 1683864993,
 | 
			
		||||
  "uid": 298353,
 | 
			
		||||
  "position": {
 | 
			
		||||
    "block": 0,
 | 
			
		||||
    "vsize": 886207.5
 | 
			
		||||
  },
 | 
			
		||||
  "cpfpChecked": true,
 | 
			
		||||
  "ancestors": [
 | 
			
		||||
    {
 | 
			
		||||
      "txid": "1e3bd5c634781a6ba8bb3d3385b14739bf38cad5332d5fbc5c0ab775e54b9aef",
 | 
			
		||||
      "fee": 169220,
 | 
			
		||||
      "weight": 19877
 | 
			
		||||
    }
 | 
			
		||||
  ],
 | 
			
		||||
  "descendants": [],
 | 
			
		||||
  "bestDescendant": null
 | 
			
		||||
}
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user