| 34 | } |
| 35 | |
| 36 | func TestGpusOpts(t *testing.T) { |
| 37 | for _, testcase := range []string{ |
| 38 | `driver=nvidia,"capabilities=compute,utility","options=foo=bar,baz=qux"`, |
| 39 | `1,driver=nvidia,"capabilities=compute,utility","options=foo=bar,baz=qux"`, |
| 40 | `count=1,driver=nvidia,"capabilities=compute,utility","options=foo=bar,baz=qux"`, |
| 41 | `driver=nvidia,"capabilities=compute,utility","options=foo=bar,baz=qux",count=1`, |
| 42 | } { |
| 43 | var gpus GpuOpts |
| 44 | assert.Check(t, gpus.Set(testcase)) |
| 45 | gpuReqs := gpus.Value() |
| 46 | assert.Assert(t, is.Len(gpuReqs, 1)) |
| 47 | assert.Check(t, is.DeepEqual(gpuReqs[0], container.DeviceRequest{ |
| 48 | Driver: "nvidia", |
| 49 | Count: 1, |
| 50 | Capabilities: [][]string{{"compute", "utility", "gpu"}}, |
| 51 | Options: map[string]string{"foo": "bar", "baz": "qux"}, |
| 52 | })) |
| 53 | } |
| 54 | } |