github.com/taubyte/tau-cli@v0.1.13-0.20240326000942-487f0d57edfc/singletons/templates/clone_website_test.go (about)

     1  package templates_test
     2  
     3  import (
     4  	"os"
     5  	"testing"
     6  
     7  	"github.com/taubyte/tau-cli/singletons/templates"
     8  	"gotest.tools/v3/assert"
     9  )
    10  
    11  func TestCloneWebsite(t *testing.T) {
    12  	testFolder := "./assets/tb_website_someWebsite"
    13  	err := os.MkdirAll(testFolder, 0755)
    14  	assert.NilError(t, err)
    15  
    16  	defer os.RemoveAll("./assets")
    17  
    18  	websites, err := templates.Get().Websites()
    19  	if err != nil {
    20  		t.Error(err)
    21  		return
    22  	}
    23  
    24  	websiteInfo, ok := websites["Angular"]
    25  	if !ok {
    26  		t.Error("website not found")
    27  		return
    28  	}
    29  
    30  	err = websiteInfo.CloneTo(testFolder)
    31  	assert.NilError(t, err)
    32  
    33  	dirs, err := os.ReadDir(testFolder)
    34  	assert.NilError(t, err)
    35  
    36  	if len(dirs) < 5 {
    37  		t.Errorf("not enough files in folder %d expected at least 5", len(dirs))
    38  		return
    39  	}
    40  }