Commit Graph
69 Commits
Author SHA1 Message Date
Mikayla MakiandMax 2c5e83bf72 Fixed a bug where buffer saved clocks would desynchronize in rare execution paths
co-authored-by: Max <max@zed.dev>
2023-06-07 16:10:45 -07:00
Mikayla Maki 34e134fafb Fix several randomized test failures with the new git status implementation 2023-06-07 14:10:17 -07:00
Mikayla Makiandmax a2d58068a7 Improve test generation and implement status propogation
co-authored-by: max <max@zed.dev>
2023-06-05 17:30:12 -07:00
Mikayla Makiandmax 2f97c7a4f1 Remove stale comments
Implement status bubbling query with sum tree traversals

co-authored-by: max <max@zed.dev>
2023-06-02 16:41:01 -07:00
Max Brunsfeld 67a25126d4 Define theme/ui text style settings in theme crate 2023-05-17 14:44:59 -07:00
Max Brunsfeld 89204e85c0 Merge branch 'main' into setting-store 2023-05-17 09:55:24 -07:00
Mikayla Maki adfbbf21b2 fmt 2023-05-10 20:09:37 -07:00
Mikayla Maki fca3bb3b93 Add randomized test for git statuses 2023-05-10 19:21:27 -07:00
Max Brunsfeld cee7edabf9 Ensure the SettingsStore global is added in tests 2023-05-10 16:39:59 -07:00
Kirill Bulatov 915154b047 Add initial include/exclude project search UI 2023-05-10 11:11:31 +03:00
Mikayla Maki 1a9afd186b Restore randomized integration tests 2023-05-08 14:33:59 -07:00
Mikayla Maki 62e763d0d3 Removed test modifications, added special case to git initialization for when the repository is inside a .git folder 2023-05-08 14:33:59 -07:00
Mikayla Maki 2c2076bd77 Adjust tests to not create repositories inside repositories 2023-05-08 14:33:59 -07:00
b6d6f5c650 WIP: re-arranging the RepositoryEntry representation
Added branches to the randomized test to check the git branch
Added the remaining database integrations in collab

