func TestResourceProvider_stopErrors(t *testing.T) { p := new(terraform.MockResourceProvider) p.StopReturnError = errors.New("foo") // Create a mock provider client, _ := plugin.TestPluginRPCConn(t, pluginMap(&ServeOpts{ ProviderFunc: testProviderFixed(p), })) defer client.Close() // Request the provider raw, err := client.Dispense(ProviderPluginName) if err != nil { t.Fatalf("err: %s", err) } provider := raw.(terraform.ResourceProvider) // Stop e := provider.Stop() if !p.StopCalled { t.Fatal("stop should be called") } if e == nil { t.Fatal("should have error") } if e.Error() != "foo" { t.Fatalf("bad: %s", e) } }