Skip to content

Commit a97deef

Browse files
jeanjean
authored andcommitted
fix: update PreCheck functions to use quota support checks in quota-related tests
1 parent df2c76b commit a97deef

File tree

2 files changed

+24
-11
lines changed

2 files changed

+24
-11
lines changed

cloudstack/data_source_cloudstack_quota_test.go

Lines changed: 18 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ import (
2323
"fmt"
2424
"testing"
2525

26+
"github.com/apache/cloudstack-go/v2/cloudstack"
2627
"github.com/hashicorp/terraform-plugin-testing/helper/resource"
2728
"github.com/hashicorp/terraform-plugin-testing/terraform"
2829
)
@@ -31,7 +32,7 @@ func TestAccCloudStackQuotaDataSource_basic(t *testing.T) {
3132
resourceName := "data.cloudstack_quota.test"
3233

3334
resource.Test(t, resource.TestCase{
34-
PreCheck: func() { testAccPreCheck(t) },
35+
PreCheck: func() { testAccPreCheckQuotaSupport(t) },
3536
Providers: testAccProviders,
3637
Steps: []resource.TestStep{
3738
{
@@ -49,7 +50,7 @@ func TestAccCloudStackQuotaDataSource_withFilters(t *testing.T) {
4950
resourceName := "data.cloudstack_quota.test"
5051

5152
resource.Test(t, resource.TestCase{
52-
PreCheck: func() { testAccPreCheck(t) },
53+
PreCheck: func() { testAccPreCheckQuotaSupport(t) },
5354
Providers: testAccProviders,
5455
Steps: []resource.TestStep{
5556
{
@@ -67,7 +68,7 @@ func TestAccCloudStackQuotaEnabledDataSource_basic(t *testing.T) {
6768
resourceName := "data.cloudstack_quota_enabled.test"
6869

6970
resource.Test(t, resource.TestCase{
70-
PreCheck: func() { testAccPreCheck(t) },
71+
PreCheck: func() { testAccPreCheckQuotaSupport(t) },
7172
Providers: testAccProviders,
7273
Steps: []resource.TestStep{
7374
{
@@ -85,7 +86,7 @@ func TestAccCloudStackQuotaTariffDataSource_basic(t *testing.T) {
8586
resourceName := "data.cloudstack_quota_tariff.test"
8687

8788
resource.Test(t, resource.TestCase{
88-
PreCheck: func() { testAccPreCheck(t) },
89+
PreCheck: func() { testAccPreCheckQuotaSupport(t) },
8990
Providers: testAccProviders,
9091
Steps: []resource.TestStep{
9192
{
@@ -103,7 +104,7 @@ func TestAccCloudStackQuotaTariffDataSource_withFilters(t *testing.T) {
103104
resourceName := "data.cloudstack_quota_tariff.test"
104105

105106
resource.Test(t, resource.TestCase{
106-
PreCheck: func() { testAccPreCheck(t) },
107+
PreCheck: func() { testAccPreCheckQuotaSupport(t) },
107108
Providers: testAccProviders,
108109
Steps: []resource.TestStep{
109110
{
@@ -163,6 +164,18 @@ func testAccCheckCloudStackQuotaTariffDataSourceExists(n string) resource.TestCh
163164
}
164165
}
165166

167+
func testAccPreCheckQuotaSupport(t *testing.T) {
168+
testAccPreCheck(t)
169+
cs := testAccProvider.Meta().(*cloudstack.CloudStackClient)
170+
171+
// Try to check if quota is enabled to verify if the feature is available
172+
p := cs.Quota.NewQuotaIsEnabledParams()
173+
_, err := cs.Quota.QuotaIsEnabled(p)
174+
if err != nil {
175+
t.Skipf("Quota feature not supported or not enabled in this CloudStack instance: %v", err)
176+
}
177+
}
178+
166179
// Test configuration functions
167180
func testAccCloudStackQuotaDataSource_basic() string {
168181
return `

cloudstack/resource_cloudstack_quota_tariff_test.go

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ func TestAccCloudStackQuotaTariff_basic(t *testing.T) {
3333
var quotaTariff cloudstack.QuotaTariffList
3434

3535
resource.Test(t, resource.TestCase{
36-
PreCheck: func() { testAccPreCheck(t) },
36+
PreCheck: func() { testAccPreCheckQuotaSupport(t) },
3737
Providers: testAccProviders,
3838
CheckDestroy: testAccCheckCloudStackQuotaTariffDestroy,
3939
Steps: []resource.TestStep{
@@ -54,7 +54,7 @@ func TestAccCloudStackQuotaTariff_update(t *testing.T) {
5454
var quotaTariff cloudstack.QuotaTariffList
5555

5656
resource.Test(t, resource.TestCase{
57-
PreCheck: func() { testAccPreCheck(t) },
57+
PreCheck: func() { testAccPreCheckQuotaSupport(t) },
5858
Providers: testAccProviders,
5959
CheckDestroy: testAccCheckCloudStackQuotaTariffDestroy,
6060
Steps: []resource.TestStep{
@@ -83,7 +83,7 @@ func TestAccCloudStackQuotaTariff_import(t *testing.T) {
8383
resourceName := "cloudstack_quota_tariff.test"
8484

8585
resource.Test(t, resource.TestCase{
86-
PreCheck: func() { testAccPreCheck(t) },
86+
PreCheck: func() { testAccPreCheckQuotaSupport(t) },
8787
Providers: testAccProviders,
8888
CheckDestroy: testAccCheckCloudStackQuotaTariffDestroy,
8989
Steps: []resource.TestStep{
@@ -179,7 +179,7 @@ resource "cloudstack_quota_tariff" "test" {
179179
// Test validation errors
180180
func TestAccCloudStackQuotaTariff_validation(t *testing.T) {
181181
resource.Test(t, resource.TestCase{
182-
PreCheck: func() { testAccPreCheck(t) },
182+
PreCheck: func() { testAccPreCheckQuotaSupport(t) },
183183
Providers: testAccProviders,
184184
Steps: []resource.TestStep{
185185
{
@@ -199,7 +199,7 @@ func TestAccCloudStackQuotaTariff_activationRules(t *testing.T) {
199199
var quotaTariff cloudstack.QuotaTariffList
200200

201201
resource.Test(t, resource.TestCase{
202-
PreCheck: func() { testAccPreCheck(t) },
202+
PreCheck: func() { testAccPreCheckQuotaSupport(t) },
203203
Providers: testAccProviders,
204204
CheckDestroy: testAccCheckCloudStackQuotaTariffDestroy,
205205
Steps: []resource.TestStep{
@@ -219,7 +219,7 @@ func TestAccCloudStackQuotaTariff_complexActivationRules(t *testing.T) {
219219
var quotaTariff cloudstack.QuotaTariffList
220220

221221
resource.Test(t, resource.TestCase{
222-
PreCheck: func() { testAccPreCheck(t) },
222+
PreCheck: func() { testAccPreCheckQuotaSupport(t) },
223223
Providers: testAccProviders,
224224
CheckDestroy: testAccCheckCloudStackQuotaTariffDestroy,
225225
Steps: []resource.TestStep{

0 commit comments

Comments
 (0)