From 70ac6365eecfb6a88f56a46b9b7d685e6726e43c Mon Sep 17 00:00:00 2001 From: Alexandre Garand Date: Mon, 8 Jul 2019 16:56:30 +0200 Subject: add test for importation and fix importation for domain --- mailgun/resource_mailgun_domain.go | 9 ++++++++- mailgun/resource_mailgun_domain_test.go | 29 +++++++++++++++++++++++++++++ mailgun/resource_mailgun_route_test.go | 23 +++++++++++++++++++++++ 3 files changed, 60 insertions(+), 1 deletion(-) diff --git a/mailgun/resource_mailgun_domain.go b/mailgun/resource_mailgun_domain.go index 1fcba83..8ba0704 100644 --- a/mailgun/resource_mailgun_domain.go +++ b/mailgun/resource_mailgun_domain.go @@ -368,13 +368,20 @@ func ReadDomain(d *schema.ResourceData, meta interface{}) error { mg := meta.(*mailgun.MailgunImpl) ctx, cancel := context.WithTimeout(context.Background(), time.Second*30) defer cancel() - domainName := d.Get("name").(string) + domainName := d.Id() mg = mailgun.NewMailgun(domainName, mg.APIKey()) domainResponse, err := mg.GetDomain(ctx, domainName) if err != nil { return fmt.Errorf("Error Getting mailgun domain Details for %s: Error: %s", d.Id(), err) } + if _, ok := d.GetOk("dkim_key_size"); !ok { + d.Set("dkim_key_size", 1024) + } + + if _, ok := d.GetOk("force_dkim_authority"); !ok { + d.Set("force_dkim_authority", false) + } d.Set("created_at", domainResponse.Domain.CreatedAt) d.Set("smtd_login", domainResponse.Domain.SMTPLogin) diff --git a/mailgun/resource_mailgun_domain_test.go b/mailgun/resource_mailgun_domain_test.go index 6096c60..952e013 100644 --- a/mailgun/resource_mailgun_domain_test.go +++ b/mailgun/resource_mailgun_domain_test.go @@ -105,6 +105,30 @@ func TestAccMailgunDomain_withUpdate(t *testing.T) { }) } + +func TestDomain_importBasic(t *testing.T) { + var domain fullDomain + + resource.Test(t, resource.TestCase{ + PreCheck: func() { testAccPreCheck(t) }, + Providers: testAccProviders, + CheckDestroy: testAccDomainCheckDestroy(&domain), + Steps: []resource.TestStep{ + { + Config: interpolateTerraformTemplateDomain(testAccDomainConfig_import), + Check: resource.ComposeTestCheckFunc( + testAccDomainCheckExists("mailgun_domain.exemple",&domain), + ), + }, + { + ResourceName: "mailgun_domain.exemple", + ImportState: true, + ImportStateVerify: true, + }, + }, + }) +} + func testAccDomainCheckExists(rn string, domain *fullDomain) resource.TestCheckFunc { return func(s *terraform.State) error { rs, ok := s.RootModule().Resources[rn] @@ -226,3 +250,8 @@ resource "mailgun_domain" "exemple" { } ` +const testAccDomainConfig_import = ` +resource "mailgun_domain" "exemple" { + name = "%s" +} +` diff --git a/mailgun/resource_mailgun_route_test.go b/mailgun/resource_mailgun_route_test.go index 2d7b221..02d552a 100644 --- a/mailgun/resource_mailgun_route_test.go +++ b/mailgun/resource_mailgun_route_test.go @@ -57,6 +57,29 @@ func TestAccMailgunRoute_withUpdate(t *testing.T) { }) } +func TestRoute_importBasic(t *testing.T) { + var route mailgun.Route + + resource.Test(t, resource.TestCase{ + PreCheck: func() { testAccPreCheck(t) }, + Providers: testAccProviders, + CheckDestroy: testAccRouteCheckDestroy(&route), + Steps: []resource.TestStep{ + { + Config: testAccRouteConfig_basic, + Check: resource.ComposeTestCheckFunc( + testAccRouteCheckExists("mailgun_route.exemple",&route), + ), + }, + { + ResourceName: "mailgun_route.exemple", + ImportState: true, + ImportStateVerify: true, + }, + }, + }) +} + func testAccRouteCheckExists(rn string, route *mailgun.Route) resource.TestCheckFunc { return func(s *terraform.State) error { rs, ok := s.RootModule().Resources[rn] -- cgit v1.2.3