Commit Graph

468 Commits

Author SHA1 Message Date
b4f4da5fef Fix test broken by 7ae9f15b by making sure input is sent and processed as separate events and updating the golden to reflect this 2024-08-11 12:29:37 -07:00
dc627f09cd Fix test broken by 7ae9f15b by making sure input is sent and processed as separate events 2024-08-11 12:29:37 -07:00
1def962555 Fix test broken by 7ae9f15b by making sure input is sent and processed as separate events 2024-08-11 12:29:37 -07:00
60cbb1976c Fix double-syncing error where devices receive entries from themselves #202 (#204)
* Fix double-syncing error where devices receive entries from themselves

* Fix incorrect error message

* Add TODO

* Update TestESubmitThenQuery after making query more efficient

* Update TestDeletionRequests and remove unnecessary asserts

* Swap server_test.go to using require

* Fix incorrect require due to typo
2024-08-11 12:29:37 -07:00
e7b4395b16 Add --port flag for the web UI for #203 2024-08-11 12:29:37 -07:00
ca90ab65c9 Add index of start time so that queries with a LIMIT clause can avoid a full table scan (for #202) 2024-08-11 12:29:37 -07:00
5290f6dfb8 Add benchmarking for searching for #202 2024-08-11 12:29:37 -07:00
38ce0abd9a Revert "Add mouse scrolling support for #200" since it breaks the ability to highlight text
This reverts commit 7d9bb6654d.
2024-08-11 12:29:37 -07:00
6c1054351f Add mouse scrolling support for #200 2024-08-11 12:29:37 -07:00
3589e8cf49 Add support for forcing init without prompting via --force flag for #198 2024-08-11 12:29:37 -07:00
68b3311a07 Add test for horizontal scrolling other columns for #188 2024-08-11 12:29:37 -07:00
2b4be24789 Enable colored golden tests for linux (#184)
* Enable golden tests for linux and ensure all goldens get saved as outputs

* Swap in OS specific goldens

* Update colored goldens to take into account OS version, since different macos versions have different behavior here

* Update goldens

* Re-enable golden tests

* Add missing golden

* Empty commit

* Remove linux kernel version from OS name
2024-08-11 12:29:37 -07:00
c1729f1ee2 Add ability to configure custom OpenAI API endpoint for #186 (#194)
* Add ability to configure custom OpenAI API endpoint for #186

* Ensure the AiCompletionEndpoint field is always initialized
2024-08-11 12:29:37 -07:00
8f4aff30fe Add support for horizontal scrolling of all columns for #188 (#195) 2024-08-11 12:29:37 -07:00
5344b448c4 Disable colored output tests 2024-08-11 12:29:37 -07:00
e955e884ef Add basic readline-like support for using control-left and control-right to scroll horizontally by one word at a time 2024-08-11 12:29:36 -07:00
0a76c875e4 Add support for control-A and control-E shortcuts similar to GNU readline 2024-08-11 12:29:36 -07:00
972170573a Add ability to disable auth and force specific creds for the web UI 2024-08-11 12:29:36 -07:00
3b62e9d464 Add web UI for querying history from the browser (#180)
As requested in #176 and #147 

* Add initail version of a web UI for querying history from the browser

* Rename webui command

* Add basic test for the web UI

* Add README for the web UI

* Add basic auth for the web server

* Add status code when panic-ing
2024-08-11 12:29:36 -07:00
33bc582d8b Run integration tests in parallel to speed up testing (#175)
* Remove a few direct DB insertions to prepare for parallel tests

* Revert "Remove a few direct DB insertions to prepare for parallel tests"

This reverts commit f8a3552ad8.

* Add rudimentary experiment of splitting tests into two chunks to make them faster

* Add missing tag

* Remove code that enforces that all goldens are used, since it is incompatible with how tests are currently split into chunks

* Lay out the framework for checking goldens being used across all test runs

* Fix missing brace

* Revert "Remove code that enforces that all goldens are used, since it is incompatible with how tests are currently split into chunks"

This reverts commit 06cc3eedbc.

* Add initial work towards checking that all goldens are used

* Delete incorrect and unreferenced matrix

* Upgrade actions/upload-artifact to see if that makes the download in the next job work

* Alternatively, try downloading the artifact by name

* Update golden checker to read all the golden artifacts

* Swap to using glob to enumerate all golden files, rather than hardcoding them

* Remove debugging commands

* Remove goldens that are actually used

* Remove another golden that is actually used

* Add more comprehensive support for test sharding

* Fix references to test shards and increase shard count

* Shard the fuzz test

* Add debug prints

* Mark additional tests for sharding

* Fix logic error that broke test sharding

* Remove debug print

* Fix incorrect logic with skipping the fuzz test

* Move sharding functions to testutils and add some comments

* Upgrade all setup-go actions to enable caching of deps

* Remove goldens that don't exist

* Remove new line

* Reduce delay

* Correct stage name

* Remove incorrect skip code from the first version of sharding

* Remove unused import

* Reduce number of test shards to match GitHub's limit of 5 concurrent macos jobs

* Use cask for installing homebrew to speed up github actions

* More cleanup for unused goldens
2024-08-11 12:29:36 -07:00
ae5edb7d3e Improve install.py script to attempt to detect when /tmp/ is noexec (#172)
* Improve install.py script to attempt to detect when /tmp/ is noexec

* Add test to install from python script at HEAD

* Remove incorrect duplicated line

* Delete the tmp hishtory-client download since it may be dropped in CWD rather than /tmp/
2024-08-11 12:29:36 -07:00
7c07236dc0 Revert "Swap to using iterators for uploading to avoid storing all chunks in memory"
This reverts commit 632ecc5c81.
2024-02-04 22:19:11 -08:00
632ecc5c81 Swap to using iterators for uploading to avoid storing all chunks in memory 2024-02-04 21:03:39 -08:00
a3f1282368 Add ability to configure a default filter (for #76) (#161)
* Add ability to configure a default filter (for #76)

* Add test for color of default filter

* Add basic test for default filter

* Add goldens for tests

* Add more tests for default filters

* Update goldens

* Add another golden

* Update goldens

* Remove debug log

* Add golden to allowlist

* Update goldens
2024-01-07 21:06:22 -08:00
e86f7bf382 Add support for quotes around colons when searching (#162) 2024-01-07 18:56:30 -08:00
12f0aa1bff Add TODO 2024-01-02 11:07:24 -08:00
29ba7bc272 Invert condition so that a bunch of golden tests only run on actions, since that is now our primary testing environment (#159)
* Invert condition so that a bunch of golden tests only run on actions, since that is now our primary testing environment

* Update goldens to match them on GH actions

* Update goldens to split them based on OS so they can run on GH actions

* Add runtime.GOOS to golden names

* Update goldens that are now split by OS

* Update another test to fork on OS

* Update shell exclusion to properly exclude fish

* More golden updates

* Add more goldens

* More goldens
2023-12-29 07:31:56 -08:00
17b158d4b3 Swap to checking golden usage post-tests so that it covers all golden usages, and not just per-package 2023-12-22 08:04:10 -08:00
5c9fc929cc Add -v flag so that status contains the relevant info for these tests 2023-12-22 08:02:27 -08:00
4b058298b9 Add more precise assertions for installs from python scripts 2023-12-22 07:41:44 -08:00
abd7ee7fb2 Add test for installing via python script in offline mode 2023-12-22 06:33:09 -08:00
9f5453f710 Fix issue where we paniced because the colored TUI test goldens weren't used on linux 2023-12-21 18:31:29 -08:00
a58c426ad3 Improve test to make the golden clearer about what is being tested 2023-12-21 17:43:26 -08:00
88f1c0168e Move test goldens to testdata/ directory to be more idiomatic, and add assertion that they're all actively being used by the tests (#154)
* Move golden files to testdata dir

* Add assertion that requires that all goldens are used

* Add map init so the map is non-nil

* Add print to confirm that tests finished running

* Remove colon so that this doesn't match against gotestsum looking for the substring "panic:", which can happen depending on how stdout is buffer

* Revert "Remove colon so that this doesn't match against gotestsum looking for the substring "panic:", which can happen depending on how stdout is buffer"

This reverts commit b44e53a17b.
2023-12-21 17:06:46 -08:00
1edb6642a9 Disable tab completions for bash since they rely on the user having bash completions installed, which not everyone does 2023-12-20 22:23:40 -08:00
efe2ccc817 Remove outdated TODO 2023-12-20 22:23:40 -08:00
bda76d04d1 Add tab completion tests for fish 2023-12-20 22:23:40 -08:00
d8ef46367c Add tests for tab completions 2023-12-20 22:23:40 -08:00
81733cd25c Add additional assertions to make the checks stronger 2023-12-20 14:58:10 -08:00
b98b8cca52 Update test golden name to remove reference to BetaMode 2023-12-20 14:56:09 -08:00
8f8f4449bf Simplify tests for removing duplicate rows to avoid flaky failure caused by extra newline 2023-12-20 14:56:09 -08:00
5e415469d8 Remove extra scrolled color test since the color rendering seems flaky 2023-12-20 14:56:09 -08:00
4c89010874 Add extra colored assertion for removing duplicate rows to debug an interesting test failure for highlighting search matches 2023-12-20 14:56:09 -08:00
d3baf03dde Add TODO 2023-12-19 19:12:04 -08:00
8b7e54eab4 Add support for configuring the TUI color scheme, for #134 (#146)
* Add support for configuring the TUI color scheme, for #134

* Add tests for getting and setting the custom color scheme, and support full colors where terminals support them

* Add comments to document termenv.ANSI setting, and fix tests so they work uniformly
2023-12-18 20:32:11 -08:00
1b3fa944bd Add support for quoted searchs for exact matches, for #135 (#145)
* Add support for quoted searchs for exact matches, for #135

* Add support for quoting search queries

* Fix spliteEscaped so that it works with escaping dashes and colons in search queries
2023-12-12 22:20:49 -08:00
1be8e2cb47 Add some extra assertions to test various config-get commands 2023-12-11 20:49:28 -08:00
49daaa4da5 Update tests after #139 2023-12-06 20:46:19 -08:00
a26fc5b360 Add more special handling for extra tiny terminals (#140)
* Add more special handling for extra tiny terminals

* Add tests for extra compact terminals
2023-12-06 16:12:41 -08:00
3d6578c7f6 Add TODO for testing for #139 2023-12-05 21:44:39 -08:00