82 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			82 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
| package common
 | |
| 
 | |
| import (
 | |
| 	"os"
 | |
| 	"testing"
 | |
| 
 | |
| 	checker "gopkg.in/check.v1"
 | |
| )
 | |
| 
 | |
| func TestGoodFile(t *testing.T) {
 | |
| 	goodpath := "~/goethereumtest.pass"
 | |
| 	path := ExpandHomePath(goodpath)
 | |
| 	contentstring := "3.14159265358979323846"
 | |
| 
 | |
| 	err := WriteFile(path, []byte(contentstring))
 | |
| 	if err != nil {
 | |
| 		t.Error("Could not write file")
 | |
| 	}
 | |
| 
 | |
| 	if !FileExist(path) {
 | |
| 		t.Error("File not found at", path)
 | |
| 	}
 | |
| 
 | |
| 	v, err := ReadAllFile(path)
 | |
| 	if err != nil {
 | |
| 		t.Error("Could not read file", path)
 | |
| 	}
 | |
| 	if v != contentstring {
 | |
| 		t.Error("Expected", contentstring, "Got", v)
 | |
| 	}
 | |
| 
 | |
| }
 | |
| 
 | |
| func TestBadFile(t *testing.T) {
 | |
| 	badpath := "/this/path/should/not/exist/goethereumtest.fail"
 | |
| 	path := ExpandHomePath(badpath)
 | |
| 	contentstring := "3.14159265358979323846"
 | |
| 
 | |
| 	err := WriteFile(path, []byte(contentstring))
 | |
| 	if err == nil {
 | |
| 		t.Error("Wrote file, but should not be able to", path)
 | |
| 	}
 | |
| 
 | |
| 	if FileExist(path) {
 | |
| 		t.Error("Found file, but should not be able to", path)
 | |
| 	}
 | |
| 
 | |
| 	v, err := ReadAllFile(path)
 | |
| 	if err == nil {
 | |
| 		t.Error("Read file, but should not be able to", v)
 | |
| 	}
 | |
| 
 | |
| }
 | |
| 
 | |
| type CommonSuite struct{}
 | |
| 
 | |
| var _ = checker.Suite(&CommonSuite{})
 | |
| 
 | |
| func (s *CommonSuite) TestOS(c *checker.C) {
 | |
| 	expwin := (os.PathSeparator == '\\' && os.PathListSeparator == ';')
 | |
| 	res := IsWindows()
 | |
| 
 | |
| 	if !expwin {
 | |
| 		c.Assert(res, checker.Equals, expwin, checker.Commentf("IsWindows is", res, "but path is", os.PathSeparator))
 | |
| 	} else {
 | |
| 		c.Assert(res, checker.Not(checker.Equals), expwin, checker.Commentf("IsWindows is", res, "but path is", os.PathSeparator))
 | |
| 	}
 | |
| }
 | |
| 
 | |
| func (s *CommonSuite) TestWindonziePath(c *checker.C) {
 | |
| 	iswindowspath := os.PathSeparator == '\\'
 | |
| 	path := "/opt/eth/test/file.ext"
 | |
| 	res := WindonizePath(path)
 | |
| 	ressep := string(res[0])
 | |
| 
 | |
| 	if !iswindowspath {
 | |
| 		c.Assert(ressep, checker.Equals, "/")
 | |
| 	} else {
 | |
| 		c.Assert(ressep, checker.Not(checker.Equals), "/")
 | |
| 	}
 | |
| }
 |