455 Commits

Author SHA1 Message Date
Hayden Young
428ce83878
Refactor/ac (#61)
* refactor: Move Manifest to own module.

* refactor: Modularize orbitdb access controller.

* chore: Check for correct access controller path and modify if necessary.

* fix: Linting.

* refactor: AC interface no longer needed.

* refactor: Move IPFS-specific AC list back into IPFS AC.

* refactor: Explicitly name access controller param.

* refactor: Pass in manifest settings as object.

* refactor: Config access controllers.

* refactor: ACs should expose specific params before being called with generic params.

* feat: Pass write access to root IPFS AC.

* refactor: AC should handle type prefix.

* test: Test for type.

* refactor: Pass generic access to Database (and inheriting dbs).

* refactor: Use AccessControllers module to manage custom ACs.

* chore: Remove excess console logging.

* test: Fix ipfs module import.
2023-04-03 19:56:47 +08:00
Haad
a027525e5c
Merge pull request #57 from saul-jb/feat/path-refactor
feat: Remove dependence on path.
2023-03-29 18:20:11 +03:00
Haad
a5c14d5377
Fix log fetching parallelism (#60)
* Fix log traverse parallelism

* Rename pointerCount to referencesCount
2023-03-29 21:10:24 +08:00
saul
9c1af3deb8 Fix test descriptions. 2023-03-29 11:15:44 +13:00
saul
ce5e177813 Skip path join tests in environments where it is undefined. 2023-03-29 11:10:09 +13:00
saul
3335c8b698 Cleanup path join tests. 2023-03-29 10:47:38 +13:00
saul
ed28fb4136 Expand test with harder tests. 2023-03-29 10:37:10 +13:00
saul
d3162d898f Add path join tests. 2023-03-29 09:57:48 +13:00
Haad
fddcd0d775
Fix tests (#51)
* Fix error event test in Sync tests

* Fix race condition

* Debug timeouts

* More tests fixing

* Try running local webrtc-star-signalling server for tests

* Fix sync tests

* Skip Log references tests in the browser tests
2023-03-27 20:09:26 +08:00
Haad
4fe1b0c1a1
Add Entry index to Log (#48)
* Turn off IPFS console.log output for tests

* Fix replication and sync tests

* Close keystore after tests in IPFSAccessController tests

* Fix error event test in Sync tests

* Fix race condition

* Add entry index to Log

* Clean up storage files

* Fix tests

* Fix linter
2023-03-27 18:09:44 +08:00
Haad
893e34451d
Merge pull request #53 from saul-jb/feat/buffer-refactor
feat: remove dependence on buffer/safe-buffer
2023-03-27 07:05:42 +03:00
saul
1c16a7155c Replace ipfs package with ipfs-core. 2023-03-27 12:59:51 +13:00
saul
2845c138c5 Remove buffer usage from tests. 2023-03-27 11:48:30 +13:00
saul
b0483a1b60 Fix public key test. 2023-03-27 11:24:21 +13:00
Hayden Young
b9422463d0
chore: Check required params. (#46)
* chore: Check required params.

* fix: Linting.

* feat: Specify a list of peers with write access.

* test: Identify OrbitDB tests.

* test: IPFS access controller.

* test: Omit "OrbitDB" from test labels.

* test: Correctly set write options.

* fix: Linting.
2023-03-25 06:00:08 +08:00
Hayden Young
3ff24c298f
test: Connecting to multiple orbitdb instances and multiple databases… (#45)
* test: Connecting to multiple orbitdb instances and multiple databases. Replicating data across multiple dbs.

* test: Higher level orditdb test. Name is accordingly.

* test: Test multiple db stores.

* test: Delete test dirs.

* feat: buffer all records from iterator.

* fix: Linting.

* test: Re-enable all tests.

* test: Wait for replication to complete on all dbs.

* test: Rename storage test file.

* test: Remove unnecessary tests.

* test: Close dbs.

* test: Count all the connecting peers.
2023-03-25 02:35:19 +08:00
Hayden Young
2a563bac79
refactor: Return hash. (#44) 2023-03-18 02:53:52 +08:00
Hayden Young
1990cb9b87
Test/sync (#43)
* test: Re-enable skipped tests.

* test: Re-enable all tests.

* test: Wait for final entry when evaluating onSynced.

* test: Check if latest append is head to determine if sync has completed.

* test: Do not rely on order of sync-ed entries.

* docs: Sync-ing notes.

* docs: Simplify dial and pubsub explanation. Formatting.

* refactor: Check for required params.

* docs: Explain initial sync and pubsub updates.

* test: Save updated heads during sync.

* test: Remove extraneous expected entries.

* test: For eventual consistency.

* chore: Remove console.logs. Log errors using error event.

* chore: Remove extraneous asyncs.
2023-03-17 04:33:39 +08:00
Hayden Young
aabfd4e2bc
feat: Configurable heads and entry storage. (#42)
* feat: Configurable heads and entry storage.

* fix: Linting.

* test: Re-enable all tests.

* test: Custom entry storage.

* test: Check for heads paths.

* fix: Check for path using fs.
2023-03-14 05:42:05 +08:00
Hayden Young
a40bc8bdcf
Test/database (#38)
* test: Database.

* test: Remove caching test. Caching is superseded by the various storage options.

* test: db2 replicates data in existing db1.

* test: Move event tests to generic database tests.

* test: Single instance cleanup.

* fix: Linting.

* Fix Sync race condition (#39)

* test: Fix key path import.

---------

Co-authored-by: Haad <haadcode@users.noreply.github.com>
2023-03-11 21:01:05 +08:00
Haad
bc816c7e2e
Browser tests (#41)
* Get browsers tests running

* Clean up replication test

* Setup fixtures for browser tests

* Fix import paths for webpack

* Fix webpack

* Add mocha-headless-chrome to run browser tests

* Add webrtc swarm endpoints for browser test IPFS node configs

* Remove adding pubkey to storage in KeyStore

* Runs browser tests in CI

* Fix import paths again

* Fix failing browser tests

* Fixes
2023-03-11 18:56:23 +08:00
haad
d1e59a95b7 Make it possible to add custom database types 2023-03-10 11:32:07 +02:00
Haad
8e7dade867
Merge pull request #37 from orbitdb/test/address
Add a test for OrbitDBAddress
2023-03-09 12:04:35 +02:00
haad
503f3aba6f Add a test for OrbitDBAddress 2023-03-09 12:03:05 +02:00
haad
57de45bac6 Add tests for the Sync protocol 2023-03-09 11:55:20 +02:00
Haad
61276008ea
Merge pull request #35 from orbitdb/fix/manifest-meta-data
Fix passing in database manifest meta data
2023-03-09 10:15:10 +02:00
haad
6140c0dc07 Fix passing in database manifest meta data 2023-03-09 10:13:39 +02:00
haad
611fb35330 Fix tests for deleting a key-value pair 2023-03-09 09:57:32 +02:00
haad
e338f4039a Add tests for dropping databases 2023-03-09 09:32:11 +02:00
haad
3008529511 Fix linter 2023-03-09 09:12:14 +02:00
haad
bb6fa4ca1a Add 'amount' parameter to keyvalue iterator 2023-03-09 09:10:25 +02:00
haad
e951d2265d Add 'amount' parameter to documents iterator 2023-03-09 08:52:35 +02:00
haad
5a72a16e58 Test directory existence in persisted key-value store 2023-03-09 08:39:21 +02:00
haad
ec3f5cbfa0 Fix database address usage 2023-03-09 08:38:47 +02:00
haad
eff34dc204 Increase global maximum event listener limit for tests 2023-03-09 07:42:36 +02:00
Hayden Young
87a6f1dcf3 fix: Linting. 2023-03-07 20:41:13 +00:00
Hayden Young
383524918f test: Tests for newHeads issue. 2023-03-07 20:38:36 +00:00
Hayden Young
8fc5b77c51 test: Remove db replication. Covered by db/replication. 2023-03-07 15:58:16 +00:00
Hayden Young
be34376884 test: Remove redundant feed tests. 2023-03-07 15:57:36 +00:00
Hayden Young
796e84af10 test: Rename tests to better reflect what is being tested. 2023-03-07 11:42:07 +00:00
Hayden Young
93366f0b8c test: Remove redundant counter tests. 2023-03-07 01:41:41 +00:00
Hayden Young
528ce98186 test: Remove custom keystore. Merged with keystore tests. 2023-03-07 00:03:13 +00:00
Hayden Young
9b2dd487b8 fix: Linting. 2023-03-06 22:23:51 +00:00
Hayden Young
885fc5f02c test: Load keys into storage and retrieve from keystore. 2023-03-06 22:21:17 +00:00
Hayden Young
1fb02ea4cb refactor: Throw any storage errors when adding a key. 2023-03-06 17:56:38 +00:00
Hayden Young
53369de51c test: default and custom options. 2023-03-06 16:34:51 +00:00
Hayden Young
632bd3dfbe test: Test replication of keyvalue db. 2023-03-06 16:34:11 +00:00
Hayden Young
0347f3a7c2
test: Test cases for lamport clock and oplog sorting. (#28)
* test: Test cases for lamport clock and oplog sorting.

* fix: Linting.
2023-03-06 04:45:15 +08:00
haad
7c4187fdad Remove obsolete files and fixtures 2023-03-03 09:30:32 +02:00
haad
4c31514a1b Refactor names and functions in Sync 2023-03-03 09:05:10 +02:00