vendor dependencies with dep
This commit is contained in:
parent
93d8310491
commit
1384296a47
2712 changed files with 965742 additions and 0 deletions
14
vendor/github.com/ssor/bom/.travis.yml
generated
vendored
Normal file
14
vendor/github.com/ssor/bom/.travis.yml
generated
vendored
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
language: go
|
||||
go:
|
||||
- tip
|
||||
- 1.8
|
||||
- 1.7
|
||||
- 1.6
|
||||
- 1.5
|
||||
- 1.4
|
||||
- 1.3
|
||||
- 1.2
|
||||
notifications:
|
||||
email:
|
||||
on_success: change
|
||||
on_failure: always
|
||||
21
vendor/github.com/ssor/bom/LICENSE
generated
vendored
Normal file
21
vendor/github.com/ssor/bom/LICENSE
generated
vendored
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
MIT License
|
||||
|
||||
Copyright (c) 2017 Asher
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
23
vendor/github.com/ssor/bom/README.md
generated
vendored
Normal file
23
vendor/github.com/ssor/bom/README.md
generated
vendored
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
# bom
|
||||
small tools for cleaning bom from byte array or reader
|
||||
|
||||
|
||||
## Installation
|
||||
|
||||
```sh
|
||||
$ go get github.com/ssor/bom
|
||||
```
|
||||
|
||||
## How to Use
|
||||
|
||||
|
||||
```
|
||||
bs := []byte{bom0, bom1, bom2, 0x11}
|
||||
result := CleanBom(bs)
|
||||
```
|
||||
|
||||
```
|
||||
bs := []byte{bom0, bom1, bom2, 0x11}
|
||||
result := NewReaderWithoutBom(bytes.NewReader(bs))
|
||||
|
||||
```
|
||||
34
vendor/github.com/ssor/bom/bom.go
generated
vendored
Normal file
34
vendor/github.com/ssor/bom/bom.go
generated
vendored
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
package bom
|
||||
|
||||
import (
|
||||
"bytes"
|
||||
"io"
|
||||
"io/ioutil"
|
||||
)
|
||||
|
||||
const (
|
||||
bom0 = 0xef
|
||||
bom1 = 0xbb
|
||||
bom2 = 0xbf
|
||||
)
|
||||
|
||||
// CleanBom returns b with the 3 byte BOM stripped off the front if it is present.
|
||||
// If the BOM is not present, then b is returned.
|
||||
func CleanBom(b []byte) []byte {
|
||||
if len(b) >= 3 &&
|
||||
b[0] == bom0 &&
|
||||
b[1] == bom1 &&
|
||||
b[2] == bom2 {
|
||||
return b[3:]
|
||||
}
|
||||
return b
|
||||
}
|
||||
|
||||
// NewReaderWithoutBom returns an io.Reader that will skip over initial UTF-8 byte order marks.
|
||||
func NewReaderWithoutBom(r io.Reader) (io.Reader, error) {
|
||||
bs, err := ioutil.ReadAll(r)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return bytes.NewReader(CleanBom(bs)), nil
|
||||
}
|
||||
55
vendor/github.com/ssor/bom/bom_test.go
generated
vendored
Normal file
55
vendor/github.com/ssor/bom/bom_test.go
generated
vendored
Normal file
|
|
@ -0,0 +1,55 @@
|
|||
package bom
|
||||
|
||||
import (
|
||||
"bytes"
|
||||
"io/ioutil"
|
||||
"testing"
|
||||
)
|
||||
|
||||
var (
|
||||
test_cases = []struct {
|
||||
src []byte
|
||||
expected []byte
|
||||
}{
|
||||
{
|
||||
[]byte{bom0, bom1, bom2}, []byte{},
|
||||
},
|
||||
{
|
||||
[]byte{0x33, bom0, bom1, bom2}, []byte{0x33, bom0, bom1, bom2},
|
||||
},
|
||||
{
|
||||
[]byte{bom0, bom1}, []byte{bom0, bom1},
|
||||
},
|
||||
{
|
||||
[]byte{bom0, bom2}, []byte{bom0, bom2},
|
||||
},
|
||||
{
|
||||
[]byte{bom0, bom1, bom2, 0x11}, []byte{0x11},
|
||||
},
|
||||
}
|
||||
)
|
||||
|
||||
func TestNewReaderWithoutBom(t *testing.T) {
|
||||
for index, test_case := range test_cases {
|
||||
result, err := NewReaderWithoutBom(bytes.NewReader(test_case.src))
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
bs, err := ioutil.ReadAll(result)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
if bytes.Compare(bs, test_case.expected) != 0 {
|
||||
t.Fatalf("The %d th test_case failed", index)
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
func TestCleanBom(t *testing.T) {
|
||||
for index, test_case := range test_cases {
|
||||
result := CleanBom(test_case.src)
|
||||
if bytes.Compare(result, test_case.expected) != 0 {
|
||||
t.Fatalf("The %d th test_case failed", index)
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue