39 lines
		
	
	
		
			676 B
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			39 lines
		
	
	
		
			676 B
		
	
	
	
		
			Go
		
	
	
	
	
	
| package log
 | |
| 
 | |
| import (
 | |
| 	"bytes"
 | |
| 	"testing"
 | |
| 	"time"
 | |
| )
 | |
| 
 | |
| func TestEncode(t *testing.T) {
 | |
| 	l1 := Entry{time.Now(), Normal, []byte("test entry")}
 | |
| 	l2 := Entry{}
 | |
| 
 | |
| 	buf := &bytes.Buffer{}
 | |
| 	l1.WriteTo(buf)
 | |
| 
 | |
| 	t.Log(buf.String())
 | |
| 
 | |
| 	_, err := l2.ReadFrom(buf)
 | |
| 	if err != nil {
 | |
| 		t.Error("read error: ", err)
 | |
| 	}
 | |
| 
 | |
| 	if l1.Taint != l2.Taint {
 | |
| 		t.Errorf("wrong taint: %v != %v", l1.Taint, l2.Taint)
 | |
| 	}
 | |
| 
 | |
| 	if l1.Time.UnixNano() != l2.Time.UnixNano() {
 | |
| 		t.Errorf("wrong time: %v != %v", l1.Time, l2.Time)
 | |
| 	}
 | |
| 
 | |
| 	if !bytes.Equal(l1.Data, l2.Data) {
 | |
| 		t.Errorf("wrong data: %q != %q", string(l1.Data), string(l2.Data))
 | |
| 	}
 | |
| 
 | |
| 	if l := len(buf.Bytes()); l > 0 {
 | |
| 		t.Errorf("%d bytes not read", l)
 | |
| 	}
 | |
| }
 |