aboutsummaryrefslogblamecommitdiffstats
path: root/storage/filesystem/config_test.go
blob: 94665b64836df3231e989990eff607366cc954ff (plain) (tree)
1
2
3
4
5
6
7
8
9


                  
                   
            
 
                                          
                                                                 
 
                             
                                     

 





                           


                             



                                                                   
                                         


                    

                                                                        
                                     
 
                                   
                            

                              
                                    




                                                                                         


                                          
                                  
 
package filesystem

import (
	"io/ioutil"
	"os"

	"github.com/src-d/go-git-fixtures"
	"srcd.works/go-git.v4/storage/filesystem/internal/dotgit"

	. "gopkg.in/check.v1"
	"srcd.works/go-billy.v1/osfs"
)

type ConfigSuite struct {
	fixtures.Suite

	dir  *dotgit.DotGit
	path string
}

var _ = Suite(&ConfigSuite{})

func (s *ConfigSuite) SetUpTest(c *C) {
	tmp, err := ioutil.TempDir("", "go-git-filestystem-config")
	c.Assert(err, IsNil)

	s.dir = dotgit.New(osfs.New(tmp))
	s.path = tmp
}

func (s *ConfigSuite) TestRemotes(c *C) {
	dir := dotgit.New(fixtures.Basic().ByTag(".git").One().DotGit())
	storer := &ConfigStorage{dir}

	cfg, err := storer.Config()
	c.Assert(err, IsNil)

	remotes := cfg.Remotes
	c.Assert(remotes, HasLen, 1)
	remote := remotes["origin"]
	c.Assert(remote.Name, Equals, "origin")
	c.Assert(remote.URL, Equals, "https://github.com/git-fixtures/basic")
	c.Assert(remote.Fetch, HasLen, 1)
	c.Assert(remote.Fetch[0].String(), Equals, "+refs/heads/*:refs/remotes/origin/*")
}

func (s *ConfigSuite) TearDownTest(c *C) {
	defer os.RemoveAll(s.path)
}