From c338fd38eaaf8dfff6c80b1b91228fe9fdef2ba2 Mon Sep 17 00:00:00 2001 From: Chris Troutner Date: Sun, 16 Nov 2025 07:38:35 -0800 Subject: [PATCH] fix(slp): Removing the data2 path as it never worked well --- src/controllers/rest-api/slp/controller.js | 27 --------- src/controllers/rest-api/slp/router.js | 1 - src/use-cases/slp-use-cases.js | 12 ---- test/unit/controllers/rest-api-index-unit.js | 1 - test/unit/controllers/slp-controller-unit.js | 59 +------------------- test/unit/use-cases/slp-use-cases-unit.js | 15 ----- 6 files changed, 1 insertion(+), 114 deletions(-) diff --git a/src/controllers/rest-api/slp/controller.js b/src/controllers/rest-api/slp/controller.js index c77e1ef..0a66c3a 100644 --- a/src/controllers/rest-api/slp/controller.js +++ b/src/controllers/rest-api/slp/controller.js @@ -32,7 +32,6 @@ class SlpRESTController { this.getTxid = this.getTxid.bind(this) this.getTokenStats = this.getTokenStats.bind(this) this.getTokenData = this.getTokenData.bind(this) - this.getTokenData2 = this.getTokenData2.bind(this) this.handleError = this.handleError.bind(this) } @@ -206,32 +205,6 @@ class SlpRESTController { } } - /** - * @api {post} /v6/slp/token/data2 Get expanded token data - * @apiName GetTokenData2 - * @apiGroup SLP - * @apiDescription Get expanded data for the token, including icons. - */ - async getTokenData2 (req, res) { - try { - const tokenId = req.body.tokenId - - if (!tokenId || tokenId === '') { - return res.status(400).json({ - success: false, - error: 'tokenId can not be empty' - }) - } - - const updateCache = req.body.updateCache - - const result = await this.slpUseCases.getTokenData2({ tokenId, updateCache }) - return res.status(200).json(result) - } catch (err) { - return this.handleError(err, res) - } - } - handleError (err, res) { wlogger.error('Error in SlpRESTController:', err) diff --git a/src/controllers/rest-api/slp/router.js b/src/controllers/rest-api/slp/router.js index 9375812..32c7f97 100644 --- a/src/controllers/rest-api/slp/router.js +++ b/src/controllers/rest-api/slp/router.js @@ -47,7 +47,6 @@ class SlpRouter { this.router.post('/txid', this.slpController.getTxid) this.router.post('/token', this.slpController.getTokenStats) this.router.post('/token/data', this.slpController.getTokenData) - this.router.post('/token/data2', this.slpController.getTokenData2) app.use(this.baseUrl, this.router) } diff --git a/src/use-cases/slp-use-cases.js b/src/use-cases/slp-use-cases.js index 4a4555b..2e64650 100644 --- a/src/use-cases/slp-use-cases.js +++ b/src/use-cases/slp-use-cases.js @@ -146,18 +146,6 @@ class SlpUseCases { } } - async getTokenData2 ({ tokenId, updateCache }) { - try { - await this._ensureInitialized() - - const tokenData = await this.slpTokenMedia.getIcon({ tokenId, updateCache }) - return tokenData - } catch (err) { - wlogger.error('Error in SlpUseCases.getTokenData2()', err) - throw err - } - } - async getMutableCid ({ tokenStats }) { // Validate input - this should throw, not be caught if (!tokenStats || !tokenStats.documentHash) { diff --git a/test/unit/controllers/rest-api-index-unit.js b/test/unit/controllers/rest-api-index-unit.js index 6df2479..b54830d 100644 --- a/test/unit/controllers/rest-api-index-unit.js +++ b/test/unit/controllers/rest-api-index-unit.js @@ -92,7 +92,6 @@ describe('#controllers/rest-api/index.js', () => { getTxid: () => {}, getTokenStats: () => {}, getTokenData: () => {}, - getTokenData2: () => {}, getMutableCid: () => {}, decodeOpReturn: () => {}, getCIDData: () => {} diff --git a/test/unit/controllers/slp-controller-unit.js b/test/unit/controllers/slp-controller-unit.js index b86c345..650f791 100644 --- a/test/unit/controllers/slp-controller-unit.js +++ b/test/unit/controllers/slp-controller-unit.js @@ -25,8 +25,7 @@ describe('#slp-controller.js', () => { getAddress: sandbox.stub().resolves({ balance: 1000 }), getTxid: sandbox.stub().resolves({ txid: 'abc' }), getTokenStats: sandbox.stub().resolves({ tokenData: {} }), - getTokenData: sandbox.stub().resolves({ genesisData: {}, immutableData: '', mutableData: '' }), - getTokenData2: sandbox.stub().resolves({ tokenIcon: 'test-icon.png' }) + getTokenData: sandbox.stub().resolves({ genesisData: {}, immutableData: '', mutableData: '' }) }) beforeEach(() => { @@ -310,60 +309,4 @@ describe('#slp-controller.js', () => { assert.deepEqual(res.jsonData, { error: 'Token data not found' }) }) }) - - describe('#getTokenData2()', () => { - it('should return expanded token data on success', async () => { - const req = createMockRequest({ - body: { tokenId: 'a'.repeat(64) } - }) - const res = createMockResponse() - - await uut.getTokenData2(req, res) - - assert.equal(res.statusValue, 200) - assert.deepEqual(res.jsonData, { tokenIcon: 'test-icon.png' }) - assert.isTrue(mockUseCases.slp.getTokenData2.calledOnce) - }) - - it('should pass updateCache flag', async () => { - const req = createMockRequest({ - body: { tokenId: 'a'.repeat(64), updateCache: true } - }) - const res = createMockResponse() - - await uut.getTokenData2(req, res) - - assert.isTrue(mockUseCases.slp.getTokenData2.calledWith({ - tokenId: 'a'.repeat(64), - updateCache: true - })) - }) - - it('should return error if tokenId is empty', async () => { - const req = createMockRequest({ - body: { tokenId: '' } - }) - const res = createMockResponse() - - await uut.getTokenData2(req, res) - - assert.equal(res.statusValue, 400) - assert.property(res.jsonData, 'error') - }) - - it('should handle errors via handleError', async () => { - const error = new Error('Token icon not found') - error.status = 404 - mockUseCases.slp.getTokenData2.rejects(error) - const req = createMockRequest({ - body: { tokenId: 'a'.repeat(64) } - }) - const res = createMockResponse() - - await uut.getTokenData2(req, res) - - assert.equal(res.statusValue, 404) - assert.deepEqual(res.jsonData, { error: 'Token icon not found' }) - }) - }) }) diff --git a/test/unit/use-cases/slp-use-cases-unit.js b/test/unit/use-cases/slp-use-cases-unit.js index 9ab7a14..3796656 100644 --- a/test/unit/use-cases/slp-use-cases-unit.js +++ b/test/unit/use-cases/slp-use-cases-unit.js @@ -195,21 +195,6 @@ describe('#slp-use-cases.js', () => { }) }) - describe('#getTokenData2()', () => { - it('should call slpTokenMedia getIcon method', async () => { - const tokenId = 'a'.repeat(64) - const updateCache = false - mockSlpTokenMedia.getIcon.resolves({ tokenIcon: 'test-icon.png' }) - - const result = await uut.getTokenData2({ tokenId, updateCache }) - - assert.isTrue( - mockSlpTokenMedia.getIcon.calledOnceWith({ tokenId, updateCache }) - ) - assert.deepEqual(result, { tokenIcon: 'test-icon.png' }) - }) - }) - describe('#decodeOpReturn()', () => { it('should decode OP_RETURN data from transaction', async () => { const txid = 'a'.repeat(64)