Commit Graph

841 Commits

Author SHA1 Message Date
David Dworken
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
David Dworken
efe2ccc817 Remove outdated TODO 2023-12-20 22:23:40 -08:00
David Dworken
bda76d04d1 Add tab completion tests for fish 2023-12-20 22:23:40 -08:00
David Dworken
d8ef46367c Add tests for tab completions 2023-12-20 22:23:40 -08:00
David Dworken
a2d8a1065b
Add TestLog call to help debug mysterious timeouts for certain fuzz tests 2023-12-20 16:25:41 -08:00
David Dworken
81733cd25c
Add additional assertions to make the checks stronger 2023-12-20 14:58:10 -08:00
David Dworken
b98b8cca52 Update test golden name to remove reference to BetaMode 2023-12-20 14:56:09 -08:00
David Dworken
8f8f4449bf Simplify tests for removing duplicate rows to avoid flaky failure caused by extra newline 2023-12-20 14:56:09 -08:00
David Dworken
5e415469d8 Remove extra scrolled color test since the color rendering seems flaky 2023-12-20 14:56:09 -08:00
David Dworken
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
David Dworken
3c33513fa3 Improve logic for padding for highlighting search queries to fix off-by-one error that happens when there are no matches 2023-12-20 14:56:09 -08:00
David Dworken
9070b85f36 Revert "Revert "Enable highlighting of search matches by default for new installs (see #112)" because it breaks some tests"
This reverts commit a453a858b6.
2023-12-20 14:56:09 -08:00
David Dworken
f4ee4e7175
Make linux labeling more precise for AI completions 2023-12-19 20:54:56 -08:00
David Dworken
bf1bae4ff2 Add TODO 2023-12-19 20:50:29 -08:00
David Dworken
8fd809fdc8 Improve AI suggestions by specifying shell name and OS in OpenAI query 2023-12-19 20:50:29 -08:00
David Dworken
d3baf03dde Add TODO 2023-12-19 19:12:04 -08:00
David Dworken
054744248c Enable hishtory shell completions by default 2023-12-19 19:12:04 -08:00
David Dworken
8082bd5a2d Add support for single quotes in search queries, and add a heuristic to avoid consuming unclosed quotes 2023-12-19 19:09:21 -08:00
David Dworken
60f5a222c0
Add config-remove as an alias for config-delete 2023-12-19 15:03:55 -08:00
David Dworken
c735fee3d5
Add aliases for plural config options in case people type the singular version 2023-12-19 09:34:12 -08:00
David Dworken
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
David Dworken
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
David Dworken
1be8e2cb47
Add some extra assertions to test various config-get commands 2023-12-11 20:49:28 -08:00
David Dworken
559fac57f9
Fix bug that made config-get timestamp-format require an argument 2023-12-11 20:44:18 -08:00
David Dworken
7272ca8448
Delete data from backend when uninstalling, fixes #132 (#143) 2023-12-10 09:15:11 -08:00
David Dworken
3a49c9c11f
Make hishtory work with set -o nounset for bash and zsh, for #142 (#144) 2023-12-10 09:14:12 -08:00
David Dworken
2d2c393bf9
Fix TUI code that tracked whether a search query is pending so it doesn't show the pending message when no query is pending 2023-12-09 15:51:04 -08:00
David Dworken
49daaa4da5
Update tests after #139 2023-12-06 20:46:19 -08:00
David Dworken
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
David Dworken
3d6578c7f6
Add TODO for testing for #139 2023-12-05 21:44:39 -08:00
Ben
c8643d5a2b
Filter duplicates with map (#139)
The previous method of filtering duplicates only worked on duplicates that occurred consecutively. Since dupes happen out of order often, this switches the logic to instead use a map of seen commands and filter based on that.
2023-12-05 21:43:01 -08:00
David Dworken
8b83e2bbb5
Improve vertical sizing for small terminals, fixes #137 (#138)
* Improve vertical sizing for small terminals, fixes #137

* Add tests for tiny terminals + update test goldens for tiny terminals after compact sizing
2023-12-03 21:56:45 -08:00
David Dworken
bdaf0f8a65
Make TUI always take exactly the full width of the terminal through more precise calculations of the overhead used for the table (#136)
* Make TUI always take exactly the full width of the terminal through more precise calculations of the overhead used for the table

* Update TUI goldens for more accurate TUI sizing

* More golden updates for wider table sizing

* Include failed test goldens as artifacts for easier test fixing on github actions
2023-12-03 13:15:38 -08:00
David Dworken
6dc366fe47 Add test for presaving while offline 2023-11-24 16:46:22 -08:00
David Dworken
18ef74656c Add presaving test for fish 2023-11-24 16:46:22 -08:00
David Dworken
caac6ac9ee Add test for disabling presaving 2023-11-24 16:46:22 -08:00
David Dworken
09d0ddd587 Add TODO 2023-11-24 16:46:22 -08:00
David Dworken
a667585962 Fix incorrect reference when handling config updates 2023-11-24 16:46:22 -08:00
David Dworken
b86d6c2ef1 Remove debugging print in test 2023-11-24 16:46:22 -08:00
David Dworken
7bb2945901 Swap back to using the strict version for capturing tmux 2023-11-24 16:46:22 -08:00
David Dworken
fb96852b2d Another attempt at fixing broken tests with presaving 2023-11-24 16:46:22 -08:00
David Dworken
6483e9817e Another attempt at fixing testControlR/bash with presaving 2023-11-24 16:46:22 -08:00
David Dworken
1668231992 Remove incorrect new line in golden file 2023-11-24 16:46:22 -08:00
David Dworken
570ae3e8ac Add additional check against hishtory export to help debug control-r test failures that only reproduce in github actions 2023-11-24 16:46:22 -08:00
David Dworken
428db61064 More test fixes for presaving 2023-11-24 16:46:22 -08:00
David Dworken
db685c6d70 More test fixes for presaving 2023-11-24 16:46:22 -08:00
David Dworken
b2de9e1b18 Fix more tests 2023-11-24 16:46:22 -08:00
David Dworken
1f6ba1e5fe Fix more tests for presaving 2023-11-24 16:46:22 -08:00
David Dworken
3f1d5c9cd0 Improve debug log message to include more relevant information 2023-11-24 16:46:22 -08:00
David Dworken
40caf8dac7 More test fixes 2023-11-24 16:46:22 -08:00
David Dworken
be1cd75550 More text fixes 2023-11-24 16:46:22 -08:00
David Dworken
471f26ace5 More test fixes 2023-11-24 16:46:22 -08:00
David Dworken
d712a6fdc5 More test fixes 2023-11-24 16:46:22 -08:00
David Dworken
1ab8f54167 More test fixes 2023-11-24 16:46:22 -08:00
David Dworken
96799452d8 Fix/simplify more tests for enabling presaving by default 2023-11-24 16:46:22 -08:00
David Dworken
8f0c56e384 Update a bunch of tests to reflect presaving which means that the hishtory command that is being tested will show up as a hishtory entry 2023-11-24 16:46:22 -08:00
David Dworken
b1733b0325 Update a bunch of tests to reflect presaving which means that the hishtory command that is being tested will show up as a hishtory entry 2023-11-24 16:46:22 -08:00
David Dworken
b3e145d764 Enable presaving by default rather than having it gated behind BetaMode 2023-11-24 16:46:22 -08:00
David Dworken
4f7cef19c9
Add more debugging info when status -v shows the device is offline 2023-11-24 16:09:16 -08:00
David Dworken
a1d1c779d5
Mark all github action tests as integration test devices 2023-11-23 09:53:12 -08:00
David Dworken
3a98b10e47
Add comment 2023-11-22 20:48:23 -08:00
David Dworken
30b5478104
Add additional error checking that should never trigger 2023-11-22 20:45:38 -08:00
David Dworken
4d2b02e2c3
Add error checking when clearing the DB during the init process 2023-11-22 20:45:18 -08:00
David Dworken
af8ace69dd Add loading spinner for slow searches, primarily to benefit AI queries since they are quite slow 2023-11-21 05:53:10 +01:00
David Dworken
05088d4bed Add comment to explain some confusing logic that we do have to keep 2023-11-19 09:41:05 +01:00
David Dworken
5bf734606f Swap to using hishtory getTimestamp to get the precise timestamp since this gives us a precise timestamp even on MacOS 2023-11-19 09:41:05 +01:00
David Dworken
d8b83b9429
Add getTimestamp command as an internal command that will be used as an alternative to date since date on MacOS doesn't support nanosecond granularity 2023-11-18 12:01:40 -08:00
David Dworken
a453a858b6
Revert "Enable highlighting of search matches by default for new installs (see #112)" because it breaks some tests
This reverts commit 6c24ddfd46.
2023-11-12 09:14:57 -08:00
David Dworken
c52dbebb1b
Consolidate TODOs 2023-11-12 05:04:55 -08:00
David Dworken
6c24ddfd46
Enable highlighting of search matches by default for new installs (see #112) 2023-11-12 05:00:47 -08:00
David Dworken
0be6fe9724
Swap AI completions to be behind a dedicated config option and add docs on it 2023-11-12 03:09:56 -08:00
David Dworken
aeadaf4e0d Set OPENAI_API_KEY for testTui/ai so that it runs with the hishtory server rather than via directly querying OpenAI 2023-11-12 02:57:23 -08:00
David Dworken
dd6cf710c7 Remove outdated TODO 2023-11-12 02:57:23 -08:00
David Dworken
a8f47cf340 Fix testTui/ai test and add golden file for it 2023-11-12 02:57:23 -08:00
David Dworken
e712d77f62 Add more guarding against panics when doing indexing into split strings 2023-11-12 02:57:23 -08:00
David Dworken
37e0e6653d Remove unnecessary field 2023-11-12 02:57:23 -08:00
David Dworken
c4b60eb6b2 Clean up tests to make panics not happen for TUI test failures by moving repeated code line to a function at also adds a require 2023-11-12 02:57:23 -08:00
David Dworken
3df099c945 Fix AI test by quoting the sent keys to ensure zsh doesn't complain about the question mark 2023-11-12 02:57:23 -08:00
David Dworken
a184bd4243 Remove question mark to debug the AI test 2023-11-12 02:57:23 -08:00
David Dworken
6962233e1e Better log messages and error messages 2023-11-12 02:57:23 -08:00
David Dworken
afe1a38a0e Fix 2d63263b79 by applying the override on the backend rather than in the client-side variable that isn't actually being referenced 2023-11-12 02:57:23 -08:00
David Dworken
b0f3107da2 Add basic test for AI queries 2023-11-12 02:57:23 -08:00
David Dworken
0ea3ce2399 Add basic debouncing for AI integration + implement AI suggestions via hishtory API endpoint 2023-11-12 02:57:23 -08:00
David Dworken
eb835fe52c Add initial version of AI searching, but with a broken implementation of debouncing 2023-11-12 02:57:23 -08:00
David Dworken
68142bf5fb
Fix #123: Fix bug with deleting custom columns and also generally improve logic for creating/removing custom columns 2023-11-12 02:05:51 -08:00
David Dworken
d69176fb5c
Update SLSA integration to always prompt the user before suspected broken updates 2023-11-11 11:26:39 -08:00
David Dworken
99d899254a
Fix %v that should have been a %w so that we can use errors.Is reliably 2023-11-11 11:24:16 -08:00
David Dworken
9ea10d2fcd Revert "Add t.Skip() call for broken test"
This reverts commit 63d0a8e457.
2023-11-10 10:20:59 -08:00
David Dworken
14d851a413 Revert "Revert "Remove t.Skip() call to determine if this test is actually flaky""
This reverts commit b013c51c80.
2023-11-10 10:20:06 -08:00
David Dworken
b013c51c80
Revert "Remove t.Skip() call to determine if this test is actually flaky"
This reverts commit cea481816f.
2023-11-09 23:04:17 -08:00
David Dworken
cea481816f
Remove t.Skip() call to determine if this test is actually flaky 2023-11-09 23:03:27 -08:00
David Dworken
2a47f1f600
Add TODO 2023-11-09 23:02:42 -08:00
David Dworken
63d0a8e457
Add t.Skip() call for broken test 2023-11-09 23:01:55 -08:00
David Dworken
1975f51052
Call m.Run() in TestMain so that lib tests actually get executed, and fix test breakages that existed because lib tests weren't running 2023-11-09 23:00:20 -08:00
David Dworken
165cdd9187
Update slsa integration to use the shared library for parsing version strings 2023-11-09 20:52:21 -08:00
David Dworken
19b9f67724
Fix bug with automatic cd-ing where quoting the directory caused tildes to not get expanded into the user's homedir 2023-11-06 21:39:01 -08:00
David Dworken
e1f69f8731
Add TODO 2023-11-06 18:44:28 -08:00
David Dworken
a180c850a9
Add extra require to ensure that the next line doesn't panic if the string isn't present, since that interferes with gotestsum 2023-11-06 18:44:14 -08:00
David Dworken
c918bcd3cb
Update slsa validation to not validate version when running in github actions, since the one in actions isn't associated with a released version 2023-11-05 01:15:54 -07:00
David Dworken
29142df382
Add additional check that checks that the version is valid per semver 2023-11-05 00:38:21 -07:00