Skip to content

Commit ae49d2c

Browse files
authored
Merge branch 'beta' into fix-verifyMessage
2 parents 05f4095 + 0f8b266 commit ae49d2c

35 files changed

+371
-1228
lines changed

.github/workflows/_test.yml

Lines changed: 2 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,10 @@ name: _ Run Tests
22
on:
33
workflow_call:
44
inputs:
5-
use-rpc-devnet:
6-
type: boolean
7-
default: false
8-
use-seq-devnet:
5+
use-devnet:
96
type: boolean
107
default: false
118
secrets:
12-
TEST_PROVIDER_BASE_URL:
13-
required: false
149
TEST_RPC_URL:
1510
required: false
1611
TEST_ACCOUNT_PRIVATE_KEY:
@@ -26,20 +21,16 @@ jobs:
2621
# TODO - periodically check if conditional services are supported; https://github.com/actions/runner/issues/822
2722
services:
2823
devnet:
29-
image: ${{ inputs.use-rpc-devnet && 'shardlabs/starknet-devnet-rs:0c82d023f35bb77c4b5f4afd885ab14e44b73130-amd-seed0' || inputs.use-seq-devnet && 'shardlabs/starknet-devnet:0.6.3-seed0' || '' }}
30-
# image: ${{ (inputs.use-rpc-devnet || inputs.use-seq-devnet) && 'shardlabs/starknet-devnet:0.6.3-seed0' || '' }}
31-
# image: shardlabs/starknet-devnet-rs:0c82d023f35bb77c4b5f4afd885ab14e44b73130-amd-seed0
24+
image: ${{ (inputs.use-devnet) && 'shardlabs/starknet-devnet-rs:85495efb71a37ad3921c8986474b7e78a9a9f5fc-amd-seed0' || '' }}
3225
ports:
3326
- 5050:5050
3427

3528
env:
36-
TEST_PROVIDER_BASE_URL: ${{ secrets.TEST_PROVIDER_BASE_URL }}
3729
TEST_RPC_URL: ${{ secrets.TEST_RPC_URL }}
3830
TEST_ACCOUNT_PRIVATE_KEY: ${{ secrets.TEST_ACCOUNT_PRIVATE_KEY }}
3931
TEST_ACCOUNT_ADDRESS: ${{ secrets.TEST_ACCOUNT_ADDRESS }}
4032

4133
steps:
42-
- run: echo ${{ secrets.TEST_PROVIDER_BASE_URL }}
4334
- run: echo ${{ secrets.TEST_RPC_URL }}
4435
- uses: actions/checkout@v3
4536
- uses: actions/setup-node@v3

.github/workflows/manual-tests-devnet.yml

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,17 +7,12 @@ jobs:
77
strategy:
88
fail-fast: false
99
matrix:
10-
name: [sequencer-devnet, rpc-devnet]
1110
include:
12-
- name: sequencer-devnet
13-
TEST_PROVIDER_BASE_URL: http://127.0.0.1:5050/
1411
- name: rpc-devnet
1512
TEST_RPC_URL: http://127.0.0.1:5050/rpc
1613

1714
uses: ./.github/workflows/_test.yml
1815
with:
19-
use-rpc-devnet: ${{ matrix.TEST_RPC_URL != '' }}
20-
use-seq-devnet: ${{ matrix.TEST_PROVIDER_BASE_URL != '' }}
16+
use-devnet: ${{ matrix.TEST_RPC_URL != '' }}
2117
secrets:
22-
TEST_PROVIDER_BASE_URL: ${{ matrix.TEST_PROVIDER_BASE_URL }}
2318
TEST_RPC_URL: ${{ matrix.TEST_RPC_URL }}

.github/workflows/manual-tests-testnet.yml

Lines changed: 3 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -5,20 +5,12 @@ jobs:
55
tests:
66
name: Run test on ${{ matrix.name }}
77
strategy:
8-
max-parallel: 1 # needed until we get a seperate account for the rpc provider, until then running them in parallel would result in a nonce issue
8+
max-parallel: 1
99
matrix:
10-
name: [sequencer-goerli, rpc-goerli]
11-
include:
12-
- name: sequencer-goerli
13-
ENABLE_SEQUENCER: true
14-
ENABLE_RPC: false
15-
- name: rpc-goerli
16-
ENABLE_SEQUENCER: false
17-
ENABLE_RPC: true
10+
name: [rpc-goerli]
1811

