diff options
author | Clément Bénier <clement.benier@iot.bzh> | 2018-08-21 18:54:10 +0200 |
---|---|---|
committer | Clément Bénier <clement.benier@iot.bzh> | 2018-08-21 18:57:14 +0200 |
commit | 2fb2226b666e7a8a21dc8b852188b75c06e2cfc8 (patch) | |
tree | ce085c43116ceb9eda10fd79cfc3d18ecfe6387a /test/exec_test.go | |
parent | fb927d07ffd43f82b75f0c0f9539fac91941ba52 (diff) |
test exec: waiting exit event after exec cmdsandbox/benierc/test
Change-Id: I355f9a55e9641ce60c787b8b02f84f35bccc8e67
Signed-off-by: Clément Bénier <clement.benier@iot.bzh>
Diffstat (limited to 'test/exec_test.go')
-rw-r--r-- | test/exec_test.go | 22 |
1 files changed, 6 insertions, 16 deletions
diff --git a/test/exec_test.go b/test/exec_test.go index 1ab781a..884ba87 100644 --- a/test/exec_test.go +++ b/test/exec_test.go @@ -22,7 +22,6 @@ import ( "os/exec" "path" "testing" - "time" "gerrit.automotivelinux.org/gerrit/src/xds/xds-server/lib/xsapiv1" "github.com/stretchr/testify/assert" @@ -44,17 +43,6 @@ func InitExec(t *testing.T) string { return helloworldDir } -/*flush channel with timeout*/ -func flushChannelExec(channel chan xsapiv1.ExecOutMsg, ms time.Duration) { - timeoutB := false - for !timeoutB { - select { - case <-channel: - case <-time.After(ms * time.Millisecond): - timeoutB = true - } - } -} func TestExec(t *testing.T) { helloworldDir := InitExec(t) /*channel for SDK events*/ @@ -88,10 +76,10 @@ func TestExec(t *testing.T) { assert.NotNil(t, cfg) /*channel for ExecOutMsg*/ - chExec := make(chan xsapiv1.ExecOutMsg) + chExec := make(chan xsapiv1.ExecExitMsg) defer close(chExec) /*connect to ExecOutEvent*/ - sCli.Conn.On(xsapiv1.ExecOutEvent, func(ev xsapiv1.ExecOutMsg) { + sCli.Conn.On(xsapiv1.ExecExitEvent, func(ev xsapiv1.ExecExitMsg) { chExec <- ev }) @@ -117,7 +105,8 @@ func TestExec(t *testing.T) { var execRes xsapiv1.ExecArgs Debugf(t, "exec cmake cmd(%v)", cmd) assert.Nil(t, HTTPCli.Post("/exec", exec, &execRes)) - flushChannelExec(chExec, 1000) //waiting for execOutMsg + exitMsg := <-chExec + assert.Equal(t, exitMsg.Code, 0) /*make helloworld project with fake sdk*/ cmd = "source " + sdkSourceFile @@ -133,7 +122,8 @@ func TestExec(t *testing.T) { /*post exec cmd make*/ Debugf(t, "exec make cmd(%v)", cmd) assert.Nil(t, HTTPCli.Post("/exec", exec, &execRes)) - flushChannelExec(chExec, 1000) //waiting for execOutMsg + exitMsg = <-chExec + assert.Equal(t, exitMsg.Code, 0) /*check if helloworld.so exists*/ Debug(t, "check that helloworld.so exists") |