Skip to content

Commit b6c4690

Browse files
committed
refactor: save baseAsset as Token entity
1 parent 0020ab4 commit b6c4690

File tree

3 files changed

+9
-7
lines changed

3 files changed

+9
-7
lines changed

subgraphs/protocol-reserve/schema.graphql

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ type TokenConverter @entity {
3636
address: Bytes!
3737
converterNetwork: ConverterNetwork
3838
destinationAddress: Bytes!
39-
baseAsset: Bytes!
39+
baseAsset: Token!
4040
configs: [TokenConverterConfig!]! @derivedFrom(field: "tokenConverter")
4141
paused: Boolean!
4242
priceOracleAddress: Bytes!

subgraphs/protocol-reserve/src/operations/create.ts

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -37,13 +37,14 @@ export function createTokenConverter(tokenConverterAddress: Address): TokenConve
3737

3838
if (tokenConverterAddress.equals(riskFundConverterAddress)) {
3939
const riskFund = RiskFund.bind(riskFundAddress);
40-
tokenConverter.baseAsset = valueOrNotAvailableAddressIfReverted(
41-
riskFund.try_convertibleBaseAsset(),
42-
);
40+
const baseAsset = valueOrNotAvailableAddressIfReverted(riskFund.try_convertibleBaseAsset());
41+
42+
tokenConverter.baseAsset = getOrCreateToken(Address.fromBytes(baseAsset)).id;
4343
} else {
44-
tokenConverter.baseAsset = valueOrNotAvailableAddressIfReverted(
44+
const baseAsset = (tokenConverter.baseAsset = valueOrNotAvailableAddressIfReverted(
4545
tokenConverterContract.try_baseAsset(),
46-
);
46+
));
47+
tokenConverter.baseAsset = getOrCreateToken(Address.fromBytes(baseAsset)).id;
4748
}
4849
tokenConverter.priceOracleAddress = valueOrNotAvailableAddressIfReverted(
4950
tokenConverterContract.try_priceOracle(),

subgraphs/protocol-reserve/tests/ConverterNetwork/index.test.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import { assert, beforeAll, describe, test } from 'matchstick-as/assembly/index'
33

44
import { handleConverterAdded, handleConverterRemoved } from '../../src/mappings/converterNetwork';
55
import { getConverterNetworkId, getTokenConverterId } from '../../src/utilities/ids';
6-
import { createTokenConverterMock } from '../TokenConverter/mocks';
6+
import { createTokenConverterMock, createTokenMock } from '../TokenConverter/mocks';
77
import { createConverterAddedEvent, createConverterRemovedEvent } from './events';
88

99
const converterNetworkAddress = Address.fromString('0x0000000000000000000000000000000000000ccc');
@@ -27,6 +27,7 @@ beforeAll(() => {
2727
token1Address,
2828
priceOracleAddress,
2929
);
30+
createTokenMock(token1Address, 'BNB');
3031
});
3132

3233
describe('Converter Network', () => {

0 commit comments

Comments
 (0)