Skip to content

Commit

Permalink
Merge pull request #635 from nemgrouplimited/main
Browse files Browse the repository at this point in the history
Merge to Release Branch
  • Loading branch information
AnthonyLaw authored Sep 25, 2020
2 parents 3029090 + 58102a3 commit f77c8a3
Show file tree
Hide file tree
Showing 97 changed files with 3,507 additions and 457 deletions.
43 changes: 42 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,46 @@ All notable changes to this project will be documented in this file.

The changelog format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).

## [v0.6.0][v0.6.0] - 26-Sep-2020

### Milestone: [[email protected]](https://github.com/nemtech/catapult-server/releases/tag/v0.10.0.3)

Package | Version | Link
---|---|---
REST Core| v2.1.0 | [catapult-rest](https://github.com/nemtech/catapult-rest/releases/tag/v2.1.0)
SDK Core| v0.21.0 | [symbol-sdk](https://www.npmjs.com/package/symbol-sdk)

### Added
- Added compatibility for 0.10.0.3 server.
- Added Secret Hash information in Account Detail page.
- Added Hash Lock information in Account Detail page.
- Added Hash Lock information in transaction details.
- Added Mosaic Address Restrictions information in Account Detail page.
- Added Transaction Graphic widget to visualize transaction info
- HashLockTransaction
- SecretLockTransaction
- SecretProofTransaction
- AccountKeyLinkTransaction
- NodeKeyLinkTransaction
- VotingKeyLinkTransaction
- VrfKeyLinkTransaction
- MosaicDefinitionTransaction
- MosaicSupplyChangeTransaction
- Added Finality block height in Base Info widget.
- Added Finality Status compoment beside the block height showing block Pending or Finalized.
- Added more japanese translations (Thanks @44uk).

### Update
- Refactor Transaction graphic widget and schema
- Refactor Pagination related to SDK change
- Refactor ChainService related to SDK change.
- Refactor RestrictionService related to SDK change

### Fixed
- TransactionDetail. Loading never ends [#615](https://github.com/nemgrouplimited/symbol-explorer/issues/615)
- Aggregate inner transaction are not formatted [#618](https://github.com/nemgrouplimited/symbol-explorer/issues/618)


## [v0.5.0][v0.5.0] - 15-Aug-2020

### Milestone: [[email protected]](https://github.com/nemtech/catapult-server/releases/tag/v0.9.6.4)
Expand Down Expand Up @@ -79,4 +119,5 @@ SDK Core| v0.20.7 | [symbol-sdk](https://www.npmjs.com/package/symbol-sdk)

[v0.3.0]: https://github.com/nemfoundation/symbol-explorer/releases/tag/v0.3.0
[v0.4.0]: https://github.com/nemfoundation/symbol-explorer/releases/tag/v0.4.0
[v0.5.0]: https://github.com/nemfoundation/symbol-explorer/releases/tag/v0.5.0
[v0.5.0]: https://github.com/nemfoundation/symbol-explorer/releases/tag/v0.5.0
[v0.6.0]: https://github.com/nemfoundation/symbol-explorer/releases/tag/v0.6.0
8 changes: 4 additions & 4 deletions e2e/components/SearchBox.spec.js
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ describe('Search Box component should', () => {
.type('{enter}')

cy.url()
.should('contain', 'block/1')
.should('contain', 'blocks/1')
})

it('redirect to transaction detail page given correct transaction hash', () => {
Expand All @@ -32,7 +32,7 @@ describe('Search Box component should', () => {
.type('{enter}')

cy.url()
.should('contain', `transaction/${config.testTransactions.transferTransaction}`)
.should('contain', `transactions/${config.testTransactions.transferTransaction}`)
})

it('redirect to account detail page given correct account address in plain format', () => {
Expand All @@ -42,7 +42,7 @@ describe('Search Box component should', () => {
.type('{enter}')

cy.url()
.should('contain', `account/${config.testAccount.address}`)
.should('contain', `accounts/${config.testAccount.address}`)
})

it('redirect to account detail page given correct account address in pretty format', () => {
Expand All @@ -54,6 +54,6 @@ describe('Search Box component should', () => {
.type('{enter}')

cy.url()
.should('contain', `account/${config.testAccount.address}`)
.should('contain', `accounts/${config.testAccount.address}`)
})
})
2 changes: 1 addition & 1 deletion e2e/config/datafiled.json
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
{
"transactionInfoFields": ["Block Height", "Transaction Hash", "Date", "Deadline", "Fee", "Signature", "Signer", "Status", "Confirmation"]
"transactionInfoFields": ["Block Height", "Size (bytes)", "Transaction Hash", "Date", "Deadline", "Fee", "Signature", "Signer", "Status", "Confirmation"]
}
35 changes: 18 additions & 17 deletions e2e/config/network.conf.json
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
{
"testAccount": {
"address": "TDS44G6KUHO7MODUB6E6WVJOK277QY65XCBJX5Y"
"address": "TAB4OVF7V4HXLKF6TQB67XACDUFMWPRI24M6KVI"
},
"testMosaic": {
"mosaicId": "5E62990DCAC5BE8A"
"mosaicId": "2054DA418770623F"
},
"testNamespace": {
"rootNamespace": "symbol",
Expand All @@ -13,20 +13,21 @@
"height": "1"
},
"testTransactions":{
"transferTransaction": "38E7FF47113FAD41C019EF928168CCBF2707D5B894F8F588AAAE0C5A7AC369F5",
"mosaicAlias": "8DDBF0C14509E3445DBBB4B44C5173CB351B6436E959DB004FD22296CC3E2707",
"addressAlias": "D38F5EC98EE6CACA8EF24372D7345FA80456E470D06570779B4BEC95F7DEDDB8",
"mosaicSupplyChange": "4C1DFA4383EDFE690BA76C3272D0E3ACFC2ED2D6E187C2CB6FB227D1B44BDB40",
"mosaicDefinition": "421AE4A15F6B84573CEC17DDFE0C0C66C775179799D701E9CEFCFA85EE9B1ECB",
"namespaceRegistration": "891D435A6CD0CC030678A1FCDCF69AEC89B1E25BCBF0F7F06BADCA90F3EB97D1",
"secretLock": "82E767CD8F04F09C8A659AC184927329FBC0F40667D383AA3B5794E61D8A8A95",
"secretProof": "A06B03122745770491E786390F6123BD10D642DBD103425A06062D821FFA38C9",
"aggregateComplete": "8C05D7CFB28F69AE2576F62935D1982E06530A791EFD19E3AAE3B136C4ECD28A",
"aggregateBonded": "A4E21A49A0BFEF5AC64F2CA8B615E234A376086B9AEEE3C0DA06459AA58932B3",
"hashLock":"3C397199A8E05CEBF695B926B9E67015D2C5630A8926A803B66023AA49C404C3",
"accountOperationRestriction": "788D6532D7FFE76E2F3EE5E4D1FF8B97A5E953A3A02EBA0AE4AD6BF29E5091B3",
"accountAddressRestriction": "21C22D63EC115AA03104ABC893B3C77C991CA582BD7487E5B25B76FD1AEE95AB",
"accountMosaicRestriction":"A24FA914C7DB11994C0480BAC4A7C30ED2FA830319C7003A3E707CF6A4CE6270",
"vrfKeyLink":"27C9990A6D67A9C2695E9787DAB480B5C075CD24F2A56044166914AC2E1B8DBC"
"transferTransaction": "79F07B7726DAC43645CD682127383970FA40BFCCE74EBD5DB89FE7CDB5B1036D",
"mosaicAlias": "3793B719514AC9E529293A7E3B5744A584B29DCF13ACCEEA8408480F0B936EA7",
"addressAlias": "DFAF072EE15FA64C22B9A8802FA87BE94D0280B28B6218F44BA3A1D78B0D3545",
"mosaicSupplyChange": "D26F327A6852B03403AEA1433B75CA83E3C9C2C7ADC0C154638928A5E9B44D8A",
"mosaicDefinition": "0969C9EA465D503C600BD2F09603C213EBFA92B93B2B9D8CA7ED29691652129A",
"namespaceRegistration": "9ECFF1C776286228EC88927B14BBF22FB0DAB1EA0C3356A4326DAD50E09268B9",
"secretLock": "BF5B997C894C960F4632B51E152FE28CA41FD5D534B685C004221CAFAB5CD744",
"secretProof": "516C77975E5F80D03AF336EF8A5DC23F95673DD1B481806FE2894366AC31D757",
"aggregateComplete": "51A5E6663E08449020AFC6CF2BE846001067205CB3E4B48B07E6D3AD45AAD862",
"aggregateBonded": "04DED0D9498AE97DC88AF80E8CBE4519F8F855DB2BB4F44AB1697777634EAC3E",
"hashLock":"041A4675B56B0A8AA3FE1DC10A98D856C234EB5EBA230F09BE478C2C4B81E22C",
"accountOperationRestriction": "55CAE5FE1E72B4A6139630D633871ADE3C30857CC32A0EC818D7F5A3B966AD49",
"accountAddressRestriction": "8D151C7C4C71E1D43A0F85CC0A6EB6DE5F4779B00A681F6BE36D0E8A13BAF33A",
"accountMosaicRestriction":"7172DFE1ECD06EA739B8FA6A0B0B724197D2E5BC96092D582927F6E254BB163B",
"vrfKeyLink":"7D2A9EEBC8C300C84753E2CA7434790EEC8B533F1C97BE61438396830A28B806",
"votingKeyLink":"A8F8861460F51E243ABBD167A7402C9FA8EFDA80914F41A7AB610A2994047A74"
}
}
58 changes: 30 additions & 28 deletions e2e/pageDetail/accountDetail.spec.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import config from '../config/network.conf.json'

describe('Symbol Explorer Account Detail page', () => {
beforeEach(() => {
cy.visit(`/account/${config.testAccount.address}`)
cy.visit(`/accounts/${config.testAccount.address}`)
})

describe('Account Detail Card should', () => {
Expand All @@ -15,25 +15,26 @@ describe('Symbol Explorer Account Detail page', () => {
})

it('render correct table fields.', () => {
const items = ['Address', 'Alias Namespace', 'Address height', 'Public key', 'Importance', 'Account type', 'Harvested blocks (all)']
const items = ['Address', 'Alias Namespace', 'Address height', 'Public key', 'Importance', 'Account type']
cy.renderFieldInTable("accountDetailTitle", items)
})
})

describe('Multisig Cosignatories Card should', () => {
it('load title', () => {
cy.get('[data-cy="multisigCosignatoriesTitle"]').should('contain', 'Multisig Cosignatories')
})
// Todo: Multisig Cosignatories
// describe('Multisig Cosignatories Card should', () => {
// it('load title', () => {
// cy.get('[data-cy="multisigCosignatoriesTitle"]').should('contain', 'Multisig Cosignatories')
// })

it('render table in card', ()=> {
cy.renderTableInCard("multisigCosignatoriesTitle")
})
// it('render table in card', ()=> {
// cy.renderTableInCard("multisigCosignatoriesTitle")
// })

it('render correct table fields.', () => {
const items = ['Minimum Approval', 'Minimum Removal', 'Cosignatories']
cy.renderFieldInTable("multisigCosignatoriesTitle", items)
})
})
// it('render correct table fields.', () => {
// const items = ['Minimum Approval', 'Minimum Removal', 'Cosignatories']
// cy.renderFieldInTable("multisigCosignatoriesTitle", items)
// })
// })

describe('Owned Mosaics Card should', () => {
it('load title', () => {
Expand Down Expand Up @@ -110,20 +111,21 @@ describe('Symbol Explorer Account Detail page', () => {
})
})

describe('Harvested Blocks Card should', () => {
it('load title', () => {
cy.get('[data-cy="harvestedBlockTitle"]').should('contain', 'Harvested Blocks')
})

it('render table in card', () => {
cy.renderTableInCard("harvestedBlockTitle")
})

it('render correct table header.', () => {
const items = ['Height', 'Age', 'Transactions', 'Total Fee', 'Date', 'Harvester']
cy.renderHeaderInTable("harvestedBlockTitle", items)
})
})
// Todo: Harvested Blocks Card
// describe('Harvested Blocks Card should', () => {
// it('load title', () => {
// cy.get('[data-cy="harvestedBlockTitle"]').should('contain', 'Harvested Blocks')
// })

// it('render table in card', () => {
// cy.renderTableInCard("harvestedBlockTitle")
// })

// it('render correct table header.', () => {
// const items = ['Height', 'Age', 'Transactions', 'Total Fee', 'Date', 'Harvester']
// cy.renderHeaderInTable("harvestedBlockTitle", items)
// })
// })

// Todo: Metadata Entries
// Todo: Account Restriction
Expand Down
35 changes: 32 additions & 3 deletions e2e/pageDetail/blockDetail.spec.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import config from '../config/network.conf.json'

describe('Symbol Explorer Blocks detail page', () => {
beforeEach(() => {
cy.visit(`/block/${config.testBlock.height}`)
cy.visit(`/blocks/${config.testBlock.height}`)
})

describe('Block Detail Card should', () => {
Expand All @@ -20,11 +20,26 @@ describe('Symbol Explorer Blocks detail page', () => {
})

it('render correct table fields.', () => {
const items = ['Height', 'Date', 'Total Fee', 'Difficulty', 'Fee Multiplier', 'Transactions', 'Harvester', 'Block Hash', 'Proof Gamma', 'Proof Scalar', 'Beneficiary Address', 'Proof Varification Hash']
const items = ['Height', 'Size (bytes)', 'Date', 'Total Fee', 'Difficulty', 'Fee Multiplier', 'Transactions', 'Harvester', 'Block Hash', 'Proof Gamma', 'Proof Scalar', 'Beneficiary Address', 'Proof Varification Hash']
cy.renderFieldInTable("blockDetailTitle", items)
})
})

describe('Merkle Info Card should', () => {
it('load title', () => {
cy.get('[data-cy="merkleInfoTitle"]').should('contain', 'Merkle Info')
})

it('render table in card', ()=> {
cy.renderTableInCard("merkleInfoTitle")
})

it('render correct table fields.', () => {
const items = ['State Hash', 'State Hash Sub Cache Merkle Roots', 'Receipts Hash', 'Transactions Hash']
cy.renderFieldInTable("merkleInfoTitle", items)
})
})

describe('Block Transactions Card should', () => {
it('load title', () => {
cy.get('[data-cy="blockTransactionsTitle"]')
Expand Down Expand Up @@ -55,5 +70,19 @@ describe('Symbol Explorer Blocks detail page', () => {
cy.renderHeaderInTable("balanceChangeReceiptTitle", items)
})
})
// Todo: Test the rest of Reicept

describe('Resolution Statement Card should', () => {
it('load title', () => {
cy.get('[data-cy="resolutionStatementTitle"]').should('contain', 'Resolution Statement')
})

it('render table in card', ()=> {
cy.renderTableInCard("resolutionStatementTitle")
})

it('render correct table header.', () => {
const items = ['Type', 'Unresolved', 'Resolved Value']
cy.renderHeaderInTable("resolutionStatementTitle", items)
})
})
})
2 changes: 1 addition & 1 deletion e2e/pageDetail/mosaicDetail.spec.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import config from '../config/network.conf.json'

describe('Symbol Explorer Mosaic Detail page', () => {
beforeEach(() => {
cy.visit(`/mosaic/${config.testMosaic.mosaicId}`)
cy.visit(`/mosaics/${config.testMosaic.mosaicId}`)
})

describe('Mosaic Detail Card should', () => {
Expand Down
2 changes: 1 addition & 1 deletion e2e/pageDetail/namespaceDetail.spec.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import config from '../config/network.conf.json'

describe('Symbol Explorer Namespace detail page', () => {
beforeEach(() => {
cy.visit(`/namespace/${config.testNamespace.subNamespace}`)
cy.visit(`/namespaces/${config.testNamespace.subNamespace}`)
})

describe('Namespace Detail Card should', () => {
Expand Down
4 changes: 2 additions & 2 deletions e2e/pageDetail/transactions/accountAddressRestriction.spec.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import datafiled from '../../config/datafiled.json'

describe('Symbol Explorer Transaction detail page for Account Address Restriction.', () => {
beforeEach(() => {
cy.visit(`/transaction/${config.testTransactions.accountAddressRestriction}`)
cy.visit(`/transactions/${config.testTransactions.accountAddressRestriction}`)
})

describe('Transaction info card should', () => {
Expand Down Expand Up @@ -31,7 +31,7 @@ describe('Symbol Explorer Transaction detail page for Account Address Restrictio
})

it('render correct transaction detail titles', () => {
const items = ['Type', 'Restriction Type', 'Additions']
const items = ['Transaction Type', 'Restriction Type', 'Additions']
cy.renderFieldInTable("transactionDetailTitle", items)
})

Expand Down
4 changes: 2 additions & 2 deletions e2e/pageDetail/transactions/accountMosaicRestriction.spec.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import datafiled from '../../config/datafiled.json'

describe('Symbol Explorer Transaction detail page for Account Mosaic Restriction.', () => {
beforeEach(() => {
cy.visit(`/transaction/${config.testTransactions.accountMosaicRestriction}`)
cy.visit(`/transactions/${config.testTransactions.accountMosaicRestriction}`)
})

describe('Transaction info card should', () => {
Expand Down Expand Up @@ -31,7 +31,7 @@ describe('Symbol Explorer Transaction detail page for Account Mosaic Restriction
})

it('render correct transaction detail titles', () => {
const items = ['Type', 'Restriction Type', 'Additions']
const items = ['Transaction Type', 'Restriction Type', 'Additions']
cy.renderFieldInTable("transactionDetailTitle", items)
})

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import datafiled from '../../config/datafiled.json'

describe('Symbol Explorer Transaction detail page for Account Operation Restriction.', () => {
beforeEach(() => {
cy.visit(`/transaction/${config.testTransactions.accountOperationRestriction}`)
cy.visit(`/transactions/${config.testTransactions.accountOperationRestriction}`)
})

describe('Transaction info card should', () => {
Expand Down Expand Up @@ -31,7 +31,7 @@ describe('Symbol Explorer Transaction detail page for Account Operation Restrict
})

it('render correct transaction detail titles', () => {
const items = ['Type', 'Restriction Type', 'Additions']
const items = ['Transaction Type', 'Restriction Type', 'Additions']
cy.renderFieldInTable("transactionDetailTitle", items)
})

Expand Down
4 changes: 2 additions & 2 deletions e2e/pageDetail/transactions/addressAlias.spec.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import datafiled from '../../config/datafiled.json'

describe('Symbol Explorer Transaction detail page for Address Alias', () => {
beforeEach(() => {
cy.visit(`/transaction/${config.testTransactions.addressAlias}`)
cy.visit(`/transactions/${config.testTransactions.addressAlias}`)
})

describe('Transaction info card should', () => {
Expand Down Expand Up @@ -31,7 +31,7 @@ describe('Symbol Explorer Transaction detail page for Address Alias', () => {
})

it('render correct transaction detail titles', () => {
const items = ['Type', 'Alias Action', 'Namespace ID', 'Name', 'Address']
const items = ['Transaction Type', 'Alias Action', 'Namespace ID', 'Name', 'Address']
cy.renderFieldInTable("transactionDetailTitle", items)
})

Expand Down
2 changes: 1 addition & 1 deletion e2e/pageDetail/transactions/aggregateComplete.spec.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import datafiled from '../../config/datafiled.json'

describe('Symbol Explorer Transaction detail page for Aggregate Complete', () => {
beforeEach(() => {
cy.visit(`/transaction/${config.testTransactions.aggregateComplete}`)
cy.visit(`/transactions/${config.testTransactions.aggregateComplete}`)
})

describe('Transaction info card should', () => {
Expand Down
Loading

0 comments on commit f77c8a3

Please sign in to comment.