(t *testing.T)
| 373 | } |
| 374 | |
| 375 | func TestModifyContainerNamespaceOptions(t *testing.T) { |
| 376 | sandboxID := "sandbox" |
| 377 | sandboxNSMode := fmt.Sprintf("container:%v", sandboxID) |
| 378 | cases := []struct { |
| 379 | name string |
| 380 | nsOpt *runtimeapi.NamespaceOption |
| 381 | expected *dockercontainer.HostConfig |
| 382 | }{ |
| 383 | { |
| 384 | name: "Host Network NamespaceOption", |
| 385 | nsOpt: &runtimeapi.NamespaceOption{ |
| 386 | Network: runtimeapi.NamespaceMode_NODE, |
| 387 | }, |
| 388 | expected: &dockercontainer.HostConfig{ |
| 389 | NetworkMode: dockercontainer.NetworkMode(sandboxNSMode), |
| 390 | IpcMode: dockercontainer.IpcMode(sandboxNSMode), |
| 391 | UTSMode: namespaceModeHost, |
| 392 | PidMode: dockercontainer.PidMode(sandboxNSMode), |
| 393 | }, |
| 394 | }, |
| 395 | { |
| 396 | name: "Host IPC NamespaceOption", |
| 397 | nsOpt: &runtimeapi.NamespaceOption{ |
| 398 | Ipc: runtimeapi.NamespaceMode_NODE, |
| 399 | }, |
| 400 | expected: &dockercontainer.HostConfig{ |
| 401 | NetworkMode: dockercontainer.NetworkMode(sandboxNSMode), |
| 402 | IpcMode: dockercontainer.IpcMode(sandboxNSMode), |
| 403 | PidMode: dockercontainer.PidMode(sandboxNSMode), |
| 404 | }, |
| 405 | }, |
| 406 | { |
| 407 | name: "Host PID NamespaceOption", |
| 408 | nsOpt: &runtimeapi.NamespaceOption{ |
| 409 | Pid: runtimeapi.NamespaceMode_NODE, |
| 410 | }, |
| 411 | expected: &dockercontainer.HostConfig{ |
| 412 | NetworkMode: dockercontainer.NetworkMode(sandboxNSMode), |
| 413 | IpcMode: dockercontainer.IpcMode(sandboxNSMode), |
| 414 | PidMode: namespaceModeHost, |
| 415 | }, |
| 416 | }, |
| 417 | { |
| 418 | name: "Pod PID NamespaceOption", |
| 419 | nsOpt: &runtimeapi.NamespaceOption{ |
| 420 | Pid: runtimeapi.NamespaceMode_POD, |
| 421 | }, |
| 422 | expected: &dockercontainer.HostConfig{ |
| 423 | NetworkMode: dockercontainer.NetworkMode(sandboxNSMode), |
| 424 | IpcMode: dockercontainer.IpcMode(sandboxNSMode), |
| 425 | PidMode: dockercontainer.PidMode(sandboxNSMode), |
| 426 | }, |
| 427 | }, |
| 428 | { |
| 429 | name: "Target PID NamespaceOption", |
| 430 | nsOpt: &runtimeapi.NamespaceOption{ |
| 431 | Pid: runtimeapi.NamespaceMode_TARGET, |
| 432 | TargetId: "some-container", |
nothing calls this directly
no test coverage detected
searching dependent graphs…