62 lines
1.2 KiB
Go
62 lines
1.2 KiB
Go
package realize
|
|
|
|
import (
|
|
"bytes"
|
|
"log"
|
|
"os"
|
|
"strings"
|
|
"testing"
|
|
"time"
|
|
)
|
|
|
|
func TestRealize_Stop(t *testing.T) {
|
|
r := Realize{}
|
|
r.Projects = append(r.Schema.Projects, Project{exit: make(chan os.Signal, 1)})
|
|
r.Stop()
|
|
_, ok := <-r.Projects[0].exit
|
|
if ok != false {
|
|
t.Error("Unexpected error", "channel should be closed")
|
|
}
|
|
}
|
|
|
|
func TestRealize_Start(t *testing.T) {
|
|
r := Realize{}
|
|
err := r.Start()
|
|
if err == nil {
|
|
t.Error("Error expected")
|
|
}
|
|
r.Projects = append(r.Projects, Project{Name: "test", exit: make(chan os.Signal, 1)})
|
|
go func() {
|
|
time.Sleep(100)
|
|
close(r.Projects[0].exit)
|
|
_, ok := <-r.Projects[0].exit
|
|
if ok != false {
|
|
t.Error("Unexpected error", "channel should be closed")
|
|
}
|
|
}()
|
|
err = r.Start()
|
|
if err != nil {
|
|
t.Error("Unexpected error", err)
|
|
}
|
|
}
|
|
|
|
func TestRealize_Prefix(t *testing.T) {
|
|
r := Realize{}
|
|
input := "test"
|
|
result := r.Prefix(input)
|
|
if len(result) <= 0 && !strings.Contains(result, input) {
|
|
t.Error("Unexpected error")
|
|
}
|
|
}
|
|
|
|
func TestLogWriter_Write(t *testing.T) {
|
|
var buf bytes.Buffer
|
|
log.SetOutput(&buf)
|
|
w := LogWriter{}
|
|
input := ""
|
|
int, err := w.Write([]byte(input))
|
|
if err != nil || int > 0 {
|
|
t.Error("Unexpected error", err, "string lenght should be 0 instead", int)
|
|
}
|
|
}
|