Skip to content

Commit

Permalink
fix: cleanup mock
Browse files Browse the repository at this point in the history
  • Loading branch information
sakulstra committed Apr 18, 2024
1 parent 1ece29e commit 197d21e
Show file tree
Hide file tree
Showing 5 changed files with 131,498 additions and 329,036 deletions.
2 changes: 2 additions & 0 deletions src/govv3/__snapshots__/generatePayloadReport.spec.ts.snap

Large diffs are not rendered by default.

22 changes: 13 additions & 9 deletions src/govv3/checks/state.spec.ts
Original file line number Diff line number Diff line change
@@ -1,20 +1,24 @@
import { CHAIN_ID_CLIENT_MAP } from "@bgd-labs/js-utils";
import { describe, expect, it } from "vitest";
import { CONFIG_CHANGE_PAYLOAD } from "../mocks/configChangePayload";
import { MOCK_PAYLOAD } from "../mocks/payload";
import { checkStateChanges } from "./state";
import {CHAIN_ID_CLIENT_MAP} from '@bgd-labs/js-utils';
import {describe, expect, it} from 'vitest';
import {CONFIG_CHANGE_PAYLOAD} from '../mocks/configChangePayload';
import {MOCK_PAYLOAD} from '../mocks/payload';
import {checkStateChanges} from './state';

describe("state check", () => {
it("should correctly render state diff for", async () => {
describe('state check', () => {
it('should correctly render state diff for', async () => {
const result = await checkStateChanges.checkProposal(
null as any,
MOCK_PAYLOAD.simulation,
CHAIN_ID_CLIENT_MAP[MOCK_PAYLOAD.simulation.transaction.network_id],
);
expect(result).toMatchSnapshot();
});
it("should correctly render state diff for config change", async () => {
const result = await checkStateChanges.checkProposal(null as any, CONFIG_CHANGE_PAYLOAD, CHAIN_ID_CLIENT_MAP[1]);
it('should correctly render state diff for config change', async () => {
const result = await checkStateChanges.checkProposal(
null as any,
CONFIG_CHANGE_PAYLOAD,
CHAIN_ID_CLIENT_MAP[1],
);
expect(result).toMatchSnapshot();
});
});
63 changes: 44 additions & 19 deletions src/govv3/generatePayloadReport.spec.ts
Original file line number Diff line number Diff line change
@@ -1,14 +1,34 @@
import { CHAIN_ID_CLIENT_MAP } from "@bgd-labs/js-utils";
import { describe, expect, it } from "vitest";
import { generateReport } from "./generatePayloadReport";
import { MOCK_PAYLOAD } from "./mocks/payload";
import { STREAM_PAYLOAD } from "./mocks/streamPayload";
import { findPayloadsController } from "./utils/checkAddress";
import { getPayloadsController } from "./payloadsController";
import { cachePayloadsController } from "./cache/updateCache";
import { Address } from "viem";
import {CHAIN_ID_CLIENT_MAP} from '@bgd-labs/js-utils';
import {describe, expect, it} from 'vitest';
import {generateReport} from './generatePayloadReport';
import {MOCK_PAYLOAD} from './mocks/payload';
import {STREAM_PAYLOAD} from './mocks/streamPayload';
import {findPayloadsController} from './utils/checkAddress';
import {getPayloadsController} from './payloadsController';
import {Address} from 'viem';
import {localCacheAdapter} from '@bgd-labs/aave-v3-governance-cache/localCache';

describe("generatePayloadReport", () => {
/**
* Tenderly simulation results are insanely huge, so we're removing some stuff we don't need
* @param mockData
*/
function cleanupMock(mockData: any) {
mockData.simulation.contracts.map((ctr: any, ix: number) => {
delete mockData.simulation.contracts[ix].src_map;
delete mockData.simulation.contracts[ix].deployed_bytecode;
delete mockData.simulation.contracts[ix].creation_bytecode;
delete mockData.simulation.contracts[ix].data;
});

return JSON.stringify(mockData, (key, value) =>
typeof value === 'bigint' ? value.toString() : value,
);
}

describe('generatePayloadReport', () => {
it.skip('cleanup', () => {
expect(cleanupMock(MOCK_PAYLOAD)).toMatchSnapshot();
});
/**
* Can be used to generate a new snapshot
*/
Expand All @@ -18,34 +38,39 @@ describe("generatePayloadReport", () => {
const client = CHAIN_ID_CLIENT_MAP[chainId];
const payloadsControllerAddress = findPayloadsController(Number(chainId));
const payloadsController = getPayloadsController(payloadsControllerAddress as Address, client);
const { eventsCache } = await cachePayloadsController(client, payloadsControllerAddress as Address);
const config = await payloadsController.getPayload(payloadId, eventsCache);
const result = await payloadsController.simulatePayloadExecutionOnTenderly(Number(payloadId), config);
result.contracts.map((ctr, ix) => delete result.contracts[ix].src_map);
console.log(JSON.stringify({simulation: result, payloadInfo: config}, (key, value) => (typeof value === "bigint" ? value.toString() : value), 2));
const cache = await localCacheAdapter.getPayload({
chainId,
payloadId,
payloadsController: payloadsControllerAddress!,
});
const result = await payloadsController.simulatePayloadExecutionOnTenderly(
Number(payloadId),
cache.logs,
);
cleanupMock({simulation: result, payloadInfo: cache});
});

it(
"should match snapshot listing",
'should match snapshot listing',
async () => {
const report = await generateReport({
...(MOCK_PAYLOAD as any),
client: CHAIN_ID_CLIENT_MAP[MOCK_PAYLOAD.simulation.transaction.network_id],
});
expect(report).toMatchSnapshot();
},
{ timeout: 30000 },
{timeout: 30000},
);

it(
"should match snapshot streams",
'should match snapshot streams',
async () => {
const report = await generateReport({
...(STREAM_PAYLOAD as any),
client: CHAIN_ID_CLIENT_MAP[MOCK_PAYLOAD.simulation.transaction.network_id],
});
expect(report).toMatchSnapshot();
},
{ timeout: 30000 },
{timeout: 30000},
);
});
Loading

0 comments on commit 197d21e

Please sign in to comment.