github.com/gofunct/common@v0.0.0-20190131174352-fd058c7fbf22/pkg/temp/temptest/example_test.go (about)

     1  package temptest
     2  
     3  import (
     4  	"errors"
     5  	"fmt"
     6  	"io"
     7  
     8  	"github.com/gofunct/common/pkg/temp"
     9  )
    10  
    11  func TestedCode(dir temp.Directory) error {
    12  	f, err := dir.NewFile("filename")
    13  	if err != nil {
    14  		return err
    15  	}
    16  	_, err = io.WriteString(f, "Bonjour!")
    17  	if err != nil {
    18  		return err
    19  	}
    20  	return dir.Delete()
    21  }
    22  
    23  func Example() {
    24  	dir := FakeDir{}
    25  
    26  	err := TestedCode(&dir)
    27  	if err != nil {
    28  		panic(err)
    29  	}
    30  
    31  	if dir.Deleted == false {
    32  		panic(errors.New("Directory should have been deleted"))
    33  	}
    34  
    35  	if dir.Files["filename"] == nil {
    36  		panic(errors.New(`"filename" should have been created`))
    37  	}
    38  
    39  	fmt.Println(dir.Files["filename"].Buffer.String())
    40  	// Output: Bonjour!
    41  }