예제 #1
0
파일: trace_test.go 프로젝트: jalateras/cli
func TestTraceSetToFile(t *testing.T) {
	stdOut := bytes.NewBuffer([]byte{})
	trace.SetStdout(stdOut)

	fileutils.TempFile("trace_test", func(file *os.File, err error) {
		assert.NoError(t, err)
		file.Write([]byte("pre-existing content"))

		os.Setenv(trace.CF_TRACE, file.Name())

		logger := trace.NewLogger()
		logger.Print("hello world")

		file.Seek(0, os.SEEK_SET)
		result, err := ioutil.ReadAll(file)
		assert.NoError(t, err)

		byteString := string(result)
		assert.Contains(t, byteString, "pre-existing content")
		assert.Contains(t, byteString, "hello world")

		result, _ = ioutil.ReadAll(stdOut)
		assert.Equal(t, string(result), "")
	})
}
예제 #2
0
파일: trace_test.go 프로젝트: jalateras/cli
func TestTraceSetToTrue(t *testing.T) {
	stdOut := bytes.NewBuffer([]byte{})
	trace.SetStdout(stdOut)

	os.Setenv(trace.CF_TRACE, "true")

	logger := trace.NewLogger()
	logger.Print("hello world")

	result, _ := ioutil.ReadAll(stdOut)
	assert.Contains(t, string(result), "hello world")
}
예제 #3
0
파일: trace_test.go 프로젝트: jalateras/cli
func TestTraceSetToInvalidFile(t *testing.T) {
	stdOut := bytes.NewBuffer([]byte{})
	trace.SetStdout(stdOut)

	fileutils.TempFile("trace_test", func(file *os.File, err error) {
		assert.NoError(t, err)

		file.Chmod(0000)

		os.Setenv(trace.CF_TRACE, file.Name())

		logger := trace.NewLogger()
		logger.Print("hello world")

		result, _ := ioutil.ReadAll(file)
		assert.Equal(t, string(result), "")

		result, _ = ioutil.ReadAll(stdOut)
		assert.Contains(t, string(result), "hello world")
	})
}
예제 #4
0
파일: trace_test.go 프로젝트: julz/cli
	"github.com/cloudfoundry/gofileutils/fileutils"
	. "github.com/onsi/ginkgo"
	. "github.com/onsi/gomega"
	"io/ioutil"
	"os"
	"runtime"
)

var _ = Describe("Testing with ginkgo", func() {
	It("TestTraceSetToFalse", func() {
		stdOut := bytes.NewBuffer([]byte{})
		trace.SetStdout(stdOut)

		os.Setenv(trace.CF_TRACE, "false")

		logger := trace.NewLogger()
		logger.Print("hello world")

		result, _ := ioutil.ReadAll(stdOut)
		Expect(string(result)).To(Equal(""))
	})

	It("TestTraceSetToTrue", func() {
		stdOut := bytes.NewBuffer([]byte{})
		trace.SetStdout(stdOut)

		os.Setenv(trace.CF_TRACE, "true")

		logger := trace.NewLogger()
		logger.Print("hello world")