aboutsummaryrefslogtreecommitdiffstats
path: root/src/tests/integration (unfollow)
Commit message (Collapse)Author
2021-06-30chore(tests): move all integration tests to be either unit or e2e tests - ↵Aram Drevekenin
remove old testing infra (#589) * tests(integration): move basic integration tests to be unit tests * fix(tests): silently fail threadbus for tests * tests(unit): move compatibility tests to become unit tests for grid * tests(unit): move close_pane tests to become unit tests for grid * tests(e2e): move basic layout test to e2e * tests(unit): move move_focus tests to be unit tests * tests(unit): move resize_down tests to be unit tests * tests(unit): move resize_left tests to be unit tests * tests(unit): move resize_right tests to be unit tests * tests(unit): move resize_up tests to be unit tests * tests(infra): remove unused infra * style(fmt): make rustfmt happy * debug * debug * debug * debug * chore(test): shift volume mounting around because github actions is a special child
2021-06-16Change `layout` directory from `data` to `config`a-kenji
* default layouts won't be installed by anymore, instead they will be directly loaded * `layout-dir` is now a subdirectory of the `config-dir` by default, instead of the `data-dir` POSSIBLE BREAKING CHANGE: In case of having custom layouts in the previous `layout-dir` one can switch either the layouts to the new dir, or set the `layout-dir` to be the current `layout-dir` * it is possible to change the location of the `layout-dir`: - `zellij options --layout-dir [LAYOUR_DIR]` - `layout_dir: [LAYOUT_DIR]`
2021-06-14Move `layout.rs` from `server` to `utils`a-kenji
* give feedback on most errors in the layout-file
2021-06-03Fixed a build warning and renamed a struct fieldBrooks J Rady
2021-05-28fix(tests): Add SLEEP to top_and_quit testKunal Mohan
2021-05-27fix: use bounded queue between pty and screenKOVACS Tamas
Pty reads a command's output and feeds it to Screen using an unbounded queue. However, if the command produces output faster than what `Screen` can render, `Pty` still pushes it on the queue, causing it to grow indefinitely, resulting in high memory usage and latency. This patch fixes this by using a bounded queue between Pty and Screen, so if Screen can't keep up with Pty, the queue will fill up, exerting back pressure on Pty, making it read the command's output only as fast as Screen renders it. The unbounded queue is kept between Screen and producers other than Pty to avoid a deadlock such as this scenario: * pty thread filling up screen queue as soon as screen thread pops something from it * wasm thread is processing a Render instruction, blocking on the screen queue * screen thread is trying to render a plugin pane. It attempts to send a Render insturction to the blocked wasm thread running the plugin. This patch also adds a generous amount of sleeps to the integration tests as having backpressure changes the timing of how instructions are processed. Fixes #525.
2021-05-16fmt and clippyKunal Mohan
2021-05-16Big refactor: separate crates for client, server and utilitiesKunal Mohan
2021-05-16Split Layout Flaga-kenji
* Split Layout Flag into `layout` that searches in default layout directories and `layout-path` that takes a path to a layout file Close #506.
2021-05-15Do not pass config_options while spawning server processKunal Mohan
2021-05-15fix testingKunal Mohan
2021-05-12Fix Simplified Uia-kenji
Propagate the config now, in all the places, as opposed to fallback to a default.
2021-05-12fix(ui): handle pasted text properly (#494)Aram Drevekenin
* fix(ui): handle pasted text properly * style(fmt): rustfmt
2021-05-09New behavior for h and lDante Pippi
New behavior for h and l, will change tabs if there are no available panes in the direction. cargo clippy Ensuring atomicity for the MoveFocusOrTab - Blocking the input thread for the action MoveFocusOrTab - Using "unreachable" macro in match arm to make it clear that the directions Up and Down should not be used with the action MoveFocusOrTab Adding tests
2021-05-07fix(compatibility): upgrade vte to support csi subparameters (#469)Aram Drevekenin
* fix(compatibility): upgrade vte to support csi subparameters * style(fmt): rustfmt and clippy
2021-05-04Fix after rebaseKunal Mohan
2021-05-04Fix after rebaseKunal Mohan
2021-05-04fix fmt errorsKunal Mohan
2021-05-04Fix after rebaseKunal Mohan
2021-05-04fix testsKunal Mohan
2021-05-02Load config before start()Yutaka Kamei
Previously, a config file was loaded within `start()`, and if the config file is invalid, Zellij was supposed to show a user what's wrong with it. However, since `start()` starts setting up its terminal with an alternative screen buffer, neither standard output nor standard error could display such an error. This change intends to address this issue by making Zellij load a config file before `start()`. In addition, the patch also includes some refactorings: * Redefine `from_cli_config` with `TryFrom`, which was introduced in Rust 1.34 * Remove conditional declaration `cfg(not(test))` because `start()` now receive a `Config` as the third argument * Introduce [`tempfile`](https://crates.io/crates/tempfile) in order to run tests with actual files * Typo?: "Deserialisation" -> "Deserialization"
2021-04-22Fixing snapshotsDante Pippi
2021-04-22Changing tests to test the new behaviorDante Pippi
Previous behavior was to go to the largest overlap. Now it should go to the most recently used pane. Used cargo insta review to update the snapshots.
2021-04-22fix(ui): draw ui properly on terminal start (#323)Aram Drevekenin
* fix(ui): draw ui properly on terminal start * style(fmt): rustfmt
2021-04-21fix(ui): do not open new pane on the status bar (#314)Aram Drevekenin
2021-04-21cargo fmtHongjie Zhai
2021-04-21add testsHongjie Zhai
2021-04-14fix(bug): remove buggy expansion boundariesBrooks J Rady
2021-04-01* fix(ui): react to terminal window size changes (SIGWINCH) (#245)Aram Drevekenin
* fix(ui): react to terminal window size changes (SIGWINCH) * style(fmt): rustfmt * style(format): remove some warnings * style(fmt): rustfmt
2021-03-16Performance: only render panes that should be updated (#234)Aram Drevekenin
* fix(performance): bring back should_render * style(fmt): rustfmt
2021-03-11feat(input): new shortcuts and ui (#220)Aram Drevekenin
* feat(statusbar): new shortcuts * feat(input): new shortcuts and ui * style(fmt): rustfmt
2021-02-24Make fullscreen panes not override the status bar and strider (#209)Aram Drevekenin
* work * feat(tab): expansion boundary * fix(layout): add expansion boundary to default layout * style(fmt): rustfmt * style(fmt): remove unnecessary comment
2021-02-18fix(compatibility): do not forward tabs to the terminal (#190)Aram Drevekenin
* fix(compatibility): do not forward tabs to the terminal * style(fmt): rustfmt
2021-02-17fix(compatibility): get top not to break everything when exiting (#188)Aram Drevekenin
2021-02-16Fix a thorn in my sideBrooks J Rady
2021-02-12feat(input): new keybindings and persistent mode as default (#181)categorille
* added some comments in the input module * InputHandler now has InputState instead of separate InputMode and permanent bool * keybinds are now associated with a Vec<Action> instead of a single Action * removing "persistent" modes alltogether to reimplement the feature, help bar broken * locked command mode by default, fixes #161, help bar still broken * status bar fixed, still a few improvements/bugs to go * better shortcut help bar contents * fixed last bits and i think we are good * modified tests according to new controls, not working * Revert "modified tests according to new controls, not working" This reverts commit f2d9421ff0169feb83dbd9b246e59b9244cafc16. * basic.rs tests now pass, not the rest * close_pane.rs tests pass, but very slowly? * compatibility.rs tests pass, very slowly as well * {layout, {move_focus_*}}.rs all working mildly slowly * {resize_*}.rs should all work but very slowly and funky, see PR comments * {tabs,toggle_fullscreen}.rs pass. Test performance issue yet to be fixed * tests now work, with a hack :| ready for merge * rustfmt + deleted references to InputState and mode persistency
2021-02-10And from Goodbye messagehenil
2021-02-10Update references in `src/`henil
2021-02-09Fix testsBrooks J Rady
2021-02-09Well, it turns out that I spent 4 hours on something impossible...Brooks J Rady
2021-02-09Push the mosaic folder down a directoryBrooks J Rady
2021-02-09feat(ui): new keybindings and status bar (#160)Aram Drevekenin
* work * feat(statusbar): new design and keybindings * fix(ipc): add missing const * style(fmt): rustfmt * style(input): remove accidental comment
2021-02-05refactor(input): hotkeys (#132)Kyle Sutherland-Cash
* Initial definitions and thoughts for hotkeys * Actually document InputKey properly * Add a to string function for input keys * Define keybinds and actions; restructure * Implement hash and start on defining key bindings * Derive Serialize for input keys * Store the key strings as tuples for two-way mapping * Some string to key functions * Use termion's Key definition and implement action dispatch * Fix some borrow-checker errors * Missing keybind and command mode switching * Fix incorrect handling of spawn terminal command * fix(plugins): work with new input - tests not passing * fix(infra): stabilize tests and properly close pty sessions * style(fmt): rustfmt Co-authored-by: Brooks J Rady <b.j.rady@gmail.com> Co-authored-by: Aram Drevekenin <aram@poor.dev>
2021-01-28Min max height and width (#155)Aram Drevekenin
* feat(tab): min/max pane height * style(fmt): rustfmt
2021-01-26more integration tests poping up....henil
2021-01-26update integration testshenil
2021-01-11refactor(terminal-pane): simplify Scroll into Grid (#137)Aram Drevekenin
* refactor(grid): move from scroll to grid (prototype with tests passing) * refactor(grid): remove scrollbuffer * fix(terminal): do not overflow cursor y position when resizing * refactor(file-structure): move grid to different file * fix(compatibility): vim horizontal resize * fix(compatibility): various fixes for cursor movement * style(grid): remove unused imports * style(grid): remove debugging * style(fmt): rustfmt * style(fmt): rustfmt
2021-01-10Add support for layouts with parts of a fixed or unspecified sizeBrooks J Rady
2021-01-07feat(completions): Add shell completions files (#128)Henil Dedania
* Add shell completions and output files to `assets/completions` * Rename files and struct name * Update tests to take into account new changes
2021-01-06A module rename to please clippyBrooks J Rady