
We previously didn't really had any structure in our project apart from creating a new folder for each package in our project root. Now that we have accumulated some packages, we use the well-known Golang project layout in order to clearly communicate our intent with packages. See https://github.com/golang-standards/project-layout
21 lines
499 B
Go
21 lines
499 B
Go
package nullreader
|
|
|
|
import (
|
|
"github.com/stretchr/testify/assert"
|
|
"github.com/stretchr/testify/require"
|
|
"gitlab.hpi.de/codeocean/codemoon/poseidon/tests"
|
|
"testing"
|
|
)
|
|
|
|
func TestNullReaderDoesNotReturnImmediately(t *testing.T) {
|
|
reader := &NullReader{}
|
|
readerReturned := make(chan bool)
|
|
go func() {
|
|
p := make([]byte, 0, 5)
|
|
_, err := reader.Read(p)
|
|
require.NoError(t, err)
|
|
close(readerReturned)
|
|
}()
|
|
assert.False(t, tests.ChannelReceivesSomething(readerReturned, tests.ShortTimeout))
|
|
}
|