mirror of
https://github.com/lordmathis/llamactl.git
synced 2025-11-06 00:54:23 +00:00
63 lines
1.5 KiB
Go
63 lines
1.5 KiB
Go
package mlx_test
|
|
|
|
import (
|
|
"llamactl/pkg/backends/mlx"
|
|
"testing"
|
|
)
|
|
|
|
func TestBuildCommandArgs(t *testing.T) {
|
|
options := &mlx.MlxServerOptions{
|
|
Model: "/test/model.mlx",
|
|
Host: "127.0.0.1",
|
|
Port: 8080,
|
|
Temp: 0.7,
|
|
TopP: 0.9,
|
|
TopK: 40,
|
|
MaxTokens: 2048,
|
|
TrustRemoteCode: true,
|
|
LogLevel: "DEBUG",
|
|
ChatTemplate: "custom template",
|
|
}
|
|
|
|
args := options.BuildCommandArgs()
|
|
|
|
// Check that all expected flags are present
|
|
expectedFlags := map[string]string{
|
|
"--model": "/test/model.mlx",
|
|
"--host": "127.0.0.1",
|
|
"--port": "8080",
|
|
"--log-level": "DEBUG",
|
|
"--chat-template": "custom template",
|
|
"--temp": "0.7",
|
|
"--top-p": "0.9",
|
|
"--top-k": "40",
|
|
"--max-tokens": "2048",
|
|
}
|
|
|
|
for i := 0; i < len(args); i++ {
|
|
if args[i] == "--trust-remote-code" {
|
|
continue // Boolean flag with no value
|
|
}
|
|
if args[i] == "--use-default-chat-template" {
|
|
continue // Boolean flag with no value
|
|
}
|
|
|
|
if expectedValue, exists := expectedFlags[args[i]]; exists && i+1 < len(args) {
|
|
if args[i+1] != expectedValue {
|
|
t.Errorf("expected %s to have value %s, got %s", args[i], expectedValue, args[i+1])
|
|
}
|
|
}
|
|
}
|
|
|
|
// Check boolean flags
|
|
foundTrustRemoteCode := false
|
|
for _, arg := range args {
|
|
if arg == "--trust-remote-code" {
|
|
foundTrustRemoteCode = true
|
|
}
|
|
}
|
|
if !foundTrustRemoteCode {
|
|
t.Errorf("expected --trust-remote-code flag to be present")
|
|
}
|
|
}
|