github.com/ncdc/docker@v0.10.1-0.20160129113957-6c6729ef5b74/pkg/aaparser/aaparser_test.go (about) 1 package aaparser 2 3 import ( 4 "testing" 5 ) 6 7 type versionExpected struct { 8 output string 9 major int 10 minor int 11 } 12 13 func TestParseVersion(t *testing.T) { 14 versions := []versionExpected{ 15 { 16 output: `AppArmor parser version 2.10 17 Copyright (C) 1999-2008 Novell Inc. 18 Copyright 2009-2012 Canonical Ltd. 19 20 `, 21 major: 2, 22 minor: 10, 23 }, 24 { 25 output: `AppArmor parser version 2.8 26 Copyright (C) 1999-2008 Novell Inc. 27 Copyright 2009-2012 Canonical Ltd. 28 29 `, 30 major: 2, 31 minor: 8, 32 }, 33 { 34 output: `AppArmor parser version 2.20 35 Copyright (C) 1999-2008 Novell Inc. 36 Copyright 2009-2012 Canonical Ltd. 37 38 `, 39 major: 2, 40 minor: 20, 41 }, 42 { 43 output: `AppArmor parser version 2.05 44 Copyright (C) 1999-2008 Novell Inc. 45 Copyright 2009-2012 Canonical Ltd. 46 47 `, 48 major: 2, 49 minor: 5, 50 }, 51 } 52 53 for _, v := range versions { 54 major, minor, err := parseVersion(v.output) 55 if err != nil { 56 t.Fatalf("expected error to be nil for %#v, got: %v", v, err) 57 } 58 if major != v.major { 59 t.Fatalf("expected major version to be %d, was %d, for: %#v\n", v.major, major, v) 60 } 61 if minor != v.minor { 62 t.Fatalf("expected minor version to be %d, was %d, for: %#v\n", v.minor, minor, v) 63 } 64 } 65 }