Commit Graph

371 Commits

Author SHA1 Message Date
Anton Evangelatov
0afeed6108
nested and paych suites in generator format (#235) 2020-08-14 19:40:26 +01:00
Anton Evangelatov
b2c2a7b5d0
nested test suite (#231) 2020-08-14 19:34:02 +02:00
Raúl Kripalani
acbb80920b
generator; single main() entrypoint for each suite. (#232) 2020-08-14 18:25:35 +01:00
Alan Shaw
9ba87d4613
refactor: switch to base64 encoding for binary data (#233) 2020-08-14 19:05:29 +02:00
Raúl Kripalani
99f466e35e
test vector builder API + partial migration of suites (#229)
Co-authored-by: Anton Evangelatov <anton.evangelatov@gmail.com>
2020-08-14 13:51:43 +01:00
Anton Evangelatov
ffe3019561
messages/nested suite (#215)
* wip

* print out failing test

* missing account in state

* enable puppet test

* add missing preroot

* add puppet actor to lvm

* refactor getting post root and serialize of test vector (#217)
2020-08-10 16:38:34 +02:00
Alan Shaw
47f0ef0eae
test: port chain validation multisig test suite (#216) 2020-08-07 16:45:52 +01:00
Alan Shaw
be5bd41640
feat: add test name to test vector meta (#214)
So we can more easily distinguish between test vectors.
2020-08-07 15:36:00 +01:00
Anton Evangelatov
de62012a7f
add messages/transfer suite (#213) 2020-08-07 16:25:58 +02:00
Alan Shaw
a793824d2c
feat: test driver automatically records applied messages in test vector (#212)
The `TestDriver` now records applied messages in it's `TestVector` whenever an `Apply*` method is called. This removes the need for manual message serialization and recording in the tests.
2020-08-07 15:12:38 +01:00
Alan Shaw
52cf367a92
feat: add MustMarshalJSON for more DRY outputting (#211)
Small change to make encoding and printing the test vector output a bit more succinct.
2020-08-07 14:09:10 +01:00
Alan Shaw
81ea0ec5f3
refactor: add default TestVector to TestDriver (#208)
This PR adds a `TestVector` to the `TestDriver` so that test driver methods that apply messages can be recorded in the test vector.

refs #194
2020-08-07 13:47:16 +01:00
Anton Evangelatov
7d118e1b12
fix two disabled tests (#207) 2020-08-06 18:57:15 +02:00
Raúl Kripalani
fd35438a30
schema: add message receipts + description and comments informational fields (#209) 2020-08-06 17:20:17 +01:00
Raúl Kripalani
8203a5d2c3
various fixes: warn on predicted nonce mismatch, randomness length, add missing mocked verification calls (#199)
* warn when extracting a message from a tipset that contains
  more leading messages from the same sender, as this leads to
  nonce misalignment.
* fix mocked randomness being too short (must be 32 bytes).
* mock some further verification syscalls.
2020-08-06 10:43:10 +01:00
Anton Evangelatov
9c8ced1fc6
input from stdin functionality for exec-lotus ; initial test suites in ci (#196) 2020-08-05 20:59:57 +02:00
Anton Evangelatov
f97c9e08c0
upgrade lotus-soup to use latest commit from next branch (#193) 2020-08-05 19:51:25 +02:00
Anton Evangelatov
8a59bf7c45
build tvx as part of ci (#192) 2020-08-05 19:45:57 +02:00
Anton Evangelatov
5353210814
generate test-vectors based on tests from chain-validation project (#181)
* Read a subset of filecoin state over the full node API

* wip

* import export wip

* extract actors from message

* generate car for any state

* library for providing a pruned statetree

* test vector schema draft + example 'message' class test vector.

* message => messages test vector class.

* fixup

* wip

* use lb.NewBlockstore with ID

* fixup lotus-soup, and generate

* fix deals

* magic params

* work on schema / export of test vector

* fixup

* wip deserialise state tree

* pass at building a test case from a message

* progress loading / serializing

* recreation of ipld nodes

* generation of vector creates json

* kick off tvx tool.

* wip

* wip

* retain init actor state.

* initial test with printed out state

* remove testing.T, but keep require and assert libraries

* wip refactor state tree plucking.

* simplified

* removed factories

* remove builder.Build ; remove interface - use concrete iface

* comment out validateState

* remove Validator

* remove TestDriverBuilder

* remove client

* remove box

* remove gen

* remove factories

* remove KeyManager interfafce

* moved stuff around

* remove ValidationConfig

* extract randomness

* extract config and key_manager

* extract statewrapper

* extract applier

* rename factories to various

* flatten chain-validation package

* initial marshal of test vector

* do not require schema package

* fixup

* run all messages tests

* better names

* run all messages tests

* remove Indent setting from JSON encoder for now

* refactor, and actually running successfully ;-)

* remove irrelevant files; rename extract-msg command.

* remove root CID from state_tree object in schema.

* add tvx/lotus package; adjust .gitignore.

* tidy up command flag management.

* add comment.

* remove validateState and trackState

* remove xerrors

* remove NewVM

* remove commented out RootCID sets

* enable more tests

* add all `message_application` tests

* delete all.json

* update Message struct

* fix message serialization

* support multiple messages

* gofmt

* remove custom Message and SignedMessage types

* update tests with gzip and adhere to new schema for compressed CAR

* improved iface for Marshal

* update Validation

* remove test-suites and utils

* better names for chain. methods

* go mod tidy

* remove top-level dummyT

Co-authored-by: Will Scott <will@cypherpunk.email>
Co-authored-by: Raúl Kripalani <raul@protocol.ai>
2020-08-05 19:40:09 +02:00
Anton Evangelatov
17f0b4a2e1
support multiple messages /1 (#185)
* support multiple messages

* update corpus/schema.json

* fix required
2020-08-05 17:00:14 +02:00
Raúl Kripalani
163721651a
dedup state tree CARs from test vectors. (#187) 2020-08-05 15:52:57 +01:00
Raúl Kripalani
b7e3b4ff77
unified tvx tool; end-to-end MVP for extracting+running msg-class vectors (#177)
Co-authored-by: Will Scott <will@cypherpunk.email>
Co-authored-by: Anton Evangelatov <anton.evangelatov@gmail.com>
2020-08-05 13:20:13 +01:00
Anton Evangelatov
62a9982b76
fix lotus-soup deals baseline test (#172)
* fix lotus-soup deals baseline test

* remove comment

* go mod tidy
2020-07-30 16:22:43 +02:00
Anton Evangelatov
42ef5d3460
fix deps (#171) 2020-07-29 15:12:51 +02:00
Raúl Kripalani
700a121ccd
add workstream labels. (#161) 2020-07-27 19:05:28 +01:00
Raúl Kripalani
0dc490979f
readme: explain batch-run of randomized test cases. (#159) 2020-07-27 15:36:23 +01:00
Yusef Napora
0d0fc2d433
randomized network params & batch runner (#142)
Co-authored-by: Anton Evangelatov <anton.evangelatov@gmail.com>
Co-authored-by: Raúl Kripalani <raul@protocol.ai>
2020-07-27 14:58:27 +01:00
Anton Evangelatov
7af5ab5445
slashing/termination from failed windowed post + fast retrieval benchmarks (#95) 2020-07-27 13:57:01 +02:00
Anton Evangelatov
510f6bb830
upgrading to current version of next (#156) 2020-07-21 13:39:36 +02:00
Anton Evangelatov
e0e4432703
upgrade to next and retrieval signature (#151)
* upgrade to next and retrieval signature

* upgrade buildbase image and bump up lotus version

* update extra/filecoin-ffi

* note on dependencies

* set expected seal delay
2020-07-17 14:28:52 +02:00
Lucas Molas
48a2161306
readme: update submodule command (#141) 2020-07-10 14:22:56 +02:00
Anton Evangelatov
2c3d473193
descriptive composition file names (#133) 2020-07-10 13:48:52 +02:00
Anton Evangelatov
a50cdda7a5
improved readme - lotus-soup (#136) 2020-07-09 19:09:32 +02:00
Anton Evangelatov
58558f2e1d
one more zero (#139) 2020-07-09 18:42:49 +02:00
Anton Evangelatov
36c722731b
fix balance (#138) 2020-07-09 18:31:57 +02:00
Anton Evangelatov
1cf77d2172
baseline composition 5 clients 1 miner local:docker (#137) 2020-07-09 18:25:41 +02:00
Anton Evangelatov
5d40607cf9
move compositions to _compositions (#132) 2020-07-09 16:42:22 +02:00
Anton Evangelatov
4caecf34ae
print auth token ; set seal delay ; disable permissioned api proxies ; bump balances (#122)
* print auth token ; set seal delay

* disable permissioned proxy /2 (#123)

* bump up balances (#124)

* upgrade go.mod to use latest lotus next

* make compiler happy due to change in APIs

* fix k8s compositions to use natural time mining

* add note for balances
2020-07-09 15:57:18 +02:00
Anton Evangelatov
f20b25a123
improve readme with instructions on how to run test cases (#129)
Co-authored-by: Raúl Kripalani <raul@protocol.ai>
2020-07-09 14:41:27 +01:00
Yusef Napora
f19148d765
Merge pull request #114 from filecoin-project/attofil
Attofil
2020-07-08 11:20:42 -04:00
Anton Evangelatov
6e45d6b68d
Merge pull request #117 from filecoin-project/consistent-compositions
consistent compositions
2020-07-08 17:15:21 +02:00
Raúl Kripalani
3e06729877
readme: add links to testing topics labels. 2020-07-08 15:59:29 +01:00
Raúl Kripalani
b6994b9615
add hint/needs-scoring label. 2020-07-08 15:28:37 +01:00
Yusef Napora
4227f2d9dc rename attoFil -> filToAttoFil 2020-07-08 10:25:50 -04:00
Raúl Kripalani
3dbea4b0b7
Update test-scenario-request.md 2020-07-08 15:05:21 +01:00
Raúl Kripalani
31af5419a2
Delete system-process.md 2020-07-08 15:05:01 +01:00
Raúl Kripalani
0efcf1b622
add topic/deals label. 2020-07-08 14:05:36 +01:00
Anton Evangelatov
a1166d6fdb consistent compositions 2020-07-08 14:50:07 +02:00
Raúl Kripalani
ac5fc72347 add some of @raulk's notes. 2020-07-08 13:29:39 +01:00
Raúl Kripalani
97a17bd587 fix labels. 2020-07-08 13:01:30 +01:00