mirror of https://gitea.com/gitea/act_runner.git
fix: stability of docker cancel test (#106)
This commit is contained in:
parent
1dc7a4d269
commit
6440a419d2
|
|
@ -98,6 +98,7 @@ type endlessReader struct {
|
|||
}
|
||||
|
||||
func (r endlessReader) Read(_ []byte) (n int, err error) {
|
||||
time.Sleep(100 * time.Millisecond)
|
||||
return 1, nil
|
||||
}
|
||||
|
||||
|
|
@ -123,11 +124,16 @@ func TestDockerExecAbort(t *testing.T) {
|
|||
|
||||
client := &mockDockerClient{}
|
||||
client.On("ContainerExecCreate", ctx, "123", mock.AnythingOfType("container.ExecOptions")).Return(container.ExecCreateResponse{ID: "id"}, nil)
|
||||
client.On("ContainerExecAttach", ctx, "id", mock.AnythingOfType("container.ExecStartOptions")).Return(types.HijackedResponse{
|
||||
attached := make(chan struct{})
|
||||
client.On("ContainerExecAttach", ctx, "id", mock.AnythingOfType("container.ExecStartOptions")).Run(func(_ mock.Arguments) {
|
||||
close(attached)
|
||||
}).Return(types.HijackedResponse{
|
||||
Conn: conn,
|
||||
Reader: bufio.NewReader(endlessReader{}),
|
||||
}, nil)
|
||||
client.On("ContainerKill", mock.Anything, "123", "kill").Return(nil)
|
||||
client.On("ContainerKill", mock.Anything, "123", "kill").Run(func(_ mock.Arguments) {
|
||||
<-attached
|
||||
}).Return(nil)
|
||||
client.On("ContainerStart", mock.Anything, "123", mock.AnythingOfType("container.StartOptions")).Return(nil)
|
||||
|
||||
cr := &containerReference{
|
||||
|
|
@ -144,8 +150,6 @@ func TestDockerExecAbort(t *testing.T) {
|
|||
channel <- cr.execExt([]string{""}, map[string]string{}, "user", "workdir")(ctx)
|
||||
}()
|
||||
|
||||
time.Sleep(500 * time.Millisecond)
|
||||
|
||||
cancel()
|
||||
|
||||
err := <-channel
|
||||
|
|
|
|||
Loading…
Reference in New Issue