mirror of
https://github.com/danielmiessler/Fabric.git
synced 2026-01-09 14:28:01 -05:00
- Add newline to `CreateOutputFile` if missing - Use `t.Cleanup` for file removal in tests - Add test for message with trailing newline - Introduce `printedStream` flag in `Chatter.Send` - Print newline if stream printed without trailing newline
58 lines
1.3 KiB
Go
58 lines
1.3 KiB
Go
package cli
|
|
|
|
import (
|
|
"os"
|
|
"testing"
|
|
)
|
|
|
|
func TestCopyToClipboard(t *testing.T) {
|
|
t.Skip("skipping test, because of docker env. in ci.")
|
|
|
|
message := "test message"
|
|
err := CopyToClipboard(message)
|
|
if err != nil {
|
|
t.Fatalf("CopyToClipboard() error = %v", err)
|
|
}
|
|
}
|
|
|
|
func TestCreateOutputFile(t *testing.T) {
|
|
|
|
fileName := "test_output.txt"
|
|
message := "test message"
|
|
err := CreateOutputFile(message, fileName)
|
|
if err != nil {
|
|
t.Fatalf("CreateOutputFile() error = %v", err)
|
|
}
|
|
|
|
t.Cleanup(func() { os.Remove(fileName) })
|
|
|
|
data, err := os.ReadFile(fileName)
|
|
if err != nil {
|
|
t.Fatalf("failed to read output file: %v", err)
|
|
}
|
|
|
|
expected := message + "\n"
|
|
if string(data) != expected {
|
|
t.Fatalf("expected file contents %q, got %q", expected, data)
|
|
}
|
|
}
|
|
|
|
func TestCreateOutputFileMessageWithTrailingNewline(t *testing.T) {
|
|
fileName := "test_output_with_newline.txt"
|
|
message := "test message with newline\n"
|
|
|
|
if err := CreateOutputFile(message, fileName); err != nil {
|
|
t.Fatalf("CreateOutputFile() error = %v", err)
|
|
}
|
|
t.Cleanup(func() { os.Remove(fileName) })
|
|
|
|
data, err := os.ReadFile(fileName)
|
|
if err != nil {
|
|
t.Fatalf("failed to read output file: %v", err)
|
|
}
|
|
|
|
if string(data) != message {
|
|
t.Fatalf("expected file contents %q, got %q", message, data)
|
|
}
|
|
}
|