=== RUN   TestPricingProviderStructure
    ibm_provider_test.go:42: Pricing provider package compiles successfully
--- PASS: TestPricingProviderStructure (0.00s)
=== RUN   TestNewIBMPricingProvider
--- PASS: TestNewIBMPricingProvider (0.00s)
=== RUN   TestIBMPricingProvider_Refresh
=== RUN   TestIBMPricingProvider_Refresh/refresh_with_nil_client
--- PASS: TestIBMPricingProvider_Refresh (0.00s)
    --- PASS: TestIBMPricingProvider_Refresh/refresh_with_nil_client (0.00s)
=== RUN   TestRefreshWithoutClient
--- PASS: TestRefreshWithoutClient (0.00s)
=== RUN   TestGetPricesWithoutData
--- PASS: TestGetPricesWithoutData (0.00s)
=== RUN   TestRefreshFailsWithoutClient
--- PASS: TestRefreshFailsWithoutClient (0.00s)
=== RUN   TestGetPriceWithoutData
--- PASS: TestGetPriceWithoutData (0.00s)
=== RUN   TestGetPricesErrorHandling
--- PASS: TestGetPricesErrorHandling (0.00s)
=== RUN   TestIBMPricingProviderWithMockClient
=== RUN   TestIBMPricingProviderWithMockClient/get_price_for_valid_instance
=== RUN   TestIBMPricingProviderWithMockClient/get_price_for_unknown_instance
--- PASS: TestIBMPricingProviderWithMockClient (0.00s)
    --- PASS: TestIBMPricingProviderWithMockClient/get_price_for_valid_instance (0.00s)
    --- PASS: TestIBMPricingProviderWithMockClient/get_price_for_unknown_instance (0.00s)
=== RUN   TestIBMPricingProviderCaching
--- PASS: TestIBMPricingProviderCaching (0.00s)
=== RUN   TestIBMPricingProviderConcurrency
--- PASS: TestIBMPricingProviderConcurrency (0.00s)
=== RUN   TestIBMPricingProviderGetPricesForZone
=== RUN   TestIBMPricingProviderGetPricesForZone/get_prices_for_us-south-1
=== RUN   TestIBMPricingProviderGetPricesForZone/get_prices_for_eu-de-1
=== RUN   TestIBMPricingProviderGetPricesForZone/get_prices_for_unknown_zone
--- PASS: TestIBMPricingProviderGetPricesForZone (0.00s)
    --- PASS: TestIBMPricingProviderGetPricesForZone/get_prices_for_us-south-1 (0.00s)
    --- PASS: TestIBMPricingProviderGetPricesForZone/get_prices_for_eu-de-1 (0.00s)
    --- PASS: TestIBMPricingProviderGetPricesForZone/get_prices_for_unknown_zone (0.00s)
=== RUN   TestIBMPricingProviderTTLExpiration
--- PASS: TestIBMPricingProviderTTLExpiration (0.00s)
=== RUN   TestIBMPricingProviderInitialization
--- PASS: TestIBMPricingProviderInitialization (0.00s)
=== RUN   TestIBMPricingProviderRefreshBehavior
=== RUN   TestIBMPricingProviderRefreshBehavior/refresh_with_nil_client
--- PASS: TestIBMPricingProviderRefreshBehavior (0.00s)
    --- PASS: TestIBMPricingProviderRefreshBehavior/refresh_with_nil_client (0.00s)
