Skip to content

Commit

Permalink
Bug fix: check names of ALL files (#78)
Browse files Browse the repository at this point in the history
  • Loading branch information
eedorenko committed May 21, 2021
1 parent 966e4ef commit 7cb1c2d
Show file tree
Hide file tree
Showing 3 changed files with 18 additions and 5 deletions.
5 changes: 0 additions & 5 deletions pkg/parser/parser.go
Original file line number Diff line number Diff line change
Expand Up @@ -135,11 +135,6 @@ func (p *Parser) walkDir(dirname string, done chan bool) <-chan string {
return nil
}

if err := util.IsTextFileFromFilename(path); err != nil {
log.Debug().Str("file", path).Str("reason", err.Error()).Msg("skipping")
return nil
}

paths <- path
return nil
})
Expand Down
7 changes: 7 additions & 0 deletions pkg/parser/violations.go
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ import (
"time"

"github.com/get-woke/woke/pkg/result"
"github.com/get-woke/woke/pkg/util"

"github.com/rs/zerolog/log"
)
Expand Down Expand Up @@ -43,6 +44,12 @@ func (p *Parser) generateFileViolations(file *os.File) (*result.FileResults, err
results.Results = append(results.Results, pathResult)
}

// Don't check file content if it's not a text file or file is empty
if err := util.IsTextFileFromFilename(filename); err != nil {
log.Debug().Str("file", filename).Str("reason", err.Error()).Msg("skipping content")
return results, nil
}

reader := bufio.NewReader(file)

line := 1
Expand Down
11 changes: 11 additions & 0 deletions pkg/parser/violations_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,17 @@ func TestGenerateFileViolations(t *testing.T) {
assert.Len(t, res.Results, 1)
assert.Regexp(t, "^Filename violation: ", res.Results[0].Reason())
})

t.Run("filename violation for empty file", func(t *testing.T) {
f, err := newFileWithPrefix(t, "empty-whitelist-", "")
assert.NoError(t, err)

p := testParser()
res, err := p.generateFileViolationsFromFilename(f.Name())
assert.NoError(t, err)
assert.Len(t, res.Results, 1)
assert.Regexp(t, "^Filename violation: ", res.Results[0].Reason())
})
}

// newFile creates a new file for testing. The file, and the directory that the file
Expand Down

0 comments on commit 7cb1c2d

Please sign in to comment.