github.com/c3pm-labs/c3pm@v0.3.0/ctpm/init_test.go (about)

     1  package ctpm_test
     2  
     3  import (
     4  	"github.com/c3pm-labs/c3pm/config"
     5  	"github.com/c3pm-labs/c3pm/config/manifest"
     6  	"github.com/c3pm-labs/c3pm/ctpm"
     7  	. "github.com/onsi/ginkgo"
     8  	. "github.com/onsi/gomega"
     9  	"os"
    10  	"path/filepath"
    11  )
    12  
    13  var _ = Describe("Init", func() {
    14  	Describe("Project creation", func() {
    15  		var projectFolder = getTestFolder("InitTestFolder")
    16  		projectFolder, err := filepath.Abs(projectFolder)
    17  		Ω(err).ShouldNot(HaveOccurred())
    18  
    19  		var projectName = "InitProject"
    20  		var projectType = manifest.Library
    21  		var projectDesc = "description"
    22  		var projectLicense = "MIT"
    23  
    24  		When("initializing manifest", func() {
    25  			It("Did not fail", func() {
    26  				var err error
    27  				m := manifest.New()
    28  				m.Name = projectName
    29  				m.Version, err = manifest.VersionFromString("1.0.0")
    30  				Ω(err).ShouldNot(HaveOccurred())
    31  
    32  				m.Type = projectType
    33  				m.License = projectLicense
    34  				m.Description = projectDesc
    35  				pc := &config.ProjectConfig{Manifest: m, ProjectRoot: projectFolder}
    36  				err = ctpm.Init(pc, ctpm.InitDefaultOptions)
    37  				Ω(err).ShouldNot(HaveOccurred())
    38  			})
    39  		})
    40  
    41  		It("Create c3pm.yml file", func() {
    42  			pc, err := manifest.Load(filepath.Join(projectFolder, "c3pm.yml"))
    43  			Ω(err).ShouldNot(HaveOccurred())
    44  
    45  			Ω(pc.Name).To(Equal(projectName))
    46  			Ω(pc.License).To(Equal(projectLicense))
    47  			Ω(pc.Type).To(Equal(projectType))
    48  			Ω(pc.Description).To(Equal(projectDesc))
    49  		})
    50  		// 		PIt("Project template of either library or an executable")
    51  		It("Depending on the user's choice, a LICENSE file", func() {
    52  			lic, err := os.Stat(filepath.Join(projectFolder, "LICENSE"))
    53  			Ω(err).ShouldNot(HaveOccurred())
    54  
    55  			Ω(lic).ShouldNot(BeNil())
    56  		})
    57  	})
    58  })