39 lines
		
	
	
		
			891 B
		
	
	
	
		
			Go
		
	
	
	
	
	
		
		
			
		
	
	
			39 lines
		
	
	
		
			891 B
		
	
	
	
		
			Go
		
	
	
	
	
	
|   | package docserver | ||
|  | 
 | ||
|  | import ( | ||
|  | 	"io/ioutil" | ||
|  | 	"os" | ||
|  | 	"testing" | ||
|  | 
 | ||
|  | 	"github.com/ethereum/go-ethereum/common" | ||
|  | 	"github.com/ethereum/go-ethereum/crypto" | ||
|  | ) | ||
|  | 
 | ||
|  | func TestGetAuthContent(t *testing.T) { | ||
|  | 	text := "test" | ||
|  | 	hash := common.Hash{} | ||
|  | 	copy(hash[:], crypto.Sha3([]byte(text))) | ||
|  | 	ioutil.WriteFile("/tmp/test.content", []byte(text), os.ModePerm) | ||
|  | 
 | ||
|  | 	ds, err := New("/tmp/") | ||
|  | 	content, err := ds.GetAuthContent("file:///test.content", hash) | ||
|  | 	if err != nil { | ||
|  | 		t.Errorf("no error expected, got %v", err) | ||
|  | 	} | ||
|  | 	if string(content) != text { | ||
|  | 		t.Errorf("incorrect content. expected %v, got %v", text, string(content)) | ||
|  | 	} | ||
|  | 
 | ||
|  | 	hash = common.Hash{} | ||
|  | 	content, err = ds.GetAuthContent("file:///test.content", hash) | ||
|  | 	expected := "content hash mismatch" | ||
|  | 	if err == nil { | ||
|  | 		t.Errorf("expected error, got nothing") | ||
|  | 	} else { | ||
|  | 		if err.Error() != expected { | ||
|  | 			t.Errorf("expected error '%s' got '%v'", expected, err) | ||
|  | 		} | ||
|  | 	} | ||
|  | 
 | ||
|  | } |