Skip to content
This repository has been archived by the owner on Aug 22, 2022. It is now read-only.

Commit

Permalink
Merge pull request #77 from ghouscht/issue-76
Browse files Browse the repository at this point in the history
fix pkger error if a project contains a .go directory #76
  • Loading branch information
markbates authored Mar 4, 2020
2 parents c9b56cd + 5d81ba6 commit 5b8abba
Show file tree
Hide file tree
Showing 2 changed files with 26 additions and 2 deletions.
7 changes: 5 additions & 2 deletions parser/parser.go
Original file line number Diff line number Diff line change
Expand Up @@ -108,9 +108,12 @@ func (p *Parser) ParseDir(abs string, mode parser.Mode) ([]*ParsedSource, error)
return nil, fmt.Errorf("%s: here.Parse failed %s", err, abs)
}

fset := token.NewFileSet()
filter := func(f os.FileInfo) bool {
return !f.IsDir()
}

pkgs, err := parser.ParseDir(fset, abs, nil, 0)
fset := token.NewFileSet()
pkgs, err := parser.ParseDir(fset, abs, filter, 0)
if err != nil {
return nil, fmt.Errorf("%s: ParseDir failed %s", err, abs)
}
Expand Down
21 changes: 21 additions & 0 deletions parser/parser_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -71,6 +71,27 @@ func Test_Parser_Ref_Include(t *testing.T) {
r.Equal(26, l)
}

func Test_Parser_dotGo_Directory(t *testing.T) {
r := require.New(t)

ref, err := pkgtest.NewRef()
r.NoError(err)
defer os.RemoveAll(ref.Dir)

err = os.Mkdir(filepath.Join(ref.Dir, ".go"), 0755)
r.NoError(err)

disk, err := stdos.New(ref.Info)
r.NoError(err)

_, err = pkgtest.LoadFiles("/", ref, disk)
r.NoError(err)

res, err := Parse(ref.Info)
r.NoError(err)
r.Equal(11, len(res))
}

func Test_Parser_Example_HTTP(t *testing.T) {
r := require.New(t)

Expand Down

0 comments on commit 5b8abba

Please sign in to comment.