1912
uses: ./.github/workflows/_test.yml
2013
secrets:
21-
TEST_PROVIDER_BASE_URL: ${{ matrix.ENABLE_SEQUENCER && secrets.TEST_PROVIDER_BASE_URL || ''}}
22-
TEST_RPC_URL: ${{ matrix.ENABLE_RPC && secrets.TEST_RPC_URL || ''}}
14+
TEST_RPC_URL: ${{ secrets.TEST_RPC_URL }}
2315
TEST_ACCOUNT_PRIVATE_KEY: ${{ secrets.TEST_ACCOUNT_PRIVATE_KEY }}
2416
TEST_ACCOUNT_ADDRESS: ${{ secrets.TEST_ACCOUNT_ADDRESS }}

.github/workflows/pr-push-dev.yml

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -44,19 +44,14 @@ jobs:
4444
strategy:
4545
fail-fast: false
4646
matrix:
47-
name: [sequencer-devnet, rpc-devnet]
4847
include:
49-
- name: sequencer-devnet
50-
TEST_PROVIDER_BASE_URL: http://127.0.0.1:5050/
5148
- name: rpc-devnet
5249
TEST_RPC_URL: http://127.0.0.1:5050/rpc
5350

5451
uses: ./.github/workflows/_test.yml
5552
with:
56-
use-rpc-devnet: ${{ matrix.TEST_RPC_URL != '' }}
57-
use-seq-devnet: ${{ matrix.TEST_PROVIDER_BASE_URL != '' }}
53+
use-devnet: ${{ matrix.TEST_RPC_URL != '' }}
5854
secrets:
59-
TEST_PROVIDER_BASE_URL: ${{ matrix.TEST_PROVIDER_BASE_URL }}
6055
TEST_RPC_URL: ${{ matrix.TEST_RPC_URL }}
6156

6257
release:

.github/workflows/pr-push-main.yml

Lines changed: 3 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -38,21 +38,13 @@ jobs:
3838
needs: [skip_check]
3939
if: needs.skip_check.outputs.should_skip != 'true'
4040
strategy:
41-
max-parallel: 1 # needed until we get a seperate account for the rpc provider, until then running them in parallel would result in a nonce issue
41+
max-parallel: 1
4242
matrix:
43-
name: [sequencer-goerli, rpc-goerli]
44-
include:
45-
- name: sequencer-goerli
46-
ENABLE_SEQUENCER: true
47-
ENABLE_RPC: false
48-
- name: rpc-goerli
49-
ENABLE_SEQUENCER: false
50-
ENABLE_RPC: true
43+
name: [rpc-goerli]
5144

5245
uses: ./.github/workflows/_test.yml
5346
secrets:
54-
TEST_PROVIDER_BASE_URL: ${{ matrix.ENABLE_SEQUENCER && secrets.TEST_PROVIDER_BASE_URL || ''}}
55-
TEST_RPC_URL: ${{ matrix.ENABLE_RPC && secrets.TEST_RPC_URL || ''}}
47+
TEST_RPC_URL: ${{ secrets.TEST_RPC_URL }}
5648
TEST_ACCOUNT_PRIVATE_KEY: ${{ secrets.TEST_ACCOUNT_PRIVATE_KEY }}
5749
TEST_ACCOUNT_ADDRESS: ${{ secrets.TEST_ACCOUNT_ADDRESS }}
5850

