Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
94 changes: 94 additions & 0 deletions internal/client/params_test.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,94 @@
package client

import (
"io"
"testing"

"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
)

func TestNewMockParams_CreatesValidInstance(t *testing.T) {
params := NewMockParams()
require.NotNil(t, params, "params must not be nil")
}

func TestNewMockParams_SetsMockProvider(t *testing.T) {
params := NewMockParams()
assert.Equal(t, "mock", params.Provider, "provider must be mock")
}

func TestNewMockParams_SetsDefaultToken(t *testing.T) {
params := NewMockParams()
assert.Equal(t, "ABC", params.Token, "token must be ABC")
}

func TestNewMockParams_EnablesMockProject(t *testing.T) {
params := NewMockParams()
assert.True(t, params.MockProject, "mock project must be enabled")
}

func TestNewMockParams_DisablesDebug(t *testing.T) {
params := NewMockParams()
assert.False(t, params.Debug, "debug must be disabled")
}

func TestNewMockParams_DisablesStats(t *testing.T) {
assert.False(t, NewMockParams().Stats, "stats must be disabled")
}

func TestNewMockParams_SetsStdFormat(t *testing.T) {
params := NewMockParams()
assert.Equal(t, "std", params.Format, "format must be std")
}

func TestNewMockParams_SetsDefaultMaxSize(t *testing.T) {
params := NewMockParams()
assert.Equal(t, 200, params.MaxSize, "max size must be 200")
}

func TestNewMockParams_SetsDiscardLog(t *testing.T) {
params := NewMockParams()
assert.Equal(t, io.Discard, params.Log, "log must be io.Discard")
}

func TestNewMockParams_SetsDefaultChecks(t *testing.T) {
params := NewMockParams()
require.Equal(t, 1, len(params.Checks), "must have one check")
assert.Equal(t, "mvn clean test", params.Checks[0], "check must be mvn clean test")
}

func TestNewMockParams_DisablesColorless(t *testing.T) {
params := NewMockParams()
assert.False(t, params.Colorless, "colorless must be disabled")
}

func TestNewMockParams_SetsDefaultModel(t *testing.T) {
params := NewMockParams()
assert.Equal(t, "gpt-3.5-turbo", params.Model, "model must be gpt-3.5-turbo")
}

func TestNewMockParams_SetsDefaultAttempts(t *testing.T) {
params := NewMockParams()
assert.Equal(t, 3, params.Attempts, "attempts must be 3")
}
Comment on lines +11 to +74

Copilot AI Dec 13, 2025

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The tests for NewMockParams do not cover all fields set by the function. Missing test coverage for: Playbook (should be empty string), Soutput (should be "stats"), Input (should be empty string), and Output (should be empty string). Consider adding tests for these fields to ensure complete coverage.

Copilot uses AI. Check for mistakes.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@copilot open a new pull request to apply changes based on this feedback


func TestNewMockParams_SetsEmptyPlaybook(t *testing.T) {
params := NewMockParams()
assert.Equal(t, "", params.Playbook, "playbook must be empty")
}

func TestNewMockParams_SetsStatsOutput(t *testing.T) {
params := NewMockParams()
assert.Equal(t, "stats", params.Soutput, "soutput must be stats")
}

func TestNewMockParams_SetsEmptyInput(t *testing.T) {
params := NewMockParams()
assert.Equal(t, "", params.Input, "input must be empty")
}

func TestNewMockParams_SetsEmptyOutput(t *testing.T) {
params := NewMockParams()
assert.Equal(t, "", params.Output, "output must be empty")
}