github.com/Kindred87/Obsidian@v0.0.0-20210809203756-86936424b848/directory/directory_test.go (about)

     1  package directory
     2  
     3  import (
     4  	"errors"
     5  	"os"
     6  	"testing"
     7  )
     8  
     9  func TestEnsureSpecExists(t *testing.T) {
    10  	if err := EnsureSpecExists(); err != nil {
    11  		t.Error(err)
    12  	}
    13  	defer RemoveSpec()
    14  
    15  	dir, err := Spec()
    16  	if err != nil {
    17  		t.Error(err)
    18  	}
    19  
    20  	if _, err := os.Stat(dir); errors.Is(err, os.ErrNotExist) {
    21  		t.Errorf("The specification directory was not created as expected")
    22  	}
    23  }
    24  
    25  func TestRemoveSpec(t *testing.T) {
    26  	if err := EnsureSpecExists(); err != nil {
    27  		t.Error(err)
    28  	}
    29  
    30  	if err := RemoveSpec(); err != nil {
    31  		t.Error(err)
    32  	}
    33  
    34  	dir, err := Spec()
    35  	if err != nil {
    36  		t.Error(err)
    37  	}
    38  
    39  	if _, err := os.Stat(dir); errors.Is(err, os.ErrNotExist) == false {
    40  		t.Errorf("Specification directory exists after calling RemoveSpec()")
    41  	}
    42  }
    43  
    44  func TestEnsureDatasourceExists(t *testing.T) {
    45  	if err := EnsureDatasourceExists(); err != nil {
    46  		t.Error(err)
    47  	}
    48  	defer RemoveSpec()
    49  
    50  	dir, err := Datasource()
    51  	if err != nil {
    52  		t.Error(err)
    53  	}
    54  
    55  	if _, err := os.Stat(dir); errors.Is(err, os.ErrNotExist) {
    56  		t.Errorf("The specification/datasource directory was not created as expected")
    57  	}
    58  }