blob: c8538380cd27d40fda9543aae78cd4a1a9cf4a60 [file] [log] [blame]
package poll
import (
"fmt"
"os"
"testing"
"gotest.tools/v3/assert"
)
func TestWaitOnFile(t *testing.T) {
fakeFilePath := "./fakefile"
check := FileExists(fakeFilePath)
t.Run("file does not exist", func(t *testing.T) {
r := check(t)
assert.Assert(t, !r.Done())
assert.Equal(t, r.Message(), fmt.Sprintf("file %s does not exist", fakeFilePath))
})
os.Create(fakeFilePath)
defer os.Remove(fakeFilePath)
t.Run("file exists", func(t *testing.T) {
assert.Assert(t, check(t).Done())
})
}
func TestWaitOnSocketWithTimeout(t *testing.T) {
t.Run("connection to unavailable address", func(t *testing.T) {
check := Connection("tcp", "foo.bar:55555")
r := check(t)
assert.Assert(t, !r.Done())
assert.Equal(t, r.Message(), "socket tcp://foo.bar:55555 not available")
})
t.Run("connection to ", func(t *testing.T) {
check := Connection("tcp", "google.com:80")
assert.Assert(t, check(t).Done())
})
}