=== RUN   TestIBMPricingProviderRegionalPricing
--- PASS: TestIBMPricingProviderRegionalPricing (0.00s)
=== RUN   TestIBMPricingProviderUseFakeData
--- PASS: TestIBMPricingProviderUseFakeData (0.00s)
=== RUN   TestFetchPricingData_NilClient
--- PASS: TestFetchPricingData_NilClient (0.00s)
=== RUN   TestFetchInstancePricing_NilEntryID
--- PASS: TestFetchInstancePricing_NilEntryID (0.00s)
=== RUN   TestFetchPricingFromAPI_Coverage
--- PASS: TestFetchPricingFromAPI_Coverage (0.00s)
=== RUN   TestRefresh_ImprovedCoverage
--- PASS: TestRefresh_ImprovedCoverage (0.00s)
=== RUN   TestGetAllRegionsAndZones
=== RUN   TestGetAllRegionsAndZones/vpc_client_error
=== RUN   TestGetAllRegionsAndZones/list_regions_error
=== RUN   TestGetAllRegionsAndZones/no_regions
=== RUN   TestGetAllRegionsAndZones/zones_error_for_one_region
=== RUN   TestGetAllRegionsAndZones/success
--- PASS: TestGetAllRegionsAndZones (0.00s)
    --- PASS: TestGetAllRegionsAndZones/vpc_client_error (0.00s)
    --- PASS: TestGetAllRegionsAndZones/list_regions_error (0.00s)
    --- PASS: TestGetAllRegionsAndZones/no_regions (0.00s)
    --- PASS: TestGetAllRegionsAndZones/zones_error_for_one_region (0.00s)
    --- PASS: TestGetAllRegionsAndZones/success (0.00s)
=== RUN   TestFetchPricingFromAPI_ErrorPaths
--- PASS: TestFetchPricingFromAPI_ErrorPaths (0.00s)
=== RUN   TestFetchPricingData_Comprehensive
=== RUN   TestFetchPricingData_Comprehensive/catalog_client_error
=== RUN   TestFetchPricingData_Comprehensive/list_instance_types_error
=== RUN   TestFetchPricingData_Comprehensive/vpc_regions_error
--- PASS: TestFetchPricingData_Comprehensive (0.00s)
    --- PASS: TestFetchPricingData_Comprehensive/catalog_client_error (0.00s)
    --- PASS: TestFetchPricingData_Comprehensive/list_instance_types_error (0.00s)
    --- PASS: TestFetchPricingData_Comprehensive/vpc_regions_error (0.00s)
=== RUN   TestGetPrices_CacheRefresh
--- PASS: TestGetPrices_CacheRefresh (0.00s)
=== RUN   TestGetPrice_CacheHitAndMiss
--- PASS: TestGetPrice_CacheHitAndMiss (0.00s)
=== RUN   TestPricingEdgeCases
--- PASS: TestPricingEdgeCases (0.00s)
=== RUN   TestFetchPricingFromAPI_WithBatcher
=== RUN   TestFetchPricingFromAPI_WithBatcher/batcher_returns_valid_pricing_data
=== RUN   TestFetchPricingFromAPI_WithBatcher/batcher_returns_error
=== RUN   TestFetchPricingFromAPI_WithBatcher/batcher_deduplicates_concurrent_requests
--- PASS: TestFetchPricingFromAPI_WithBatcher (0.60s)
    --- PASS: TestFetchPricingFromAPI_WithBatcher/batcher_returns_valid_pricing_data (0.20s)
    --- PASS: TestFetchPricingFromAPI_WithBatcher/batcher_returns_error (0.20s)
    --- PASS: TestFetchPricingFromAPI_WithBatcher/batcher_deduplicates_concurrent_requests (0.20s)
=== RUN   TestProviderInterface
--- PASS: TestProviderInterface (0.00s)
=== RUN   TestMockProviderGetPrice
--- PASS: TestMockProviderGetPrice (0.00s)
=== RUN   TestMockProviderGetPrices
--- PASS: TestMockProviderGetPrices (0.00s)
=== RUN   TestPriceStruct
--- PASS: TestPriceStruct (0.00s)
=== RUN   TestPriceStructZeroValues
--- PASS: TestPriceStructZeroValues (0.00s)
PASS
ok  	github.com/kubernetes-sigs/karpenter-provider-ibm-cloud/pkg/providers/common/pricing	1.646s