Co-authored-by: Max <max@zed.dev>
Co-authored-by: Petros <petros@zed.dev>
2023-05-08 14:33:59 -07:00
Max Brunsfeld abfbba68f0 Improve randomized test assertion message when diff base is wrong 2023-04-10 18:28:34 -07:00
Antonio Scandurra 3a82c04248 Improve assertion message when buffer state diverges 2023-04-10 10:01:44 +02:00
Max BrunsfeldandAntonio Scandurra f519f32ec2 Fixed removal of closed projects in randomized test
Co-authored-by: Antonio Scandurra <antonio@zed.dev>
2023-04-07 12:24:59 -07:00
Max BrunsfeldandAntonio Scandurra 22a6a243bc Move project assertions into main assertion function
Co-authored-by: Antonio Scandurra <antonio@zed.dev>
2023-04-06 11:38:42 -07:00
Antonio Scandurra 4a61e2dfa4 Save server operations that were in the middle of being applied
Previously, if the test panicked before it had a chance to fully
apply an operation, it would end up not being saved in the plan.
With this commit we will mark the operation as applied before we
start processing it, and mark it as not applied if, once we're done,
we've found out that it couldn't be applied. This is consistent with
what we do for client operations.
2023-04-06 16:02:16 +02:00
Max Brunsfeld bf3b8adf35 Avoid async fs call before checking if operation is applicable
This way, the executor isn't influenced by operations that aren't applicable.
2023-04-05 18:11:33 -07:00
Max Brunsfeld 1064b14779 Don't use TestPlan's rng in fake LSP handlers
These should use the test context's rng, so that they behave the same whether
a pre-recorded plan was used, or the plan is being generated.
2023-04-05 17:50:04 -07:00
Max Brunsfeld 8e68c7f808 Do include operations in serialized test plan if they cause a client to hang 2023-04-05 16:52:39 -07:00
Max Brunsfeld 661fba8640 Run executor until parked at end of each iteration of random collaboration test
Without this, the server doesn't get dropped at the end of the test, and we eventually run
out of file handles due to sqlite connections being retained.
2023-04-05 15:05:32 -07:00
Max Brunsfeld 781d66f628 Omit operations for non-existent users from serialized test plan 2023-04-05 15:04:27 -07:00
Max Brunsfeld b251e249a7 Check for consistency between clients every time the system quiesces 2023-04-03 19:11:37 -07:00
Max Brunsfeld 5ecc9606af Use synchronous locks in FakeFs
This way, the state can be accessed without running the deterministic
executor.
2023-04-03 18:15:07 -07:00
Max Brunsfeld f95732e981 Fix bug where guest would drop BufferSaved messages while opening the buffer 2023-04-03 16:23:44 -07:00
Max Brunsfeld 543301f949 Avoid repeatedly loading/saving the test plan for each iteration 2023-04-03 15:58:11 -07:00
Max Brunsfeld c960277349 Merge branch 'main' into randomized-tests-operation-script 2023-04-03 13:09:25 -07:00
Antonio ScandurraandMax Brunsfeld bca1acf6d3 Leave room on quit
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2023-03-13 17:52:10 +01:00
Max Brunsfeld 51cea1b1fb Merge branch 'main' into randomized-tests-operation-script 2023-02-20 10:39:00 -08:00
Max Brunsfeld 010eba509c Make Project::save_buffer and ::save_buffers into methods 2023-02-20 09:42:44 -08:00
Max Brunsfeld 3a7cfc3901 Move the save and save_as code paths close together 2023-02-17 17:21:48 -08:00
Antonio Scandurra 74aeec360d Cancel pending call when participant leaves room after a reconnection
Previously, if a user temporarily disconnected while there was a pending
call, we would fail to cancel such pending call when the caller left the
room. This was due to the caller reconnecting and having a different connection
id than the one originally used to initiate the call.
2023-01-26 16:44:55 +01:00
Max Brunsfeld 9c25d37dfc Merge branch 'main' into randomized-tests-operation-script
In randomized integration test, incorporate random updates of existing
files into the test's new structure.
2023-01-24 12:39:24 -08:00
Antonio Scandurra 8ca0f9ac99 Fix compile errors 2023-01-18 13:58:01 +01:00
Antonio Scandurra dc88a67f50 Fix assertions 2023-01-17 18:09:45 +01:00
Antonio Scandurra cc788dc5f7 Verify saved_version, saved_version_fingerprint and saved_mtime 2023-01-17 16:46:06 +01:00
Antonio Scandurra 2cd9db1cfe Ensure Buffer::{is_dirty,has_conflict} converge in randomized test 2023-01-17 16:32:51 +01:00
Max Brunsfeld 2c84b74126 Avoid retaining project in randomized test while LSP request is outstanding 2023-01-16 09:48:54 -08:00
Max Brunsfeld 1a9ff2420e Clean up how applications are marked as inapplicable 2023-01-12 22:09:36 -08:00
Max Brunsfeld e04d0be853 Remove unneeded log messages in randomized test 2023-01-12 14:30:53 -08:00
Max Brunsfeld 00e8625037 Simplify management of entity ids for different app contexts in randomized test 2023-01-12 14:30:10 -08:00
Max Brunsfeld a3c7416218 Don't include user ids with MutateClients ops in serialized test plans 2023-01-12 14:28:31 -08:00
Mikayla Makiandkay a3da41bfad Fix test failures due to dependency on Settings global in client for telemetry
co-authored-by: kay <kay@zed.dev>
2023-01-10 16:39:03 -08:00
Max Brunsfeld 576a9bb92c Drop project's buffers when closing a remote project 2023-01-09 14:49:36 -08:00
Max Brunsfeld 5a4fa4b11e Merge branch 'main' into randomized-tests-operation-script 2023-01-09 12:26:11 -08:00
Max Brunsfeld 3e3a703b60 Skip inapplicable operations when running an edited test plan 2023-01-09 11:36:53 -08:00
Antonio Scandurra 529ccbda3a Introduce git index mutations to randomized collaboration test
The test now fails at the following seed:

```bash
SEED=850 ITERATIONS=1 OPERATIONS=131 cargo test --package=collab random
```
2023-01-08 08:52:16 -07:00
Max Brunsfeld c503ba00b6 Add env vars to store and load test plan from JSON files 2023-01-06 17:51:25 -08:00