Skip to content

Commit

Permalink
a first system test! for kt topic...
Browse files Browse the repository at this point in the history
  • Loading branch information
fgeller committed Sep 24, 2017
1 parent f37835d commit bbabfa5
Show file tree
Hide file tree
Showing 2 changed files with 45 additions and 3 deletions.
6 changes: 3 additions & 3 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -4,19 +4,19 @@ export OS=$(shell uname | tr '[:upper:]' '[:lower:]')

build: GOOS ?= ${OS}
build: GOARCH ?= amd64
build: test
build:
rm -f kt
GOOS=${GOOS} GOARCH=${GOARCH} go build -ldflags "-X main.buildTime=`date --iso-8601=s` -X main.buildVersion=`git rev-parse HEAD | cut -c-7`" .

release-linux:
release-linux: test
GOOS=linux $(MAKE) build
tar Jcf kt-`git describe --abbrev=0 --tags`-linux-amd64.txz kt

release-darwin:
GOOS=darwin $(MAKE) build
tar Jcf kt-`git describe --abbrev=0 --tags`-darwin-amd64.txz kt

release: clean release-linux release-darwin
release: test clean release-linux release-darwin

test:
go test -v
Expand Down
42 changes: 42 additions & 0 deletions system_test.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
package main

import (
"bytes"
"os"
"os/exec"
"syscall"
"testing"

"github.com/stretchr/testify/require"
)

func cmd(t *testing.T, name string, args ...string) (int, string, string) {
cmd := exec.Command(name, args...)
var stdOut, stdErr bytes.Buffer
cmd.Stdout = &stdOut
cmd.Stderr = &stdErr
cmd.Env = os.Environ()
cmd.Env = append(cmd.Env, "KT_BROKERS=localhost:9092")
_ = cmd.Run()
status := cmd.ProcessState.Sys().(syscall.WaitStatus)
return status.ExitStatus(), stdOut.String(), stdErr.String()
}

func build(t *testing.T) {
var status int

status, _, _ = cmd(t, "make", "build")
require.Zero(t, status)

status, _, _ = cmd(t, "ls", "kt")
require.Zero(t, status)
}

func TestSystem(t *testing.T) {
build(t)

status, out, err := cmd(t, "./kt", "topic")
require.Zero(t, status)
require.Empty(t, err)
require.JSONEq(t, `{"name": "kt-test"}`, out)
}

0 comments on commit bbabfa5

Please sign in to comment.