aboutsummaryrefslogtreecommitdiffstats
path: root/blockpool/test/logger.go
diff options
context:
space:
mode:
authorobscuren <geffobscura@gmail.com>2015-02-27 01:39:38 +0800
committerobscuren <geffobscura@gmail.com>2015-02-27 01:39:38 +0800
commitc18ea4de147cb81bf5563a5727172d4103658b92 (patch)
tree09ecb2fe54902855fcef4c1873d64cce4e28f399 /blockpool/test/logger.go
parent37e6870f64437a212fde383ab1538ad1e7e2acd9 (diff)
parent16ecda951b767800b4e09ad8e86e0866b05136be (diff)
downloaddexon-c18ea4de147cb81bf5563a5727172d4103658b92.tar
dexon-c18ea4de147cb81bf5563a5727172d4103658b92.tar.gz
dexon-c18ea4de147cb81bf5563a5727172d4103658b92.tar.bz2
dexon-c18ea4de147cb81bf5563a5727172d4103658b92.tar.lz
dexon-c18ea4de147cb81bf5563a5727172d4103658b92.tar.xz
dexon-c18ea4de147cb81bf5563a5727172d4103658b92.tar.zst
dexon-c18ea4de147cb81bf5563a5727172d4103658b92.zip
Merge branch 'blockpool2' of https://github.com/ethersphere/go-ethereum into ethersphere-blockpool2
Diffstat (limited to 'blockpool/test/logger.go')
-rw-r--r--blockpool/test/logger.go78
1 files changed, 78 insertions, 0 deletions
diff --git a/blockpool/test/logger.go b/blockpool/test/logger.go
new file mode 100644
index 000000000..8b776e0b5
--- /dev/null
+++ b/blockpool/test/logger.go
@@ -0,0 +1,78 @@
+package test
+
+import (
+ "log"
+ "os"
+ "sync"
+ "testing"
+
+ "github.com/ethereum/go-ethereum/logger"
+)
+
+var once sync.Once
+
+/* usage:
+func TestFunc(t *testing.T) {
+ test.LogInit()
+ // test
+}
+*/
+func LogInit() {
+ once.Do(func() {
+ var logsys = logger.NewStdLogSystem(os.Stdout, log.LstdFlags, logger.LogLevel(logger.DebugDetailLevel))
+ logger.AddLogSystem(logsys)
+ })
+}
+
+type testLogger struct{ t *testing.T }
+
+/* usage:
+func TestFunc(t *testing.T) {
+ defer test.Testlog.Detach()
+ // test
+}
+*/
+func Testlog(t *testing.T) testLogger {
+ logger.Reset()
+ l := testLogger{t}
+ logger.AddLogSystem(l)
+ return l
+}
+
+func (testLogger) GetLogLevel() logger.LogLevel { return logger.DebugLevel }
+func (testLogger) SetLogLevel(logger.LogLevel) {}
+
+func (l testLogger) LogPrint(level logger.LogLevel, msg string) {
+ l.t.Logf("%s", msg)
+}
+
+func (testLogger) Detach() {
+ logger.Flush()
+ logger.Reset()
+}
+
+type benchLogger struct{ b *testing.B }
+
+/* usage:
+func BenchmarkFunc(b *testing.B) {
+ defer test.Benchlog.Detach()
+ // test
+}
+*/
+func Benchlog(b *testing.B) benchLogger {
+ logger.Reset()
+ l := benchLogger{b}
+ logger.AddLogSystem(l)
+ return l
+}
+
+func (benchLogger) GetLogLevel() logger.LogLevel { return logger.Silence }
+
+func (benchLogger) SetLogLevel(logger.LogLevel) {}
+func (l benchLogger) LogPrint(level logger.LogLevel, msg string) {
+ l.b.Logf("%s", msg)
+}
+func (benchLogger) Detach() {
+ logger.Flush()
+ logger.Reset()
+}