CHANGELOG.md

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,39 @@
1+
# [6.0.0-beta.11](https://github.com/starknet-io/starknet.js/compare/v6.0.0-beta.10...v6.0.0-beta.11) (2024-01-04)
2+
3+
### Bug Fixes
4+
5+
- utilize provided resourceBounds value ([65bea53](https://github.com/starknet-io/starknet.js/commit/65bea53ab03a04fdd4c122ba2fecbb1010100e18))
6+
7+
# [6.0.0-beta.10](https://github.com/starknet-io/starknet.js/compare/v6.0.0-beta.9...v6.0.0-beta.10) (2023-12-20)
8+
9+
### Features
10+
11+
- req id counter ([cedd1ea](https://github.com/starknet-io/starknet.js/commit/cedd1ea32cd58107c504d357a3dd5e9a40010a80))
12+
13+
# [6.0.0-beta.9](https://github.com/starknet-io/starknet.js/compare/v6.0.0-beta.8...v6.0.0-beta.9) (2023-12-19)
14+
15+
### Bug Fixes
16+
17+
- acc deploy_acc ([732cd94](https://github.com/starknet-io/starknet.js/commit/732cd946f26c2b0fe893067f25c1fe712d72d49b))
18+
19+
# [6.0.0-beta.8](https://github.com/starknet-io/starknet.js/compare/v6.0.0-beta.7...v6.0.0-beta.8) (2023-12-19)
20+
21+
### Bug Fixes
22+
23+
- estimateFeeBulk provided version ([da717be](https://github.com/starknet-io/starknet.js/commit/da717be8e656087eaba21c865a6dd0b648664491))
24+
25+
# [6.0.0-beta.7](https://github.com/starknet-io/starknet.js/compare/v6.0.0-beta.6...v6.0.0-beta.7) (2023-12-14)
26+
27+
### Bug Fixes
28+
29+
- provider rpc 0.5-0.6 getTransactionReceipt response standardization ([76b6ab4](https://github.com/starknet-io/starknet.js/commit/76b6ab49f6721d1f76c3f30d3d88d6dbc8b80bda))
30+
31+
### Features
32+
33+
- curves ([405de46](https://github.com/starknet-io/starknet.js/commit/405de462032579ef0e8e434c62976dcb84ee1af8))
34+
- **provider:** fix and clean provider response and response parser, removed seqeuncer api ([7ecb069](https://github.com/starknet-io/starknet.js/commit/7ecb069e3d2c37653cedc44dfbb635c5bc8eec7f))
35+
- **provider:** pending response discrimination, pending type guards ([013a22b](https://github.com/starknet-io/starknet.js/commit/013a22bf4dd8cb6df817ccf6ff2d82837fe91693))
36+
137
# [6.0.0-beta.6](https://github.com/starknet-io/starknet.js/compare/v6.0.0-beta.5...v6.0.0-beta.6) (2023-12-11)
238

339
### Features

__tests__/account.test.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,9 @@ describe('deploy and test Wallet', () => {
9797
});
9898

9999
expect(result).toMatchSchemaRef('EstimateFee');
100-
expect(innerInvokeEstFeeSpy.mock.calls[0][1].version).toBe(constants.TRANSACTION_VERSION.F1);
100+
expect([constants.TRANSACTION_VERSION.F1, constants.TRANSACTION_VERSION.F3]).toContain(
101+
innerInvokeEstFeeSpy.mock.calls[0][1].version
102+
);
101103
innerInvokeEstFeeSpy.mockClear();
102104
});
103105

__tests__/config/jest.setup.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,8 +38,9 @@ if (process.env.DEBUG === 'true') {
3838

3939
response(response) {
4040
const cloned = response.clone();
41-
cloned.json().then(({ result }) => {
42-
const match: any = combiner.find((it: any) => typeof it.result === 'undefined');
41+
cloned.json().then((res) => {
42+
const { result } = res;
43+
const match: any = combiner.find((it: any) => it.request.body.id === res.id);
4344
if (match && 'request' in match) {
4445
match.result = result;
4546
console.log(util.inspect(match, false, null, true /* enable colors */));

__tests__/contract.test.ts

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@ import {
22
BigNumberish,
33
Contract,
44
ContractFactory,
5+
GetTransactionReceiptResponse,
56
ParsedEvents,
67
RawArgs,
7-
SuccessfulTransactionReceiptResponse,
88
json,
99
stark,
1010
} from '../src';
@@ -720,7 +720,7 @@ describe('Complex interaction', () => {
720720
test('invoke compiled data', async () => {
721721
const result = await erc20Echo20Contract.iecho(CallData.compile(request));
722722
const transaction = await provider.waitForTransaction(result.transaction_hash);
723-
expect((transaction as SuccessfulTransactionReceiptResponse).execution_status).toBeDefined();
723+
expect((transaction as GetTransactionReceiptResponse).execution_status).toBeDefined();
724724
});
725725

726726
// skip on live for performance
@@ -730,19 +730,19 @@ describe('Complex interaction', () => {
730730

731731
const result = await erc20Echo20Contract.iecho(calldata);
732732
const transaction = await provider.waitForTransaction(result.transaction_hash);
733-
expect((transaction as SuccessfulTransactionReceiptResponse).execution_status).toBeDefined();
733+
expect((transaction as GetTransactionReceiptResponse).execution_status).toBeDefined();
734734

735735
const result1 = await erc20Echo20Contract.iecho(...args);
736736
const transaction1 = await provider.waitForTransaction(result1.transaction_hash);
737-
expect((transaction1 as SuccessfulTransactionReceiptResponse).execution_status).toBeDefined();
737+
expect((transaction1 as GetTransactionReceiptResponse).execution_status).toBeDefined();
738738

739739
const result2 = await erc20Echo20Contract.invoke('iecho', calldata);
740740
const transaction2 = await provider.waitForTransaction(result2.transaction_hash);
741-
expect((transaction2 as SuccessfulTransactionReceiptResponse).execution_status).toBeDefined();
741+
expect((transaction2 as GetTransactionReceiptResponse).execution_status).toBeDefined();
742742

743743
const result3 = await erc20Echo20Contract.invoke('iecho', args);
744744
const transaction3 = await provider.waitForTransaction(result3.transaction_hash);
745-
expect((transaction3 as SuccessfulTransactionReceiptResponse).execution_status).toBeDefined();
745+
expect((transaction3 as GetTransactionReceiptResponse).execution_status).toBeDefined();
746746
});
747747

748748
describe('speedup live tests', () => {
@@ -795,9 +795,7 @@ describe('Complex interaction', () => {
795795
{ formatResponse }
796796
);
797797
const transaction = await provider.waitForTransaction(result.transaction_hash);
798-
expect(
799-
(transaction as SuccessfulTransactionReceiptResponse).execution_status
800-
).toBeDefined();
798+
expect((transaction as GetTransactionReceiptResponse).execution_status).toBeDefined();
801799
});
802800
});
803801

__tests__/defaultProvider.test.ts

Lines changed: 13 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,8 @@ import {
1818
} from './config/fixtures';
1919
import { initializeMatcher } from './config/schema';
2020

21+
const { isPendingStateUpdate } = provider;
22+
2123
const testProvider = new Provider(getTestProvider());
2224

2325
describe('defaultProvider', () => {
@@ -81,32 +83,20 @@ describe('defaultProvider', () => {
8183

8284
test(`getStateUpdate(blockHash=${exampleBlockHash}, blockNumber=undefined)`, async () => {
8385
const stateUpdate = await testProvider.getStateUpdate(exampleBlockHash);
84-
provider.defStateUpdate(
85-
stateUpdate,
86-
(state) => {
87-
expect(state.block_hash).toBe(exampleBlockHash);
88-
expect(state).toMatchSchemaRef('StateUpdateResponse');
89-
},
90-
(pending) => {
91-
fail('exampleBlockHash is latest block, should not be pending');
92-
expect(pending).toMatchSchemaRef('PendingStateUpdateResponse');
93-
}
94-
);
86+
if (isPendingStateUpdate(stateUpdate)) {
87+
fail('exampleBlockHash is latest block, should not be pending');
88+
}
89+
expect(stateUpdate.block_hash).toBe(exampleBlockHash);
90+
expect(stateUpdate).toMatchSchemaRef('StateUpdateResponse');
9591
});
9692

9793
test(`getStateUpdate(blockHash=undefined, blockNumber=${exampleBlockNumber})`, async () => {
9894
const stateUpdate = await testProvider.getStateUpdate(exampleBlockNumber);
99-
provider.defStateUpdate(
100-
stateUpdate,
101-
(state) => {
102-
expect(state.block_hash).toBe(exampleBlockHash);
103-
expect(state).toMatchSchemaRef('StateUpdateResponse');
104-
},
105-
(pending) => {
106-
fail('exampleBlockHash is latest block, should not be pending');
107-
expect(pending).toMatchSchemaRef('PendingStateUpdateResponse');
108-
}
109-
);
95+
if (isPendingStateUpdate(stateUpdate)) {
96+
fail('exampleBlockHash is latest block, should not be pending');
97+
}
98+
expect(stateUpdate.block_hash).toBe(exampleBlockHash);
99+
expect(stateUpdate).toMatchSchemaRef('StateUpdateResponse');
110100
});
111101
});
112102

@@ -181,7 +171,7 @@ describe('defaultProvider', () => {
181171
}),
182172
})
183173
.then((res) => {
184-
expect(Array.isArray(res.result)).toBe(true);
174+
expect(Array.isArray(res)).toBe(true);
185175
})
186176
).resolves.not.toThrow();
187177
});

0 commit comments

Comments
 (0)