1
1
package docker
2
2
3
3
import (
4
+ "fmt"
5
+ "github.com/hashicorp/terraform-plugin-sdk/terraform"
6
+ "strconv"
4
7
"testing"
5
8
6
9
"github.com/hashicorp/terraform-plugin-sdk/helper/resource"
@@ -15,6 +18,7 @@ func TestAccDockerNetworkDataSource_basic(t *testing.T) {
15
18
Config : testAccDockerNetworkDataSourceConfig ,
16
19
Check : resource .ComposeTestCheckFunc (
17
20
resource .TestCheckResourceAttr ("data.docker_network.bridge" , "name" , "bridge" ),
21
+ testAccDockerNetworkDataSourceIPAMRead ,
18
22
resource .TestCheckResourceAttr ("data.docker_network.bridge" , "driver" , "bridge" ),
19
23
resource .TestCheckResourceAttr ("data.docker_network.bridge" , "internal" , "false" ),
20
24
resource .TestCheckResourceAttr ("data.docker_network.bridge" , "scope" , "local" ),
@@ -24,6 +28,22 @@ func TestAccDockerNetworkDataSource_basic(t *testing.T) {
24
28
})
25
29
}
26
30
31
+ func testAccDockerNetworkDataSourceIPAMRead (state * terraform.State ) error {
32
+ bridge := state .RootModule ().Resources ["data.docker_network.bridge" ]
33
+ if bridge == nil {
34
+ return fmt .Errorf ("unable to find data.docker_network.bridge" )
35
+ }
36
+ attr := bridge .Primary .Attributes ["ipam_config.#" ]
37
+ numberOfReadConfig , err := strconv .Atoi (attr )
38
+ if err != nil {
39
+ return err
40
+ }
41
+ if numberOfReadConfig < 1 {
42
+ return fmt .Errorf ("unable to find any ipam_config" )
43
+ }
44
+ return nil
45
+ }
46
+
27
47
const testAccDockerNetworkDataSourceConfig = `
28
48
data "docker_network" "bridge" {
29
49
name = "bridge"
0 commit comments