Fix TestGetAdditionalGroups on i686

Fixes: #941

Signed-off-by: Qiang Huang <h.huangqiang@huawei.com>
This commit is contained in:
Qiang Huang 2016-09-27 06:02:22 -04:00
parent 650c97a111
commit dc0a4cf488
2 changed files with 19 additions and 7 deletions

View File

@ -7,6 +7,8 @@ import (
"strconv" "strconv"
"strings" "strings"
"testing" "testing"
"github.com/opencontainers/runc/libcontainer/utils"
) )
func TestUserParseLine(t *testing.T) { func TestUserParseLine(t *testing.T) {
@ -382,6 +384,12 @@ this is just some garbage data
} }
func TestGetAdditionalGroups(t *testing.T) { func TestGetAdditionalGroups(t *testing.T) {
type foo struct {
groups []string
expected []int
hasError bool
}
const groupContent = ` const groupContent = `
root:x:0:root root:x:0:root
adm:x:43: adm:x:43:
@ -389,11 +397,7 @@ grp:x:1234:root,adm
adm:x:4343:root,adm-duplicate adm:x:4343:root,adm-duplicate
this is just some garbage data this is just some garbage data
` `
tests := []struct { tests := []foo{
groups []string
expected []int
hasError bool
}{
{ {
// empty group // empty group
groups: []string{}, groups: []string{},
@ -436,12 +440,15 @@ this is just some garbage data
expected: nil, expected: nil,
hasError: true, hasError: true,
}, },
{ }
if utils.GetIntSize() > 4 {
tests = append(tests, foo{
// groups with too large id // groups with too large id
groups: []string{strconv.Itoa(1 << 31)}, groups: []string{strconv.Itoa(1 << 31)},
expected: nil, expected: nil,
hasError: true, hasError: true,
}, })
} }
for _, test := range tests { for _, test := range tests {

View File

@ -9,6 +9,7 @@ import (
"path/filepath" "path/filepath"
"strings" "strings"
"syscall" "syscall"
"unsafe"
) )
const ( const (
@ -119,3 +120,7 @@ func Annotations(labels []string) (bundle string, userAnnotations map[string]str
} }
return return
} }
func GetIntSize() int {
return int(unsafe.Sizeof(1))
}