Update the regex in runner.go to use string concatenation for better readability. Add test output files as fixtures for test verification.
645 lines
28 KiB
Plaintext
645 lines
28 KiB
Plaintext
? gmgauthier.com/grokkit [no test files]
|
|
=== RUN TestAgentCommand_PlanGeneration
|
|
agent_test.go:8: Agent plan generation test placeholder — ready for expansion
|
|
--- PASS: TestAgentCommand_PlanGeneration (0.00s)
|
|
=== RUN TestAgentCommand_CleanCodeResponseIntegration
|
|
--- PASS: TestAgentCommand_CleanCodeResponseIntegration (0.00s)
|
|
=== RUN TestBuildChangelogMessages
|
|
=== PAUSE TestBuildChangelogMessages
|
|
=== RUN TestBuildFullChangelog
|
|
=== PAUSE TestBuildFullChangelog
|
|
=== RUN TestChangelogCmd_Flags
|
|
=== PAUSE TestChangelogCmd_Flags
|
|
=== RUN TestGetChatHistoryFile
|
|
--- PASS: TestGetChatHistoryFile (0.00s)
|
|
=== RUN TestLoadChatHistory_NoFile
|
|
--- PASS: TestLoadChatHistory_NoFile (0.00s)
|
|
=== RUN TestSaveAndLoadChatHistory
|
|
--- PASS: TestSaveAndLoadChatHistory (0.00s)
|
|
=== RUN TestLoadChatHistory_InvalidJSON
|
|
--- PASS: TestLoadChatHistory_InvalidJSON (0.00s)
|
|
=== RUN TestBuildCommitMessages
|
|
=== RUN TestBuildCommitMessages/normal_diff
|
|
=== RUN TestBuildCommitMessages/empty_diff
|
|
--- PASS: TestBuildCommitMessages (0.00s)
|
|
--- PASS: TestBuildCommitMessages/normal_diff (0.00s)
|
|
--- PASS: TestBuildCommitMessages/empty_diff (0.00s)
|
|
=== RUN TestCompletionCmd
|
|
=== RUN TestCompletionCmd/bash
|
|
=== RUN TestCompletionCmd/zsh
|
|
=== RUN TestCompletionCmd/fish
|
|
=== RUN TestCompletionCmd/powershell
|
|
--- PASS: TestCompletionCmd (0.00s)
|
|
--- PASS: TestCompletionCmd/bash (0.00s)
|
|
--- PASS: TestCompletionCmd/zsh (0.00s)
|
|
--- PASS: TestCompletionCmd/fish (0.00s)
|
|
--- PASS: TestCompletionCmd/powershell (0.00s)
|
|
=== RUN TestBuildDocsMessages
|
|
=== RUN TestBuildDocsMessages/Go
|
|
=== RUN TestBuildDocsMessages/Python
|
|
=== RUN TestBuildDocsMessages/C
|
|
=== RUN TestBuildDocsMessages/C++
|
|
=== RUN TestBuildDocsMessages/JavaScript
|
|
=== RUN TestBuildDocsMessages/TypeScript
|
|
=== RUN TestBuildDocsMessages/Rust
|
|
=== RUN TestBuildDocsMessages/Ruby
|
|
=== RUN TestBuildDocsMessages/Java
|
|
=== RUN TestBuildDocsMessages/Shell
|
|
--- PASS: TestBuildDocsMessages (0.00s)
|
|
--- PASS: TestBuildDocsMessages/Go (0.00s)
|
|
--- PASS: TestBuildDocsMessages/Python (0.00s)
|
|
--- PASS: TestBuildDocsMessages/C (0.00s)
|
|
--- PASS: TestBuildDocsMessages/C++ (0.00s)
|
|
--- PASS: TestBuildDocsMessages/JavaScript (0.00s)
|
|
--- PASS: TestBuildDocsMessages/TypeScript (0.00s)
|
|
--- PASS: TestBuildDocsMessages/Rust (0.00s)
|
|
--- PASS: TestBuildDocsMessages/Ruby (0.00s)
|
|
--- PASS: TestBuildDocsMessages/Java (0.00s)
|
|
--- PASS: TestBuildDocsMessages/Shell (0.00s)
|
|
=== RUN TestDocStyle
|
|
=== RUN TestDocStyle/go
|
|
=== RUN TestDocStyle/Go
|
|
=== RUN TestDocStyle/python
|
|
=== RUN TestDocStyle/c
|
|
=== RUN TestDocStyle/c++
|
|
=== RUN TestDocStyle/javascript
|
|
=== RUN TestDocStyle/typescript
|
|
=== RUN TestDocStyle/rust
|
|
=== RUN TestDocStyle/ruby
|
|
=== RUN TestDocStyle/java
|
|
=== RUN TestDocStyle/shell
|
|
=== RUN TestDocStyle/bash
|
|
=== RUN TestDocStyle/unknown
|
|
--- PASS: TestDocStyle (0.00s)
|
|
--- PASS: TestDocStyle/go (0.00s)
|
|
--- PASS: TestDocStyle/Go (0.00s)
|
|
--- PASS: TestDocStyle/python (0.00s)
|
|
--- PASS: TestDocStyle/c (0.00s)
|
|
--- PASS: TestDocStyle/c++ (0.00s)
|
|
--- PASS: TestDocStyle/javascript (0.00s)
|
|
--- PASS: TestDocStyle/typescript (0.00s)
|
|
--- PASS: TestDocStyle/rust (0.00s)
|
|
--- PASS: TestDocStyle/ruby (0.00s)
|
|
--- PASS: TestDocStyle/java (0.00s)
|
|
--- PASS: TestDocStyle/shell (0.00s)
|
|
--- PASS: TestDocStyle/bash (0.00s)
|
|
--- PASS: TestDocStyle/unknown (0.00s)
|
|
=== RUN TestRemoveLastModifiedComments
|
|
=== RUN TestRemoveLastModifiedComments/removes_last_modified_comment
|
|
=== RUN TestRemoveLastModifiedComments/removes_multiple_last_modified_comments
|
|
=== RUN TestRemoveLastModifiedComments/preserves_code_without_last_modified
|
|
=== RUN TestRemoveLastModifiedComments/handles_empty_string
|
|
=== RUN TestRemoveLastModifiedComments/preserves_other_comments
|
|
=== RUN TestRemoveLastModifiedComments/handles_line_with_only_last_modified
|
|
--- PASS: TestRemoveLastModifiedComments (0.00s)
|
|
--- PASS: TestRemoveLastModifiedComments/removes_last_modified_comment (0.00s)
|
|
--- PASS: TestRemoveLastModifiedComments/removes_multiple_last_modified_comments (0.00s)
|
|
--- PASS: TestRemoveLastModifiedComments/preserves_code_without_last_modified (0.00s)
|
|
--- PASS: TestRemoveLastModifiedComments/handles_empty_string (0.00s)
|
|
--- PASS: TestRemoveLastModifiedComments/preserves_other_comments (0.00s)
|
|
--- PASS: TestRemoveLastModifiedComments/handles_line_with_only_last_modified (0.00s)
|
|
=== RUN TestEditCommand
|
|
--- PASS: TestEditCommand (0.81s)
|
|
=== RUN TestBuildHistoryMessages
|
|
=== RUN TestBuildHistoryMessages/with_recent_commits
|
|
=== RUN TestBuildHistoryMessages/empty_log
|
|
--- PASS: TestBuildHistoryMessages (0.00s)
|
|
--- PASS: TestBuildHistoryMessages/with_recent_commits (0.00s)
|
|
--- PASS: TestBuildHistoryMessages/empty_log (0.00s)
|
|
=== RUN TestBuildLintFixMessages
|
|
=== RUN TestBuildLintFixMessages/go_file_with_issues
|
|
=== RUN TestBuildLintFixMessages/python_file_with_issues
|
|
--- PASS: TestBuildLintFixMessages (0.00s)
|
|
--- PASS: TestBuildLintFixMessages/go_file_with_issues (0.00s)
|
|
--- PASS: TestBuildLintFixMessages/python_file_with_issues (0.00s)
|
|
=== RUN TestBuildPRDescribeMessages
|
|
=== RUN TestBuildPRDescribeMessages/branch_with_changes
|
|
=== RUN TestBuildPRDescribeMessages/empty_diff
|
|
--- PASS: TestBuildPRDescribeMessages (0.00s)
|
|
--- PASS: TestBuildPRDescribeMessages/branch_with_changes (0.00s)
|
|
--- PASS: TestBuildPRDescribeMessages/empty_diff (0.00s)
|
|
=== RUN TestBuildReviewMessages
|
|
=== RUN TestBuildReviewMessages/with_status_and_diff
|
|
=== RUN TestBuildReviewMessages/empty_diff
|
|
--- PASS: TestBuildReviewMessages (0.00s)
|
|
--- PASS: TestBuildReviewMessages/with_status_and_diff (0.00s)
|
|
--- PASS: TestBuildReviewMessages/empty_diff (0.00s)
|
|
=== RUN TestExecute
|
|
=== RUN TestExecute/version
|
|
grokkit version dev (commit )\n=== RUN TestExecute/help
|
|
A fast, native Go CLI for Grok. Chat, edit files, and supercharge your git workflow.
|
|
|
|
Usage:
|
|
grokkit [command]
|
|
|
|
Available Commands:
|
|
agent Multi-file agent — Grok intelligently edits multiple files with preview
|
|
changelog Generate CHANGELOG.md section from git history for Gitea releases
|
|
chat Simple interactive CLI chat with Grok (full history + streaming)
|
|
commit Generate message and commit staged changes
|
|
commit-msg Generate conventional commit message from staged changes
|
|
completion Generate shell completion script
|
|
docs Generate documentation comments for source files
|
|
edit Edit a file in-place with Grok (safe preview)
|
|
help Help about any command
|
|
history Summarize recent git history
|
|
lint Lint a file and optionally apply AI-suggested fixes
|
|
pr-describe Generate full PR description from current branch
|
|
query One-shot non-interactive query to Grok (programming focused)
|
|
query One-shot non-interactive query to Grok (programming focused)
|
|
recipe Run a recipe (transactional sous-chef mode)
|
|
review Review the current repository or directory
|
|
scaffold Scaffold a new file with Grok (safe preview + confirmation)
|
|
testgen Generate AI unit tests for files (Go/Python/C/C++, preview/apply)
|
|
version Print the version information
|
|
|
|
Flags:
|
|
--debug Enable debug logging (logs to stderr and file)
|
|
-h, --help help for grokkit
|
|
-m, --model string Grok model to use (overrides config)
|
|
-v, --verbose Enable verbose logging
|
|
|
|
Use "grokkit [command] --help" for more information about a command.
|
|
=== RUN TestExecute/debug_flag
|
|
{"time":"2026-03-06T21:38:16.151535509Z","level":"INFO","msg":"grokkit starting","command":"version","log_level":"debug"}
|
|
grokkit version dev (commit )\n=== RUN TestExecute/verbose_flag
|
|
grokkit version dev (commit )\n--- PASS: TestExecute (0.00s)
|
|
--- PASS: TestExecute/version (0.00s)
|
|
--- PASS: TestExecute/help (0.00s)
|
|
--- PASS: TestExecute/debug_flag (0.00s)
|
|
--- PASS: TestExecute/verbose_flag (0.00s)
|
|
=== RUN TestRunHistory
|
|
=== RUN TestRunHistory/calls_AI_with_log_output
|
|
Summarizing recent commits...
|
|
=== RUN TestRunHistory/no_commits_—_skips_AI
|
|
No commits found.
|
|
=== RUN TestRunHistory/git_error_—_skips_AI
|
|
Failed to get git log: not a git repo
|
|
--- PASS: TestRunHistory (0.00s)
|
|
--- PASS: TestRunHistory/calls_AI_with_log_output (0.00s)
|
|
--- PASS: TestRunHistory/no_commits_—_skips_AI (0.00s)
|
|
--- PASS: TestRunHistory/git_error_—_skips_AI (0.00s)
|
|
=== RUN TestRunReview
|
|
=== RUN TestRunReview/reviews_with_diff_and_status
|
|
Grok is reviewing the repo...
|
|
=== RUN TestRunReview/git_diff_error_—_skips_AI
|
|
Failed to get git diff: git error
|
|
=== RUN TestRunReview/git_status_error_—_skips_AI
|
|
Failed to get git status: git error
|
|
--- PASS: TestRunReview (0.00s)
|
|
--- PASS: TestRunReview/reviews_with_diff_and_status (0.00s)
|
|
--- PASS: TestRunReview/git_diff_error_—_skips_AI (0.00s)
|
|
--- PASS: TestRunReview/git_status_error_—_skips_AI (0.00s)
|
|
=== RUN TestRunCommit
|
|
=== RUN TestRunCommit/no_staged_changes_—_skips_AI
|
|
No staged changes!
|
|
=== RUN TestRunCommit/git_error_—_skips_AI
|
|
Failed to get staged changes: not a git repo
|
|
=== RUN TestRunCommit/with_staged_changes_—_calls_AI_then_cancels_via_stdin
|
|
Generating commit message...
|
|
|
|
Proposed commit message:
|
|
feat(cmd): add thing
|
|
Commit with this message? (y/n):
|
|
Aborted.
|
|
--- PASS: TestRunCommit (0.00s)
|
|
--- PASS: TestRunCommit/no_staged_changes_—_skips_AI (0.00s)
|
|
--- PASS: TestRunCommit/git_error_—_skips_AI (0.00s)
|
|
--- PASS: TestRunCommit/with_staged_changes_—_calls_AI_then_cancels_via_stdin (0.00s)
|
|
=== RUN TestRunCommitMsg
|
|
=== RUN TestRunCommitMsg/no_staged_changes_—_skips_AI
|
|
No staged changes!
|
|
=== RUN TestRunCommitMsg/with_staged_changes_—_calls_AI_and_prints_message
|
|
Generating commit message...
|
|
--- PASS: TestRunCommitMsg (0.00s)
|
|
--- PASS: TestRunCommitMsg/no_staged_changes_—_skips_AI (0.00s)
|
|
--- PASS: TestRunCommitMsg/with_staged_changes_—_calls_AI_and_prints_message (0.00s)
|
|
=== RUN TestRunPRDescribe
|
|
=== RUN TestRunPRDescribe/no_changes_on_branch_—_skips_AI
|
|
No changes on this branch compared to master/origin/master.
|
|
=== RUN TestRunPRDescribe/first_diff_succeeds_—_calls_AI
|
|
Writing PR description...
|
|
=== RUN TestRunPRDescribe/first_diff_empty,_second_succeeds_—_calls_AI
|
|
Writing PR description...
|
|
=== RUN TestRunPRDescribe/uses_custom_base_branch
|
|
Writing PR description...
|
|
=== RUN TestRunPRDescribe/defaults_to_master
|
|
Writing PR description...
|
|
--- PASS: TestRunPRDescribe (0.00s)
|
|
--- PASS: TestRunPRDescribe/no_changes_on_branch_—_skips_AI (0.00s)
|
|
--- PASS: TestRunPRDescribe/first_diff_succeeds_—_calls_AI (0.00s)
|
|
--- PASS: TestRunPRDescribe/first_diff_empty,_second_succeeds_—_calls_AI (0.00s)
|
|
--- PASS: TestRunPRDescribe/uses_custom_base_branch (0.00s)
|
|
--- PASS: TestRunPRDescribe/defaults_to_master (0.00s)
|
|
=== RUN TestRunLintFileNotFound
|
|
❌ File not found: /nonexistent/path/file.go
|
|
--- PASS: TestRunLintFileNotFound (0.00s)
|
|
=== RUN TestProcessDocsFileNotFound
|
|
❌ File not found: /nonexistent/path/file.go
|
|
--- PASS: TestProcessDocsFileNotFound (0.00s)
|
|
=== RUN TestProcessDocsFileUnsupportedLanguage
|
|
⚠️ Skipping /tmp/test1921082152.xyz: unsupported file type: .xyz
|
|
--- PASS: TestProcessDocsFileUnsupportedLanguage (0.00s)
|
|
=== RUN TestProcessDocsFilePreviewAndCancel
|
|
📝 Generating Go docs for: /tmp/test1474473091.go
|
|
|
|
📋 Preview of documented code:
|
|
--------------------------------------------------------------------------------
|
|
package main
|
|
|
|
// Foo does nothing.
|
|
func Foo() {}
|
|
--------------------------------------------------------------------------------
|
|
|
|
Apply documentation to /tmp/test1474473091.go? (y/N):
|
|
❌ Cancelled. No changes made to: /tmp/test1474473091.go
|
|
--- PASS: TestProcessDocsFilePreviewAndCancel (0.00s)
|
|
=== RUN TestProcessDocsFileAutoApply
|
|
📝 Generating Go docs for: /tmp/test2612240936.go
|
|
|
|
📋 Preview of documented code:
|
|
--------------------------------------------------------------------------------
|
|
package main
|
|
|
|
// Bar does nothing.
|
|
func Bar() {}
|
|
--------------------------------------------------------------------------------
|
|
|
|
✅ Documentation applied: /tmp/test2612240936.go
|
|
--- PASS: TestProcessDocsFileAutoApply (0.00s)
|
|
=== RUN TestRunDocs
|
|
❌ File not found: /nonexistent/file.go
|
|
--- PASS: TestRunDocs (0.00s)
|
|
=== RUN TestScaffoldCmd
|
|
scaffold_test.go:15: ✓ Fast scaffold unit test (no Grok API call)
|
|
--- PASS: TestScaffoldCmd (0.00s)
|
|
=== RUN TestScaffoldCmd_Live
|
|
scaffold_test.go:22: skipping live Grok integration test. Run with:
|
|
go test ./cmd -run TestScaffoldCmd_Live -short -v
|
|
--- SKIP: TestScaffoldCmd_Live (0.00s)
|
|
=== RUN TestTestgenCmd
|
|
=== PAUSE TestTestgenCmd
|
|
=== RUN TestTestgenCmd_Live
|
|
testgen_test.go:17: skipping live Grok integration test. Run with:
|
|
go test ./cmd -run TestTestgenCmd_Live -short -v
|
|
--- SKIP: TestTestgenCmd_Live (0.00s)
|
|
=== RUN TestRemoveSourceComments
|
|
=== PAUSE TestRemoveSourceComments
|
|
=== RUN TestGetTestPrompt
|
|
=== PAUSE TestGetTestPrompt
|
|
=== RUN TestGetTestFilePath
|
|
=== PAUSE TestGetTestFilePath
|
|
=== RUN TestGetCodeLang
|
|
=== PAUSE TestGetCodeLang
|
|
=== CONT TestBuildChangelogMessages
|
|
=== CONT TestGetCodeLang
|
|
=== RUN TestGetCodeLang/Go
|
|
=== CONT TestGetTestFilePath
|
|
--- PASS: TestBuildChangelogMessages (0.00s)
|
|
=== RUN TestGetTestFilePath/foo.go_Go
|
|
=== CONT TestBuildFullChangelog
|
|
=== RUN TestBuildFullChangelog/creates_new_file_with_header
|
|
=== PAUSE TestBuildFullChangelog/creates_new_file_with_header
|
|
=== CONT TestGetTestPrompt
|
|
=== RUN TestBuildFullChangelog/prepends_to_existing_file
|
|
=== PAUSE TestBuildFullChangelog/prepends_to_existing_file
|
|
=== RUN TestGetTestPrompt/Go
|
|
=== CONT TestBuildFullChangelog/prepends_to_existing_file
|
|
=== CONT TestTestgenCmd
|
|
=== PAUSE TestGetTestPrompt/Go
|
|
=== CONT TestRemoveSourceComments
|
|
=== RUN TestRemoveSourceComments/no_comments
|
|
=== NAME TestTestgenCmd
|
|
testgen_test.go:12: ✓ Fast testgen unit test (no Grok API call)
|
|
=== PAUSE TestRemoveSourceComments/no_comments
|
|
=== PAUSE TestGetTestFilePath/foo.go_Go
|
|
=== RUN TestRemoveSourceComments/last_modified
|
|
--- PASS: TestTestgenCmd (0.00s)
|
|
=== PAUSE TestRemoveSourceComments/last_modified
|
|
=== CONT TestChangelogCmd_Flags
|
|
=== CONT TestBuildFullChangelog/creates_new_file_with_header
|
|
=== RUN TestGetTestPrompt/Python
|
|
=== PAUSE TestGetCodeLang/Go
|
|
=== RUN TestGetTestFilePath/dir/foo.py_Python
|
|
=== PAUSE TestGetTestFilePath/dir/foo.py_Python
|
|
=== RUN TestRemoveSourceComments/generated_by
|
|
=== RUN TestGetCodeLang/Python
|
|
=== PAUSE TestRemoveSourceComments/generated_by
|
|
=== RUN TestRemoveSourceComments/multiple_removable_lines
|
|
--- PASS: TestChangelogCmd_Flags (0.00s)
|
|
=== PAUSE TestRemoveSourceComments/multiple_removable_lines
|
|
=== PAUSE TestGetTestPrompt/Python
|
|
=== RUN TestRemoveSourceComments/partial_match_no_remove
|
|
=== RUN TestGetTestFilePath/bar.c_C
|
|
=== RUN TestGetTestPrompt/C
|
|
=== PAUSE TestRemoveSourceComments/partial_match_no_remove
|
|
=== PAUSE TestGetTestPrompt/C
|
|
=== RUN TestRemoveSourceComments/python_testgen
|
|
=== RUN TestGetTestPrompt/C++
|
|
=== PAUSE TestRemoveSourceComments/python_testgen
|
|
=== PAUSE TestGetTestPrompt/C++
|
|
=== PAUSE TestGetTestFilePath/bar.c_C
|
|
=== RUN TestGetTestPrompt/Invalid
|
|
=== RUN TestRemoveSourceComments/c_testgen
|
|
=== RUN TestGetTestFilePath/baz.cpp_C++
|
|
=== PAUSE TestGetTestPrompt/Invalid
|
|
=== PAUSE TestRemoveSourceComments/c_testgen
|
|
=== PAUSE TestGetTestFilePath/baz.cpp_C++
|
|
=== CONT TestGetTestPrompt/Python
|
|
=== CONT TestRemoveSourceComments/no_comments
|
|
=== CONT TestGetTestFilePath/bar.c_C
|
|
=== CONT TestGetTestPrompt/C
|
|
=== CONT TestGetTestFilePath/dir/foo.py_Python
|
|
=== CONT TestRemoveSourceComments/generated_by
|
|
=== CONT TestRemoveSourceComments/python_testgen
|
|
=== PAUSE TestGetCodeLang/Python
|
|
=== CONT TestRemoveSourceComments/partial_match_no_remove
|
|
=== RUN TestGetCodeLang/C
|
|
=== PAUSE TestGetCodeLang/C
|
|
=== RUN TestGetCodeLang/C++
|
|
=== PAUSE TestGetCodeLang/C++
|
|
--- PASS: TestBuildFullChangelog (0.00s)
|
|
--- PASS: TestBuildFullChangelog/prepends_to_existing_file (0.00s)
|
|
--- PASS: TestBuildFullChangelog/creates_new_file_with_header (0.00s)
|
|
=== CONT TestRemoveSourceComments/c_testgen
|
|
=== CONT TestRemoveSourceComments/multiple_removable_lines
|
|
=== CONT TestGetTestFilePath/foo.go_Go
|
|
=== CONT TestGetTestPrompt/Go
|
|
=== CONT TestGetTestPrompt/Invalid
|
|
=== CONT TestGetTestPrompt/C++
|
|
--- PASS: TestGetTestPrompt (0.00s)
|
|
--- PASS: TestGetTestPrompt/Python (0.00s)
|
|
--- PASS: TestGetTestPrompt/C (0.00s)
|
|
--- PASS: TestGetTestPrompt/Go (0.00s)
|
|
--- PASS: TestGetTestPrompt/Invalid (0.00s)
|
|
--- PASS: TestGetTestPrompt/C++ (0.00s)
|
|
=== CONT TestGetTestFilePath/baz.cpp_C++
|
|
=== CONT TestRemoveSourceComments/last_modified
|
|
=== CONT TestGetCodeLang/Go
|
|
--- PASS: TestGetTestFilePath (0.00s)
|
|
--- PASS: TestGetTestFilePath/bar.c_C (0.00s)
|
|
--- PASS: TestGetTestFilePath/dir/foo.py_Python (0.00s)
|
|
--- PASS: TestGetTestFilePath/foo.go_Go (0.00s)
|
|
--- PASS: TestGetTestFilePath/baz.cpp_C++ (0.00s)
|
|
--- PASS: TestRemoveSourceComments (0.00s)
|
|
--- PASS: TestRemoveSourceComments/no_comments (0.00s)
|
|
--- PASS: TestRemoveSourceComments/generated_by (0.00s)
|
|
--- PASS: TestRemoveSourceComments/python_testgen (0.00s)
|
|
--- PASS: TestRemoveSourceComments/partial_match_no_remove (0.00s)
|
|
--- PASS: TestRemoveSourceComments/c_testgen (0.00s)
|
|
--- PASS: TestRemoveSourceComments/multiple_removable_lines (0.00s)
|
|
--- PASS: TestRemoveSourceComments/last_modified (0.00s)
|
|
=== CONT TestGetCodeLang/C++
|
|
=== CONT TestGetCodeLang/Python
|
|
=== CONT TestGetCodeLang/C
|
|
--- PASS: TestGetCodeLang (0.00s)
|
|
--- PASS: TestGetCodeLang/Go (0.00s)
|
|
--- PASS: TestGetCodeLang/C++ (0.00s)
|
|
--- PASS: TestGetCodeLang/C (0.00s)
|
|
--- PASS: TestGetCodeLang/Python (0.00s)
|
|
PASS
|
|
ok gmgauthier.com/grokkit/cmd (cached)
|
|
=== RUN TestGetModel
|
|
=== RUN TestGetModel/returns_flag_model_when_provided
|
|
=== RUN TestGetModel/returns_default_when_flag_empty
|
|
--- PASS: TestGetModel (0.00s)
|
|
--- PASS: TestGetModel/returns_flag_model_when_provided (0.00s)
|
|
--- PASS: TestGetModel/returns_default_when_flag_empty (0.00s)
|
|
=== RUN TestGetModelWithAlias
|
|
--- PASS: TestGetModelWithAlias (0.00s)
|
|
=== RUN TestGetCommandModel
|
|
=== RUN TestGetCommandModel/lint_
|
|
=== RUN TestGetCommandModel/lint_override
|
|
=== RUN TestGetCommandModel/other_
|
|
=== RUN TestGetCommandModel/unknown_
|
|
--- PASS: TestGetCommandModel (0.00s)
|
|
--- PASS: TestGetCommandModel/lint_ (0.00s)
|
|
--- PASS: TestGetCommandModel/lint_override (0.00s)
|
|
--- PASS: TestGetCommandModel/other_ (0.00s)
|
|
--- PASS: TestGetCommandModel/unknown_ (0.00s)
|
|
=== RUN TestLoad
|
|
--- PASS: TestLoad (0.00s)
|
|
=== RUN TestGetTemperature
|
|
--- PASS: TestGetTemperature (0.00s)
|
|
=== RUN TestGetTimeout
|
|
--- PASS: TestGetTimeout (0.00s)
|
|
=== RUN TestGetLogLevel
|
|
--- PASS: TestGetLogLevel (0.00s)
|
|
PASS
|
|
ok gmgauthier.com/grokkit/config (cached)
|
|
=== RUN TestGitError
|
|
--- PASS: TestGitError (0.00s)
|
|
=== RUN TestAPIError
|
|
=== RUN TestAPIError/with_status_code
|
|
=== RUN TestAPIError/without_status_code
|
|
--- PASS: TestAPIError (0.00s)
|
|
--- PASS: TestAPIError/with_status_code (0.00s)
|
|
--- PASS: TestAPIError/without_status_code (0.00s)
|
|
=== RUN TestFileError
|
|
--- PASS: TestFileError (0.00s)
|
|
=== RUN TestAPIErrorUnwrap
|
|
--- PASS: TestAPIErrorUnwrap (0.00s)
|
|
PASS
|
|
ok gmgauthier.com/grokkit/internal/errors (cached)
|
|
=== RUN TestIsRepo
|
|
--- PASS: TestIsRepo (0.00s)
|
|
=== RUN TestRun
|
|
=== RUN TestRun/version_command_succeeds
|
|
=== RUN TestRun/invalid_command_fails
|
|
--- PASS: TestRun (0.01s)
|
|
--- PASS: TestRun/version_command_succeeds (0.00s)
|
|
--- PASS: TestRun/invalid_command_fails (0.01s)
|
|
=== RUN TestGitRunner
|
|
--- PASS: TestGitRunner (0.00s)
|
|
PASS
|
|
ok gmgauthier.com/grokkit/internal/git (cached)
|
|
=== RUN TestCleanCodeResponse_Comprehensive
|
|
=== RUN TestCleanCodeResponse_Comprehensive/removes_go_markdown_fences
|
|
=== RUN TestCleanCodeResponse_Comprehensive/removes_python_markdown_fences
|
|
=== RUN TestCleanCodeResponse_Comprehensive/removes_plain_markdown_fences
|
|
=== RUN TestCleanCodeResponse_Comprehensive/handles_no_fences
|
|
=== RUN TestCleanCodeResponse_Comprehensive/preserves_internal_blank_lines
|
|
=== RUN TestCleanCodeResponse_Comprehensive/trims_leading_whitespace
|
|
=== RUN TestCleanCodeResponse_Comprehensive/trims_trailing_whitespace
|
|
=== RUN TestCleanCodeResponse_Comprehensive/handles_multiple_languages
|
|
=== RUN TestCleanCodeResponse_Comprehensive/handles_fences_with_extra_spaces
|
|
=== RUN TestCleanCodeResponse_Comprehensive/removes_only_fence_lines
|
|
=== RUN TestCleanCodeResponse_Comprehensive/handles_empty_input
|
|
=== RUN TestCleanCodeResponse_Comprehensive/handles_only_fences
|
|
=== RUN TestCleanCodeResponse_Comprehensive/preserves_code_indentation
|
|
--- PASS: TestCleanCodeResponse_Comprehensive (0.00s)
|
|
--- PASS: TestCleanCodeResponse_Comprehensive/removes_go_markdown_fences (0.00s)
|
|
--- PASS: TestCleanCodeResponse_Comprehensive/removes_python_markdown_fences (0.00s)
|
|
--- PASS: TestCleanCodeResponse_Comprehensive/removes_plain_markdown_fences (0.00s)
|
|
--- PASS: TestCleanCodeResponse_Comprehensive/handles_no_fences (0.00s)
|
|
--- PASS: TestCleanCodeResponse_Comprehensive/preserves_internal_blank_lines (0.00s)
|
|
--- PASS: TestCleanCodeResponse_Comprehensive/trims_leading_whitespace (0.00s)
|
|
--- PASS: TestCleanCodeResponse_Comprehensive/trims_trailing_whitespace (0.00s)
|
|
--- PASS: TestCleanCodeResponse_Comprehensive/handles_multiple_languages (0.00s)
|
|
--- PASS: TestCleanCodeResponse_Comprehensive/handles_fences_with_extra_spaces (0.00s)
|
|
--- PASS: TestCleanCodeResponse_Comprehensive/removes_only_fence_lines (0.00s)
|
|
--- PASS: TestCleanCodeResponse_Comprehensive/handles_empty_input (0.00s)
|
|
--- PASS: TestCleanCodeResponse_Comprehensive/handles_only_fences (0.00s)
|
|
--- PASS: TestCleanCodeResponse_Comprehensive/preserves_code_indentation (0.00s)
|
|
=== RUN TestCleanCodeResponse
|
|
=== RUN TestCleanCodeResponse/removes_markdown_fences
|
|
=== RUN TestCleanCodeResponse/removes_language_tag
|
|
=== RUN TestCleanCodeResponse/handles_no_fences
|
|
=== RUN TestCleanCodeResponse/preserves_internal_blank_lines
|
|
=== RUN TestCleanCodeResponse/trims_whitespace
|
|
--- PASS: TestCleanCodeResponse (0.00s)
|
|
--- PASS: TestCleanCodeResponse/removes_markdown_fences (0.00s)
|
|
--- PASS: TestCleanCodeResponse/removes_language_tag (0.00s)
|
|
--- PASS: TestCleanCodeResponse/handles_no_fences (0.00s)
|
|
--- PASS: TestCleanCodeResponse/preserves_internal_blank_lines (0.00s)
|
|
--- PASS: TestCleanCodeResponse/trims_whitespace (0.00s)
|
|
=== RUN TestStreamSilent
|
|
--- PASS: TestStreamSilent (0.00s)
|
|
=== RUN TestStream
|
|
foobar
|
|
--- PASS: TestStream (0.00s)
|
|
=== RUN TestStreamWithTemp
|
|
response
|
|
--- PASS: TestStreamWithTemp (0.00s)
|
|
=== RUN TestStreamDoneSignal
|
|
--- PASS: TestStreamDoneSignal (0.00s)
|
|
=== RUN TestStreamEmptyResponse
|
|
--- PASS: TestStreamEmptyResponse (0.00s)
|
|
=== RUN TestNewClient
|
|
--- PASS: TestNewClient (0.00s)
|
|
PASS
|
|
ok gmgauthier.com/grokkit/internal/grok (cached)
|
|
=== RUN TestDetectLanguage
|
|
=== RUN TestDetectLanguage/Go_file
|
|
=== RUN TestDetectLanguage/Python_file
|
|
=== RUN TestDetectLanguage/JavaScript_file
|
|
=== RUN TestDetectLanguage/JSX_file
|
|
=== RUN TestDetectLanguage/TypeScript_file
|
|
=== RUN TestDetectLanguage/TSX_file
|
|
=== RUN TestDetectLanguage/Rust_file
|
|
=== RUN TestDetectLanguage/Ruby_file
|
|
=== RUN TestDetectLanguage/Java_file
|
|
=== RUN TestDetectLanguage/C_file
|
|
=== RUN TestDetectLanguage/C++_file
|
|
=== RUN TestDetectLanguage/Header_file
|
|
=== RUN TestDetectLanguage/Shell_script
|
|
=== RUN TestDetectLanguage/Bash_script
|
|
=== RUN TestDetectLanguage/Unsupported_file
|
|
=== RUN TestDetectLanguage/No_extension
|
|
=== RUN TestDetectLanguage/Case_insensitive
|
|
--- PASS: TestDetectLanguage (0.00s)
|
|
--- PASS: TestDetectLanguage/Go_file (0.00s)
|
|
--- PASS: TestDetectLanguage/Python_file (0.00s)
|
|
--- PASS: TestDetectLanguage/JavaScript_file (0.00s)
|
|
--- PASS: TestDetectLanguage/JSX_file (0.00s)
|
|
--- PASS: TestDetectLanguage/TypeScript_file (0.00s)
|
|
--- PASS: TestDetectLanguage/TSX_file (0.00s)
|
|
--- PASS: TestDetectLanguage/Rust_file (0.00s)
|
|
--- PASS: TestDetectLanguage/Ruby_file (0.00s)
|
|
--- PASS: TestDetectLanguage/Java_file (0.00s)
|
|
--- PASS: TestDetectLanguage/C_file (0.00s)
|
|
--- PASS: TestDetectLanguage/C++_file (0.00s)
|
|
--- PASS: TestDetectLanguage/Header_file (0.00s)
|
|
--- PASS: TestDetectLanguage/Shell_script (0.00s)
|
|
--- PASS: TestDetectLanguage/Bash_script (0.00s)
|
|
--- PASS: TestDetectLanguage/Unsupported_file (0.00s)
|
|
--- PASS: TestDetectLanguage/No_extension (0.00s)
|
|
--- PASS: TestDetectLanguage/Case_insensitive (0.00s)
|
|
=== RUN TestCheckLinterAvailable
|
|
=== RUN TestCheckLinterAvailable/go_command_should_be_available
|
|
linter_test.go:84: go should be available on system with Go installed: available=true
|
|
=== RUN TestCheckLinterAvailable/nonexistent_command
|
|
linter_test.go:84: nonexistent command should not be available: available=false
|
|
--- PASS: TestCheckLinterAvailable (0.00s)
|
|
--- PASS: TestCheckLinterAvailable/go_command_should_be_available (0.00s)
|
|
--- PASS: TestCheckLinterAvailable/nonexistent_command (0.00s)
|
|
=== RUN TestFindAvailableLinter
|
|
=== RUN TestFindAvailableLinter/Go_language_should_find_a_linter
|
|
=== RUN TestFindAvailableLinter/Language_with_no_available_linters
|
|
--- PASS: TestFindAvailableLinter (0.00s)
|
|
--- PASS: TestFindAvailableLinter/Go_language_should_find_a_linter (0.00s)
|
|
--- PASS: TestFindAvailableLinter/Language_with_no_available_linters (0.00s)
|
|
=== RUN TestRunLinter
|
|
=== RUN TestRunLinter/Run_go_vet_on_valid_file
|
|
linter_test.go:179: go vet result: ExitCode=0, HasIssues=false, Output=""
|
|
=== RUN TestRunLinter/Run_nonexistent_linter
|
|
--- PASS: TestRunLinter (0.07s)
|
|
--- PASS: TestRunLinter/Run_go_vet_on_valid_file (0.07s)
|
|
--- PASS: TestRunLinter/Run_nonexistent_linter (0.00s)
|
|
=== RUN TestLintFile
|
|
=== RUN TestLintFile/Lint_valid_Go_file
|
|
=== RUN TestLintFile/Lint_nonexistent_file
|
|
=== RUN TestLintFile/Lint_unsupported_file_type
|
|
--- PASS: TestLintFile (0.16s)
|
|
--- PASS: TestLintFile/Lint_valid_Go_file (0.16s)
|
|
--- PASS: TestLintFile/Lint_nonexistent_file (0.00s)
|
|
--- PASS: TestLintFile/Lint_unsupported_file_type (0.00s)
|
|
=== RUN TestGetSupportedLanguages
|
|
--- PASS: TestGetSupportedLanguages (0.00s)
|
|
=== RUN TestLanguageStructure
|
|
--- PASS: TestLanguageStructure (0.00s)
|
|
PASS
|
|
ok gmgauthier.com/grokkit/internal/linter (cached)
|
|
=== RUN TestInit
|
|
=== RUN TestInit/default_level
|
|
=== RUN TestInit/debug_level
|
|
=== RUN TestInit/warn_level
|
|
=== RUN TestInit/error_level
|
|
=== RUN TestInit/invalid_level_defaults_to_info
|
|
--- PASS: TestInit (0.00s)
|
|
--- PASS: TestInit/default_level (0.00s)
|
|
--- PASS: TestInit/debug_level (0.00s)
|
|
--- PASS: TestInit/warn_level (0.00s)
|
|
--- PASS: TestInit/error_level (0.00s)
|
|
--- PASS: TestInit/invalid_level_defaults_to_info (0.00s)
|
|
=== RUN TestLogging
|
|
{"time":"2026-03-04T19:52:04.116795514Z","level":"DEBUG","msg":"test debug message","key":"value"}
|
|
{"time":"2026-03-04T19:52:04.116935804Z","level":"INFO","msg":"test info message","count":42}
|
|
{"time":"2026-03-04T19:52:04.116957313Z","level":"WARN","msg":"test warn message","enabled":true}
|
|
{"time":"2026-03-04T19:52:04.116977684Z","level":"ERROR","msg":"test error message","error":"something went wrong"}
|
|
--- PASS: TestLogging (0.00s)
|
|
=== RUN TestSetLevel
|
|
--- PASS: TestSetLevel (0.00s)
|
|
=== RUN TestWith
|
|
--- PASS: TestWith (0.00s)
|
|
=== RUN TestWithContext
|
|
=== RUN TestWithContext/without_init
|
|
=== RUN TestWithContext/with_init
|
|
--- PASS: TestWithContext (0.00s)
|
|
--- PASS: TestWithContext/without_init (0.00s)
|
|
--- PASS: TestWithContext/with_init (0.00s)
|
|
PASS
|
|
ok gmgauthier.com/grokkit/internal/logger (cached)
|
|
=== RUN TestExtractCodeBlocks
|
|
=== PAUSE TestExtractCodeBlocks
|
|
=== CONT TestExtractCodeBlocks
|
|
=== RUN TestExtractCodeBlocks/Single_block
|
|
=== RUN TestExtractCodeBlocks/Multiple_blocks
|
|
=== RUN TestExtractCodeBlocks/No_blocks
|
|
=== RUN TestExtractCodeBlocks/Incomplete_block
|
|
--- PASS: TestExtractCodeBlocks (0.00s)
|
|
--- PASS: TestExtractCodeBlocks/Single_block (0.00s)
|
|
--- PASS: TestExtractCodeBlocks/Multiple_blocks (0.00s)
|
|
--- PASS: TestExtractCodeBlocks/No_blocks (0.00s)
|
|
--- PASS: TestExtractCodeBlocks/Incomplete_block (0.00s)
|
|
PASS
|
|
ok gmgauthier.com/grokkit/internal/recipe (cached)
|
|
=== RUN TestVersionInfo
|
|
=== PAUSE TestVersionInfo
|
|
=== CONT TestVersionInfo
|
|
=== RUN TestVersionInfo/Version
|
|
=== PAUSE TestVersionInfo/Version
|
|
=== RUN TestVersionInfo/Commit
|
|
=== PAUSE TestVersionInfo/Commit
|
|
=== RUN TestVersionInfo/BuildDate
|
|
=== PAUSE TestVersionInfo/BuildDate
|
|
=== CONT TestVersionInfo/Version
|
|
=== CONT TestVersionInfo/Commit
|
|
=== CONT TestVersionInfo/BuildDate
|
|
--- PASS: TestVersionInfo (0.00s)
|
|
--- PASS: TestVersionInfo/Version (0.00s)
|
|
--- PASS: TestVersionInfo/Commit (0.00s)
|
|
--- PASS: TestVersionInfo/BuildDate (0.00s)
|
|
PASS
|
|
ok gmgauthier.com/grokkit/internal/version (cached)
|