mirror of
https://github.com/kubernetes-sigs/external-dns.git
synced 2026-05-05 06:36:11 +02:00
linter(usetesting): enable usetesting (#6266)
* linter(usetesting): enable usetesting Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com> * linter(usetesting): enable usetesting Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com> * linter(usetesting): enable usetesting Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com> * linter(usetesting): enable usetesting Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com> * linter(usetesting): enable usetesting Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com> * linter(usetesting): enable usetesting Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com> --------- Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>
This commit is contained in:
parent
f0067bef1d
commit
e21f1389fb
@ -36,6 +36,7 @@ linters:
|
||||
|
||||
# tests
|
||||
- testifylint # Checks usage of github.com/stretchr/testify. https://golangci-lint.run/docs/linters/configuration/#testifylint
|
||||
- usetesting # Reports uses of functions with replacement inside the testing package.
|
||||
settings:
|
||||
exhaustive:
|
||||
default-signifies-exhaustive: false
|
||||
@ -68,6 +69,11 @@ linters:
|
||||
# TODO: enable in follow-up
|
||||
disable:
|
||||
- require-error
|
||||
usetesting:
|
||||
# Enable/disable `context.Background()` detections.
|
||||
context-background: true
|
||||
# Enable/disable `context.TODO()` detections.
|
||||
context-todo: true
|
||||
exclusions:
|
||||
generated: lax
|
||||
presets:
|
||||
|
||||
@ -225,7 +225,7 @@ func TestRunOnce(t *testing.T) {
|
||||
EventEmitter: emitter,
|
||||
}
|
||||
|
||||
assert.NoError(t, ctrl.RunOnce(context.Background()))
|
||||
assert.NoError(t, ctrl.RunOnce(t.Context()))
|
||||
|
||||
// Validate that the mock source was called.
|
||||
source.AssertExpectations(t)
|
||||
@ -254,7 +254,7 @@ func TestRun(t *testing.T) {
|
||||
ManagedRecordTypes: cfg.ManagedDNSRecordTypes,
|
||||
}
|
||||
ctrl.nextRunAt = time.Now().Add(-time.Millisecond)
|
||||
ctx, cancel := context.WithCancel(context.Background())
|
||||
ctx, cancel := context.WithCancel(t.Context())
|
||||
stopped := make(chan struct{})
|
||||
go func() {
|
||||
ctrl.Run(ctx)
|
||||
@ -352,7 +352,7 @@ func testControllerFiltersDomains(t *testing.T, configuredEndpoints []*endpoint.
|
||||
ManagedRecordTypes: cfg.ManagedDNSRecordTypes,
|
||||
}
|
||||
|
||||
assert.NoError(t, ctrl.RunOnce(context.Background()))
|
||||
assert.NoError(t, ctrl.RunOnce(t.Context()))
|
||||
assert.Equal(t, 1, provider.RecordsCallCount)
|
||||
require.Len(t, provider.ApplyChangesCalls, len(expectedChanges))
|
||||
for i, change := range expectedChanges {
|
||||
@ -520,7 +520,7 @@ func TestToggleRegistry(t *testing.T) {
|
||||
Interval: interval,
|
||||
}
|
||||
ctrl.nextRunAt = time.Now().Add(-time.Millisecond)
|
||||
ctx, cancel := context.WithCancel(context.Background())
|
||||
ctx, cancel := context.WithCancel(t.Context())
|
||||
stopped := make(chan struct{})
|
||||
go func() {
|
||||
ctrl.Run(ctx)
|
||||
|
||||
@ -31,6 +31,7 @@ import (
|
||||
log "github.com/sirupsen/logrus"
|
||||
"github.com/stretchr/testify/assert"
|
||||
"github.com/stretchr/testify/require"
|
||||
|
||||
"sigs.k8s.io/external-dns/endpoint"
|
||||
"sigs.k8s.io/external-dns/pkg/apis/externaldns"
|
||||
"sigs.k8s.io/external-dns/source"
|
||||
@ -299,7 +300,7 @@ func TestHelperProcess(_ *testing.T) {
|
||||
func runExecuteSubprocess(t *testing.T, args []string) (int, error) {
|
||||
t.Helper()
|
||||
// make sure the subprocess does not run forever
|
||||
ctx, cancel := context.WithTimeout(context.Background(), 10*time.Second)
|
||||
ctx, cancel := context.WithTimeout(t.Context(), 10*time.Second)
|
||||
defer cancel()
|
||||
|
||||
// TODO: investigate why -test.run=TestHelperProcess
|
||||
@ -447,7 +448,7 @@ func TestControllerRunCancelContextStopsLoop(t *testing.T) {
|
||||
TXTOwnerID: "test-owner",
|
||||
}
|
||||
sCfg := source.NewSourceConfig(cfg)
|
||||
ctx, cancel := context.WithCancel(context.Background())
|
||||
ctx, cancel := context.WithCancel(t.Context())
|
||||
defer cancel()
|
||||
src, err := buildSource(ctx, sCfg)
|
||||
require.NoError(t, err)
|
||||
|
||||
@ -17,7 +17,6 @@ limitations under the License.
|
||||
package akamai
|
||||
|
||||
import (
|
||||
"context"
|
||||
"encoding/json"
|
||||
"testing"
|
||||
|
||||
@ -191,7 +190,7 @@ func TestAkamaiRecords(t *testing.T) {
|
||||
endpoints = append(endpoints, endpoint.NewEndpoint("www.example.com", endpoint.RecordTypeTXT, "heritage=external-dns,external-dns/owner=default"))
|
||||
endpoints = append(endpoints, endpoint.NewEndpoint("www.exclude.me", endpoint.RecordTypeA, "192.168.0.1", "192.168.0.2"))
|
||||
|
||||
x, _ := c.Records(context.Background())
|
||||
x, _ := c.Records(t.Context())
|
||||
if assert.NotNil(t, x) {
|
||||
assert.Equal(t, endpoints, x)
|
||||
}
|
||||
@ -207,7 +206,7 @@ func TestAkamaiRecordsEmpty(t *testing.T) {
|
||||
recordsets := make([]any, 0)
|
||||
stub.setOutput("recordset", recordsets)
|
||||
|
||||
x, _ := c.Records(context.Background())
|
||||
x, _ := c.Records(t.Context())
|
||||
assert.Nil(t, x)
|
||||
}
|
||||
|
||||
@ -233,7 +232,7 @@ func TestAkamaiRecordsFilters(t *testing.T) {
|
||||
endpoints := make([]*endpoint.Endpoint, 0)
|
||||
endpoints = append(endpoints, endpoint.NewEndpoint("www.exclude.me", endpoint.RecordTypeA, "192.168.0.1", "192.168.0.2"))
|
||||
|
||||
x, _ := c.Records(context.Background())
|
||||
x, _ := c.Records(t.Context())
|
||||
if assert.NotNil(t, x) {
|
||||
assert.Equal(t, endpoints, x)
|
||||
}
|
||||
@ -366,6 +365,6 @@ func TestAkamaiApplyChanges(t *testing.T) {
|
||||
changes.Delete = []*endpoint.Endpoint{{DNSName: "delete.example.com", RecordType: "A", Targets: endpoint.Targets{"target"}, RecordTTL: 300}}
|
||||
changes.UpdateOld = []*endpoint.Endpoint{{DNSName: "old.example.com", RecordType: "A", Targets: endpoint.Targets{"target-old"}, RecordTTL: 300}}
|
||||
changes.UpdateNew = []*endpoint.Endpoint{{DNSName: "update.example.com", Targets: endpoint.Targets{"target-new"}, RecordType: "CNAME", RecordTTL: 300}}
|
||||
apply := c.ApplyChanges(context.Background(), changes)
|
||||
apply := c.ApplyChanges(t.Context(), changes)
|
||||
assert.NoError(t, apply)
|
||||
}
|
||||
|
||||
@ -17,7 +17,6 @@ limitations under the License.
|
||||
package alibabacloud
|
||||
|
||||
import (
|
||||
"context"
|
||||
"testing"
|
||||
|
||||
"github.com/aliyun/alibaba-cloud-sdk-go/services/alidns"
|
||||
@ -235,7 +234,7 @@ func newTestAlibabaCloudProvider(private bool) *AlibabaCloudProvider {
|
||||
|
||||
func TestAlibabaCloudPrivateProvider_Records(t *testing.T) {
|
||||
p := newTestAlibabaCloudProvider(true)
|
||||
endpoints, err := p.Records(context.Background())
|
||||
endpoints, err := p.Records(t.Context())
|
||||
if err != nil {
|
||||
t.Errorf("Failed to get records: %v", err)
|
||||
} else {
|
||||
@ -250,7 +249,7 @@ func TestAlibabaCloudPrivateProvider_Records(t *testing.T) {
|
||||
|
||||
func TestAlibabaCloudProvider_Records(t *testing.T) {
|
||||
p := newTestAlibabaCloudProvider(false)
|
||||
endpoints, err := p.Records(context.Background())
|
||||
endpoints, err := p.Records(t.Context())
|
||||
if err != nil {
|
||||
t.Errorf("Failed to get records: %v", err)
|
||||
} else {
|
||||
@ -298,7 +297,7 @@ func TestAlibabaCloudProvider_ApplyChanges(t *testing.T) {
|
||||
},
|
||||
},
|
||||
}
|
||||
ctx := context.Background()
|
||||
ctx := t.Context()
|
||||
err := p.ApplyChanges(ctx, &changes)
|
||||
assert.NoError(t, err)
|
||||
endpoints, err := p.Records(ctx)
|
||||
@ -356,7 +355,7 @@ func TestAlibabaCloudProvider_ApplyChanges_HaveNoDefinedZoneDomain(t *testing.T)
|
||||
},
|
||||
},
|
||||
}
|
||||
ctx := context.Background()
|
||||
ctx := t.Context()
|
||||
err := p.ApplyChanges(ctx, &changes)
|
||||
assert.NoError(t, err)
|
||||
endpoints, err := p.Records(ctx)
|
||||
@ -381,7 +380,7 @@ func TestAlibabaCloudProvider_ApplyChanges_HaveNoDefinedZoneDomain(t *testing.T)
|
||||
|
||||
func TestAlibabaCloudProvider_Records_PrivateZone(t *testing.T) {
|
||||
p := newTestAlibabaCloudProvider(true)
|
||||
endpoints, err := p.Records(context.Background())
|
||||
endpoints, err := p.Records(t.Context())
|
||||
if err != nil {
|
||||
t.Errorf("Failed to get records: %v", err)
|
||||
} else {
|
||||
@ -422,7 +421,7 @@ func TestAlibabaCloudProvider_ApplyChanges_PrivateZone(t *testing.T) {
|
||||
},
|
||||
},
|
||||
}
|
||||
ctx := context.Background()
|
||||
ctx := t.Context()
|
||||
err := p.ApplyChanges(ctx, &changes)
|
||||
assert.NoError(t, err)
|
||||
endpoints, err := p.Records(ctx)
|
||||
|
||||
@ -17,7 +17,6 @@ limitations under the License.
|
||||
package aws
|
||||
|
||||
import (
|
||||
"context"
|
||||
"fmt"
|
||||
"strings"
|
||||
"testing"
|
||||
@ -41,7 +40,7 @@ func TestAWSRecordsV1(t *testing.T) {
|
||||
WithDomainFilters("w2.w1.ex.com", "ex.com"),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
ctx := t.Context()
|
||||
z, err := provider.Zones(ctx)
|
||||
assert.NoError(t, err)
|
||||
assert.Len(t, z, 3)
|
||||
@ -56,7 +55,7 @@ func TestAWSZonesFilterWithTags(t *testing.T) {
|
||||
WithZoneTagFilters([]string{"level=5", "owner=ext-dns"}),
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
ctx := t.Context()
|
||||
z, err := provider.Zones(ctx)
|
||||
assert.NoError(t, err)
|
||||
assert.Len(t, z, 24)
|
||||
@ -84,7 +83,7 @@ func TestAWSZonesFiltersWithTags(t *testing.T) {
|
||||
provider := providerFilters(stub,
|
||||
WithZoneTagFilters(tt.filters),
|
||||
)
|
||||
z, err := provider.Zones(context.Background())
|
||||
z, err := provider.Zones(t.Context())
|
||||
assert.NoError(t, err)
|
||||
assert.Len(t, z, tt.want)
|
||||
assert.Equal(t, tt.calls, stub.calls["listtagsforresource"])
|
||||
@ -99,7 +98,7 @@ func TestAWSZonesSecondRequestHitsTheCache(t *testing.T) {
|
||||
stub := NewRoute53APIFixtureStub(&zones)
|
||||
provider := providerFilters(stub)
|
||||
|
||||
ctx := context.Background()
|
||||
ctx := t.Context()
|
||||
_, err := provider.Zones(ctx)
|
||||
assert.NoError(t, err)
|
||||
hook := logtest.LogsUnderTestWithLogLevel(log.DebugLevel, t)
|
||||
|
||||
@ -35,6 +35,7 @@ import (
|
||||
"github.com/stretchr/testify/assert"
|
||||
"github.com/stretchr/testify/mock"
|
||||
"github.com/stretchr/testify/require"
|
||||
|
||||
"sigs.k8s.io/external-dns/provider/blueprint"
|
||||
|
||||
"sigs.k8s.io/external-dns/endpoint"
|
||||
@ -340,7 +341,7 @@ func TestAWSZones(t *testing.T) {
|
||||
} {
|
||||
t.Run(ti.msg, func(t *testing.T) {
|
||||
provider, _ := newAWSProviderWithTagFilter(t, endpoint.NewDomainFilter([]string{"ext-dns-test-2.teapot.zalan.do."}), ti.zoneIDFilter, ti.zoneTypeFilter, ti.zoneTagFilter, defaultEvaluateTargetHealth, false, false, nil)
|
||||
zones, err := provider.Zones(context.Background())
|
||||
zones, err := provider.Zones(t.Context())
|
||||
require.NoError(t, err)
|
||||
validateAWSZones(t, zones, ti.expectedZones)
|
||||
})
|
||||
@ -365,7 +366,7 @@ func TestAWSZonesWithTagFilterError(t *testing.T) {
|
||||
Name: aws.String("zone-2.ext-dns-test-error-on-list-tags.example.com."),
|
||||
Config: &route53types.HostedZoneConfig{PrivateZone: false},
|
||||
})
|
||||
_, err := provider.Zones(context.Background())
|
||||
_, err := provider.Zones(t.Context())
|
||||
require.Error(t, err)
|
||||
require.ErrorContains(t, err, "failed to list tags for zones")
|
||||
}
|
||||
@ -649,7 +650,7 @@ func TestAWSRecords(t *testing.T) {
|
||||
},
|
||||
})
|
||||
|
||||
records, err := provider.Records(context.Background())
|
||||
records, err := provider.Records(t.Context())
|
||||
require.NoError(t, err)
|
||||
|
||||
validateEndpoints(t, provider, records, []*endpoint.Endpoint{
|
||||
@ -697,7 +698,7 @@ func TestAWSRecordsSoftError(t *testing.T) {
|
||||
})
|
||||
|
||||
subClient.MockMethod("ListResourceRecordSets", mock.Anything).Return(nil, fmt.Errorf("Mock route53 failure"))
|
||||
_, err := pvd.Records(context.Background())
|
||||
_, err := pvd.Records(t.Context())
|
||||
require.Error(t, err)
|
||||
require.ErrorIs(t, err, provider.SoftError)
|
||||
}
|
||||
@ -742,9 +743,9 @@ func TestAWSApplyChanges(t *testing.T) {
|
||||
setup func(p *AWSProvider) context.Context
|
||||
listRRSets int
|
||||
}{
|
||||
{"no cache", func(_ *AWSProvider) context.Context { return context.Background() }, 0},
|
||||
{"no cache", func(_ *AWSProvider) context.Context { return t.Context() }, 0},
|
||||
{"cached", func(p *AWSProvider) context.Context {
|
||||
ctx := context.Background()
|
||||
ctx := t.Context()
|
||||
records, err := p.Records(ctx)
|
||||
require.NoError(t, err)
|
||||
return context.WithValue(ctx, provider.RecordsContextKey, records)
|
||||
@ -1459,7 +1460,7 @@ func TestAWSApplyChangesDryRun(t *testing.T) {
|
||||
Delete: deleteRecords,
|
||||
}
|
||||
|
||||
ctx := context.Background()
|
||||
ctx := t.Context()
|
||||
|
||||
require.NoError(t, provider.ApplyChanges(ctx, changes))
|
||||
|
||||
@ -1614,7 +1615,7 @@ func TestAWSsubmitChanges(t *testing.T) {
|
||||
}
|
||||
}
|
||||
|
||||
ctx := context.Background()
|
||||
ctx := t.Context()
|
||||
zones, _ := provider.zones(ctx)
|
||||
records, _ := provider.Records(ctx)
|
||||
cs := make(Route53Changes, 0, len(endpoints))
|
||||
@ -1632,7 +1633,7 @@ func TestAWSsubmitChangesError(t *testing.T) {
|
||||
provider, clientStub := newAWSProvider(t, endpoint.NewDomainFilter([]string{"ext-dns-test-2.teapot.zalan.do."}), provider.NewZoneIDFilter([]string{}), provider.NewZoneTypeFilter(""), defaultEvaluateTargetHealth, false, false, nil)
|
||||
clientStub.MockMethod("ChangeResourceRecordSets", mock.Anything).Return(nil, fmt.Errorf("Mock route53 failure"))
|
||||
|
||||
ctx := context.Background()
|
||||
ctx := t.Context()
|
||||
zones, err := provider.zones(ctx)
|
||||
require.NoError(t, err)
|
||||
|
||||
@ -1645,7 +1646,7 @@ func TestAWSsubmitChangesError(t *testing.T) {
|
||||
func TestAWSsubmitChangesRetryOnError(t *testing.T) {
|
||||
provider, clientStub := newAWSProvider(t, endpoint.NewDomainFilter([]string{"ext-dns-test-2.teapot.zalan.do."}), provider.NewZoneIDFilter([]string{}), provider.NewZoneTypeFilter(""), defaultEvaluateTargetHealth, false, false, nil)
|
||||
|
||||
ctx := context.Background()
|
||||
ctx := t.Context()
|
||||
zones, err := provider.zones(ctx)
|
||||
require.NoError(t, err)
|
||||
|
||||
@ -2086,7 +2087,7 @@ func TestAWSCreateRecordsWithCNAME(t *testing.T) {
|
||||
|
||||
adjusted, err := provider.AdjustEndpoints(records)
|
||||
require.NoError(t, err)
|
||||
require.NoError(t, provider.ApplyChanges(context.Background(), &plan.Changes{
|
||||
require.NoError(t, provider.ApplyChanges(t.Context(), &plan.Changes{
|
||||
Create: adjusted,
|
||||
}))
|
||||
|
||||
@ -2147,7 +2148,7 @@ func TestAWSCreateRecordsWithALIAS(t *testing.T) {
|
||||
}
|
||||
adjusted, err := provider.AdjustEndpoints(records)
|
||||
require.NoError(t, err)
|
||||
require.NoError(t, provider.ApplyChanges(context.Background(), &plan.Changes{
|
||||
require.NoError(t, provider.ApplyChanges(t.Context(), &plan.Changes{
|
||||
Create: adjusted,
|
||||
}))
|
||||
|
||||
@ -2305,7 +2306,7 @@ func createAWSZone(t *testing.T, provider *AWSProvider, zone *route53types.Hoste
|
||||
HostedZoneConfig: zone.Config,
|
||||
}
|
||||
|
||||
if _, err := provider.clients[defaultAWSProfile].CreateHostedZone(context.Background(), params); err != nil {
|
||||
if _, err := provider.clients[defaultAWSProfile].CreateHostedZone(t.Context(), params); err != nil {
|
||||
var hzExists *route53types.HostedZoneAlreadyExists
|
||||
require.ErrorAs(t, err, &hzExists)
|
||||
}
|
||||
@ -2318,7 +2319,7 @@ func setAWSRecords(t *testing.T, provider *AWSProvider, records []route53types.R
|
||||
provider.dryRun = dryRun
|
||||
}()
|
||||
|
||||
ctx := context.Background()
|
||||
ctx := t.Context()
|
||||
endpoints, err := provider.Records(ctx)
|
||||
require.NoError(t, err)
|
||||
|
||||
@ -2344,7 +2345,7 @@ func setAWSRecords(t *testing.T, provider *AWSProvider, records []route53types.R
|
||||
}
|
||||
|
||||
func listAWSRecords(t *testing.T, client Route53API, zone string) []route53types.ResourceRecordSet {
|
||||
resp, err := client.ListResourceRecordSets(context.Background(), &route53.ListResourceRecordSetsInput{
|
||||
resp, err := client.ListResourceRecordSets(t.Context(), &route53.ListResourceRecordSetsInput{
|
||||
HostedZoneId: aws.String(zone),
|
||||
MaxItems: aws.Int32(route53PageSize),
|
||||
})
|
||||
|
||||
@ -17,7 +17,6 @@ limitations under the License.
|
||||
package aws
|
||||
|
||||
import (
|
||||
"context"
|
||||
"fmt"
|
||||
"os"
|
||||
"testing"
|
||||
@ -49,7 +48,7 @@ func Test_newV2Config(t *testing.T) {
|
||||
// when
|
||||
cfg, err := newV2Config(AWSSessionConfig{Profile: "profile2"})
|
||||
require.NoError(t, err)
|
||||
creds, err := cfg.Credentials.Retrieve(context.Background())
|
||||
creds, err := cfg.Credentials.Retrieve(t.Context())
|
||||
|
||||
// then
|
||||
assert.NoError(t, err)
|
||||
@ -67,7 +66,7 @@ func Test_newV2Config(t *testing.T) {
|
||||
// when
|
||||
cfg, err := newV2Config(AWSSessionConfig{})
|
||||
require.NoError(t, err)
|
||||
creds, err := cfg.Credentials.Retrieve(context.Background())
|
||||
creds, err := cfg.Credentials.Retrieve(t.Context())
|
||||
|
||||
// then
|
||||
assert.NoError(t, err)
|
||||
@ -149,7 +148,7 @@ func Test_newV2Config(t *testing.T) {
|
||||
}
|
||||
|
||||
func prepareCredentialsFile(t *testing.T) (*os.File, error) {
|
||||
credsFile, err := os.CreateTemp("", "aws-*.creds")
|
||||
credsFile, err := os.CreateTemp(t.TempDir(), "aws-*.creds")
|
||||
require.NoError(t, err)
|
||||
_, err = credsFile.WriteString("[profile1]\naws_access_key_id=AKID1234\naws_secret_access_key=SECRET1\n\n[profile2]\naws_access_key_id=AKID2345\naws_secret_access_key=SECRET2\n")
|
||||
require.NoError(t, err)
|
||||
@ -203,12 +202,12 @@ func TestCreateV2Configs(t *testing.T) {
|
||||
|
||||
// then
|
||||
require.Len(t, configs, 2)
|
||||
creds, err := configs["profile1"].Credentials.Retrieve(context.Background())
|
||||
creds, err := configs["profile1"].Credentials.Retrieve(t.Context())
|
||||
require.NoError(t, err)
|
||||
assert.Equal(t, "AKID1234", creds.AccessKeyID)
|
||||
assert.Equal(t, "SECRET1", creds.SecretAccessKey)
|
||||
|
||||
creds, err = configs["profile2"].Credentials.Retrieve(context.Background())
|
||||
creds, err = configs["profile2"].Credentials.Retrieve(t.Context())
|
||||
require.NoError(t, err)
|
||||
assert.Equal(t, "AKID2345", creds.AccessKeyID)
|
||||
assert.Equal(t, "SECRET2", creds.SecretAccessKey)
|
||||
|
||||
@ -62,7 +62,7 @@ func (mock *MockInitializeHandler) HandleInitialize(ctx context.Context, _ middl
|
||||
}
|
||||
|
||||
func Test_InitializedTimedOperationMiddleware(t *testing.T) {
|
||||
testContext := context.Background()
|
||||
testContext := t.Context()
|
||||
mockInitializeHandler := &MockInitializeHandler{}
|
||||
|
||||
_, _, err := initializeTimedOperationMiddleware.HandleInitialize(testContext, middleware.InitializeInput{}, mockInitializeHandler)
|
||||
@ -80,7 +80,7 @@ func (mock *MockDeserializeHandler) HandleDeserialize(_ context.Context, _ middl
|
||||
}
|
||||
|
||||
func Test_ExtractAWSRequestParameters(t *testing.T) {
|
||||
testContext := context.Background()
|
||||
testContext := t.Context()
|
||||
middleware.WithStackValue(testContext, requestMetricsKey{}, requestMetrics{StartTime: time.Now()})
|
||||
|
||||
mockDeserializeHandler := &MockDeserializeHandler{}
|
||||
|
||||
@ -17,7 +17,6 @@ limitations under the License.
|
||||
package awssd
|
||||
|
||||
import (
|
||||
"context"
|
||||
"reflect"
|
||||
"testing"
|
||||
|
||||
@ -168,7 +167,7 @@ func TestAWSSDProvider_Records(t *testing.T) {
|
||||
|
||||
provider := newTestAWSSDProvider(api, endpoint.NewDomainFilter([]string{}), "", "")
|
||||
|
||||
endpoints, _ := provider.Records(context.Background())
|
||||
endpoints, _ := provider.Records(t.Context())
|
||||
|
||||
assert.True(t, testutils.SameEndpoints(expectedEndpoints, endpoints), "expected and actual endpoints don't match, expected=%v, actual=%v", expectedEndpoints, endpoints)
|
||||
}
|
||||
@ -196,7 +195,7 @@ func TestAWSSDProvider_ApplyChanges(t *testing.T) {
|
||||
|
||||
provider := newTestAWSSDProvider(api, endpoint.NewDomainFilter([]string{}), "", "")
|
||||
|
||||
ctx := context.Background()
|
||||
ctx := t.Context()
|
||||
|
||||
// apply creates
|
||||
err := provider.ApplyChanges(ctx, &plan.Changes{
|
||||
@ -206,7 +205,7 @@ func TestAWSSDProvider_ApplyChanges(t *testing.T) {
|
||||
|
||||
// make sure services were created
|
||||
assert.Len(t, api.services["private"], 3)
|
||||
existingServices, _ := provider.ListServicesByNamespaceID(context.Background(), namespaces["private"].Id)
|
||||
existingServices, _ := provider.ListServicesByNamespaceID(t.Context(), namespaces["private"].Id)
|
||||
assert.NotNil(t, existingServices["service1"])
|
||||
assert.NotNil(t, existingServices["service2"])
|
||||
assert.NotNil(t, existingServices["service3"])
|
||||
@ -215,7 +214,7 @@ func TestAWSSDProvider_ApplyChanges(t *testing.T) {
|
||||
endpoints, _ := provider.Records(ctx)
|
||||
assert.True(t, testutils.SameEndpoints(expectedEndpoints, endpoints), "expected and actual endpoints don't match, expected=%v, actual=%v", expectedEndpoints, endpoints)
|
||||
|
||||
ctx = context.Background()
|
||||
ctx = t.Context()
|
||||
// apply deletes
|
||||
err = provider.ApplyChanges(ctx, &plan.Changes{
|
||||
Delete: expectedEndpoints,
|
||||
@ -252,14 +251,14 @@ func TestAWSSDProvider_ApplyChanges_Update(t *testing.T) {
|
||||
|
||||
provider := newTestAWSSDProvider(api, endpoint.NewDomainFilter([]string{}), "", "")
|
||||
|
||||
ctx := context.Background()
|
||||
ctx := t.Context()
|
||||
|
||||
// apply creates
|
||||
_ = provider.ApplyChanges(ctx, &plan.Changes{
|
||||
Create: oldEndpoints,
|
||||
})
|
||||
|
||||
ctx = context.Background()
|
||||
ctx = t.Context()
|
||||
|
||||
// apply update
|
||||
_ = provider.ApplyChanges(ctx, &plan.Changes{
|
||||
@ -313,7 +312,7 @@ func TestAWSSDProvider_ListNamespaces(t *testing.T) {
|
||||
} {
|
||||
provider := newTestAWSSDProvider(api, tc.domainFilter, tc.namespaceTypeFilter, "")
|
||||
|
||||
result, err := provider.ListNamespaces(context.Background())
|
||||
result, err := provider.ListNamespaces(t.Context())
|
||||
require.NoError(t, err)
|
||||
|
||||
expectedMap := make(map[string]*sdtypes.NamespaceSummary)
|
||||
@ -379,7 +378,7 @@ func TestAWSSDProvider_ListServicesByNamespace(t *testing.T) {
|
||||
} {
|
||||
provider := newTestAWSSDProvider(api, endpoint.NewDomainFilter([]string{}), "", "")
|
||||
|
||||
result, err := provider.ListServicesByNamespaceID(context.Background(), namespaces["private"].Id)
|
||||
result, err := provider.ListServicesByNamespaceID(t.Context(), namespaces["private"].Id)
|
||||
require.NoError(t, err)
|
||||
assert.Equal(t, tc.expectedServices, result)
|
||||
}
|
||||
@ -404,7 +403,7 @@ func TestAWSSDProvider_CreateService(t *testing.T) {
|
||||
provider := newTestAWSSDProvider(api, endpoint.NewDomainFilter([]string{}), "", "")
|
||||
|
||||
// A type
|
||||
_, err := provider.CreateService(context.Background(), aws.String("private"), aws.String("A-srv"), &endpoint.Endpoint{
|
||||
_, err := provider.CreateService(t.Context(), aws.String("private"), aws.String("A-srv"), &endpoint.Endpoint{
|
||||
Labels: map[string]string{
|
||||
endpoint.AWSSDDescriptionLabel: "A-srv",
|
||||
},
|
||||
@ -428,7 +427,7 @@ func TestAWSSDProvider_CreateService(t *testing.T) {
|
||||
}
|
||||
|
||||
// AAAA type
|
||||
_, err = provider.CreateService(context.Background(), aws.String("private"), aws.String("AAAA-srv"), &endpoint.Endpoint{
|
||||
_, err = provider.CreateService(t.Context(), aws.String("private"), aws.String("AAAA-srv"), &endpoint.Endpoint{
|
||||
Labels: map[string]string{
|
||||
endpoint.AWSSDDescriptionLabel: "AAAA-srv",
|
||||
},
|
||||
@ -451,7 +450,7 @@ func TestAWSSDProvider_CreateService(t *testing.T) {
|
||||
}
|
||||
|
||||
// CNAME type
|
||||
_, err = provider.CreateService(context.Background(), aws.String("private"), aws.String("CNAME-srv"), &endpoint.Endpoint{
|
||||
_, err = provider.CreateService(t.Context(), aws.String("private"), aws.String("CNAME-srv"), &endpoint.Endpoint{
|
||||
Labels: map[string]string{
|
||||
endpoint.AWSSDDescriptionLabel: "CNAME-srv",
|
||||
},
|
||||
@ -474,7 +473,7 @@ func TestAWSSDProvider_CreateService(t *testing.T) {
|
||||
}
|
||||
|
||||
// ALIAS type
|
||||
_, err = provider.CreateService(context.Background(), aws.String("private"), aws.String("ALIAS-srv"), &endpoint.Endpoint{
|
||||
_, err = provider.CreateService(t.Context(), aws.String("private"), aws.String("ALIAS-srv"), &endpoint.Endpoint{
|
||||
Labels: map[string]string{
|
||||
endpoint.AWSSDDescriptionLabel: "ALIAS-srv",
|
||||
},
|
||||
@ -516,7 +515,7 @@ func TestAWSSDProvider_CreateServiceDryRun(t *testing.T) {
|
||||
provider := newTestAWSSDProvider(api, endpoint.NewDomainFilter([]string{}), "", "")
|
||||
provider.dryRun = true
|
||||
|
||||
service, err := provider.CreateService(context.Background(), aws.String("private"), aws.String("A-srv"), &endpoint.Endpoint{
|
||||
service, err := provider.CreateService(t.Context(), aws.String("private"), aws.String("A-srv"), &endpoint.Endpoint{
|
||||
Labels: map[string]string{
|
||||
endpoint.AWSSDDescriptionLabel: "A-srv",
|
||||
},
|
||||
@ -546,7 +545,7 @@ func TestAWSSDProvider_CreateService_LabelNotSet(t *testing.T) {
|
||||
|
||||
provider := newTestAWSSDProvider(api, endpoint.NewDomainFilter([]string{}), "", "owner-123")
|
||||
|
||||
service, err := provider.CreateService(context.Background(), aws.String("private"), aws.String("A-srv"), &endpoint.Endpoint{
|
||||
service, err := provider.CreateService(t.Context(), aws.String("private"), aws.String("A-srv"), &endpoint.Endpoint{
|
||||
Labels: map[string]string{
|
||||
"wrong-unsupported-label": "A-srv",
|
||||
},
|
||||
@ -594,7 +593,7 @@ func TestAWSSDProvider_UpdateService(t *testing.T) {
|
||||
provider := newTestAWSSDProvider(api, endpoint.NewDomainFilter([]string{}), "", "")
|
||||
|
||||
// update service with different TTL
|
||||
err := provider.UpdateService(context.Background(), services["private"]["srv1"], &endpoint.Endpoint{
|
||||
err := provider.UpdateService(t.Context(), services["private"]["srv1"], &endpoint.Endpoint{
|
||||
RecordType: endpoint.RecordTypeA,
|
||||
RecordTTL: 100,
|
||||
})
|
||||
@ -639,7 +638,7 @@ func TestAWSSDProvider_UpdateService_DryRun(t *testing.T) {
|
||||
provider.dryRun = true
|
||||
|
||||
// update service with different TTL
|
||||
err := provider.UpdateService(context.Background(), services["private"]["srv1"], &endpoint.Endpoint{
|
||||
err := provider.UpdateService(t.Context(), services["private"]["srv1"], &endpoint.Endpoint{
|
||||
RecordType: endpoint.RecordTypeAAAA,
|
||||
RecordTTL: 100,
|
||||
})
|
||||
@ -697,17 +696,17 @@ func TestAWSSDProvider_DeleteService(t *testing.T) {
|
||||
provider := newTestAWSSDProvider(api, endpoint.NewDomainFilter([]string{}), "", "owner-id")
|
||||
|
||||
// delete first service
|
||||
err := provider.DeleteService(context.Background(), services["private"]["srv1"])
|
||||
err := provider.DeleteService(t.Context(), services["private"]["srv1"])
|
||||
assert.NoError(t, err)
|
||||
assert.Len(t, api.services["private"], 3)
|
||||
|
||||
// delete third service
|
||||
err = provider.DeleteService(context.Background(), services["private"]["srv3"])
|
||||
err = provider.DeleteService(t.Context(), services["private"]["srv3"])
|
||||
assert.NoError(t, err)
|
||||
assert.Len(t, api.services["private"], 2)
|
||||
|
||||
// delete service with no description
|
||||
err = provider.DeleteService(context.Background(), services["private"]["srv4"])
|
||||
err = provider.DeleteService(t.Context(), services["private"]["srv4"])
|
||||
assert.NoError(t, err)
|
||||
|
||||
expected := map[string]*sdtypes.Service{
|
||||
@ -758,7 +757,7 @@ func TestAWSSDProvider_DeleteServiceEmptyDescription_Logging(t *testing.T) {
|
||||
provider := newTestAWSSDProvider(api, endpoint.NewDomainFilter([]string{}), "", "owner-id")
|
||||
|
||||
// delete service
|
||||
err := provider.DeleteService(context.Background(), services["private"]["srv1"])
|
||||
err := provider.DeleteService(t.Context(), services["private"]["srv1"])
|
||||
assert.NoError(t, err)
|
||||
assert.Len(t, api.services["private"], 1)
|
||||
|
||||
@ -794,7 +793,7 @@ func TestAWSSDProvider_DeleteServiceDryRun(t *testing.T) {
|
||||
provider.dryRun = true
|
||||
|
||||
// delete first service
|
||||
err := provider.DeleteService(context.Background(), services["private"]["srv1"])
|
||||
err := provider.DeleteService(t.Context(), services["private"]["srv1"])
|
||||
assert.NoError(t, err)
|
||||
assert.Len(t, api.services["private"], 1)
|
||||
}
|
||||
@ -873,7 +872,7 @@ func TestAWSSDProvider_RegisterInstance(t *testing.T) {
|
||||
expectedInstances := make(map[string]*sdtypes.Instance)
|
||||
|
||||
// IPv4-based instance
|
||||
err := provider.RegisterInstance(context.Background(), services["private"]["a-srv"], &endpoint.Endpoint{
|
||||
err := provider.RegisterInstance(t.Context(), services["private"]["a-srv"], &endpoint.Endpoint{
|
||||
RecordType: endpoint.RecordTypeA,
|
||||
DNSName: "service1.private.com.",
|
||||
RecordTTL: 300,
|
||||
@ -894,7 +893,7 @@ func TestAWSSDProvider_RegisterInstance(t *testing.T) {
|
||||
}
|
||||
|
||||
// AWS ELB instance (ALIAS)
|
||||
err = provider.RegisterInstance(context.Background(), services["private"]["alias-srv"], &endpoint.Endpoint{
|
||||
err = provider.RegisterInstance(t.Context(), services["private"]["alias-srv"], &endpoint.Endpoint{
|
||||
RecordType: endpoint.RecordTypeCNAME,
|
||||
DNSName: "service1.private.com.",
|
||||
RecordTTL: 300,
|
||||
@ -915,7 +914,7 @@ func TestAWSSDProvider_RegisterInstance(t *testing.T) {
|
||||
}
|
||||
|
||||
// AWS NLB instance (ALIAS)
|
||||
_ = provider.RegisterInstance(context.Background(), services["private"]["alias-srv"], &endpoint.Endpoint{
|
||||
_ = provider.RegisterInstance(t.Context(), services["private"]["alias-srv"], &endpoint.Endpoint{
|
||||
RecordType: endpoint.RecordTypeCNAME,
|
||||
DNSName: "service1.private.com.",
|
||||
RecordTTL: 300,
|
||||
@ -929,7 +928,7 @@ func TestAWSSDProvider_RegisterInstance(t *testing.T) {
|
||||
}
|
||||
|
||||
// CNAME instance
|
||||
_ = provider.RegisterInstance(context.Background(), services["private"]["cname-srv"], &endpoint.Endpoint{
|
||||
_ = provider.RegisterInstance(t.Context(), services["private"]["cname-srv"], &endpoint.Endpoint{
|
||||
RecordType: endpoint.RecordTypeCNAME,
|
||||
DNSName: "service2.private.com.",
|
||||
RecordTTL: 300,
|
||||
@ -943,7 +942,7 @@ func TestAWSSDProvider_RegisterInstance(t *testing.T) {
|
||||
}
|
||||
|
||||
// IPv6-based instance
|
||||
provider.RegisterInstance(context.Background(), services["private"]["aaaa-srv"], &endpoint.Endpoint{
|
||||
provider.RegisterInstance(t.Context(), services["private"]["aaaa-srv"], &endpoint.Endpoint{
|
||||
RecordType: endpoint.RecordTypeAAAA,
|
||||
DNSName: "service4.private.com.",
|
||||
RecordTTL: 300,
|
||||
@ -1003,7 +1002,7 @@ func TestAWSSDProvider_DeregisterInstance(t *testing.T) {
|
||||
|
||||
provider := newTestAWSSDProvider(api, endpoint.NewDomainFilter([]string{}), "", "")
|
||||
|
||||
_ = provider.DeregisterInstance(context.Background(), services["private"]["srv1"], endpoint.NewEndpoint("srv1.private.com.", endpoint.RecordTypeA, "1.2.3.4"))
|
||||
_ = provider.DeregisterInstance(t.Context(), services["private"]["srv1"], endpoint.NewEndpoint("srv1.private.com.", endpoint.RecordTypeA, "1.2.3.4"))
|
||||
|
||||
assert.Empty(t, instances["srv1"])
|
||||
}
|
||||
|
||||
@ -23,6 +23,7 @@ import (
|
||||
azcoreruntime "github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime"
|
||||
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
|
||||
privatedns "github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/privatedns/armprivatedns"
|
||||
|
||||
"sigs.k8s.io/external-dns/provider/blueprint"
|
||||
|
||||
"sigs.k8s.io/external-dns/endpoint"
|
||||
@ -263,7 +264,7 @@ func TestAzurePrivateDNSRecord(t *testing.T) {
|
||||
createPrivateMockRecordSetWithNameAndTTL("mail", endpoint.RecordTypeMX, "10 example.com", 4000),
|
||||
}, 3)
|
||||
|
||||
actual, err := provider.Records(context.Background())
|
||||
actual, err := provider.Records(t.Context())
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
@ -299,7 +300,7 @@ func TestAzurePrivateDNSMultiRecord(t *testing.T) {
|
||||
createPrivateMockRecordSetMultiWithTTL("mail", endpoint.RecordTypeMX, 4000, "10 example.com", "20 backup.example.com"),
|
||||
}, 3)
|
||||
|
||||
actual, err := provider.Records(context.Background())
|
||||
actual, err := provider.Records(t.Context())
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
@ -426,7 +427,7 @@ func testAzurePrivateDNSApplyChangesInternal(t *testing.T, dryRun bool, client P
|
||||
Delete: deleteRecords,
|
||||
}
|
||||
|
||||
if err := provider.ApplyChanges(context.Background(), changes); err != nil {
|
||||
if err := provider.ApplyChanges(t.Context(), changes); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
}
|
||||
@ -449,7 +450,7 @@ func TestAzurePrivateDNSNameFilter(t *testing.T) {
|
||||
createPrivateMockRecordSetWithNameAndTTL("hack", endpoint.RecordTypeCNAME, "hack.azurewebsites.net", 10),
|
||||
}, 3)
|
||||
|
||||
ctx := context.Background()
|
||||
ctx := t.Context()
|
||||
actual, err := provider.Records(ctx)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
@ -544,7 +545,7 @@ func testAzurePrivateDNSApplyChangesInternalZoneName(t *testing.T, dryRun bool,
|
||||
Delete: deleteRecords,
|
||||
}
|
||||
|
||||
if err := provider.ApplyChanges(context.Background(), changes); err != nil {
|
||||
if err := provider.ApplyChanges(t.Context(), changes); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
}
|
||||
|
||||
@ -24,6 +24,7 @@ import (
|
||||
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
|
||||
dns "github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/dns/armdns"
|
||||
"github.com/stretchr/testify/assert"
|
||||
|
||||
"sigs.k8s.io/external-dns/provider/blueprint"
|
||||
|
||||
"sigs.k8s.io/external-dns/endpoint"
|
||||
@ -284,7 +285,7 @@ func TestAzureRecord(t *testing.T) {
|
||||
createMockRecordSetMultiWithTTL("mail", endpoint.RecordTypeMX, 4000, "10 example.com"),
|
||||
}, 3)
|
||||
|
||||
ctx := context.Background()
|
||||
ctx := t.Context()
|
||||
actual, err := provider.Records(ctx)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
@ -326,7 +327,7 @@ func TestAzureMultiRecord(t *testing.T) {
|
||||
createMockRecordSetMultiWithTTL("mail", endpoint.RecordTypeMX, 4000, "10 example.com", "20 backup.example.com"),
|
||||
}, 3)
|
||||
|
||||
ctx := context.Background()
|
||||
ctx := t.Context()
|
||||
actual, err := provider.Records(ctx)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
@ -471,7 +472,7 @@ func testAzureApplyChangesInternal(t *testing.T, dryRun bool, client RecordSetsC
|
||||
Delete: deleteRecords,
|
||||
}
|
||||
|
||||
if err := provider.ApplyChanges(context.Background(), changes); err != nil {
|
||||
if err := provider.ApplyChanges(t.Context(), changes); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
}
|
||||
@ -496,7 +497,7 @@ func TestAzureNameFilter(t *testing.T) {
|
||||
createMockRecordSetWithTTL("hack", endpoint.RecordTypeNS, "ns1.example.com.", 3600),
|
||||
}, 3)
|
||||
|
||||
ctx := context.Background()
|
||||
ctx := t.Context()
|
||||
actual, err := provider.Records(ctx)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
@ -600,7 +601,7 @@ func testAzureApplyChangesInternalZoneName(t *testing.T, dryRun bool, client Rec
|
||||
Delete: deleteRecords,
|
||||
}
|
||||
|
||||
if err := provider.ApplyChanges(context.Background(), changes); err != nil {
|
||||
if err := provider.ApplyChanges(t.Context(), changes); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
}
|
||||
|
||||
@ -17,7 +17,6 @@ limitations under the License.
|
||||
package azure
|
||||
|
||||
import (
|
||||
"context"
|
||||
"fmt"
|
||||
"io"
|
||||
"net/http"
|
||||
@ -166,7 +165,7 @@ func TestCustomHeaderPolicyWithRetries(t *testing.T) {
|
||||
},
|
||||
)
|
||||
// Create request and execute
|
||||
req, err := azruntime.NewRequest(context.Background(), http.MethodGet, "https://example.com")
|
||||
req, err := azruntime.NewRequest(t.Context(), http.MethodGet, "https://example.com")
|
||||
if err != nil {
|
||||
t.Fatalf("Failed to create request: %v", err)
|
||||
}
|
||||
|
||||
@ -23,6 +23,7 @@ import (
|
||||
|
||||
"github.com/stretchr/testify/assert"
|
||||
"github.com/stretchr/testify/require"
|
||||
|
||||
"sigs.k8s.io/external-dns/endpoint"
|
||||
"sigs.k8s.io/external-dns/plan"
|
||||
)
|
||||
@ -100,7 +101,7 @@ func TestCachedProviderCallsProviderOnFirstCall(t *testing.T) {
|
||||
provider := CachedProvider{
|
||||
Provider: testProvider,
|
||||
}
|
||||
endpoints, err := provider.Records(context.Background())
|
||||
endpoints, err := provider.Records(t.Context())
|
||||
assert.NoError(t, err)
|
||||
require.NotNil(t, endpoints)
|
||||
require.Len(t, endpoints, 1)
|
||||
@ -117,12 +118,12 @@ func TestCachedProviderUsesCacheWhileValid(t *testing.T) {
|
||||
RefreshDelay: 30 * time.Second,
|
||||
Provider: testProvider,
|
||||
}
|
||||
_, err := provider.Records(context.Background())
|
||||
_, err := provider.Records(t.Context())
|
||||
require.NoError(t, err)
|
||||
|
||||
t.Run("With consecutive calls within the caching time frame", func(t *testing.T) {
|
||||
testProvider.records = recordsNotCalled(t)
|
||||
endpoints, err := provider.Records(context.Background())
|
||||
endpoints, err := provider.Records(t.Context())
|
||||
assert.NoError(t, err)
|
||||
require.NotNil(t, endpoints)
|
||||
require.Len(t, endpoints, 1)
|
||||
@ -135,7 +136,7 @@ func TestCachedProviderUsesCacheWhileValid(t *testing.T) {
|
||||
return []*endpoint.Endpoint{{DNSName: "new.domain.fqdn"}}, nil
|
||||
}
|
||||
provider.lastRead = time.Now().Add(-20 * time.Minute)
|
||||
endpoints, err := provider.Records(context.Background())
|
||||
endpoints, err := provider.Records(t.Context())
|
||||
assert.NoError(t, err)
|
||||
require.NotNil(t, endpoints)
|
||||
require.Len(t, endpoints, 1)
|
||||
@ -153,7 +154,7 @@ func TestCachedProviderForcesCacheRefreshOnUpdate(t *testing.T) {
|
||||
RefreshDelay: 30 * time.Second,
|
||||
Provider: testProvider,
|
||||
}
|
||||
_, err := provider.Records(context.Background())
|
||||
_, err := provider.Records(t.Context())
|
||||
require.NoError(t, err)
|
||||
|
||||
t.Run("When empty changes are applied", func(t *testing.T) {
|
||||
@ -161,14 +162,14 @@ func TestCachedProviderForcesCacheRefreshOnUpdate(t *testing.T) {
|
||||
testProvider.applyChanges = func(_ context.Context, _ *plan.Changes) error {
|
||||
return nil
|
||||
}
|
||||
err := provider.ApplyChanges(context.Background(), &plan.Changes{})
|
||||
err := provider.ApplyChanges(t.Context(), &plan.Changes{})
|
||||
assert.NoError(t, err)
|
||||
t.Run("Next call to Records is cached", func(t *testing.T) {
|
||||
testProvider.applyChanges = applyChangesNotCalled(t)
|
||||
testProvider.records = func(_ context.Context) ([]*endpoint.Endpoint, error) {
|
||||
return []*endpoint.Endpoint{{DNSName: "new.domain.fqdn"}}, nil
|
||||
}
|
||||
endpoints, err := provider.Records(context.Background())
|
||||
endpoints, err := provider.Records(t.Context())
|
||||
|
||||
assert.NoError(t, err)
|
||||
require.NotNil(t, endpoints)
|
||||
@ -183,7 +184,7 @@ func TestCachedProviderForcesCacheRefreshOnUpdate(t *testing.T) {
|
||||
testProvider.applyChanges = func(_ context.Context, _ *plan.Changes) error {
|
||||
return nil
|
||||
}
|
||||
err := provider.ApplyChanges(context.Background(), &plan.Changes{
|
||||
err := provider.ApplyChanges(t.Context(), &plan.Changes{
|
||||
Create: []*endpoint.Endpoint{
|
||||
{DNSName: "hello.world"},
|
||||
},
|
||||
@ -194,7 +195,7 @@ func TestCachedProviderForcesCacheRefreshOnUpdate(t *testing.T) {
|
||||
testProvider.records = func(_ context.Context) ([]*endpoint.Endpoint, error) {
|
||||
return []*endpoint.Endpoint{{DNSName: "new.domain.fqdn"}}, nil
|
||||
}
|
||||
endpoints, err := provider.Records(context.Background())
|
||||
endpoints, err := provider.Records(t.Context())
|
||||
|
||||
assert.NoError(t, err)
|
||||
require.NotNil(t, endpoints)
|
||||
|
||||
@ -16,7 +16,6 @@ limitations under the License.
|
||||
package civo
|
||||
|
||||
import (
|
||||
"context"
|
||||
"fmt"
|
||||
"io"
|
||||
"os"
|
||||
@ -35,7 +34,7 @@ import (
|
||||
)
|
||||
|
||||
func TestNewCivoProvider(t *testing.T) {
|
||||
_ = os.Setenv("CIVO_TOKEN", "xxxxxxxxxxxxxxx")
|
||||
t.Setenv("CIVO_TOKEN", "xxxxxxxxxxxxxxx")
|
||||
_, err := NewCivoProvider(endpoint.NewDomainFilter([]string{"test.civo.com"}), true)
|
||||
require.NoError(t, err)
|
||||
|
||||
@ -64,7 +63,7 @@ func TestCivoProviderZones(t *testing.T) {
|
||||
expected, err := client.ListDNSDomains()
|
||||
assert.NoError(t, err)
|
||||
|
||||
zones, err := provider.Zones(context.Background())
|
||||
zones, err := provider.Zones(t.Context())
|
||||
assert.NoError(t, err)
|
||||
|
||||
// Check if the return is a DNSDomain type
|
||||
@ -80,7 +79,7 @@ func TestCivoProviderZonesWithError(t *testing.T) {
|
||||
Client: *client,
|
||||
}
|
||||
|
||||
_, err := provider.Zones(context.Background())
|
||||
_, err := provider.Zones(t.Context())
|
||||
assert.Error(t, err)
|
||||
}
|
||||
|
||||
@ -118,7 +117,7 @@ func TestCivoProviderRecords(t *testing.T) {
|
||||
expected, err := client.ListDNSRecords("12345")
|
||||
assert.NoError(t, err)
|
||||
|
||||
records, err := provider.Records(context.Background())
|
||||
records, err := provider.Records(t.Context())
|
||||
assert.NoError(t, err)
|
||||
|
||||
assert.Equal(t, strings.TrimSuffix(records[0].DNSName, ".example.com"), expected[0].Name)
|
||||
@ -162,7 +161,7 @@ func TestCivoProviderRecordsWithError(t *testing.T) {
|
||||
_, err := client.ListDNSRecords("12345")
|
||||
assert.NoError(t, err)
|
||||
|
||||
endpoint, err := provider.Records(context.Background())
|
||||
endpoint, err := provider.Records(t.Context())
|
||||
assert.Error(t, err)
|
||||
assert.Nil(t, endpoint)
|
||||
|
||||
@ -182,7 +181,7 @@ func TestCivoProviderWithoutRecords(t *testing.T) {
|
||||
domainFilter: endpoint.NewDomainFilter([]string{"example.com"}),
|
||||
}
|
||||
|
||||
records, err := provider.Records(context.Background())
|
||||
records, err := provider.Records(t.Context())
|
||||
assert.NoError(t, err)
|
||||
|
||||
assert.Empty(t, records)
|
||||
@ -650,7 +649,7 @@ func TestCivoApplyChanges(t *testing.T) {
|
||||
changes.Delete = []*endpoint.Endpoint{{DNSName: "foobar.ext-dns-test.example.com", RecordType: endpoint.RecordTypeA, Targets: endpoint.Targets{"target"}}}
|
||||
changes.UpdateOld = []*endpoint.Endpoint{{DNSName: "foobar.ext-dns-test.example.de", RecordType: endpoint.RecordTypeA, Targets: endpoint.Targets{"target-old"}}}
|
||||
changes.UpdateNew = []*endpoint.Endpoint{{DNSName: "foobar.ext-dns-test.foo.com", Targets: endpoint.Targets{"target-new"}, RecordType: endpoint.RecordTypeCNAME, RecordTTL: 100}}
|
||||
err := provider.ApplyChanges(context.Background(), changes)
|
||||
err := provider.ApplyChanges(t.Context(), changes)
|
||||
assert.NoError(t, err)
|
||||
}
|
||||
|
||||
@ -707,7 +706,7 @@ func TestCivoApplyChangesError(t *testing.T) {
|
||||
|
||||
for _, tt := range cases {
|
||||
t.Run(tt.Name, func(t *testing.T) {
|
||||
err := provider.ApplyChanges(context.Background(), tt.changes)
|
||||
err := provider.ApplyChanges(t.Context(), tt.changes)
|
||||
assert.Equal(t, "invalid Record Type: AAAA", string(err.Error()))
|
||||
})
|
||||
}
|
||||
|
||||
@ -180,7 +180,7 @@ func TestAServiceTranslation(t *testing.T) {
|
||||
client: client,
|
||||
coreDNSPrefix: defaultCoreDNSPrefix,
|
||||
}
|
||||
endpoints, err := provider.Records(context.Background())
|
||||
endpoints, err := provider.Records(t.Context())
|
||||
require.NoError(t, err)
|
||||
if len(endpoints) != 1 {
|
||||
t.Fatalf("got unexpected number of endpoints: %d", len(endpoints))
|
||||
@ -210,7 +210,7 @@ func TestCNAMEServiceTranslation(t *testing.T) {
|
||||
client: client,
|
||||
coreDNSPrefix: defaultCoreDNSPrefix,
|
||||
}
|
||||
endpoints, err := provider.Records(context.Background())
|
||||
endpoints, err := provider.Records(t.Context())
|
||||
require.NoError(t, err)
|
||||
if len(endpoints) != 1 {
|
||||
t.Fatalf("got unexpected number of endpoints: %d", len(endpoints))
|
||||
@ -240,7 +240,7 @@ func TestTXTServiceTranslation(t *testing.T) {
|
||||
client: client,
|
||||
coreDNSPrefix: defaultCoreDNSPrefix,
|
||||
}
|
||||
endpoints, err := provider.Records(context.Background())
|
||||
endpoints, err := provider.Records(t.Context())
|
||||
require.NoError(t, err)
|
||||
if len(endpoints) != 1 {
|
||||
t.Fatalf("got unexpected number of endpoints: %d", len(endpoints))
|
||||
@ -272,7 +272,7 @@ func TestAWithTXTServiceTranslation(t *testing.T) {
|
||||
client: client,
|
||||
coreDNSPrefix: defaultCoreDNSPrefix,
|
||||
}
|
||||
endpoints, err := provider.Records(context.Background())
|
||||
endpoints, err := provider.Records(t.Context())
|
||||
require.NoError(t, err)
|
||||
if len(endpoints) != len(expectedTargets) {
|
||||
t.Fatalf("got unexpected number of endpoints: %d", len(endpoints))
|
||||
@ -312,7 +312,7 @@ func TestCNAMEWithTXTServiceTranslation(t *testing.T) {
|
||||
client: client,
|
||||
coreDNSPrefix: defaultCoreDNSPrefix,
|
||||
}
|
||||
endpoints, err := provider.Records(context.Background())
|
||||
endpoints, err := provider.Records(t.Context())
|
||||
require.NoError(t, err)
|
||||
if len(endpoints) != len(expectedTargets) {
|
||||
t.Fatalf("got unexpected number of endpoints: %d", len(endpoints))
|
||||
@ -352,7 +352,7 @@ func TestCoreDNSApplyChanges(t *testing.T) {
|
||||
endpoint.NewEndpoint("domain2.local", endpoint.RecordTypeCNAME, "site.local"),
|
||||
},
|
||||
}
|
||||
err := coredns.ApplyChanges(context.Background(), changes1)
|
||||
err := coredns.ApplyChanges(t.Context(), changes1)
|
||||
require.NoError(t, err)
|
||||
|
||||
expectedServices1 := map[string][]*Service{
|
||||
@ -369,7 +369,7 @@ func TestCoreDNSApplyChanges(t *testing.T) {
|
||||
endpoint.NewEndpoint("domain1.local", "A", "6.6.6.6"),
|
||||
},
|
||||
}
|
||||
records, _ := coredns.Records(context.Background())
|
||||
records, _ := coredns.Records(t.Context())
|
||||
for _, ep := range records {
|
||||
if ep.DNSName == "domain1.local" {
|
||||
changes2.UpdateOld = append(changes2.UpdateOld, ep)
|
||||
@ -409,7 +409,7 @@ func TestCoreDNSApplyChanges(t *testing.T) {
|
||||
endpoint.NewEndpoint("domain1.local", endpoint.RecordTypeA, "7.7.7.7"),
|
||||
},
|
||||
}
|
||||
err = coredns.ApplyChanges(context.Background(), changes4)
|
||||
err = coredns.ApplyChanges(t.Context(), changes4)
|
||||
require.NoError(t, err)
|
||||
|
||||
expectedServices4 := map[string][]*Service{
|
||||
@ -437,7 +437,7 @@ func TestCoreDNSApplyChanges_DomainDoNotMatch(t *testing.T) {
|
||||
},
|
||||
}
|
||||
hook := logtest.LogsUnderTestWithLogLevel(log.DebugLevel, t)
|
||||
err := coredns.ApplyChanges(context.Background(), changes1)
|
||||
err := coredns.ApplyChanges(t.Context(), changes1)
|
||||
require.NoError(t, err)
|
||||
|
||||
logtest.TestHelperLogContains("Skipping record \"domain1.local\" due to domain filter", hook, t)
|
||||
@ -521,7 +521,7 @@ func TestGetServices_Success(t *testing.T) {
|
||||
},
|
||||
}
|
||||
|
||||
result, err := c.GetServices(context.Background(), "/prefix")
|
||||
result, err := c.GetServices(t.Context(), "/prefix")
|
||||
assert.NoError(t, err)
|
||||
assert.Len(t, result, 1)
|
||||
assert.Equal(t, "example.com", result[0].Host)
|
||||
@ -553,7 +553,7 @@ func TestGetServices_Duplicate(t *testing.T) {
|
||||
},
|
||||
}, nil)
|
||||
|
||||
result, err := c.GetServices(context.Background(), "/prefix")
|
||||
result, err := c.GetServices(t.Context(), "/prefix")
|
||||
assert.NoError(t, err)
|
||||
assert.Len(t, result, 1)
|
||||
}
|
||||
@ -587,7 +587,7 @@ func TestGetServices_Multiple(t *testing.T) {
|
||||
},
|
||||
}, nil)
|
||||
|
||||
result, err := c.GetServices(context.Background(), "/prefix")
|
||||
result, err := c.GetServices(t.Context(), "/prefix")
|
||||
assert.NoError(t, err)
|
||||
assert.Len(t, result, 2)
|
||||
assert.Equal(t, priority, result[1].Priority)
|
||||
@ -631,7 +631,7 @@ func TestGetServices_FilterOutOtherServicesOwnerSetButNothingChanged(t *testing.
|
||||
},
|
||||
}, nil)
|
||||
|
||||
result, err := c.GetServices(context.Background(), "/prefix")
|
||||
result, err := c.GetServices(t.Context(), "/prefix")
|
||||
assert.NoError(t, err)
|
||||
assert.Len(t, result, 3)
|
||||
}
|
||||
@ -674,7 +674,7 @@ func TestGetServices_FilterOutOtherServicesWithStrictlyOwned(t *testing.T) {
|
||||
},
|
||||
}, nil)
|
||||
|
||||
result, err := c.GetServices(context.Background(), "/prefix")
|
||||
result, err := c.GetServices(t.Context(), "/prefix")
|
||||
assert.NoError(t, err)
|
||||
assert.Len(t, result, 1)
|
||||
assert.Equal(t, "owner", result[0].Owner)
|
||||
@ -702,7 +702,7 @@ func TestGetServices_UnmarshalError(t *testing.T) {
|
||||
},
|
||||
}, nil)
|
||||
|
||||
_, err := c.GetServices(context.Background(), "/prefix")
|
||||
_, err := c.GetServices(t.Context(), "/prefix")
|
||||
assert.Error(t, err)
|
||||
assert.Contains(t, err.Error(), "/prefix/1")
|
||||
}
|
||||
@ -718,7 +718,7 @@ func TestGetServices_GetError(t *testing.T) {
|
||||
mockKV.On("Get", mock.Anything, "/prefix", mock.AnythingOfType("clientv3.OpOption")).
|
||||
Return(&etcdcv3.GetResponse{}, errors.New("etcd failure"))
|
||||
|
||||
_, err := c.GetServices(context.Background(), "/prefix")
|
||||
_, err := c.GetServices(t.Context(), "/prefix")
|
||||
assert.Error(t, err)
|
||||
assert.EqualError(t, err, "etcd failure")
|
||||
}
|
||||
@ -754,7 +754,7 @@ func TestDeleteService(t *testing.T) {
|
||||
},
|
||||
}
|
||||
|
||||
err := c.DeleteService(context.Background(), tt.key)
|
||||
err := c.DeleteService(t.Context(), tt.key)
|
||||
|
||||
if tt.wantErr {
|
||||
require.Error(t, err)
|
||||
@ -893,7 +893,7 @@ func TestDeleteServiceWithStrictlyOwned(t *testing.T) {
|
||||
strictlyOwned: true,
|
||||
}
|
||||
|
||||
err := c.DeleteService(context.Background(), tt.key)
|
||||
err := c.DeleteService(t.Context(), tt.key)
|
||||
|
||||
require.NoError(t, err)
|
||||
mockKV.AssertExpectations(t)
|
||||
@ -1151,7 +1151,7 @@ func TestSaveService(t *testing.T) {
|
||||
strictlyOwned: tt.strictlyOwned,
|
||||
}
|
||||
|
||||
err = c.SaveService(context.Background(), tt.service)
|
||||
err = c.SaveService(t.Context(), tt.service)
|
||||
if tt.wantErr {
|
||||
assert.Error(t, err)
|
||||
} else {
|
||||
@ -1316,7 +1316,7 @@ func TestApplyChangesAWithGroupServiceTranslation(t *testing.T) {
|
||||
endpoint.NewEndpoint("domain3.local", endpoint.RecordTypeA, "5.5.5.7").WithProviderSpecific(providerSpecificGroup, "test2"),
|
||||
},
|
||||
}
|
||||
coredns.ApplyChanges(context.Background(), changes1)
|
||||
coredns.ApplyChanges(t.Context(), changes1)
|
||||
|
||||
expectedServices1 := map[string][]*Service{
|
||||
"/skydns/local/domain1": {{Host: "5.5.5.5", Group: "test1"}},
|
||||
@ -1336,7 +1336,7 @@ func TestRecordsAWithGroupServiceTranslation(t *testing.T) {
|
||||
client: client,
|
||||
coreDNSPrefix: defaultCoreDNSPrefix,
|
||||
}
|
||||
endpoints, err := coredns.Records(context.Background())
|
||||
endpoints, err := coredns.Records(t.Context())
|
||||
require.NoError(t, err)
|
||||
if prop, ok := endpoints[0].GetProviderSpecificProperty(providerSpecificGroup); !ok {
|
||||
t.Error("go no Group name")
|
||||
@ -1357,7 +1357,7 @@ func TestRecordsIncludeLabelOwnerWithStrictlyOwned(t *testing.T) {
|
||||
coreDNSPrefix: defaultCoreDNSPrefix,
|
||||
strictlyOwned: true,
|
||||
}
|
||||
endpoints, err := coredns.Records(context.Background())
|
||||
endpoints, err := coredns.Records(t.Context())
|
||||
require.NoError(t, err)
|
||||
for _, ep := range endpoints {
|
||||
assert.Equal(t, "owner", ep.Labels[endpoint.OwnerLabelKey])
|
||||
@ -1376,7 +1376,7 @@ func TestRecordsIncludeOwnerASLabelWithoutStrictlyOwned(t *testing.T) {
|
||||
coreDNSPrefix: defaultCoreDNSPrefix,
|
||||
strictlyOwned: false,
|
||||
}
|
||||
endpoints, err := coredns.Records(context.Background())
|
||||
endpoints, err := coredns.Records(t.Context())
|
||||
require.NoError(t, err)
|
||||
for _, ep := range endpoints {
|
||||
assert.Empty(t, ep.Labels[endpoint.OwnerLabelKey])
|
||||
|
||||
@ -297,7 +297,7 @@ func TestDigitalOceanZones(t *testing.T) {
|
||||
domainFilter: endpoint.NewDomainFilter([]string{"com"}),
|
||||
}
|
||||
|
||||
zones, err := provider.Zones(context.Background())
|
||||
zones, err := provider.Zones(t.Context())
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
@ -386,7 +386,7 @@ func TestDigitalOceanApplyChanges(t *testing.T) {
|
||||
changes.Delete = []*endpoint.Endpoint{{DNSName: "foobar.ext-dns-test.bar.com", Targets: endpoint.Targets{"target"}}}
|
||||
changes.UpdateOld = []*endpoint.Endpoint{{DNSName: "foobar.ext-dns-test.bar.de", Targets: endpoint.Targets{"target-old"}}}
|
||||
changes.UpdateNew = []*endpoint.Endpoint{{DNSName: "foobar.ext-dns-test.foo.com", Targets: endpoint.Targets{"target-new"}, RecordType: "CNAME", RecordTTL: 100}}
|
||||
err := provider.ApplyChanges(context.Background(), changes)
|
||||
err := provider.ApplyChanges(t.Context(), changes)
|
||||
if err != nil {
|
||||
t.Errorf("should not fail, %s", err)
|
||||
}
|
||||
@ -662,13 +662,13 @@ func TestDigitalOceanProcessDeleteActions(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestNewDigitalOceanProvider(t *testing.T) {
|
||||
_ = os.Setenv("DO_TOKEN", "xxxxxxxxxxxxxxxxx")
|
||||
_, err := NewDigitalOceanProvider(context.Background(), endpoint.NewDomainFilter([]string{"ext-dns-test.zalando.to."}), true, 50)
|
||||
t.Setenv("DO_TOKEN", "xxxxxxxxxxxxxxxxx")
|
||||
_, err := NewDigitalOceanProvider(t.Context(), endpoint.NewDomainFilter([]string{"ext-dns-test.zalando.to."}), true, 50)
|
||||
if err != nil {
|
||||
t.Errorf("should not fail, %s", err)
|
||||
}
|
||||
_ = os.Unsetenv("DO_TOKEN")
|
||||
_, err = NewDigitalOceanProvider(context.Background(), endpoint.NewDomainFilter([]string{"ext-dns-test.zalando.to."}), true, 50)
|
||||
_, err = NewDigitalOceanProvider(t.Context(), endpoint.NewDomainFilter([]string{"ext-dns-test.zalando.to."}), true, 50)
|
||||
if err == nil {
|
||||
t.Errorf("expected to fail")
|
||||
}
|
||||
@ -776,7 +776,7 @@ func TestDigitalOceanRecord(t *testing.T) {
|
||||
Client: &mockDigitalOceanClient{},
|
||||
}
|
||||
|
||||
records, err := provider.fetchRecords(context.Background(), "example.com")
|
||||
records, err := provider.fetchRecords(t.Context(), "example.com")
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
@ -791,7 +791,7 @@ func TestDigitalOceanAllRecords(t *testing.T) {
|
||||
provider := &DigitalOceanProvider{
|
||||
Client: &mockDigitalOceanClient{},
|
||||
}
|
||||
ctx := context.Background()
|
||||
ctx := t.Context()
|
||||
|
||||
records, err := provider.Records(ctx)
|
||||
if err != nil {
|
||||
|
||||
@ -116,10 +116,10 @@ func TestDnsimpleServices(t *testing.T) {
|
||||
// Setup mock services
|
||||
// Note: AnythingOfType doesn't work with interfaces https://github.com/stretchr/testify/issues/519
|
||||
mockDNS := &mockDnsimpleZoneServiceInterface{}
|
||||
mockDNS.On("ListZones", context.Background(), "1", &dnsimple.ZoneListOptions{ListOptions: dnsimple.ListOptions{Page: dnsimple.Int(1)}}).Return(&dnsimpleListZonesResponse, nil)
|
||||
mockDNS.On("ListZones", context.Background(), "2", &dnsimple.ZoneListOptions{ListOptions: dnsimple.ListOptions{Page: dnsimple.Int(1)}}).Return(nil, fmt.Errorf("Account ID not found"))
|
||||
mockDNS.On("ListRecords", context.Background(), "1", "example.com", &dnsimple.ZoneRecordListOptions{ListOptions: dnsimple.ListOptions{Page: dnsimple.Int(1)}}).Return(&dnsimpleListRecordsResponse, nil)
|
||||
mockDNS.On("ListRecords", context.Background(), "1", "example-beta.com", &dnsimple.ZoneRecordListOptions{ListOptions: dnsimple.ListOptions{Page: dnsimple.Int(1)}}).Return(&dnsimple.ZoneRecordsResponse{Response: dnsimple.Response{Pagination: &dnsimple.Pagination{}}}, nil)
|
||||
mockDNS.On("ListZones", t.Context(), "1", &dnsimple.ZoneListOptions{ListOptions: dnsimple.ListOptions{Page: dnsimple.Int(1)}}).Return(&dnsimpleListZonesResponse, nil)
|
||||
mockDNS.On("ListZones", t.Context(), "2", &dnsimple.ZoneListOptions{ListOptions: dnsimple.ListOptions{Page: dnsimple.Int(1)}}).Return(nil, fmt.Errorf("Account ID not found"))
|
||||
mockDNS.On("ListRecords", t.Context(), "1", "example.com", &dnsimple.ZoneRecordListOptions{ListOptions: dnsimple.ListOptions{Page: dnsimple.Int(1)}}).Return(&dnsimpleListRecordsResponse, nil)
|
||||
mockDNS.On("ListRecords", t.Context(), "1", "example-beta.com", &dnsimple.ZoneRecordListOptions{ListOptions: dnsimple.ListOptions{Page: dnsimple.Int(1)}}).Return(&dnsimple.ZoneRecordsResponse{Response: dnsimple.Response{Pagination: &dnsimple.Pagination{}}}, nil)
|
||||
|
||||
for _, record := range records {
|
||||
recordName := record.Name
|
||||
@ -135,10 +135,10 @@ func TestDnsimpleServices(t *testing.T) {
|
||||
Data: []dnsimple.ZoneRecord{record},
|
||||
}
|
||||
|
||||
mockDNS.On("ListRecords", context.Background(), "1", record.ZoneID, &dnsimple.ZoneRecordListOptions{Name: &recordName, ListOptions: dnsimple.ListOptions{Page: dnsimple.Int(1)}}).Return(&dnsimpleRecordResponse, nil)
|
||||
mockDNS.On("CreateRecord", context.Background(), "1", record.ZoneID, simpleRecord).Return(&dnsimple.ZoneRecordResponse{}, nil)
|
||||
mockDNS.On("DeleteRecord", context.Background(), "1", record.ZoneID, record.ID).Return(&dnsimple.ZoneRecordResponse{}, nil)
|
||||
mockDNS.On("UpdateRecord", context.Background(), "1", record.ZoneID, record.ID, simpleRecord).Return(&dnsimple.ZoneRecordResponse{}, nil)
|
||||
mockDNS.On("ListRecords", t.Context(), "1", record.ZoneID, &dnsimple.ZoneRecordListOptions{Name: &recordName, ListOptions: dnsimple.ListOptions{Page: dnsimple.Int(1)}}).Return(&dnsimpleRecordResponse, nil)
|
||||
mockDNS.On("CreateRecord", t.Context(), "1", record.ZoneID, simpleRecord).Return(&dnsimple.ZoneRecordResponse{}, nil)
|
||||
mockDNS.On("DeleteRecord", t.Context(), "1", record.ZoneID, record.ID).Return(&dnsimple.ZoneRecordResponse{}, nil)
|
||||
mockDNS.On("UpdateRecord", t.Context(), "1", record.ZoneID, record.ID, simpleRecord).Return(&dnsimple.ZoneRecordResponse{}, nil)
|
||||
}
|
||||
|
||||
mockProvider = dnsimpleProvider{client: mockDNS}
|
||||
@ -153,7 +153,7 @@ func TestDnsimpleServices(t *testing.T) {
|
||||
}
|
||||
|
||||
func testDnsimpleProviderZones(t *testing.T) {
|
||||
ctx := context.Background()
|
||||
ctx := t.Context()
|
||||
mockProvider.accountID = "1"
|
||||
result, err := mockProvider.Zones(ctx)
|
||||
assert.NoError(t, err)
|
||||
@ -164,7 +164,7 @@ func testDnsimpleProviderZones(t *testing.T) {
|
||||
assert.Error(t, err)
|
||||
|
||||
mockProvider.accountID = "3"
|
||||
os.Setenv("DNSIMPLE_ZONES", "example-from-env.com")
|
||||
t.Setenv("DNSIMPLE_ZONES", "example-from-env.com")
|
||||
result, err = mockProvider.Zones(ctx)
|
||||
assert.NoError(t, err)
|
||||
validateDnsimpleZones(t, result, dnsimpleListZonesFromEnvResponse.Data)
|
||||
@ -174,7 +174,7 @@ func testDnsimpleProviderZones(t *testing.T) {
|
||||
}
|
||||
|
||||
func testDnsimpleProviderRecords(t *testing.T) {
|
||||
ctx := context.Background()
|
||||
ctx := t.Context()
|
||||
mockProvider.accountID = "1"
|
||||
result, err := mockProvider.Records(ctx)
|
||||
assert.NoError(t, err)
|
||||
@ -200,7 +200,7 @@ func testDnsimpleProviderApplyChanges(t *testing.T) {
|
||||
}
|
||||
|
||||
mockProvider.accountID = "1"
|
||||
err := mockProvider.ApplyChanges(context.Background(), changes)
|
||||
err := mockProvider.ApplyChanges(t.Context(), changes)
|
||||
if err != nil {
|
||||
t.Errorf("Failed to apply changes: %v", err)
|
||||
}
|
||||
@ -213,14 +213,14 @@ func testDnsimpleProviderApplyChangesSkipsUnknown(t *testing.T) {
|
||||
}
|
||||
|
||||
mockProvider.accountID = "1"
|
||||
err := mockProvider.ApplyChanges(context.Background(), changes)
|
||||
err := mockProvider.ApplyChanges(t.Context(), changes)
|
||||
if err != nil {
|
||||
t.Errorf("Failed to ignore unknown zones: %v", err)
|
||||
}
|
||||
}
|
||||
|
||||
func testDnsimpleSuitableZone(t *testing.T) {
|
||||
ctx := context.Background()
|
||||
ctx := t.Context()
|
||||
mockProvider.accountID = "1"
|
||||
zones, err := mockProvider.Zones(ctx)
|
||||
require.NoError(t, err)
|
||||
@ -228,7 +228,7 @@ func testDnsimpleSuitableZone(t *testing.T) {
|
||||
zone := dnsimpleSuitableZone("example-beta.example.com", zones)
|
||||
assert.Equal(t, "example.com", zone.Name)
|
||||
|
||||
os.Setenv("DNSIMPLE_ZONES", "environment-example.com,example.environment-example.com")
|
||||
t.Setenv("DNSIMPLE_ZONES", "environment-example.com,example.environment-example.com")
|
||||
mockProvider.accountID = "3"
|
||||
zones, err = mockProvider.Zones(ctx)
|
||||
require.NoError(t, err)
|
||||
@ -241,7 +241,7 @@ func testDnsimpleSuitableZone(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestNewDnsimpleProvider(t *testing.T) {
|
||||
os.Setenv("DNSIMPLE_OAUTH", "xxxxxxxxxxxxxxxxxxxxxxxxxx")
|
||||
t.Setenv("DNSIMPLE_OAUTH", "xxxxxxxxxxxxxxxxxxxxxxxxxx")
|
||||
_, err := NewDnsimpleProvider(endpoint.NewDomainFilter([]string{"example.com"}), provider.NewZoneIDFilter([]string{""}), true)
|
||||
if err == nil {
|
||||
t.Errorf("Expected to fail new provider on bad token")
|
||||
@ -253,8 +253,8 @@ func TestNewDnsimpleProvider(t *testing.T) {
|
||||
t.Errorf("Expected to fail new provider on empty token")
|
||||
}
|
||||
|
||||
os.Setenv("DNSIMPLE_OAUTH", "xxxxxxxxxxxxxxxxxxxxxxxxxx")
|
||||
os.Setenv("DNSIMPLE_ACCOUNT_ID", "12345678")
|
||||
t.Setenv("DNSIMPLE_OAUTH", "xxxxxxxxxxxxxxxxxxxxxxxxxx")
|
||||
t.Setenv("DNSIMPLE_ACCOUNT_ID", "12345678")
|
||||
providerTypedProvider, err := NewDnsimpleProvider(endpoint.NewDomainFilter([]string{"example.com"}), provider.NewZoneIDFilter([]string{""}), true)
|
||||
dnsimpleTypedProvider := providerTypedProvider.(*dnsimpleProvider)
|
||||
if err != nil {
|
||||
@ -270,11 +270,11 @@ func testDnsimpleGetRecordID(t *testing.T) {
|
||||
var err error
|
||||
|
||||
mockProvider.accountID = "1"
|
||||
result, err = mockProvider.GetRecordID(context.Background(), "example.com", "example")
|
||||
result, err = mockProvider.GetRecordID(t.Context(), "example.com", "example")
|
||||
assert.NoError(t, err)
|
||||
assert.Equal(t, int64(2), result)
|
||||
|
||||
result, err = mockProvider.GetRecordID(context.Background(), "example.com", "example-beta")
|
||||
result, err = mockProvider.GetRecordID(t.Context(), "example.com", "example-beta")
|
||||
assert.NoError(t, err)
|
||||
assert.Equal(t, int64(1), result)
|
||||
}
|
||||
|
||||
@ -25,6 +25,7 @@ import (
|
||||
"github.com/stretchr/testify/assert"
|
||||
|
||||
log "github.com/sirupsen/logrus"
|
||||
|
||||
"sigs.k8s.io/external-dns/endpoint"
|
||||
"sigs.k8s.io/external-dns/plan"
|
||||
|
||||
@ -121,7 +122,7 @@ func contains(arr []*endpoint.Endpoint, name string) bool {
|
||||
func TestExoscaleGetRecords(t *testing.T) {
|
||||
provider := NewExoscaleProviderWithClient(NewExoscaleClientStub(), "", "", false)
|
||||
|
||||
recs, err := provider.Records(context.Background())
|
||||
recs, err := provider.Records(t.Context())
|
||||
if err == nil {
|
||||
assert.Len(t, recs, 3)
|
||||
assert.True(t, contains(recs, "v1.foo.com"))
|
||||
@ -190,7 +191,7 @@ func TestExoscaleApplyChanges(t *testing.T) {
|
||||
createExoscale = make([]createRecordExoscale, 0)
|
||||
deleteExoscale = make([]deleteRecordExoscale, 0)
|
||||
|
||||
provider.ApplyChanges(context.Background(), plan)
|
||||
provider.ApplyChanges(t.Context(), plan)
|
||||
|
||||
assert.Len(t, createExoscale, 1)
|
||||
assert.Equal(t, domainIDs[0], createExoscale[0].domainID)
|
||||
|
||||
@ -14,7 +14,6 @@ limitations under the License.
|
||||
package gandi
|
||||
|
||||
import (
|
||||
"context"
|
||||
"fmt"
|
||||
"os"
|
||||
"testing"
|
||||
@ -155,14 +154,14 @@ func (m *mockGandiClient) ListDomains() ([]domain.ListResponse, error) {
|
||||
// Tests
|
||||
|
||||
func TestNewGandiProvider(t *testing.T) {
|
||||
_ = os.Setenv("GANDI_KEY", "myGandiKey")
|
||||
t.Setenv("GANDI_KEY", "myGandiKey")
|
||||
provider, err := NewGandiProvider(endpoint.NewDomainFilter([]string{"example.com"}), true)
|
||||
if err != nil {
|
||||
t.Errorf("failed : %s", err)
|
||||
}
|
||||
assert.True(t, provider.DryRun)
|
||||
|
||||
_ = os.Setenv("GANDI_PAT", "myGandiPAT")
|
||||
t.Setenv("GANDI_PAT", "myGandiPAT")
|
||||
provider, err = NewGandiProvider(endpoint.NewDomainFilter([]string{"example.com"}), true)
|
||||
if err != nil {
|
||||
t.Errorf("failed : %s", err)
|
||||
@ -176,7 +175,7 @@ func TestNewGandiProvider(t *testing.T) {
|
||||
}
|
||||
assert.True(t, provider.DryRun)
|
||||
|
||||
_ = os.Setenv("GANDI_SHARING_ID", "aSharingId")
|
||||
t.Setenv("GANDI_SHARING_ID", "aSharingId")
|
||||
provider, err = NewGandiProvider(endpoint.NewDomainFilter([]string{"example.com"}), false)
|
||||
if err != nil {
|
||||
t.Errorf("failed : %s", err)
|
||||
@ -222,7 +221,7 @@ func TestGandiProvider_RecordsReturnsCorrectEndpoints(t *testing.T) {
|
||||
LiveDNSClient: mockedClient,
|
||||
}
|
||||
|
||||
actualEndpoints, err := mockedProvider.Records(context.Background())
|
||||
actualEndpoints, err := mockedProvider.Records(t.Context())
|
||||
if err != nil {
|
||||
t.Errorf("should not fail, %s", err)
|
||||
}
|
||||
@ -277,7 +276,7 @@ func TestGandiProvider_RecordsOnFilteredDomainsShouldYieldNoEndpoints(t *testing
|
||||
domainFilter: endpoint.NewDomainFilterWithExclusions([]string{}, []string{"example.com"}),
|
||||
}
|
||||
|
||||
endpoints, _ := mockedProvider.Records(context.Background())
|
||||
endpoints, _ := mockedProvider.Records(t.Context())
|
||||
assert.Empty(t, endpoints)
|
||||
}
|
||||
|
||||
@ -299,7 +298,7 @@ func TestGandiProvider_RecordsWithUnsupportedTypesAreNotReturned(t *testing.T) {
|
||||
LiveDNSClient: mockedClient,
|
||||
}
|
||||
|
||||
endpoints, _ := mockedProvider.Records(context.Background())
|
||||
endpoints, _ := mockedProvider.Records(t.Context())
|
||||
assert.Empty(t, endpoints)
|
||||
}
|
||||
|
||||
@ -341,7 +340,7 @@ func TestGandiProvider_ApplyChangesMakesExpectedAPICalls(t *testing.T) {
|
||||
},
|
||||
}
|
||||
|
||||
err := mockedProvider.ApplyChanges(context.Background(), changes)
|
||||
err := mockedProvider.ApplyChanges(t.Context(), changes)
|
||||
if err != nil {
|
||||
t.Errorf("should not fail, %s", err)
|
||||
}
|
||||
@ -404,7 +403,7 @@ func TestGandiProvider_ApplyChangesRespectsDryRun(t *testing.T) {
|
||||
changes.UpdateNew = []*endpoint.Endpoint{{DNSName: "test3.example.com", Targets: endpoint.Targets{"192.168.0.2"}, RecordType: "A", RecordTTL: 777}}
|
||||
changes.Delete = []*endpoint.Endpoint{{DNSName: "test4.example.com", Targets: endpoint.Targets{"192.168.0.3"}, RecordType: "A"}}
|
||||
|
||||
mockedProvider.ApplyChanges(context.Background(), changes)
|
||||
mockedProvider.ApplyChanges(t.Context(), changes)
|
||||
|
||||
td.Cmp(t, mockedClient.Actions, []MockAction{
|
||||
{
|
||||
@ -421,7 +420,7 @@ func TestGandiProvider_ApplyChangesWithEmptyResultDoesNothing(t *testing.T) {
|
||||
LiveDNSClient: mockedClient,
|
||||
}
|
||||
|
||||
mockedProvider.ApplyChanges(context.Background(), changes)
|
||||
mockedProvider.ApplyChanges(t.Context(), changes)
|
||||
|
||||
assert.Empty(t, mockedClient.Actions)
|
||||
}
|
||||
@ -443,7 +442,7 @@ func TestGandiProvider_ApplyChangesWithUnknownDomainDoesNoUpdate(t *testing.T) {
|
||||
},
|
||||
}
|
||||
|
||||
mockedProvider.ApplyChanges(context.Background(), changes)
|
||||
mockedProvider.ApplyChanges(t.Context(), changes)
|
||||
|
||||
td.Cmp(t, mockedClient.Actions, []MockAction{
|
||||
{
|
||||
@ -470,7 +469,7 @@ func TestGandiProvider_ApplyChangesConvertsApexDomain(t *testing.T) {
|
||||
},
|
||||
}
|
||||
|
||||
err := mockedProvider.ApplyChanges(context.Background(), changes)
|
||||
err := mockedProvider.ApplyChanges(t.Context(), changes)
|
||||
if err != nil {
|
||||
t.Errorf("should not fail, %s", err)
|
||||
}
|
||||
@ -507,7 +506,7 @@ func TestGandiProvider_FailingCases(t *testing.T) {
|
||||
LiveDNSClient: mockedClient,
|
||||
}
|
||||
|
||||
_, err := mockedProvider.Records(context.Background())
|
||||
_, err := mockedProvider.Records(t.Context())
|
||||
if err == nil {
|
||||
t.Error("should have failed")
|
||||
}
|
||||
@ -521,7 +520,7 @@ func TestGandiProvider_FailingCases(t *testing.T) {
|
||||
LiveDNSClient: mockedClient,
|
||||
}
|
||||
|
||||
_, err = mockedProvider.Records(context.Background())
|
||||
_, err = mockedProvider.Records(t.Context())
|
||||
if err == nil {
|
||||
t.Error("should have failed")
|
||||
}
|
||||
@ -535,7 +534,7 @@ func TestGandiProvider_FailingCases(t *testing.T) {
|
||||
LiveDNSClient: mockedClient,
|
||||
}
|
||||
|
||||
err = mockedProvider.ApplyChanges(context.Background(), changes)
|
||||
err = mockedProvider.ApplyChanges(t.Context(), changes)
|
||||
if err == nil {
|
||||
t.Error("should have failed")
|
||||
}
|
||||
@ -549,7 +548,7 @@ func TestGandiProvider_FailingCases(t *testing.T) {
|
||||
LiveDNSClient: mockedClient,
|
||||
}
|
||||
|
||||
err = mockedProvider.ApplyChanges(context.Background(), changes)
|
||||
err = mockedProvider.ApplyChanges(t.Context(), changes)
|
||||
if err == nil {
|
||||
t.Error("should have failed")
|
||||
}
|
||||
@ -563,7 +562,7 @@ func TestGandiProvider_FailingCases(t *testing.T) {
|
||||
LiveDNSClient: mockedClient,
|
||||
}
|
||||
|
||||
err = mockedProvider.ApplyChanges(context.Background(), changes)
|
||||
err = mockedProvider.ApplyChanges(t.Context(), changes)
|
||||
if err == nil {
|
||||
t.Error("should have failed")
|
||||
}
|
||||
@ -577,7 +576,7 @@ func TestGandiProvider_FailingCases(t *testing.T) {
|
||||
LiveDNSClient: mockedClient,
|
||||
}
|
||||
|
||||
err = mockedProvider.ApplyChanges(context.Background(), changes)
|
||||
err = mockedProvider.ApplyChanges(t.Context(), changes)
|
||||
if err == nil {
|
||||
t.Error("should have failed")
|
||||
}
|
||||
|
||||
@ -17,7 +17,6 @@ limitations under the License.
|
||||
package godaddy
|
||||
|
||||
import (
|
||||
"context"
|
||||
"encoding/json"
|
||||
"errors"
|
||||
"sort"
|
||||
@ -161,7 +160,7 @@ func TestGoDaddyZoneRecords(t *testing.T) {
|
||||
},
|
||||
}, nil).Once()
|
||||
|
||||
zones, records, err := provider.zonesRecords(context.TODO(), true)
|
||||
zones, records, err := provider.zonesRecords(t.Context(), true)
|
||||
|
||||
assert.NoError(err)
|
||||
|
||||
@ -193,7 +192,7 @@ func TestGoDaddyZoneRecords(t *testing.T) {
|
||||
|
||||
// Error on getting zones list
|
||||
client.On("Get", domainsURI).Return(nil, ErrAPIDown).Once()
|
||||
zones, records, err = provider.zonesRecords(context.TODO(), false)
|
||||
zones, records, err = provider.zonesRecords(t.Context(), false)
|
||||
assert.Error(err)
|
||||
assert.Nil(zones)
|
||||
assert.Nil(records)
|
||||
@ -208,7 +207,7 @@ func TestGoDaddyZoneRecords(t *testing.T) {
|
||||
|
||||
client.On("Get", "/v1/domains/example.net/records").Return(nil, ErrAPIDown).Once()
|
||||
|
||||
zones, records, err = provider.zonesRecords(context.TODO(), false)
|
||||
zones, records, err = provider.zonesRecords(t.Context(), false)
|
||||
|
||||
assert.Error(err)
|
||||
assert.Nil(zones)
|
||||
@ -224,7 +223,7 @@ func TestGoDaddyZoneRecords(t *testing.T) {
|
||||
|
||||
client.On("Get", "/v1/domains/example.net/records").Return(nil, ErrAPIDown).Once()
|
||||
|
||||
zones, records, err = provider.zonesRecords(context.TODO(), false)
|
||||
zones, records, err = provider.zonesRecords(t.Context(), false)
|
||||
assert.Error(err)
|
||||
assert.Nil(zones)
|
||||
assert.Nil(records)
|
||||
@ -278,7 +277,7 @@ func TestGoDaddyRecords(t *testing.T) {
|
||||
},
|
||||
}, nil).Once()
|
||||
|
||||
endpoints, err := provider.Records(context.TODO())
|
||||
endpoints, err := provider.Records(t.Context())
|
||||
assert.NoError(err)
|
||||
|
||||
// Little fix for multi targets endpoint
|
||||
@ -321,7 +320,7 @@ func TestGoDaddyRecords(t *testing.T) {
|
||||
|
||||
// Error getting zone
|
||||
client.On("Get", domainsURI).Return(nil, ErrAPIDown).Once()
|
||||
endpoints, err = provider.Records(context.TODO())
|
||||
endpoints, err = provider.Records(t.Context())
|
||||
assert.Error(err)
|
||||
assert.Nil(endpoints)
|
||||
client.AssertExpectations(t)
|
||||
@ -386,7 +385,7 @@ func TestGoDaddyChange(t *testing.T) {
|
||||
// Delete entry
|
||||
client.On("Delete", "/v1/domains/example.net/records/A/godaddy").Return(nil, nil).Once()
|
||||
|
||||
assert.NoError(provider.ApplyChanges(context.TODO(), &changes))
|
||||
assert.NoError(provider.ApplyChanges(t.Context(), &changes))
|
||||
|
||||
client.AssertExpectations(t)
|
||||
}
|
||||
@ -454,7 +453,7 @@ func TestGoDaddyErrorResponse(t *testing.T) {
|
||||
}},
|
||||
}, errors.New(operationFailedTestReason)).Once()
|
||||
|
||||
assert.Error(provider.ApplyChanges(context.TODO(), &changes))
|
||||
assert.Error(provider.ApplyChanges(t.Context(), &changes))
|
||||
|
||||
client.AssertExpectations(t)
|
||||
}
|
||||
|
||||
@ -210,7 +210,7 @@ func hasTrailingDot(target string) bool {
|
||||
func TestGoogleZonesIDFilter(t *testing.T) {
|
||||
provider := newGoogleProviderZoneOverlap(t, endpoint.NewDomainFilter([]string{"cluster.local."}), provider.NewZoneIDFilter([]string{"10002"}), provider.NewZoneTypeFilter(""), []*endpoint.Endpoint{})
|
||||
|
||||
zones, err := provider.Zones(context.Background())
|
||||
zones, err := provider.Zones(t.Context())
|
||||
require.NoError(t, err)
|
||||
|
||||
validateZones(t, zones, map[string]*dns.ManagedZone{
|
||||
@ -221,7 +221,7 @@ func TestGoogleZonesIDFilter(t *testing.T) {
|
||||
func TestGoogleZonesNameFilter(t *testing.T) {
|
||||
provider := newGoogleProviderZoneOverlap(t, endpoint.NewDomainFilter([]string{"cluster.local."}), provider.NewZoneIDFilter([]string{"internal-2"}), provider.NewZoneTypeFilter(""), []*endpoint.Endpoint{})
|
||||
|
||||
zones, err := provider.Zones(context.Background())
|
||||
zones, err := provider.Zones(t.Context())
|
||||
require.NoError(t, err)
|
||||
|
||||
validateZones(t, zones, map[string]*dns.ManagedZone{
|
||||
@ -232,7 +232,7 @@ func TestGoogleZonesNameFilter(t *testing.T) {
|
||||
func TestGoogleZonesVisibilityFilterPublic(t *testing.T) {
|
||||
provider := newGoogleProviderZoneOverlap(t, endpoint.NewDomainFilter([]string{"cluster.local."}), provider.NewZoneIDFilter([]string{"split-horizon-1"}), provider.NewZoneTypeFilter("public"), []*endpoint.Endpoint{})
|
||||
|
||||
zones, err := provider.Zones(context.Background())
|
||||
zones, err := provider.Zones(t.Context())
|
||||
require.NoError(t, err)
|
||||
|
||||
validateZones(t, zones, map[string]*dns.ManagedZone{
|
||||
@ -243,7 +243,7 @@ func TestGoogleZonesVisibilityFilterPublic(t *testing.T) {
|
||||
func TestGoogleZonesVisibilityFilterPrivate(t *testing.T) {
|
||||
provider := newGoogleProviderZoneOverlap(t, endpoint.NewDomainFilter([]string{"cluster.local."}), provider.NewZoneIDFilter([]string{"split-horizon-1"}), provider.NewZoneTypeFilter("public"), []*endpoint.Endpoint{})
|
||||
|
||||
zones, err := provider.Zones(context.Background())
|
||||
zones, err := provider.Zones(t.Context())
|
||||
require.NoError(t, err)
|
||||
|
||||
validateZones(t, zones, map[string]*dns.ManagedZone{
|
||||
@ -254,7 +254,7 @@ func TestGoogleZonesVisibilityFilterPrivate(t *testing.T) {
|
||||
func TestGoogleZonesVisibilityFilterPrivatePeering(t *testing.T) {
|
||||
provider := newGoogleProviderZoneOverlap(t, endpoint.NewDomainFilter([]string{"svc.local."}), provider.NewZoneIDFilter([]string{""}), provider.NewZoneTypeFilter("private"), []*endpoint.Endpoint{})
|
||||
|
||||
zones, err := provider.Zones(context.Background())
|
||||
zones, err := provider.Zones(t.Context())
|
||||
require.NoError(t, err)
|
||||
|
||||
validateZones(t, zones, map[string]*dns.ManagedZone{
|
||||
@ -271,7 +271,7 @@ func TestGoogleRecords(t *testing.T) {
|
||||
|
||||
provider := newGoogleProvider(t, endpoint.NewDomainFilter([]string{"ext-dns-test-2.gcp.zalan.do."}), provider.NewZoneIDFilter([]string{""}), false, originalEndpoints, nil, nil)
|
||||
|
||||
records, err := provider.Records(context.Background())
|
||||
records, err := provider.Records(t.Context())
|
||||
require.NoError(t, err)
|
||||
|
||||
validateEndpoints(t, records, originalEndpoints)
|
||||
@ -314,11 +314,11 @@ func TestGoogleRecordsFilter(t *testing.T) {
|
||||
endpoint.NewEndpoint("filter-delete-test.zone-3.ext-dns-test-2.gcp.zalan.do", endpoint.RecordTypeA, "4.2.2.2"),
|
||||
}
|
||||
|
||||
require.NoError(t, provider.ApplyChanges(context.Background(), &plan.Changes{
|
||||
require.NoError(t, provider.ApplyChanges(t.Context(), &plan.Changes{
|
||||
Create: ignoredEndpoints,
|
||||
}))
|
||||
|
||||
records, err := provider.Records(context.Background())
|
||||
records, err := provider.Records(t.Context())
|
||||
require.NoError(t, err)
|
||||
|
||||
// assert that due to filtering no changes were made.
|
||||
@ -387,9 +387,9 @@ func TestGoogleApplyChanges(t *testing.T) {
|
||||
Delete: deleteRecords,
|
||||
}
|
||||
|
||||
require.NoError(t, provider.ApplyChanges(context.Background(), changes))
|
||||
require.NoError(t, provider.ApplyChanges(t.Context(), changes))
|
||||
|
||||
records, err := provider.Records(context.Background())
|
||||
records, err := provider.Records(t.Context())
|
||||
require.NoError(t, err)
|
||||
|
||||
validateEndpoints(t, records, []*endpoint.Endpoint{
|
||||
@ -444,7 +444,7 @@ func TestGoogleApplyChangesDryRun(t *testing.T) {
|
||||
Delete: deleteRecords,
|
||||
}
|
||||
|
||||
ctx := context.Background()
|
||||
ctx := t.Context()
|
||||
require.NoError(t, provider.ApplyChanges(ctx, changes))
|
||||
|
||||
records, err := provider.Records(ctx)
|
||||
@ -455,7 +455,7 @@ func TestGoogleApplyChangesDryRun(t *testing.T) {
|
||||
|
||||
func TestGoogleApplyChangesEmpty(t *testing.T) {
|
||||
provider := newGoogleProvider(t, endpoint.NewDomainFilter([]string{"ext-dns-test-2.gcp.zalan.do."}), provider.NewZoneIDFilter([]string{""}), false, []*endpoint.Endpoint{}, nil, nil)
|
||||
assert.NoError(t, provider.ApplyChanges(context.Background(), &plan.Changes{}))
|
||||
assert.NoError(t, provider.ApplyChanges(t.Context(), &plan.Changes{}))
|
||||
}
|
||||
|
||||
func TestNewFilteredRecords(t *testing.T) {
|
||||
@ -615,7 +615,7 @@ func TestGoogleBatchChangeSetExceedingNameChange(t *testing.T) {
|
||||
func TestSoftErrListZonesConflict(t *testing.T) {
|
||||
p := newGoogleProvider(t, endpoint.NewDomainFilter([]string{"ext-dns-test-2.gcp.zalan.do."}), provider.NewZoneIDFilter([]string{}), false, []*endpoint.Endpoint{}, provider.NewSoftErrorf("failed to list zones"), nil)
|
||||
|
||||
zones, err := p.Zones(context.Background())
|
||||
zones, err := p.Zones(t.Context())
|
||||
require.Error(t, err)
|
||||
require.ErrorIs(t, err, provider.SoftError)
|
||||
|
||||
@ -625,7 +625,7 @@ func TestSoftErrListZonesConflict(t *testing.T) {
|
||||
func TestSoftErrListRecordsConflict(t *testing.T) {
|
||||
p := newGoogleProvider(t, endpoint.NewDomainFilter([]string{"ext-dns-test-2.gcp.zalan.do."}), provider.NewZoneIDFilter([]string{}), false, []*endpoint.Endpoint{}, nil, provider.NewSoftErrorf("failed to list records in zone"))
|
||||
|
||||
records, err := p.Records(context.Background())
|
||||
records, err := p.Records(t.Context())
|
||||
require.Error(t, err)
|
||||
require.ErrorIs(t, err, provider.SoftError)
|
||||
|
||||
@ -800,12 +800,12 @@ func setupGoogleRecords(t *testing.T, provider *GoogleProvider, endpoints []*end
|
||||
clearGoogleRecords(t, provider, "zone-2-ext-dns-test-2-gcp-zalan-do")
|
||||
clearGoogleRecords(t, provider, "zone-3-ext-dns-test-2-gcp-zalan-do")
|
||||
|
||||
ctx := context.Background()
|
||||
ctx := t.Context()
|
||||
records, _ := provider.Records(ctx)
|
||||
|
||||
validateEndpoints(t, records, []*endpoint.Endpoint{})
|
||||
|
||||
require.NoError(t, provider.ApplyChanges(context.Background(), &plan.Changes{
|
||||
require.NoError(t, provider.ApplyChanges(t.Context(), &plan.Changes{
|
||||
Create: endpoints,
|
||||
}))
|
||||
|
||||
@ -817,7 +817,7 @@ func setupGoogleRecords(t *testing.T, provider *GoogleProvider, endpoints []*end
|
||||
func clearGoogleRecords(t *testing.T, provider *GoogleProvider, zone string) {
|
||||
recordSets := []*dns.ResourceRecordSet{}
|
||||
|
||||
provider.resourceRecordSetsClient.List(provider.project, zone).Pages(context.Background(), func(resp *dns.ResourceRecordSetsListResponse) error {
|
||||
provider.resourceRecordSetsClient.List(provider.project, zone).Pages(t.Context(), func(resp *dns.ResourceRecordSetsListResponse) error {
|
||||
for _, r := range resp.Rrsets {
|
||||
switch r.Type {
|
||||
case endpoint.RecordTypeA, endpoint.RecordTypeCNAME:
|
||||
|
||||
@ -17,11 +17,11 @@ limitations under the License.
|
||||
package inmemory
|
||||
|
||||
import (
|
||||
"context"
|
||||
"testing"
|
||||
|
||||
"github.com/stretchr/testify/assert"
|
||||
"github.com/stretchr/testify/require"
|
||||
|
||||
"sigs.k8s.io/external-dns/endpoint"
|
||||
"sigs.k8s.io/external-dns/internal/testutils"
|
||||
"sigs.k8s.io/external-dns/plan"
|
||||
@ -99,7 +99,7 @@ func testInMemoryRecords(t *testing.T) {
|
||||
im.client = c
|
||||
f := filter{domain: ti.zone}
|
||||
im.filter = &f
|
||||
records, err := im.Records(context.Background())
|
||||
records, err := im.Records(t.Context())
|
||||
if ti.expectError {
|
||||
assert.Nil(t, records)
|
||||
assert.EqualError(t, err, ErrZoneNotFound.Error())
|
||||
@ -549,7 +549,7 @@ func testInMemoryApplyChanges(t *testing.T) {
|
||||
c.zones = getInitData()
|
||||
im.client = c
|
||||
|
||||
err := im.ApplyChanges(context.Background(), ti.changes)
|
||||
err := im.ApplyChanges(t.Context(), ti.changes)
|
||||
if ti.expectError {
|
||||
assert.Error(t, err)
|
||||
} else {
|
||||
|
||||
@ -144,7 +144,7 @@ func TestLinodeConvertRecordType(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestNewLinodeProvider(t *testing.T) {
|
||||
_ = os.Setenv("LINODE_TOKEN", "xxxxxxxxxxxxxxxxx")
|
||||
t.Setenv("LINODE_TOKEN", "xxxxxxxxxxxxxxxxx")
|
||||
_, err := NewLinodeProvider(endpoint.NewDomainFilter([]string{"ext-dns-test.zalando.to."}), true)
|
||||
require.NoError(t, err)
|
||||
|
||||
@ -183,7 +183,7 @@ func TestLinodeFetchZonesNoFilters(t *testing.T) {
|
||||
).Return(createZones(), nil).Once()
|
||||
|
||||
expected := createZones()
|
||||
actual, err := provider.fetchZones(context.Background())
|
||||
actual, err := provider.fetchZones(t.Context())
|
||||
require.NoError(t, err)
|
||||
|
||||
mockDomainClient.AssertExpectations(t)
|
||||
@ -209,7 +209,7 @@ func TestLinodeFetchZonesWithFilter(t *testing.T) {
|
||||
{ID: 1, Domain: "foo.com"},
|
||||
{ID: 3, Domain: "baz.com"},
|
||||
}
|
||||
actual, err := provider.fetchZones(context.Background())
|
||||
actual, err := provider.fetchZones(t.Context())
|
||||
require.NoError(t, err)
|
||||
|
||||
mockDomainClient.AssertExpectations(t)
|
||||
@ -264,7 +264,7 @@ func TestLinodeRecords(t *testing.T) {
|
||||
mock.Anything,
|
||||
).Return(createBazRecords(), nil).Once()
|
||||
|
||||
actual, err := provider.Records(context.Background())
|
||||
actual, err := provider.Records(t.Context())
|
||||
require.NoError(t, err)
|
||||
|
||||
expected := []*endpoint.Endpoint{
|
||||
@ -361,7 +361,7 @@ func TestLinodeApplyChanges(t *testing.T) {
|
||||
},
|
||||
).Return(&linodego.DomainRecord{}, nil).Once()
|
||||
|
||||
err := provider.ApplyChanges(context.Background(), &plan.Changes{
|
||||
err := provider.ApplyChanges(t.Context(), &plan.Changes{
|
||||
Create: []*endpoint.Endpoint{{
|
||||
DNSName: "create.bar.io",
|
||||
RecordType: "A",
|
||||
@ -441,7 +441,7 @@ func TestLinodeApplyChangesTargetAdded(t *testing.T) {
|
||||
},
|
||||
).Return(&linodego.DomainRecord{}, nil).Once()
|
||||
|
||||
err := provider.ApplyChanges(context.Background(), &plan.Changes{
|
||||
err := provider.ApplyChanges(t.Context(), &plan.Changes{
|
||||
// From 1 target to 2
|
||||
UpdateNew: []*endpoint.Endpoint{{
|
||||
DNSName: "example.com",
|
||||
@ -497,7 +497,7 @@ func TestLinodeApplyChangesTargetRemoved(t *testing.T) {
|
||||
11,
|
||||
).Return(nil).Once()
|
||||
|
||||
err := provider.ApplyChanges(context.Background(), &plan.Changes{
|
||||
err := provider.ApplyChanges(t.Context(), &plan.Changes{
|
||||
// From 2 targets to 1
|
||||
UpdateNew: []*endpoint.Endpoint{{
|
||||
DNSName: "example.com",
|
||||
@ -534,7 +534,7 @@ func TestLinodeApplyChangesNoChanges(t *testing.T) {
|
||||
mock.Anything,
|
||||
).Return([]linodego.DomainRecord{{ID: 11, Name: "", Type: "A", Target: "targetA"}}, nil).Once()
|
||||
|
||||
err := provider.ApplyChanges(context.Background(), &plan.Changes{})
|
||||
err := provider.ApplyChanges(t.Context(), &plan.Changes{})
|
||||
require.NoError(t, err)
|
||||
|
||||
mockDomainClient.AssertExpectations(t)
|
||||
|
||||
@ -17,7 +17,6 @@ limitations under the License.
|
||||
package ns1
|
||||
|
||||
import (
|
||||
"context"
|
||||
"fmt"
|
||||
"net/http"
|
||||
"os"
|
||||
@ -134,7 +133,7 @@ func TestNS1Records(t *testing.T) {
|
||||
zoneIDFilter: provider.NewZoneIDFilter([]string{""}),
|
||||
minTTLSeconds: 3600,
|
||||
}
|
||||
ctx := context.Background()
|
||||
ctx := t.Context()
|
||||
|
||||
records, err := provider.Records(ctx)
|
||||
require.NoError(t, err)
|
||||
@ -150,7 +149,7 @@ func TestNS1Records(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestNewNS1Provider(t *testing.T) {
|
||||
_ = os.Setenv("NS1_APIKEY", "xxxxxxxxxxxxxxxxx")
|
||||
t.Setenv("NS1_APIKEY", "xxxxxxxxxxxxxxxxx")
|
||||
testNS1Config := NS1Config{
|
||||
DomainFilter: endpoint.NewDomainFilter([]string{"foo.com."}),
|
||||
ZoneIDFilter: provider.NewZoneIDFilter([]string{""}),
|
||||
@ -235,14 +234,14 @@ func TestNS1ApplyChanges(t *testing.T) {
|
||||
}
|
||||
changes.Delete = []*endpoint.Endpoint{{DNSName: "test.foo.com", Targets: endpoint.Targets{"target"}}}
|
||||
changes.UpdateNew = []*endpoint.Endpoint{{DNSName: "test.foo.com", Targets: endpoint.Targets{"target-new"}}}
|
||||
err := provider.ApplyChanges(context.Background(), changes)
|
||||
err := provider.ApplyChanges(t.Context(), changes)
|
||||
require.NoError(t, err)
|
||||
|
||||
// empty changes
|
||||
changes.Create = []*endpoint.Endpoint{}
|
||||
changes.Delete = []*endpoint.Endpoint{}
|
||||
changes.UpdateNew = []*endpoint.Endpoint{}
|
||||
err = provider.ApplyChanges(context.Background(), changes)
|
||||
err = provider.ApplyChanges(t.Context(), changes)
|
||||
require.NoError(t, err)
|
||||
}
|
||||
|
||||
|
||||
@ -312,7 +312,7 @@ func TestOCIZones(t *testing.T) {
|
||||
for _, tc := range testCases {
|
||||
t.Run(tc.name, func(t *testing.T) {
|
||||
provider := newOCIProvider(&mockOCIDNSClient{}, tc.domainFilter, tc.zoneIDFilter, tc.zoneScope, false)
|
||||
zones, err := provider.zones(context.Background())
|
||||
zones, err := provider.zones(t.Context())
|
||||
require.NoError(t, err)
|
||||
validateOCIZones(t, zones, tc.expected)
|
||||
})
|
||||
@ -357,7 +357,7 @@ func TestOCIRecords(t *testing.T) {
|
||||
for _, tc := range testCases {
|
||||
t.Run(tc.name, func(t *testing.T) {
|
||||
provider := newOCIProvider(&mockOCIDNSClient{}, tc.domainFilter, tc.zoneIDFilter, "", false)
|
||||
endpoints, err := provider.Records(context.Background())
|
||||
endpoints, err := provider.Records(t.Context())
|
||||
require.NoError(t, err)
|
||||
require.ElementsMatch(t, tc.expected, endpoints)
|
||||
})
|
||||
@ -650,13 +650,13 @@ func TestMutableMockOCIDNSClient(t *testing.T) {
|
||||
client := newMutableMockOCIDNSClient(zones, records)
|
||||
|
||||
// First ListZones.
|
||||
zonesResponse, err := client.ListZones(context.Background(), dns.ListZonesRequest{})
|
||||
zonesResponse, err := client.ListZones(t.Context(), dns.ListZonesRequest{})
|
||||
require.NoError(t, err)
|
||||
require.Len(t, zonesResponse.Items, 1)
|
||||
require.Equal(t, zonesResponse.Items, zones)
|
||||
|
||||
// GetZoneRecords for that zone.
|
||||
recordsResponse, err := client.GetZoneRecords(context.Background(), dns.GetZoneRecordsRequest{
|
||||
recordsResponse, err := client.GetZoneRecords(t.Context(), dns.GetZoneRecordsRequest{
|
||||
ZoneNameOrId: zones[0].Id,
|
||||
})
|
||||
require.NoError(t, err)
|
||||
@ -664,7 +664,7 @@ func TestMutableMockOCIDNSClient(t *testing.T) {
|
||||
require.ElementsMatch(t, recordsResponse.Items, records["ocid1.dns-zone.oc1..e1e042ef0bfbb5c251b9713fd7bf8959"])
|
||||
|
||||
// Remove the A record.
|
||||
_, err = client.PatchZoneRecords(context.Background(), dns.PatchZoneRecordsRequest{
|
||||
_, err = client.PatchZoneRecords(t.Context(), dns.PatchZoneRecordsRequest{
|
||||
ZoneNameOrId: common.String("ocid1.dns-zone.oc1..e1e042ef0bfbb5c251b9713fd7bf8959"),
|
||||
PatchZoneRecordsDetails: dns.PatchZoneRecordsDetails{
|
||||
Items: []dns.RecordOperation{{
|
||||
@ -679,7 +679,7 @@ func TestMutableMockOCIDNSClient(t *testing.T) {
|
||||
require.NoError(t, err)
|
||||
|
||||
// GetZoneRecords again and check the A record was removed.
|
||||
recordsResponse, err = client.GetZoneRecords(context.Background(), dns.GetZoneRecordsRequest{
|
||||
recordsResponse, err = client.GetZoneRecords(t.Context(), dns.GetZoneRecordsRequest{
|
||||
ZoneNameOrId: zones[0].Id,
|
||||
})
|
||||
require.NoError(t, err)
|
||||
@ -687,7 +687,7 @@ func TestMutableMockOCIDNSClient(t *testing.T) {
|
||||
require.Equal(t, recordsResponse.Items[0], records["ocid1.dns-zone.oc1..e1e042ef0bfbb5c251b9713fd7bf8959"][1])
|
||||
|
||||
// Add the A record back.
|
||||
_, err = client.PatchZoneRecords(context.Background(), dns.PatchZoneRecordsRequest{
|
||||
_, err = client.PatchZoneRecords(t.Context(), dns.PatchZoneRecordsRequest{
|
||||
ZoneNameOrId: common.String("ocid1.dns-zone.oc1..e1e042ef0bfbb5c251b9713fd7bf8959"),
|
||||
PatchZoneRecordsDetails: dns.PatchZoneRecordsDetails{
|
||||
Items: []dns.RecordOperation{{
|
||||
@ -702,7 +702,7 @@ func TestMutableMockOCIDNSClient(t *testing.T) {
|
||||
require.NoError(t, err)
|
||||
|
||||
// GetZoneRecords and check we're back in the original state
|
||||
recordsResponse, err = client.GetZoneRecords(context.Background(), dns.GetZoneRecordsRequest{
|
||||
recordsResponse, err = client.GetZoneRecords(t.Context(), dns.GetZoneRecordsRequest{
|
||||
ZoneNameOrId: zones[0].Id,
|
||||
})
|
||||
require.NoError(t, err)
|
||||
@ -1037,7 +1037,7 @@ func TestOCIApplyChanges(t *testing.T) {
|
||||
tc.dryRun,
|
||||
)
|
||||
|
||||
ctx := context.Background()
|
||||
ctx := t.Context()
|
||||
err := provider.ApplyChanges(ctx, tc.changes)
|
||||
require.Equal(t, tc.err, err)
|
||||
endpoints, err := provider.Records(ctx)
|
||||
|
||||
@ -17,7 +17,6 @@ limitations under the License.
|
||||
package pihole
|
||||
|
||||
import (
|
||||
"context"
|
||||
"encoding/json"
|
||||
"errors"
|
||||
"fmt"
|
||||
@ -280,7 +279,7 @@ func TestListRecordsV6(t *testing.T) {
|
||||
},
|
||||
}
|
||||
// Test retrieve A records unfiltered
|
||||
arecs, err := cl.listRecords(context.Background(), endpoint.RecordTypeA)
|
||||
arecs, err := cl.listRecords(t.Context(), endpoint.RecordTypeA)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
@ -322,7 +321,7 @@ func TestListRecordsV6(t *testing.T) {
|
||||
}
|
||||
|
||||
// Test retrieve AAAA records unfiltered
|
||||
arecs, err = cl.listRecords(context.Background(), endpoint.RecordTypeAAAA)
|
||||
arecs, err = cl.listRecords(t.Context(), endpoint.RecordTypeAAAA)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
@ -362,7 +361,7 @@ func TestListRecordsV6(t *testing.T) {
|
||||
}
|
||||
|
||||
// Test retrieve CNAME records unfiltered
|
||||
cnamerecs, err := cl.listRecords(context.Background(), endpoint.RecordTypeCNAME)
|
||||
cnamerecs, err := cl.listRecords(t.Context(), endpoint.RecordTypeCNAME)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
@ -386,7 +385,7 @@ func TestListRecordsV6(t *testing.T) {
|
||||
// and cnameRecords have their own element
|
||||
|
||||
// unsupported type
|
||||
_, err = cl.listRecords(context.Background(), endpoint.RecordTypeNAPTR)
|
||||
_, err = cl.listRecords(t.Context(), endpoint.RecordTypeNAPTR)
|
||||
if err == nil || err.Error() != fmt.Sprintf("unsupported record type: %s", endpoint.RecordTypeNAPTR) {
|
||||
t.Fatal("Expected error for using unsupported record type")
|
||||
}
|
||||
@ -405,7 +404,7 @@ func TestErrorsV6(t *testing.T) {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
_, err = clErrURL.listRecords(context.Background(), endpoint.RecordTypeCNAME)
|
||||
_, err = clErrURL.listRecords(t.Context(), endpoint.RecordTypeCNAME)
|
||||
if err == nil {
|
||||
t.Fatal("Expected error for using invalid URL")
|
||||
}
|
||||
@ -430,7 +429,7 @@ func TestErrorsV6(t *testing.T) {
|
||||
}
|
||||
clErr, _ := newPiholeClientV6(cfgErr)
|
||||
|
||||
resp, err := clErr.listRecords(context.Background(), endpoint.RecordTypeA)
|
||||
resp, err := clErr.listRecords(t.Context(), endpoint.RecordTypeA)
|
||||
if err == nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
@ -486,14 +485,14 @@ func TestErrorsV6(t *testing.T) {
|
||||
}
|
||||
clErr, _ = newPiholeClientV6(cfgErr)
|
||||
|
||||
resp, err = clErr.listRecords(context.Background(), endpoint.RecordTypeA)
|
||||
resp, err = clErr.listRecords(t.Context(), endpoint.RecordTypeA)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
if len(resp) != 0 {
|
||||
t.Fatal("Expected no records returned, got:", len(resp))
|
||||
}
|
||||
resp, err = clErr.listRecords(context.Background(), endpoint.RecordTypeCNAME)
|
||||
resp, err = clErr.listRecords(t.Context(), endpoint.RecordTypeCNAME)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
@ -559,7 +558,7 @@ func TestTokenValidity(t *testing.T) {
|
||||
}
|
||||
clOK, err := newPiholeClientV6(cfgOK)
|
||||
clOK.(*piholeClientV6).token = "valid"
|
||||
validity, err := clOK.(*piholeClientV6).checkTokenValidity(context.Background())
|
||||
validity, err := clOK.(*piholeClientV6).checkTokenValidity(t.Context())
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
@ -589,7 +588,7 @@ func TestTokenValidity(t *testing.T) {
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
validity, err = cl.(*piholeClientV6).checkTokenValidity(context.Background())
|
||||
validity, err = cl.(*piholeClientV6).checkTokenValidity(t.Context())
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
@ -607,7 +606,7 @@ func TestTokenValidity(t *testing.T) {
|
||||
t.Fatal("Should be invalid : nil context")
|
||||
}
|
||||
|
||||
validity, err = cl.(*piholeClientV6).checkTokenValidity(context.Background())
|
||||
validity, err = cl.(*piholeClientV6).checkTokenValidity(t.Context())
|
||||
if err == nil {
|
||||
t.Fatal("Should be invalid : failed to unmarshal error")
|
||||
}
|
||||
@ -702,7 +701,7 @@ func TestDo(t *testing.T) {
|
||||
cl, err := newPiholeClientV6(cfg)
|
||||
cl.(*piholeClientV6).token = "valid"
|
||||
|
||||
rq, _ := http.NewRequestWithContext(context.Background(), http.MethodGet, srvDo.URL+"/api/auth/ok", nil)
|
||||
rq, _ := http.NewRequestWithContext(t.Context(), http.MethodGet, srvDo.URL+"/api/auth/ok", nil)
|
||||
resp, err := cl.(*piholeClientV6).do(rq)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
@ -711,7 +710,7 @@ func TestDo(t *testing.T) {
|
||||
t.Fatal("Should have a response")
|
||||
}
|
||||
// Test not handled error code
|
||||
rq, _ = http.NewRequestWithContext(context.Background(), http.MethodGet, srvDo.URL+"/api/auth/418", nil)
|
||||
rq, _ = http.NewRequestWithContext(t.Context(), http.MethodGet, srvDo.URL+"/api/auth/418", nil)
|
||||
resp, err = cl.(*piholeClientV6).do(rq)
|
||||
if resp != nil {
|
||||
t.Fatal(err)
|
||||
@ -723,7 +722,7 @@ func TestDo(t *testing.T) {
|
||||
t.Fatal("Expected error for unexpected status code, got:", err)
|
||||
}
|
||||
// Test error on non JSON response
|
||||
rq, _ = http.NewRequestWithContext(context.Background(), http.MethodGet, srvDo.URL+"/api/auth/nojson", nil)
|
||||
rq, _ = http.NewRequestWithContext(t.Context(), http.MethodGet, srvDo.URL+"/api/auth/nojson", nil)
|
||||
resp, err = cl.(*piholeClientV6).do(rq)
|
||||
if resp != nil {
|
||||
t.Fatal(err)
|
||||
@ -735,7 +734,7 @@ func TestDo(t *testing.T) {
|
||||
t.Fatal("Expected error for unmarshal", err)
|
||||
}
|
||||
// Test Unauthorized retry failed
|
||||
rq, _ = http.NewRequestWithContext(context.Background(), http.MethodGet, srvDo.URL+"/api/auth/401", nil)
|
||||
rq, _ = http.NewRequestWithContext(t.Context(), http.MethodGet, srvDo.URL+"/api/auth/401", nil)
|
||||
resp, err = cl.(*piholeClientV6).do(rq)
|
||||
if resp != nil {
|
||||
t.Fatal(err)
|
||||
@ -795,7 +794,7 @@ func TestDoRetryOne(t *testing.T) {
|
||||
clRetryOK, err := newPiholeClientV6(cfgRetryOK)
|
||||
clRetryOK.(*piholeClientV6).token = "valid"
|
||||
// Test Unauthorized refresh OK
|
||||
rq, _ := http.NewRequestWithContext(context.Background(), http.MethodGet, srvRetry.URL+"/api/auth/401", nil)
|
||||
rq, _ := http.NewRequestWithContext(t.Context(), http.MethodGet, srvRetry.URL+"/api/auth/401", nil)
|
||||
resp, err := clRetryOK.(*piholeClientV6).do(rq)
|
||||
if err != nil {
|
||||
t.Fatal("Should succeed", err)
|
||||
@ -917,7 +916,7 @@ func TestCreateRecordV6(t *testing.T) {
|
||||
Targets: []string{"192.168.1.1"},
|
||||
RecordType: endpoint.RecordTypeA,
|
||||
}
|
||||
if err := cl.createRecord(context.Background(), ep); err != nil {
|
||||
if err := cl.createRecord(t.Context(), ep); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
@ -927,7 +926,7 @@ func TestCreateRecordV6(t *testing.T) {
|
||||
Targets: []string{"192.168.1.2", "192.168.1.3"},
|
||||
RecordType: endpoint.RecordTypeA,
|
||||
}
|
||||
if err := cl.createRecord(context.Background(), ep); err != nil {
|
||||
if err := cl.createRecord(t.Context(), ep); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
@ -937,7 +936,7 @@ func TestCreateRecordV6(t *testing.T) {
|
||||
Targets: []string{"fc00::1:192:168:1:1"},
|
||||
RecordType: endpoint.RecordTypeAAAA,
|
||||
}
|
||||
if err := cl.createRecord(context.Background(), ep); err != nil {
|
||||
if err := cl.createRecord(t.Context(), ep); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
@ -947,7 +946,7 @@ func TestCreateRecordV6(t *testing.T) {
|
||||
Targets: []string{"fc00::1:192:168:1:2", "fc00::1:192:168:1:3"},
|
||||
RecordType: endpoint.RecordTypeAAAA,
|
||||
}
|
||||
if err := cl.createRecord(context.Background(), ep); err != nil {
|
||||
if err := cl.createRecord(t.Context(), ep); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
@ -957,7 +956,7 @@ func TestCreateRecordV6(t *testing.T) {
|
||||
Targets: []string{"target1.domain.com"},
|
||||
RecordType: endpoint.RecordTypeCNAME,
|
||||
}
|
||||
if err := cl.createRecord(context.Background(), ep); err != nil {
|
||||
if err := cl.createRecord(t.Context(), ep); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
@ -968,7 +967,7 @@ func TestCreateRecordV6(t *testing.T) {
|
||||
RecordTTL: endpoint.TTL(500),
|
||||
RecordType: endpoint.RecordTypeCNAME,
|
||||
}
|
||||
if err := cl.createRecord(context.Background(), ep); err != nil {
|
||||
if err := cl.createRecord(t.Context(), ep); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
@ -978,7 +977,7 @@ func TestCreateRecordV6(t *testing.T) {
|
||||
Targets: []string{"target3.domain.com", "target4.domain.com"},
|
||||
RecordType: endpoint.RecordTypeCNAME,
|
||||
}
|
||||
if err := cl.createRecord(context.Background(), ep); err == nil {
|
||||
if err := cl.createRecord(t.Context(), ep); err == nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
@ -988,7 +987,7 @@ func TestCreateRecordV6(t *testing.T) {
|
||||
Targets: []string{"192.168.1.1"},
|
||||
RecordType: endpoint.RecordTypeA,
|
||||
}
|
||||
if err := cl.createRecord(context.Background(), ep); err == nil {
|
||||
if err := cl.createRecord(t.Context(), ep); err == nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
@ -998,7 +997,7 @@ func TestCreateRecordV6(t *testing.T) {
|
||||
Targets: []string{"192.168.1.1"},
|
||||
RecordType: endpoint.RecordTypeA,
|
||||
}
|
||||
err = cl.createRecord(context.Background(), ep)
|
||||
err = cl.createRecord(t.Context(), ep)
|
||||
if err != nil {
|
||||
t.Fatal("Should not return error on non filtered domain")
|
||||
}
|
||||
@ -1009,7 +1008,7 @@ func TestCreateRecordV6(t *testing.T) {
|
||||
Targets: []string{"192.168.1.1"},
|
||||
RecordType: "not a type",
|
||||
}
|
||||
err = cl.createRecord(context.Background(), ep)
|
||||
err = cl.createRecord(t.Context(), ep)
|
||||
if err != nil {
|
||||
t.Fatal("Should not return error on unsupported type")
|
||||
}
|
||||
@ -1031,7 +1030,7 @@ func TestCreateRecordV6(t *testing.T) {
|
||||
Targets: []string{"192.168.1.1"},
|
||||
RecordType: endpoint.RecordTypeA,
|
||||
}
|
||||
err = clDr.createRecord(context.Background(), ep)
|
||||
err = clDr.createRecord(t.Context(), ep)
|
||||
if err != nil {
|
||||
t.Fatal("Should not return error on dry run")
|
||||
}
|
||||
@ -1041,7 +1040,7 @@ func TestCreateRecordV6(t *testing.T) {
|
||||
Targets: []string{},
|
||||
RecordType: endpoint.RecordTypeA,
|
||||
}
|
||||
err = clDr.createRecord(context.Background(), ep)
|
||||
err = clDr.createRecord(t.Context(), ep)
|
||||
if err != nil {
|
||||
t.Fatal("Should not return error on missing targets")
|
||||
}
|
||||
@ -1079,7 +1078,7 @@ func TestDeleteRecordV6(t *testing.T) {
|
||||
Targets: []string{"192.168.1.1"},
|
||||
RecordType: endpoint.RecordTypeA,
|
||||
}
|
||||
if err := cl.deleteRecord(context.Background(), ep); err != nil {
|
||||
if err := cl.deleteRecord(t.Context(), ep); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
@ -1089,7 +1088,7 @@ func TestDeleteRecordV6(t *testing.T) {
|
||||
Targets: []string{"fc00::1:192:168:1:1"},
|
||||
RecordType: endpoint.RecordTypeAAAA,
|
||||
}
|
||||
if err := cl.deleteRecord(context.Background(), ep); err != nil {
|
||||
if err := cl.deleteRecord(t.Context(), ep); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
@ -1099,7 +1098,7 @@ func TestDeleteRecordV6(t *testing.T) {
|
||||
Targets: []string{"target1.domain.com"},
|
||||
RecordType: endpoint.RecordTypeCNAME,
|
||||
}
|
||||
if err := cl.deleteRecord(context.Background(), ep); err != nil {
|
||||
if err := cl.deleteRecord(t.Context(), ep); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
@ -1110,7 +1109,7 @@ func TestDeleteRecordV6(t *testing.T) {
|
||||
RecordTTL: endpoint.TTL(500),
|
||||
RecordType: endpoint.RecordTypeCNAME,
|
||||
}
|
||||
if err := cl.deleteRecord(context.Background(), ep); err != nil {
|
||||
if err := cl.deleteRecord(t.Context(), ep); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
}
|
||||
|
||||
@ -17,7 +17,6 @@ limitations under the License.
|
||||
package pihole
|
||||
|
||||
import (
|
||||
"context"
|
||||
"encoding/json"
|
||||
"errors"
|
||||
"net/http"
|
||||
@ -124,7 +123,7 @@ func ValidateRecords(t *testing.T, records []*endpoint.Endpoint, expected [][]st
|
||||
// Helper function to test record retrieval for a specific type
|
||||
func CheckRecordRetrieval(t *testing.T, cl *piholeClient, recordType string, expected [][]string, expectedCount int) {
|
||||
t.Helper()
|
||||
records, err := cl.listRecords(context.Background(), recordType)
|
||||
records, err := cl.listRecords(t.Context(), recordType)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
@ -271,17 +270,17 @@ func TestErrorScenarios(t *testing.T) {
|
||||
clExpired.(*piholeClient).token = "expired"
|
||||
clExpired.(*piholeClient).cfg.Password = "notcorrect"
|
||||
|
||||
_, err = clExpired.listRecords(context.Background(), "notarealrecordtype")
|
||||
_, err = clExpired.listRecords(t.Context(), "notarealrecordtype")
|
||||
if err == nil {
|
||||
t.Fatal("Should return error, type is unknown ! ")
|
||||
}
|
||||
_, err = clExpired.listRecords(context.Background(), endpoint.RecordTypeCNAME)
|
||||
_, err = clExpired.listRecords(t.Context(), endpoint.RecordTypeCNAME)
|
||||
if err == nil {
|
||||
t.Fatal("Should return error on failed auth ! ")
|
||||
}
|
||||
clExpired.(*piholeClient).token = "correct"
|
||||
clExpired.(*piholeClient).cfg.Password = "correct"
|
||||
cnamerecs, err := clExpired.listRecords(context.Background(), endpoint.RecordTypeCNAME)
|
||||
cnamerecs, err := clExpired.listRecords(t.Context(), endpoint.RecordTypeCNAME)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
@ -342,7 +341,7 @@ func TestCreateRecord(t *testing.T) {
|
||||
Targets: []string{"192.168.1.1"},
|
||||
RecordType: endpoint.RecordTypeA,
|
||||
}
|
||||
if err := cl.createRecord(context.Background(), ep); err != nil {
|
||||
if err := cl.createRecord(t.Context(), ep); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
@ -352,7 +351,7 @@ func TestCreateRecord(t *testing.T) {
|
||||
Targets: []string{"fc00::1:192:168:1:1"},
|
||||
RecordType: endpoint.RecordTypeAAAA,
|
||||
}
|
||||
if err := cl.createRecord(context.Background(), ep); err != nil {
|
||||
if err := cl.createRecord(t.Context(), ep); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
@ -362,7 +361,7 @@ func TestCreateRecord(t *testing.T) {
|
||||
Targets: []string{"test.cname.com"},
|
||||
RecordType: endpoint.RecordTypeCNAME,
|
||||
}
|
||||
if err := cl.createRecord(context.Background(), ep); err != nil {
|
||||
if err := cl.createRecord(t.Context(), ep); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
@ -373,7 +372,7 @@ func TestCreateRecord(t *testing.T) {
|
||||
RecordType: endpoint.RecordTypeA,
|
||||
}
|
||||
cl.(*piholeClient).token = "correct"
|
||||
if err := cl.createRecord(context.Background(), ep); err == nil {
|
||||
if err := cl.createRecord(t.Context(), ep); err == nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
@ -383,7 +382,7 @@ func TestCreateRecord(t *testing.T) {
|
||||
Targets: []string{"192.168.1.1"},
|
||||
RecordType: endpoint.RecordTypeA,
|
||||
}
|
||||
if err := cl.createRecord(context.Background(), ep); err != nil {
|
||||
if err := cl.createRecord(t.Context(), ep); err != nil {
|
||||
t.Fatal("Should not return error on non filtered domain")
|
||||
}
|
||||
|
||||
@ -393,7 +392,7 @@ func TestCreateRecord(t *testing.T) {
|
||||
Targets: []string{"192.168.1.1"},
|
||||
RecordType: "not a type",
|
||||
}
|
||||
if err := cl.createRecord(context.Background(), ep); err != nil {
|
||||
if err := cl.createRecord(t.Context(), ep); err != nil {
|
||||
t.Fatal("Should not return error on unsupported type")
|
||||
}
|
||||
|
||||
@ -413,7 +412,7 @@ func TestCreateRecord(t *testing.T) {
|
||||
Targets: []string{"192.168.1.1"},
|
||||
RecordType: endpoint.RecordTypeA,
|
||||
}
|
||||
if err := clDr.createRecord(context.Background(), ep); err != nil {
|
||||
if err := clDr.createRecord(t.Context(), ep); err != nil {
|
||||
t.Fatal("Should not return error on dry run")
|
||||
}
|
||||
|
||||
@ -470,7 +469,7 @@ func TestDeleteRecord(t *testing.T) {
|
||||
Targets: []string{"192.168.1.1"},
|
||||
RecordType: endpoint.RecordTypeA,
|
||||
}
|
||||
if err := cl.deleteRecord(context.Background(), ep); err != nil {
|
||||
if err := cl.deleteRecord(t.Context(), ep); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
@ -480,7 +479,7 @@ func TestDeleteRecord(t *testing.T) {
|
||||
Targets: []string{"fc00::1:192:168:1:1"},
|
||||
RecordType: endpoint.RecordTypeAAAA,
|
||||
}
|
||||
if err := cl.deleteRecord(context.Background(), ep); err != nil {
|
||||
if err := cl.deleteRecord(t.Context(), ep); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
@ -490,7 +489,7 @@ func TestDeleteRecord(t *testing.T) {
|
||||
Targets: []string{"test.cname.com"},
|
||||
RecordType: endpoint.RecordTypeCNAME,
|
||||
}
|
||||
if err := cl.deleteRecord(context.Background(), ep); err != nil {
|
||||
if err := cl.deleteRecord(t.Context(), ep); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
}
|
||||
|
||||
@ -23,6 +23,7 @@ import (
|
||||
|
||||
"github.com/google/go-cmp/cmp"
|
||||
"github.com/google/go-cmp/cmp/cmpopts"
|
||||
|
||||
"sigs.k8s.io/external-dns/endpoint"
|
||||
"sigs.k8s.io/external-dns/plan"
|
||||
)
|
||||
@ -106,19 +107,19 @@ func TestErrorHandling(t *testing.T) {
|
||||
}
|
||||
|
||||
p.api.(*testPiholeClientV6).trigger = "AERROR"
|
||||
_, err := p.Records(context.Background())
|
||||
_, err := p.Records(t.Context())
|
||||
if err.Error() != "AERROR" {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
p.api.(*testPiholeClientV6).trigger = "AAAAERROR"
|
||||
_, err = p.Records(context.Background())
|
||||
_, err = p.Records(t.Context())
|
||||
if err.Error() != "AAAAERROR" {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
p.api.(*testPiholeClientV6).trigger = "CNAMEERROR"
|
||||
_, err = p.Records(context.Background())
|
||||
_, err = p.Records(t.Context())
|
||||
if err.Error() != "CNAMEERROR" {
|
||||
t.Fatal(err)
|
||||
}
|
||||
@ -146,7 +147,7 @@ func TestProviderV6(t *testing.T) {
|
||||
}
|
||||
|
||||
t.Run("Initial Records", func(t *testing.T) {
|
||||
records, err := p.Records(context.Background())
|
||||
records, err := p.Records(t.Context())
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
@ -164,11 +165,11 @@ func TestProviderV6(t *testing.T) {
|
||||
{DNSName: "test2.example.com", Targets: []string{"fc00::1:192:168:1:2"}, RecordType: endpoint.RecordTypeAAAA},
|
||||
{DNSName: "test3.example.com", Targets: []string{"fc00::1:192:168:1:3"}, RecordType: endpoint.RecordTypeAAAA},
|
||||
}
|
||||
if err := p.ApplyChanges(context.Background(), &plan.Changes{Create: records}); err != nil {
|
||||
if err := p.ApplyChanges(t.Context(), &plan.Changes{Create: records}); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
newRecords, err := p.Records(context.Background())
|
||||
newRecords, err := p.Records(t.Context())
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
@ -186,11 +187,11 @@ func TestProviderV6(t *testing.T) {
|
||||
|
||||
t.Run("Delete Records", func(t *testing.T) {
|
||||
recordToDeleteA := &endpoint.Endpoint{DNSName: "test3.example.com", Targets: []string{"192.168.1.3"}, RecordType: endpoint.RecordTypeA}
|
||||
if err := p.ApplyChanges(context.Background(), &plan.Changes{Delete: []*endpoint.Endpoint{recordToDeleteA}}); err != nil {
|
||||
if err := p.ApplyChanges(t.Context(), &plan.Changes{Delete: []*endpoint.Endpoint{recordToDeleteA}}); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
recordToDeleteAAAA := &endpoint.Endpoint{DNSName: "test3.example.com", Targets: []string{"fc00::1:192:168:1:3"}, RecordType: endpoint.RecordTypeAAAA}
|
||||
if err := p.ApplyChanges(context.Background(), &plan.Changes{Delete: []*endpoint.Endpoint{recordToDeleteAAAA}}); err != nil {
|
||||
if err := p.ApplyChanges(t.Context(), &plan.Changes{Delete: []*endpoint.Endpoint{recordToDeleteAAAA}}); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
@ -200,7 +201,7 @@ func TestProviderV6(t *testing.T) {
|
||||
{DNSName: "test1.example.com", Targets: []string{"fc00::1:192:168:1:1"}, RecordType: endpoint.RecordTypeAAAA},
|
||||
{DNSName: "test2.example.com", Targets: []string{"fc00::1:192:168:1:2"}, RecordType: endpoint.RecordTypeAAAA},
|
||||
}
|
||||
newRecords, err := p.Records(context.Background())
|
||||
newRecords, err := p.Records(t.Context())
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
@ -226,7 +227,7 @@ func TestProviderV6(t *testing.T) {
|
||||
{DNSName: "test2.example.com", Targets: []string{"10.0.0.1"}, RecordType: endpoint.RecordTypeA},
|
||||
{DNSName: "test2.example.com", Targets: []string{"fc00::1:10:0:0:1"}, RecordType: endpoint.RecordTypeAAAA},
|
||||
}
|
||||
if err := p.ApplyChanges(context.Background(), &plan.Changes{UpdateOld: updateOld, UpdateNew: updateNew}); err != nil {
|
||||
if err := p.ApplyChanges(t.Context(), &plan.Changes{UpdateOld: updateOld, UpdateNew: updateNew}); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
@ -236,7 +237,7 @@ func TestProviderV6(t *testing.T) {
|
||||
{DNSName: "test1.example.com", Targets: []string{"fc00::1:192:168:1:1"}, RecordType: endpoint.RecordTypeAAAA},
|
||||
{DNSName: "test2.example.com", Targets: []string{"fc00::1:10:0:0:1"}, RecordType: endpoint.RecordTypeAAAA},
|
||||
}
|
||||
newRecords, err := p.Records(context.Background())
|
||||
newRecords, err := p.Records(t.Context())
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
@ -265,7 +266,7 @@ func TestProviderV6MultipleTargets(t *testing.T) {
|
||||
initialRecords := []*endpoint.Endpoint{
|
||||
{DNSName: "multi.example.com", Targets: []string{"192.168.1.1", "192.168.1.2"}, RecordType: endpoint.RecordTypeA},
|
||||
}
|
||||
if err := p.ApplyChanges(context.Background(), &plan.Changes{Create: initialRecords}); err != nil {
|
||||
if err := p.ApplyChanges(t.Context(), &plan.Changes{Create: initialRecords}); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
requests.clear()
|
||||
@ -279,7 +280,7 @@ func TestProviderV6MultipleTargets(t *testing.T) {
|
||||
{DNSName: "multi.example.com", Targets: []string{"192.168.1.4"}, RecordType: endpoint.RecordTypeA},
|
||||
{DNSName: "multi.example.com", Targets: []string{"192.168.1.3"}, RecordType: endpoint.RecordTypeA}, // Duplicate to test deduplication
|
||||
}
|
||||
if err := p.ApplyChanges(context.Background(), &plan.Changes{UpdateOld: updateOld, UpdateNew: updateNew}); err != nil {
|
||||
if err := p.ApplyChanges(t.Context(), &plan.Changes{UpdateOld: updateOld, UpdateNew: updateNew}); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
@ -307,7 +308,7 @@ func TestProviderV6MultipleTargets(t *testing.T) {
|
||||
updateNew := []*endpoint.Endpoint{
|
||||
{DNSName: "multi.example.com", Targets: []string{"192.168.1.3", "192.168.1.4"}, RecordType: endpoint.RecordTypeA},
|
||||
}
|
||||
if err := p.ApplyChanges(context.Background(), &plan.Changes{UpdateOld: updateOld, UpdateNew: updateNew}); err != nil {
|
||||
if err := p.ApplyChanges(t.Context(), &plan.Changes{UpdateOld: updateOld, UpdateNew: updateNew}); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
|
||||
@ -23,6 +23,7 @@ import (
|
||||
|
||||
log "github.com/sirupsen/logrus"
|
||||
"github.com/stretchr/testify/require"
|
||||
|
||||
"sigs.k8s.io/external-dns/endpoint"
|
||||
logtest "sigs.k8s.io/external-dns/internal/testutils/log"
|
||||
"sigs.k8s.io/external-dns/plan"
|
||||
@ -125,7 +126,7 @@ func TestProvider_InitialState(t *testing.T) {
|
||||
p := &PiholeProvider{
|
||||
api: &testPiholeClient{endpoints: make([]*endpoint.Endpoint, 0), requests: &requests},
|
||||
}
|
||||
records, err := p.Records(context.Background())
|
||||
records, err := p.Records(t.Context())
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
@ -171,12 +172,12 @@ func TestProvider_CreateRecords(t *testing.T) {
|
||||
RecordType: endpoint.RecordTypeAAAA,
|
||||
},
|
||||
}
|
||||
if err := p.ApplyChanges(context.Background(), &plan.Changes{
|
||||
if err := p.ApplyChanges(t.Context(), &plan.Changes{
|
||||
Create: records,
|
||||
}); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
newRecords, err := p.Records(context.Background())
|
||||
newRecords, err := p.Records(t.Context())
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
@ -231,7 +232,7 @@ func TestProvider_DeleteRecords(t *testing.T) {
|
||||
},
|
||||
}
|
||||
// Create initial records
|
||||
if err := p.ApplyChanges(context.Background(), &plan.Changes{
|
||||
if err := p.ApplyChanges(t.Context(), &plan.Changes{
|
||||
Create: records,
|
||||
}); err != nil {
|
||||
t.Fatal(err)
|
||||
@ -241,7 +242,7 @@ func TestProvider_DeleteRecords(t *testing.T) {
|
||||
Targets: []string{"192.168.1.3"},
|
||||
RecordType: endpoint.RecordTypeA,
|
||||
}
|
||||
if err := p.ApplyChanges(context.Background(), &plan.Changes{
|
||||
if err := p.ApplyChanges(t.Context(), &plan.Changes{
|
||||
Delete: []*endpoint.Endpoint{
|
||||
&recordToDeleteA,
|
||||
},
|
||||
@ -253,14 +254,14 @@ func TestProvider_DeleteRecords(t *testing.T) {
|
||||
Targets: []string{"fc00::1:192:168:1:3"},
|
||||
RecordType: endpoint.RecordTypeAAAA,
|
||||
}
|
||||
if err := p.ApplyChanges(context.Background(), &plan.Changes{
|
||||
if err := p.ApplyChanges(t.Context(), &plan.Changes{
|
||||
Delete: []*endpoint.Endpoint{
|
||||
&recordToDeleteAAAA,
|
||||
},
|
||||
}); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
newRecords, err := p.Records(context.Background())
|
||||
newRecords, err := p.Records(t.Context())
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
@ -318,7 +319,7 @@ func TestProvider_UpdateRecords(t *testing.T) {
|
||||
RecordType: endpoint.RecordTypeAAAA,
|
||||
},
|
||||
}
|
||||
if err := p.ApplyChanges(context.Background(), &plan.Changes{
|
||||
if err := p.ApplyChanges(t.Context(), &plan.Changes{
|
||||
Create: initialRecords,
|
||||
}); err != nil {
|
||||
t.Fatal(err)
|
||||
@ -369,13 +370,13 @@ func TestProvider_UpdateRecords(t *testing.T) {
|
||||
RecordType: endpoint.RecordTypeAAAA,
|
||||
},
|
||||
}
|
||||
if err := p.ApplyChanges(context.Background(), &plan.Changes{
|
||||
if err := p.ApplyChanges(t.Context(), &plan.Changes{
|
||||
UpdateOld: updateOld,
|
||||
UpdateNew: updateNew,
|
||||
}); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
newRecords, err := p.Records(context.Background())
|
||||
newRecords, err := p.Records(t.Context())
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
@ -17,7 +17,6 @@ limitations under the License.
|
||||
package plural
|
||||
|
||||
import (
|
||||
"context"
|
||||
"testing"
|
||||
|
||||
"sigs.k8s.io/external-dns/plan"
|
||||
@ -129,7 +128,7 @@ func TestPluralRecords(t *testing.T) {
|
||||
t.Run(test.name, func(t *testing.T) {
|
||||
provider := newPluralProvider(test.records)
|
||||
|
||||
actual, err := provider.Records(context.Background())
|
||||
actual, err := provider.Records(t.Context())
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
@ -175,18 +174,18 @@ func TestPluralApplyChangesCreate(t *testing.T) {
|
||||
provider := newPluralProvider(nil)
|
||||
|
||||
// no records
|
||||
actual, err := provider.Records(context.Background())
|
||||
actual, err := provider.Records(t.Context())
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
assert.Empty(t, actual, "expected no entries")
|
||||
|
||||
err = provider.ApplyChanges(context.Background(), &plan.Changes{Create: test.expectedEndpoints})
|
||||
err = provider.ApplyChanges(t.Context(), &plan.Changes{Create: test.expectedEndpoints})
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
actual, err = provider.Records(context.Background())
|
||||
actual, err = provider.Records(t.Context())
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
@ -359,12 +358,12 @@ func TestPluralApplyChangesDelete(t *testing.T) {
|
||||
t.Run(test.name, func(t *testing.T) {
|
||||
provider := newPluralProvider(test.records)
|
||||
|
||||
err := provider.ApplyChanges(context.Background(), &plan.Changes{Delete: test.deleteEndpoints})
|
||||
err := provider.ApplyChanges(t.Context(), &plan.Changes{Delete: test.deleteEndpoints})
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
actual, err := provider.Records(context.Background())
|
||||
actual, err := provider.Records(t.Context())
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
@ -17,7 +17,6 @@ limitations under the License.
|
||||
package rfc2136
|
||||
|
||||
import (
|
||||
"context"
|
||||
"crypto/tls"
|
||||
"fmt"
|
||||
"math/rand"
|
||||
@ -291,7 +290,7 @@ func TestRfc2136GetRecordsMultipleTargets(t *testing.T) {
|
||||
provider, err := createRfc2136StubProvider(stub)
|
||||
assert.NoError(t, err)
|
||||
|
||||
recs, err := provider.Records(context.Background())
|
||||
recs, err := provider.Records(t.Context())
|
||||
assert.NoError(t, err)
|
||||
|
||||
assert.Len(t, recs, 1, "expected single record")
|
||||
@ -310,7 +309,7 @@ func TestRfc2136PTRCreation(t *testing.T) {
|
||||
provider, err := createRfc2136StubProviderWithReverse(stub)
|
||||
assert.NoError(t, err)
|
||||
|
||||
err = provider.ApplyChanges(context.Background(), &plan.Changes{
|
||||
err = provider.ApplyChanges(t.Context(), &plan.Changes{
|
||||
Create: []*endpoint.Endpoint{
|
||||
{
|
||||
DNSName: "demo.foo.com",
|
||||
@ -329,7 +328,7 @@ func TestRfc2136PTRCreation(t *testing.T) {
|
||||
func TestRfc2136TLSConfig(t *testing.T) {
|
||||
stub := newStub()
|
||||
|
||||
caFile, err := os.CreateTemp("", "rfc2136-test-XXXXXXXX.crt")
|
||||
caFile, err := os.CreateTemp(t.TempDir(), "rfc2136-test-XXXXXXXX.crt")
|
||||
require.NoError(t, err)
|
||||
defer os.Remove(caFile.Name())
|
||||
_, err = caFile.Write([]byte(
|
||||
@ -369,7 +368,7 @@ ouB5ZN+05DzKCQhBekMnygQ=
|
||||
func TestRfc2136TLSConfigWithMultiHosts(t *testing.T) {
|
||||
stub := newStub()
|
||||
|
||||
caFile, err := os.CreateTemp("", "rfc2136-test-XXXXXXXX.crt")
|
||||
caFile, err := os.CreateTemp(t.TempDir(), "rfc2136-test-XXXXXXXX.crt")
|
||||
assert.NoError(t, err)
|
||||
defer os.Remove(caFile.Name())
|
||||
_, err = caFile.Write([]byte(
|
||||
@ -414,7 +413,7 @@ ouB5ZN+05DzKCQhBekMnygQ=
|
||||
func TestRfc2136TLSConfigNoVerify(t *testing.T) {
|
||||
stub := newStub()
|
||||
|
||||
caFile, err := os.CreateTemp("", "rfc2136-test-XXXXXXXX.crt")
|
||||
caFile, err := os.CreateTemp(t.TempDir(), "rfc2136-test-XXXXXXXX.crt")
|
||||
assert.NoError(t, err)
|
||||
defer os.Remove(caFile.Name())
|
||||
_, err = caFile.Write([]byte(
|
||||
@ -454,7 +453,7 @@ ouB5ZN+05DzKCQhBekMnygQ=
|
||||
func TestRfc2136TLSConfigClientAuth(t *testing.T) {
|
||||
stub := newStub()
|
||||
|
||||
caFile, err := os.CreateTemp("", "rfc2136-test-XXXXXXXX.crt")
|
||||
caFile, err := os.CreateTemp(t.TempDir(), "rfc2136-test-XXXXXXXX.crt")
|
||||
assert.NoError(t, err)
|
||||
defer os.Remove(caFile.Name())
|
||||
_, err = caFile.Write([]byte(
|
||||
@ -468,7 +467,7 @@ ouB5ZN+05DzKCQhBekMnygQ=
|
||||
-----END CERTIFICATE-----
|
||||
`))
|
||||
|
||||
certFile, err := os.CreateTemp("", "rfc2136-test-XXXXXXXX-client.crt")
|
||||
certFile, err := os.CreateTemp(t.TempDir(), "rfc2136-test-XXXXXXXX-client.crt")
|
||||
assert.NoError(t, err)
|
||||
defer os.Remove(certFile.Name())
|
||||
_, err = certFile.Write([]byte(
|
||||
@ -484,7 +483,7 @@ goRP/fRfTTTLwLg8UBpUAmALX8A8HBSBaUlTTQcaImbcwU4DRSbv5JEA8tM1mWrA
|
||||
-----END CERTIFICATE-----
|
||||
`))
|
||||
|
||||
keyFile, err := os.CreateTemp("", "rfc2136-test-XXXXXXXX-client.key")
|
||||
keyFile, err := os.CreateTemp(t.TempDir(), "rfc2136-test-XXXXXXXX-client.key")
|
||||
assert.NoError(t, err)
|
||||
defer os.Remove(keyFile.Name())
|
||||
_, err = keyFile.Write([]byte(
|
||||
@ -537,7 +536,7 @@ func TestRfc2136GetRecords(t *testing.T) {
|
||||
provider, err := createRfc2136StubProvider(stub, "barfoo.com", "foo.com", "bar.com", "foobar.com")
|
||||
assert.NoError(t, err)
|
||||
|
||||
recs, err := provider.Records(context.Background())
|
||||
recs, err := provider.Records(t.Context())
|
||||
assert.NoError(t, err)
|
||||
|
||||
assert.Len(t, recs, 6)
|
||||
@ -610,7 +609,7 @@ func TestRfc2136ApplyChanges(t *testing.T) {
|
||||
},
|
||||
}
|
||||
|
||||
err = provider.ApplyChanges(context.Background(), p)
|
||||
err = provider.ApplyChanges(t.Context(), p)
|
||||
assert.NoError(t, err)
|
||||
|
||||
assert.Len(t, stub.createMsgs, 3)
|
||||
@ -668,7 +667,7 @@ func TestRfc2136ApplyChangesWithZones(t *testing.T) {
|
||||
},
|
||||
}
|
||||
|
||||
err = provider.ApplyChanges(context.Background(), p)
|
||||
err = provider.ApplyChanges(t.Context(), p)
|
||||
assert.NoError(t, err)
|
||||
|
||||
assert.Len(t, stub.createMsgs, 3)
|
||||
@ -738,7 +737,7 @@ func TestRfc2136ApplyChangesWithZonesFilters(t *testing.T) {
|
||||
},
|
||||
}
|
||||
|
||||
err = provider.ApplyChanges(context.Background(), p)
|
||||
err = provider.ApplyChanges(t.Context(), p)
|
||||
assert.NoError(t, err)
|
||||
|
||||
assert.Len(t, stub.createMsgs, 3)
|
||||
@ -795,7 +794,7 @@ func TestRfc2136ApplyChangesWithDifferentTTLs(t *testing.T) {
|
||||
},
|
||||
}
|
||||
|
||||
err = provider.ApplyChanges(context.Background(), p)
|
||||
err = provider.ApplyChanges(t.Context(), p)
|
||||
assert.NoError(t, err)
|
||||
|
||||
createRecords := extractUpdateSectionFromMessage(stub.createMsgs[0])
|
||||
@ -833,7 +832,7 @@ func TestRfc2136ApplyChangesWithUpdate(t *testing.T) {
|
||||
},
|
||||
}
|
||||
|
||||
err = provider.ApplyChanges(context.Background(), p)
|
||||
err = provider.ApplyChanges(t.Context(), p)
|
||||
assert.NoError(t, err)
|
||||
|
||||
p = &plan.Changes{
|
||||
@ -865,7 +864,7 @@ func TestRfc2136ApplyChangesWithUpdate(t *testing.T) {
|
||||
},
|
||||
}
|
||||
|
||||
err = provider.ApplyChanges(context.Background(), p)
|
||||
err = provider.ApplyChanges(t.Context(), p)
|
||||
assert.NoError(t, err)
|
||||
|
||||
assert.Len(t, stub.createMsgs, 4)
|
||||
@ -1001,7 +1000,7 @@ func TestRfc2136ApplyChangesWithMultipleChunks(t *testing.T) {
|
||||
UpdateNew: newRecords,
|
||||
}
|
||||
|
||||
err = provider.ApplyChanges(context.Background(), p)
|
||||
err = provider.ApplyChanges(t.Context(), p)
|
||||
assert.NoError(t, err)
|
||||
|
||||
assert.Len(t, stub.updateMsgs, 4)
|
||||
@ -1072,7 +1071,7 @@ func TestRfc2136NameserverFailureReturnsSoftError(t *testing.T) {
|
||||
assert.NoError(t, err)
|
||||
|
||||
// Test that Records() returns a SoftError when nameserver fails
|
||||
_, err = providerInstance.Records(context.Background())
|
||||
_, err = providerInstance.Records(t.Context())
|
||||
assert.Error(t, err)
|
||||
assert.ErrorIs(t, err, provider.SoftError, "Expected SoftError when nameserver fails")
|
||||
|
||||
@ -1086,7 +1085,7 @@ func TestRfc2136NameserverFailureReturnsSoftError(t *testing.T) {
|
||||
},
|
||||
},
|
||||
}
|
||||
err = providerInstance.ApplyChanges(context.Background(), p)
|
||||
err = providerInstance.ApplyChanges(t.Context(), p)
|
||||
assert.Error(t, err)
|
||||
assert.ErrorIs(t, err, provider.SoftError, "Expected SoftError when nameserver fails in ApplyChanges")
|
||||
}
|
||||
|
||||
@ -17,7 +17,6 @@ limitations under the License.
|
||||
package scaleway
|
||||
|
||||
import (
|
||||
"context"
|
||||
"io"
|
||||
"os"
|
||||
"reflect"
|
||||
@ -124,15 +123,15 @@ func TestScalewayProvider_NewScalewayProvider(t *testing.T) {
|
||||
if err != nil {
|
||||
t.Errorf("failed : %s", err)
|
||||
}
|
||||
_ = os.Setenv(scw.ScwActiveProfileEnv, "foo")
|
||||
_ = os.Setenv(scw.ScwConfigPathEnv, tmpDir+"/config.yaml")
|
||||
t.Setenv(scw.ScwActiveProfileEnv, "foo")
|
||||
t.Setenv(scw.ScwConfigPathEnv, tmpDir+"/config.yaml")
|
||||
_, err = NewScalewayProvider(endpoint.NewDomainFilter([]string{"example.com"}), true)
|
||||
if err != nil {
|
||||
t.Errorf("failed : %s", err)
|
||||
}
|
||||
|
||||
_ = os.Setenv(scw.ScwAccessKeyEnv, "SCWXXXXXXXXXXXXXXXXX")
|
||||
_ = os.Setenv(scw.ScwSecretKeyEnv, "11111111-1111-1111-1111-111111111111")
|
||||
t.Setenv(scw.ScwAccessKeyEnv, "SCWXXXXXXXXXXXXXXXXX")
|
||||
t.Setenv(scw.ScwSecretKeyEnv, "11111111-1111-1111-1111-111111111111")
|
||||
_, err = NewScalewayProvider(endpoint.NewDomainFilter([]string{"example.com"}), true)
|
||||
if err != nil {
|
||||
t.Errorf("failed : %s", err)
|
||||
@ -144,20 +143,20 @@ func TestScalewayProvider_NewScalewayProvider(t *testing.T) {
|
||||
t.Errorf("expected to fail")
|
||||
}
|
||||
|
||||
_ = os.Setenv(scw.ScwSecretKeyEnv, "dummy")
|
||||
t.Setenv(scw.ScwSecretKeyEnv, "dummy")
|
||||
_, err = NewScalewayProvider(endpoint.NewDomainFilter([]string{"example.com"}), true)
|
||||
if err == nil {
|
||||
t.Errorf("expected to fail")
|
||||
}
|
||||
|
||||
_ = os.Unsetenv(scw.ScwAccessKeyEnv)
|
||||
_ = os.Setenv(scw.ScwSecretKeyEnv, "11111111-1111-1111-1111-111111111111")
|
||||
t.Setenv(scw.ScwSecretKeyEnv, "11111111-1111-1111-1111-111111111111")
|
||||
_, err = NewScalewayProvider(endpoint.NewDomainFilter([]string{"example.com"}), true)
|
||||
if err == nil {
|
||||
t.Errorf("expected to fail")
|
||||
}
|
||||
|
||||
_ = os.Setenv(scw.ScwAccessKeyEnv, "dummy")
|
||||
t.Setenv(scw.ScwAccessKeyEnv, "dummy")
|
||||
_, err = NewScalewayProvider(endpoint.NewDomainFilter([]string{"example.com"}), true)
|
||||
if err == nil {
|
||||
t.Errorf("expected to fail")
|
||||
@ -166,8 +165,8 @@ func TestScalewayProvider_NewScalewayProvider(t *testing.T) {
|
||||
|
||||
func TestScalewayProvider_OptionnalConfigFile(t *testing.T) {
|
||||
log.SetOutput(io.Discard)
|
||||
_ = os.Setenv(scw.ScwAccessKeyEnv, "SCWXXXXXXXXXXXXXXXXX")
|
||||
_ = os.Setenv(scw.ScwSecretKeyEnv, "11111111-1111-1111-1111-111111111111")
|
||||
t.Setenv(scw.ScwAccessKeyEnv, "SCWXXXXXXXXXXXXXXXXX")
|
||||
t.Setenv(scw.ScwSecretKeyEnv, "11111111-1111-1111-1111-111111111111")
|
||||
|
||||
_, err := NewScalewayProvider(endpoint.NewDomainFilter([]string{"example.com"}), true)
|
||||
assert.NoError(t, err)
|
||||
@ -275,7 +274,7 @@ func TestScalewayProvider_Zones(t *testing.T) {
|
||||
Subdomain: "test",
|
||||
},
|
||||
}
|
||||
zones, err := provider.Zones(context.Background())
|
||||
zones, err := provider.Zones(t.Context())
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
@ -343,7 +342,7 @@ func TestScalewayProvider_Records(t *testing.T) {
|
||||
},
|
||||
}
|
||||
|
||||
records, err := provider.Records(context.TODO())
|
||||
records, err := provider.Records(t.Context())
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
@ -561,7 +560,7 @@ func TestScalewayProvider_generateApplyRequests(t *testing.T) {
|
||||
},
|
||||
}
|
||||
|
||||
requests, err := provider.generateApplyRequests(context.TODO(), changes)
|
||||
requests, err := provider.generateApplyRequests(t.Context(), changes)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
@ -17,7 +17,6 @@ limitations under the License.
|
||||
package transip
|
||||
|
||||
import (
|
||||
"context"
|
||||
"encoding/json"
|
||||
"errors"
|
||||
"strings"
|
||||
@ -254,7 +253,7 @@ func TestProviderRecords(t *testing.T) {
|
||||
p := newProvider()
|
||||
p.domainRepo = domain.Repository{Client: client}
|
||||
|
||||
endpoints, err := p.Records(context.TODO())
|
||||
endpoints, err := p.Records(t.Context())
|
||||
if assert.NoError(t, err) {
|
||||
if assert.Len(t, endpoints, 4) {
|
||||
assert.Equal(t, "www.example.org", endpoints[0].DNSName)
|
||||
|
||||
@ -17,7 +17,6 @@ limitations under the License.
|
||||
package webhook
|
||||
|
||||
import (
|
||||
"context"
|
||||
"encoding/json"
|
||||
"io"
|
||||
"net/http"
|
||||
@ -134,7 +133,7 @@ func TestRecords(t *testing.T) {
|
||||
|
||||
provider, err := NewWebhookProvider(svr.URL)
|
||||
require.NoError(t, err)
|
||||
endpoints, err := provider.Records(context.TODO())
|
||||
endpoints, err := provider.Records(t.Context())
|
||||
require.NoError(t, err)
|
||||
require.NotNil(t, endpoints)
|
||||
require.Equal(t, []*endpoint.Endpoint{{
|
||||
@ -156,7 +155,7 @@ func TestRecordsWithErrors(t *testing.T) {
|
||||
|
||||
p, err := NewWebhookProvider(svr.URL)
|
||||
require.NoError(t, err)
|
||||
_, err = p.Records(context.Background())
|
||||
_, err = p.Records(t.Context())
|
||||
require.Error(t, err)
|
||||
require.ErrorIs(t, err, provider.SoftError)
|
||||
}
|
||||
@ -199,7 +198,7 @@ func TestRecords_DecodeError(t *testing.T) {
|
||||
client: &http.Client{},
|
||||
}
|
||||
|
||||
_, err := p.Records(context.Background())
|
||||
_, err := p.Records(t.Context())
|
||||
require.Error(t, err)
|
||||
require.Contains(t, err.Error(), "invalid character 'i' looking for beginning of value")
|
||||
}
|
||||
@ -242,12 +241,12 @@ func TestApplyChanges(t *testing.T) {
|
||||
|
||||
p, err := NewWebhookProvider(svr.URL)
|
||||
require.NoError(t, err)
|
||||
err = p.ApplyChanges(context.TODO(), nil)
|
||||
err = p.ApplyChanges(t.Context(), nil)
|
||||
require.NoError(t, err)
|
||||
|
||||
successfulApplyChanges = false
|
||||
|
||||
err = p.ApplyChanges(context.TODO(), nil)
|
||||
err = p.ApplyChanges(t.Context(), nil)
|
||||
require.Error(t, err)
|
||||
require.ErrorIs(t, err, provider.SoftError)
|
||||
}
|
||||
@ -258,7 +257,7 @@ func TestApplyChanges_HTTPNewRequestErrorWrongHost(t *testing.T) {
|
||||
client: &http.Client{},
|
||||
}
|
||||
|
||||
err := wpr.ApplyChanges(context.Background(), nil)
|
||||
err := wpr.ApplyChanges(t.Context(), nil)
|
||||
require.Error(t, err)
|
||||
require.Contains(t, err.Error(), "invalid URL escape")
|
||||
}
|
||||
@ -269,7 +268,7 @@ func TestApplyChanges_GetFailed(t *testing.T) {
|
||||
client: &http.Client{},
|
||||
}
|
||||
|
||||
err := p.ApplyChanges(context.TODO(), &plan.Changes{})
|
||||
err := p.ApplyChanges(t.Context(), &plan.Changes{})
|
||||
require.Error(t, err)
|
||||
assert.Contains(t, err.Error(), "unsupported protocol scheme")
|
||||
}
|
||||
@ -289,7 +288,7 @@ func TestApplyChanges_StatusCodeError(t *testing.T) {
|
||||
p, err := NewWebhookProvider(svr.URL)
|
||||
require.NoError(t, err)
|
||||
|
||||
err = p.ApplyChanges(context.TODO(), nil)
|
||||
err = p.ApplyChanges(t.Context(), nil)
|
||||
require.Error(t, err)
|
||||
require.NotErrorIs(t, err, provider.SoftError)
|
||||
assert.Contains(t, err.Error(), "failed to apply changes with code 511")
|
||||
@ -419,7 +418,7 @@ func TestApplyChangesWithProviderSpecificProperty(t *testing.T) {
|
||||
},
|
||||
},
|
||||
}
|
||||
err = p.ApplyChanges(context.TODO(), &plan.Changes{
|
||||
err = p.ApplyChanges(t.Context(), &plan.Changes{
|
||||
Create: []*endpoint.Endpoint{
|
||||
e,
|
||||
},
|
||||
|
||||
@ -103,7 +103,7 @@ func TestAWSSDRegistryTest_Records(t *testing.T) {
|
||||
}
|
||||
|
||||
r, _ := NewAWSSDRegistry(p, "records-owner")
|
||||
records, _ := r.Records(context.Background())
|
||||
records, _ := r.Records(t.Context())
|
||||
|
||||
assert.True(t, testutils.SameEndpoints(records, expectedRecords))
|
||||
}
|
||||
@ -158,7 +158,7 @@ func TestAWSSDRegistry_Records_ApplyChanges(t *testing.T) {
|
||||
r, err := NewAWSSDRegistry(p, "owner")
|
||||
require.NoError(t, err)
|
||||
|
||||
err = r.ApplyChanges(context.Background(), changes)
|
||||
err = r.ApplyChanges(t.Context(), changes)
|
||||
require.NoError(t, err)
|
||||
}
|
||||
|
||||
|
||||
@ -159,7 +159,7 @@ func TestDynamoDBRegistryRecordsBadTable(t *testing.T) {
|
||||
|
||||
r, _ := NewDynamoDBRegistry(p, "test-owner", api, "test-table", "", "", "", []string{}, []string{}, nil, time.Hour)
|
||||
|
||||
_, err := r.Records(context.Background())
|
||||
_, err := r.Records(t.Context())
|
||||
assert.EqualError(t, err, tc.expected)
|
||||
})
|
||||
}
|
||||
@ -168,7 +168,7 @@ func TestDynamoDBRegistryRecordsBadTable(t *testing.T) {
|
||||
func TestDynamoDBRegistryRecords(t *testing.T) {
|
||||
api, p := newDynamoDBAPIStub(t, nil)
|
||||
|
||||
ctx := context.Background()
|
||||
ctx := t.Context()
|
||||
expectedRecords := []*endpoint.Endpoint{
|
||||
{
|
||||
DNSName: "foo.test-zone.example.org",
|
||||
@ -244,7 +244,7 @@ func TestDynamoDBRegistryRecords(t *testing.T) {
|
||||
}
|
||||
|
||||
r, _ := NewDynamoDBRegistry(p, "test-owner", api, "test-table", "txt.", "", "", []string{}, []string{}, nil, time.Hour)
|
||||
_ = p.(*wrappedProvider).Provider.ApplyChanges(context.Background(), &plan.Changes{
|
||||
_ = p.(*wrappedProvider).Provider.ApplyChanges(t.Context(), &plan.Changes{
|
||||
Create: []*endpoint.Endpoint{
|
||||
endpoint.NewEndpoint("migrate.test-zone.example.org", endpoint.RecordTypeA, "3.3.3.3").WithSetIdentifier("set-3"),
|
||||
endpoint.NewEndpoint("txt.migrate.test-zone.example.org", endpoint.RecordTypeTXT, "\"heritage=external-dns,external-dns/owner=test-owner,external-dns/resource=ingress/default/other-ingress\"").WithSetIdentifier("set-3"),
|
||||
@ -1076,12 +1076,12 @@ func TestDynamoDBRegistryApplyChanges(t *testing.T) {
|
||||
|
||||
api, p := newDynamoDBAPIStub(t, &tc.stubConfig)
|
||||
if len(tc.addRecords) > 0 {
|
||||
_ = p.(*wrappedProvider).Provider.ApplyChanges(context.Background(), &plan.Changes{
|
||||
_ = p.(*wrappedProvider).Provider.ApplyChanges(t.Context(), &plan.Changes{
|
||||
Create: tc.addRecords,
|
||||
})
|
||||
}
|
||||
|
||||
ctx := context.Background()
|
||||
ctx := t.Context()
|
||||
|
||||
r, _ := NewDynamoDBRegistry(p, "test-owner", api, "test-table", "txt.", "", "", []string{}, []string{}, nil, time.Hour)
|
||||
_, err := r.Records(ctx)
|
||||
@ -1162,7 +1162,7 @@ func newDynamoDBAPIStub(t *testing.T, stubConfig *DynamoDBStubConfig) (*DynamoDB
|
||||
}
|
||||
p := inmemory.NewInMemoryProvider()
|
||||
_ = p.CreateZone(testZone)
|
||||
_ = p.ApplyChanges(context.Background(), &plan.Changes{
|
||||
_ = p.ApplyChanges(t.Context(), &plan.Changes{
|
||||
Create: []*endpoint.Endpoint{
|
||||
endpoint.NewEndpoint("foo.test-zone.example.org", endpoint.RecordTypeCNAME, "foo.loadbalancer.com"),
|
||||
endpoint.NewEndpoint("bar.test-zone.example.org", endpoint.RecordTypeCNAME, "my-domain.com"),
|
||||
|
||||
@ -17,7 +17,6 @@ limitations under the License.
|
||||
package noop
|
||||
|
||||
import (
|
||||
"context"
|
||||
"testing"
|
||||
|
||||
"github.com/stretchr/testify/assert"
|
||||
@ -43,7 +42,7 @@ func testNoopInit(t *testing.T) {
|
||||
}
|
||||
|
||||
func testNoopRecords(t *testing.T) {
|
||||
ctx := context.Background()
|
||||
ctx := t.Context()
|
||||
p := inmemory.NewInMemoryProvider()
|
||||
p.CreateZone("org")
|
||||
inmemoryRecords := []*endpoint.Endpoint{
|
||||
@ -88,7 +87,7 @@ func testNoopApplyChanges(t *testing.T) {
|
||||
},
|
||||
}
|
||||
|
||||
ctx := context.Background()
|
||||
ctx := t.Context()
|
||||
p.ApplyChanges(ctx, &plan.Changes{
|
||||
Create: inmemoryRecords,
|
||||
})
|
||||
|
||||
@ -17,7 +17,6 @@ limitations under the License.
|
||||
package txt
|
||||
|
||||
import (
|
||||
"context"
|
||||
"fmt"
|
||||
"slices"
|
||||
"strconv"
|
||||
@ -138,7 +137,7 @@ func TestGenerateTXTGenerateTextRecordEncryptionWihDecryption(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestApplyRecordsWithEncryption(t *testing.T) {
|
||||
ctx := context.Background()
|
||||
ctx := t.Context()
|
||||
p := inmemory.NewInMemoryProvider()
|
||||
_ = p.CreateZone("org")
|
||||
|
||||
@ -191,7 +190,7 @@ func TestApplyRecordsWithEncryption(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestApplyRecordsWithEncryptionKeyChanged(t *testing.T) {
|
||||
ctx := context.Background()
|
||||
ctx := t.Context()
|
||||
p := inmemory.NewInMemoryProvider()
|
||||
_ = p.CreateZone("org")
|
||||
|
||||
@ -221,7 +220,7 @@ func TestApplyRecordsWithEncryptionKeyChanged(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestApplyRecordsOnEncryptionKeyChangeWithKeyIdLabel(t *testing.T) {
|
||||
ctx := context.Background()
|
||||
ctx := t.Context()
|
||||
p := inmemory.NewInMemoryProvider()
|
||||
_ = p.CreateZone("org")
|
||||
|
||||
@ -249,7 +248,7 @@ func TestApplyRecordsOnEncryptionKeyChangeWithKeyIdLabel(t *testing.T) {
|
||||
Create: changes,
|
||||
})
|
||||
} else {
|
||||
_ = r.ApplyChanges(context.Background(), &plan.Changes{
|
||||
_ = r.ApplyChanges(t.Context(), &plan.Changes{
|
||||
UpdateNew: changes,
|
||||
})
|
||||
}
|
||||
|
||||
@ -26,6 +26,7 @@ import (
|
||||
|
||||
"github.com/stretchr/testify/assert"
|
||||
"github.com/stretchr/testify/require"
|
||||
|
||||
"sigs.k8s.io/external-dns/registry/mapper"
|
||||
|
||||
log "github.com/sirupsen/logrus"
|
||||
@ -98,7 +99,7 @@ func testTXTRegistryRecords(t *testing.T) {
|
||||
}
|
||||
|
||||
func testTXTRegistryRecordsPrefixed(t *testing.T) {
|
||||
ctx := context.Background()
|
||||
ctx := t.Context()
|
||||
p := inmemory.NewInMemoryProvider()
|
||||
err := p.CreateZone(testZone)
|
||||
require.NoError(t, err)
|
||||
@ -273,7 +274,7 @@ func testTXTRegistryRecordsPrefixed(t *testing.T) {
|
||||
}
|
||||
|
||||
func testTXTRegistryRecordsSuffixed(t *testing.T) {
|
||||
ctx := context.Background()
|
||||
ctx := t.Context()
|
||||
p := inmemory.NewInMemoryProvider()
|
||||
err := p.CreateZone(testZone)
|
||||
require.NoError(t, err)
|
||||
@ -439,7 +440,7 @@ func testTXTRegistryRecordsSuffixed(t *testing.T) {
|
||||
|
||||
func testTXTRegistryRecordsNoPrefix(t *testing.T) {
|
||||
p := inmemory.NewInMemoryProvider()
|
||||
ctx := context.Background()
|
||||
ctx := t.Context()
|
||||
err := p.CreateZone(testZone)
|
||||
require.NoError(t, err)
|
||||
err = p.ApplyChanges(ctx, &plan.Changes{
|
||||
@ -589,7 +590,7 @@ func testTXTRegistryRecordsNoPrefix(t *testing.T) {
|
||||
}
|
||||
|
||||
func testTXTRegistryRecordsPrefixedTemplated(t *testing.T) {
|
||||
ctx := context.Background()
|
||||
ctx := t.Context()
|
||||
p := inmemory.NewInMemoryProvider()
|
||||
err := p.CreateZone(testZone)
|
||||
require.NoError(t, err)
|
||||
@ -633,7 +634,7 @@ func testTXTRegistryRecordsPrefixedTemplated(t *testing.T) {
|
||||
}
|
||||
|
||||
func testTXTRegistryRecordsSuffixedTemplated(t *testing.T) {
|
||||
ctx := context.Background()
|
||||
ctx := t.Context()
|
||||
p := inmemory.NewInMemoryProvider()
|
||||
err := p.CreateZone(testZone)
|
||||
require.NoError(t, err)
|
||||
@ -688,7 +689,7 @@ func testTXTRegistryApplyChangesWithPrefix(t *testing.T) {
|
||||
p := inmemory.NewInMemoryProvider()
|
||||
_ = p.CreateZone(testZone)
|
||||
var ctxEndpoints []*endpoint.Endpoint
|
||||
ctx := context.WithValue(context.Background(), provider.RecordsContextKey, ctxEndpoints)
|
||||
ctx := context.WithValue(t.Context(), provider.RecordsContextKey, ctxEndpoints)
|
||||
p.OnApplyChanges = func(ctx context.Context, _ *plan.Changes) {
|
||||
assert.Equal(t, ctxEndpoints, ctx.Value(provider.RecordsContextKey))
|
||||
}
|
||||
@ -787,7 +788,7 @@ func testTXTRegistryApplyChangesWithTemplatedPrefix(t *testing.T) {
|
||||
err := p.CreateZone(testZone)
|
||||
require.NoError(t, err)
|
||||
var ctxEndpoints []*endpoint.Endpoint
|
||||
ctx := context.WithValue(context.Background(), provider.RecordsContextKey, ctxEndpoints)
|
||||
ctx := context.WithValue(t.Context(), provider.RecordsContextKey, ctxEndpoints)
|
||||
p.OnApplyChanges = func(ctx context.Context, _ *plan.Changes) {
|
||||
assert.Equal(t, ctxEndpoints, ctx.Value(provider.RecordsContextKey))
|
||||
}
|
||||
@ -833,7 +834,7 @@ func testTXTRegistryApplyChangesWithTemplatedSuffix(t *testing.T) {
|
||||
p := inmemory.NewInMemoryProvider()
|
||||
_ = p.CreateZone(testZone)
|
||||
var ctxEndpoints []*endpoint.Endpoint
|
||||
ctx := context.WithValue(context.Background(), provider.RecordsContextKey, ctxEndpoints)
|
||||
ctx := context.WithValue(t.Context(), provider.RecordsContextKey, ctxEndpoints)
|
||||
p.OnApplyChanges = func(ctx context.Context, _ *plan.Changes) {
|
||||
assert.Equal(t, ctxEndpoints, ctx.Value(provider.RecordsContextKey))
|
||||
}
|
||||
@ -877,7 +878,7 @@ func testTXTRegistryApplyChangesWithSuffix(t *testing.T) {
|
||||
err := p.CreateZone(testZone)
|
||||
require.NoError(t, err)
|
||||
var ctxEndpoints []*endpoint.Endpoint
|
||||
ctx := context.WithValue(context.Background(), provider.RecordsContextKey, ctxEndpoints)
|
||||
ctx := context.WithValue(t.Context(), provider.RecordsContextKey, ctxEndpoints)
|
||||
p.OnApplyChanges = func(ctx context.Context, _ *plan.Changes) {
|
||||
assert.Equal(t, ctxEndpoints, ctx.Value(provider.RecordsContextKey))
|
||||
}
|
||||
@ -981,7 +982,7 @@ func testTXTRegistryApplyChangesNoPrefix(t *testing.T) {
|
||||
err := p.CreateZone(testZone)
|
||||
require.NoError(t, err)
|
||||
var ctxEndpoints []*endpoint.Endpoint
|
||||
ctx := context.WithValue(context.Background(), provider.RecordsContextKey, ctxEndpoints)
|
||||
ctx := context.WithValue(t.Context(), provider.RecordsContextKey, ctxEndpoints)
|
||||
p.OnApplyChanges = func(ctx context.Context, _ *plan.Changes) {
|
||||
assert.Equal(t, ctxEndpoints, ctx.Value(provider.RecordsContextKey))
|
||||
}
|
||||
@ -1060,7 +1061,7 @@ func testTXTRegistryMissingRecords(t *testing.T) {
|
||||
}
|
||||
|
||||
func testTXTRegistryMissingRecordsNoPrefix(t *testing.T) {
|
||||
ctx := context.Background()
|
||||
ctx := t.Context()
|
||||
p := inmemory.NewInMemoryProvider()
|
||||
err := p.CreateZone(testZone)
|
||||
require.NoError(t, err)
|
||||
@ -1167,7 +1168,7 @@ func testTXTRegistryMissingRecordsNoPrefix(t *testing.T) {
|
||||
}
|
||||
|
||||
func testTXTRegistryMissingRecordsWithPrefix(t *testing.T) {
|
||||
ctx := context.Background()
|
||||
ctx := t.Context()
|
||||
p := inmemory.NewInMemoryProvider()
|
||||
err := p.CreateZone(testZone)
|
||||
require.NoError(t, err)
|
||||
@ -1350,7 +1351,7 @@ func TestNewTXTScheme(t *testing.T) {
|
||||
err := p.CreateZone(testZone)
|
||||
require.NoError(t, err)
|
||||
var ctxEndpoints []*endpoint.Endpoint
|
||||
ctx := context.WithValue(context.Background(), provider.RecordsContextKey, ctxEndpoints)
|
||||
ctx := context.WithValue(t.Context(), provider.RecordsContextKey, ctxEndpoints)
|
||||
p.OnApplyChanges = func(ctx context.Context, _ *plan.Changes) {
|
||||
assert.Equal(t, ctxEndpoints, ctx.Value(provider.RecordsContextKey))
|
||||
}
|
||||
@ -1520,7 +1521,7 @@ func TestTXTRegistryApplyChangesEncrypt(t *testing.T) {
|
||||
err := p.CreateZone(testZone)
|
||||
require.NoError(t, err)
|
||||
var ctxEndpoints []*endpoint.Endpoint
|
||||
ctx := context.WithValue(context.Background(), provider.RecordsContextKey, ctxEndpoints)
|
||||
ctx := context.WithValue(t.Context(), provider.RecordsContextKey, ctxEndpoints)
|
||||
|
||||
err = p.ApplyChanges(ctx, &plan.Changes{
|
||||
Create: []*endpoint.Endpoint{
|
||||
@ -1565,7 +1566,7 @@ func TestTXTRegistryApplyChangesEncrypt(t *testing.T) {
|
||||
// was treated independently and would cause each cluster to fight over ownership. This tests ensure that the default
|
||||
// Dual Stack record support only treats AAAA records independently and while keeping A and CNAME record ownership intact.
|
||||
func TestMultiClusterDifferentRecordTypeOwnership(t *testing.T) {
|
||||
ctx := context.Background()
|
||||
ctx := t.Context()
|
||||
p := inmemory.NewInMemoryProvider()
|
||||
err := p.CreateZone(testZone)
|
||||
require.NoError(t, err)
|
||||
@ -1689,7 +1690,7 @@ func TestApplyChangesWithNewFormatOnly(t *testing.T) {
|
||||
p := inmemory.NewInMemoryProvider()
|
||||
err := p.CreateZone(testZone)
|
||||
require.NoError(t, err)
|
||||
ctx := context.Background()
|
||||
ctx := t.Context()
|
||||
|
||||
r, _ := NewTXTRegistry(p, "", "", "owner", time.Hour, "", []string{}, []string{}, false, nil, "")
|
||||
|
||||
@ -1721,7 +1722,7 @@ func TestApplyChangesWithNewFormatOnly(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestTXTRegistryRecordsWithEmptyTargets(t *testing.T) {
|
||||
ctx := context.Background()
|
||||
ctx := t.Context()
|
||||
p := inmemory.NewInMemoryProvider()
|
||||
err := p.CreateZone(testZone)
|
||||
require.NoError(t, err)
|
||||
@ -1917,7 +1918,7 @@ func TestTXTRegistryRecreatesMissingRecords(t *testing.T) {
|
||||
|
||||
t.Run(fmt.Sprintf("%s with %s policy and setIdentifier=%s", tt.name, pName, setIdentifier), func(t *testing.T) {
|
||||
t.Parallel()
|
||||
ctx := context.Background()
|
||||
ctx := t.Context()
|
||||
p := inmemory.NewInMemoryProvider()
|
||||
|
||||
// Given: Register existing records
|
||||
@ -1982,7 +1983,7 @@ func TestTXTRegistryRecreatesMissingRecords(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestTXTRecordMigration(t *testing.T) {
|
||||
ctx := context.Background()
|
||||
ctx := t.Context()
|
||||
p := inmemory.NewInMemoryProvider()
|
||||
err := p.CreateZone(testZone)
|
||||
require.NoError(t, err)
|
||||
@ -2034,7 +2035,7 @@ func TestTXTRecordMigration(t *testing.T) {
|
||||
// caused ExternalDNS to skip recreating TXT records after deletion.
|
||||
func TestRecreateRecordAfterDeletion(t *testing.T) {
|
||||
ownerID := "foo"
|
||||
ctx := context.Background()
|
||||
ctx := t.Context()
|
||||
p := inmemory.NewInMemoryProvider()
|
||||
err := p.CreateZone(testZone)
|
||||
require.NoError(t, err)
|
||||
|
||||
@ -17,7 +17,6 @@ limitations under the License.
|
||||
package source
|
||||
|
||||
import (
|
||||
"context"
|
||||
"fmt"
|
||||
"testing"
|
||||
|
||||
@ -627,21 +626,21 @@ func TestAmbassadorHostSource(t *testing.T) {
|
||||
namespace := "default"
|
||||
|
||||
// Create Ambassador service
|
||||
_, err := fakeKubernetesClient.CoreV1().Services(defaultAmbassadorNamespace).Create(context.Background(), &ti.service, metav1.CreateOptions{})
|
||||
_, err := fakeKubernetesClient.CoreV1().Services(defaultAmbassadorNamespace).Create(t.Context(), &ti.service, metav1.CreateOptions{})
|
||||
assert.NoError(t, err)
|
||||
|
||||
// Create host resource
|
||||
host, err := createAmbassadorHost(&ti.host)
|
||||
assert.NoError(t, err)
|
||||
|
||||
_, err = fakeDynamicClient.Resource(ambHostGVR).Namespace(namespace).Create(context.Background(), host, metav1.CreateOptions{})
|
||||
_, err = fakeDynamicClient.Resource(ambHostGVR).Namespace(namespace).Create(t.Context(), host, metav1.CreateOptions{})
|
||||
assert.NoError(t, err)
|
||||
|
||||
source, err := NewAmbassadorHostSource(context.TODO(), fakeDynamicClient, fakeKubernetesClient, namespace, ti.annotationFilter, ti.labelSelector)
|
||||
source, err := NewAmbassadorHostSource(t.Context(), fakeDynamicClient, fakeKubernetesClient, namespace, ti.annotationFilter, ti.labelSelector)
|
||||
assert.NoError(t, err)
|
||||
assert.NotNil(t, source)
|
||||
|
||||
endpoints, err := source.Endpoints(context.Background())
|
||||
endpoints, err := source.Endpoints(t.Context())
|
||||
assert.NoError(t, err)
|
||||
// Validate returned endpoints against expected endpoints.
|
||||
validateEndpoints(t, endpoints, ti.expected)
|
||||
|
||||
@ -17,7 +17,6 @@ limitations under the License.
|
||||
package source
|
||||
|
||||
import (
|
||||
"context"
|
||||
"encoding/gob"
|
||||
"net"
|
||||
"testing"
|
||||
@ -131,7 +130,7 @@ func testConnectorSourceEndpoints(t *testing.T) {
|
||||
}
|
||||
cs, _ := NewConnectorSource(addr)
|
||||
|
||||
endpoints, err := cs.Endpoints(context.Background())
|
||||
endpoints, err := cs.Endpoints(t.Context())
|
||||
if ti.expectError {
|
||||
assert.Error(t, err)
|
||||
} else {
|
||||
|
||||
@ -187,7 +187,7 @@ func TestNewContourHTTPProxySource(t *testing.T) {
|
||||
fakeDynamicClient, _ := newDynamicKubernetesClient()
|
||||
|
||||
_, err := NewContourHTTPProxySource(
|
||||
context.TODO(),
|
||||
t.Context(),
|
||||
fakeDynamicClient,
|
||||
"",
|
||||
ti.annotationFilter,
|
||||
@ -1048,12 +1048,12 @@ func testHTTPProxyEndpoints(t *testing.T) {
|
||||
for _, httpProxy := range httpProxies {
|
||||
converted, err := convertHTTPProxyToUnstructured(httpProxy, scheme)
|
||||
require.NoError(t, err)
|
||||
_, err = fakeDynamicClient.Resource(projectcontour.HTTPProxyGVR).Namespace(httpProxy.Namespace).Create(context.Background(), converted, metav1.CreateOptions{})
|
||||
_, err = fakeDynamicClient.Resource(projectcontour.HTTPProxyGVR).Namespace(httpProxy.Namespace).Create(t.Context(), converted, metav1.CreateOptions{})
|
||||
require.NoError(t, err)
|
||||
}
|
||||
|
||||
httpProxySource, err := NewContourHTTPProxySource(
|
||||
context.TODO(),
|
||||
t.Context(),
|
||||
fakeDynamicClient,
|
||||
ti.targetNamespace,
|
||||
ti.annotationFilter,
|
||||
@ -1063,7 +1063,7 @@ func testHTTPProxyEndpoints(t *testing.T) {
|
||||
)
|
||||
require.NoError(t, err)
|
||||
|
||||
res, err := httpProxySource.Endpoints(context.Background())
|
||||
res, err := httpProxySource.Endpoints(t.Context())
|
||||
if ti.expectError {
|
||||
assert.Error(t, err)
|
||||
} else {
|
||||
|
||||
@ -18,7 +18,6 @@ package source
|
||||
|
||||
import (
|
||||
"bytes"
|
||||
"context"
|
||||
"encoding/json"
|
||||
"fmt"
|
||||
"io"
|
||||
@ -701,7 +700,7 @@ func TestCRDSource_NoInformer(t *testing.T) {
|
||||
cs := &crdSource{informer: nil}
|
||||
called := false
|
||||
|
||||
cs.AddEventHandler(context.Background(), func() { called = true })
|
||||
cs.AddEventHandler(t.Context(), func() { called = true })
|
||||
require.False(t, called, "handler must not be called when informer is nil")
|
||||
}
|
||||
|
||||
@ -825,7 +824,7 @@ func TestCRDSource_Watch(t *testing.T) {
|
||||
func validateCRDResource(t *testing.T, src Source, expectError bool) {
|
||||
t.Helper()
|
||||
cs := src.(*crdSource)
|
||||
result, err := cs.List(context.Background(), &metav1.ListOptions{})
|
||||
result, err := cs.List(t.Context(), &metav1.ListOptions{})
|
||||
if expectError {
|
||||
require.Errorf(t, err, "Received err %v", err)
|
||||
} else {
|
||||
|
||||
@ -17,14 +17,13 @@ limitations under the License.
|
||||
package source
|
||||
|
||||
import (
|
||||
"context"
|
||||
"testing"
|
||||
)
|
||||
|
||||
func TestEmptySourceReturnsEmpty(t *testing.T) {
|
||||
e := NewEmptySource()
|
||||
|
||||
endpoints, err := e.Endpoints(context.Background())
|
||||
endpoints, err := e.Endpoints(t.Context())
|
||||
if err != nil {
|
||||
t.Errorf("Expected no error but got %s", err.Error())
|
||||
}
|
||||
|
||||
@ -14,7 +14,6 @@ limitations under the License.
|
||||
package source
|
||||
|
||||
import (
|
||||
"context"
|
||||
"testing"
|
||||
|
||||
"github.com/stretchr/testify/assert"
|
||||
@ -219,7 +218,7 @@ func TestEndpointTargetsFromServices(t *testing.T) {
|
||||
serviceInformer := informerFactory.Core().V1().Services()
|
||||
|
||||
for _, svc := range tt.services {
|
||||
_, err := client.CoreV1().Services(tt.namespace).Create(context.Background(), svc, metav1.CreateOptions{})
|
||||
_, err := client.CoreV1().Services(tt.namespace).Create(t.Context(), svc, metav1.CreateOptions{})
|
||||
assert.NoError(t, err)
|
||||
|
||||
err = serviceInformer.Informer().GetIndexer().Add(svc)
|
||||
|
||||
@ -17,7 +17,6 @@ limitations under the License.
|
||||
package source
|
||||
|
||||
import (
|
||||
"context"
|
||||
"encoding/json"
|
||||
"testing"
|
||||
|
||||
@ -342,19 +341,19 @@ func TestF5TransportServerEndpoints(t *testing.T) {
|
||||
assert.NoError(t, transportServer.UnmarshalJSON(transportServerJSON))
|
||||
|
||||
// Create TransportServer resources
|
||||
_, err = fakeDynamicClient.Resource(f5TransportServerGVR).Namespace(defaultF5TransportServerNamespace).Create(context.Background(), &transportServer, metav1.CreateOptions{})
|
||||
_, err = fakeDynamicClient.Resource(f5TransportServerGVR).Namespace(defaultF5TransportServerNamespace).Create(t.Context(), &transportServer, metav1.CreateOptions{})
|
||||
assert.NoError(t, err)
|
||||
|
||||
source, err := NewF5TransportServerSource(context.TODO(), fakeDynamicClient, fakeKubernetesClient, defaultF5TransportServerNamespace, tc.annotationFilter)
|
||||
source, err := NewF5TransportServerSource(t.Context(), fakeDynamicClient, fakeKubernetesClient, defaultF5TransportServerNamespace, tc.annotationFilter)
|
||||
require.NoError(t, err)
|
||||
assert.NotNil(t, source)
|
||||
|
||||
count := &unstructured.UnstructuredList{}
|
||||
for len(count.Items) < 1 {
|
||||
count, _ = fakeDynamicClient.Resource(f5TransportServerGVR).Namespace(defaultF5TransportServerNamespace).List(context.Background(), metav1.ListOptions{})
|
||||
count, _ = fakeDynamicClient.Resource(f5TransportServerGVR).Namespace(defaultF5TransportServerNamespace).List(t.Context(), metav1.ListOptions{})
|
||||
}
|
||||
|
||||
endpoints, err := source.Endpoints(context.Background())
|
||||
endpoints, err := source.Endpoints(t.Context())
|
||||
require.NoError(t, err)
|
||||
assert.Len(t, endpoints, len(tc.expected))
|
||||
assert.Equal(t, tc.expected, endpoints)
|
||||
|
||||
@ -17,7 +17,6 @@ limitations under the License.
|
||||
package source
|
||||
|
||||
import (
|
||||
"context"
|
||||
"encoding/json"
|
||||
"testing"
|
||||
|
||||
@ -584,19 +583,19 @@ func TestF5VirtualServerEndpoints(t *testing.T) {
|
||||
assert.NoError(t, virtualServer.UnmarshalJSON(virtualServerJSON))
|
||||
|
||||
// Create VirtualServer resources
|
||||
_, err = fakeDynamicClient.Resource(f5VirtualServerGVR).Namespace(defaultF5VirtualServerNamespace).Create(context.Background(), &virtualServer, metav1.CreateOptions{})
|
||||
_, err = fakeDynamicClient.Resource(f5VirtualServerGVR).Namespace(defaultF5VirtualServerNamespace).Create(t.Context(), &virtualServer, metav1.CreateOptions{})
|
||||
assert.NoError(t, err)
|
||||
|
||||
source, err := NewF5VirtualServerSource(context.TODO(), fakeDynamicClient, fakeKubernetesClient, defaultF5VirtualServerNamespace, tc.annotationFilter)
|
||||
source, err := NewF5VirtualServerSource(t.Context(), fakeDynamicClient, fakeKubernetesClient, defaultF5VirtualServerNamespace, tc.annotationFilter)
|
||||
require.NoError(t, err)
|
||||
assert.NotNil(t, source)
|
||||
|
||||
count := &unstructured.UnstructuredList{}
|
||||
for len(count.Items) < 1 {
|
||||
count, _ = fakeDynamicClient.Resource(f5VirtualServerGVR).Namespace(defaultF5VirtualServerNamespace).List(context.Background(), metav1.ListOptions{})
|
||||
count, _ = fakeDynamicClient.Resource(f5VirtualServerGVR).Namespace(defaultF5VirtualServerNamespace).List(t.Context(), metav1.ListOptions{})
|
||||
}
|
||||
|
||||
endpoints, err := source.Endpoints(context.Background())
|
||||
endpoints, err := source.Endpoints(t.Context())
|
||||
require.NoError(t, err)
|
||||
assert.Len(t, endpoints, len(tc.expected))
|
||||
validateEndpoints(t, endpoints, tc.expected)
|
||||
|
||||
@ -17,7 +17,6 @@ limitations under the License.
|
||||
package source
|
||||
|
||||
import (
|
||||
"context"
|
||||
"encoding/json"
|
||||
"fmt"
|
||||
"testing"
|
||||
@ -31,6 +30,7 @@ import (
|
||||
"k8s.io/apimachinery/pkg/runtime/schema"
|
||||
fakeDynamic "k8s.io/client-go/dynamic/fake"
|
||||
fakeKube "k8s.io/client-go/kubernetes/fake"
|
||||
|
||||
"sigs.k8s.io/external-dns/endpoint"
|
||||
)
|
||||
|
||||
@ -536,49 +536,49 @@ func TestGlooSource(t *testing.T) {
|
||||
assert.NoError(t, proxyMetadataStaticSourceUnstructured.UnmarshalJSON(proxyMetadataStaticSvcAsJSON))
|
||||
assert.NoError(t, targetAnnotatedProxySourceUnstructured.UnmarshalJSON(targetAnnotatedProxySvcAsJSON))
|
||||
|
||||
_, err = fakeKubernetesClient.CoreV1().Services(internalProxySvc.GetNamespace()).Create(context.Background(), &internalProxySvc, metav1.CreateOptions{})
|
||||
_, err = fakeKubernetesClient.CoreV1().Services(internalProxySvc.GetNamespace()).Create(t.Context(), &internalProxySvc, metav1.CreateOptions{})
|
||||
assert.NoError(t, err)
|
||||
_, err = fakeKubernetesClient.CoreV1().Services(externalProxySvc.GetNamespace()).Create(context.Background(), &externalProxySvc, metav1.CreateOptions{})
|
||||
_, err = fakeKubernetesClient.CoreV1().Services(externalProxySvc.GetNamespace()).Create(t.Context(), &externalProxySvc, metav1.CreateOptions{})
|
||||
assert.NoError(t, err)
|
||||
_, err = fakeKubernetesClient.CoreV1().Services(proxyWithMetadataStaticSvc.GetNamespace()).Create(context.Background(), &proxyWithMetadataStaticSvc, metav1.CreateOptions{})
|
||||
_, err = fakeKubernetesClient.CoreV1().Services(proxyWithMetadataStaticSvc.GetNamespace()).Create(t.Context(), &proxyWithMetadataStaticSvc, metav1.CreateOptions{})
|
||||
assert.NoError(t, err)
|
||||
_, err = fakeKubernetesClient.CoreV1().Services(targetAnnotatedProxySvc.GetNamespace()).Create(context.Background(), &targetAnnotatedProxySvc, metav1.CreateOptions{})
|
||||
_, err = fakeKubernetesClient.CoreV1().Services(targetAnnotatedProxySvc.GetNamespace()).Create(t.Context(), &targetAnnotatedProxySvc, metav1.CreateOptions{})
|
||||
assert.NoError(t, err)
|
||||
|
||||
_, err = fakeKubernetesClient.NetworkingV1().Ingresses(gatewayIngressAnnotatedProxyIngress.GetNamespace()).Create(context.Background(), &gatewayIngressAnnotatedProxyIngress, metav1.CreateOptions{})
|
||||
_, err = fakeKubernetesClient.NetworkingV1().Ingresses(gatewayIngressAnnotatedProxyIngress.GetNamespace()).Create(t.Context(), &gatewayIngressAnnotatedProxyIngress, metav1.CreateOptions{})
|
||||
assert.NoError(t, err)
|
||||
|
||||
// Create proxy resources
|
||||
_, err = fakeDynamicClient.Resource(proxyGVR).Namespace(defaultGlooNamespace).Create(context.Background(), &internalProxyUnstructured, metav1.CreateOptions{})
|
||||
_, err = fakeDynamicClient.Resource(proxyGVR).Namespace(defaultGlooNamespace).Create(t.Context(), &internalProxyUnstructured, metav1.CreateOptions{})
|
||||
assert.NoError(t, err)
|
||||
_, err = fakeDynamicClient.Resource(proxyGVR).Namespace(defaultGlooNamespace).Create(context.Background(), &externalProxyUnstructured, metav1.CreateOptions{})
|
||||
_, err = fakeDynamicClient.Resource(proxyGVR).Namespace(defaultGlooNamespace).Create(t.Context(), &externalProxyUnstructured, metav1.CreateOptions{})
|
||||
assert.NoError(t, err)
|
||||
_, err = fakeDynamicClient.Resource(proxyGVR).Namespace(defaultGlooNamespace).Create(context.Background(), &proxyMetadataStaticUnstructured, metav1.CreateOptions{})
|
||||
_, err = fakeDynamicClient.Resource(proxyGVR).Namespace(defaultGlooNamespace).Create(t.Context(), &proxyMetadataStaticUnstructured, metav1.CreateOptions{})
|
||||
assert.NoError(t, err)
|
||||
_, err = fakeDynamicClient.Resource(proxyGVR).Namespace(defaultGlooNamespace).Create(context.Background(), &targetAnnotatedProxyUnstructured, metav1.CreateOptions{})
|
||||
_, err = fakeDynamicClient.Resource(proxyGVR).Namespace(defaultGlooNamespace).Create(t.Context(), &targetAnnotatedProxyUnstructured, metav1.CreateOptions{})
|
||||
assert.NoError(t, err)
|
||||
_, err = fakeDynamicClient.Resource(proxyGVR).Namespace(defaultGlooNamespace).Create(context.Background(), &gatewayIngressAnnotatedProxyUnstructured, metav1.CreateOptions{})
|
||||
_, err = fakeDynamicClient.Resource(proxyGVR).Namespace(defaultGlooNamespace).Create(t.Context(), &gatewayIngressAnnotatedProxyUnstructured, metav1.CreateOptions{})
|
||||
assert.NoError(t, err)
|
||||
|
||||
// Create proxy source
|
||||
_, err = fakeDynamicClient.Resource(virtualServiceGVR).Namespace(internalProxySource.Namespace).Create(context.Background(), &internalProxySourceUnstructured, metav1.CreateOptions{})
|
||||
_, err = fakeDynamicClient.Resource(virtualServiceGVR).Namespace(internalProxySource.Namespace).Create(t.Context(), &internalProxySourceUnstructured, metav1.CreateOptions{})
|
||||
assert.NoError(t, err)
|
||||
_, err = fakeDynamicClient.Resource(virtualServiceGVR).Namespace(externalProxySource.Namespace).Create(context.Background(), &externalProxySourceUnstructured, metav1.CreateOptions{})
|
||||
_, err = fakeDynamicClient.Resource(virtualServiceGVR).Namespace(externalProxySource.Namespace).Create(t.Context(), &externalProxySourceUnstructured, metav1.CreateOptions{})
|
||||
assert.NoError(t, err)
|
||||
_, err = fakeDynamicClient.Resource(virtualServiceGVR).Namespace(proxyWithMetadataStaticSource.Namespace).Create(context.Background(), &proxyMetadataStaticSourceUnstructured, metav1.CreateOptions{})
|
||||
_, err = fakeDynamicClient.Resource(virtualServiceGVR).Namespace(proxyWithMetadataStaticSource.Namespace).Create(t.Context(), &proxyMetadataStaticSourceUnstructured, metav1.CreateOptions{})
|
||||
assert.NoError(t, err)
|
||||
_, err = fakeDynamicClient.Resource(virtualServiceGVR).Namespace(targetAnnotatedProxySource.Namespace).Create(context.Background(), &targetAnnotatedProxySourceUnstructured, metav1.CreateOptions{})
|
||||
_, err = fakeDynamicClient.Resource(virtualServiceGVR).Namespace(targetAnnotatedProxySource.Namespace).Create(t.Context(), &targetAnnotatedProxySourceUnstructured, metav1.CreateOptions{})
|
||||
assert.NoError(t, err)
|
||||
|
||||
// Create gateway resource
|
||||
_, err = fakeDynamicClient.Resource(gatewayGVR).Namespace(gatewayIngressAnnotatedProxyGateway.Namespace).Create(context.Background(), &gatewayIngressAnnotatedProxyGatewayUnstructured, metav1.CreateOptions{})
|
||||
_, err = fakeDynamicClient.Resource(gatewayGVR).Namespace(gatewayIngressAnnotatedProxyGateway.Namespace).Create(t.Context(), &gatewayIngressAnnotatedProxyGatewayUnstructured, metav1.CreateOptions{})
|
||||
assert.NoError(t, err)
|
||||
|
||||
source, err := NewGlooSource(context.TODO(), fakeDynamicClient, fakeKubernetesClient, []string{defaultGlooNamespace})
|
||||
source, err := NewGlooSource(t.Context(), fakeDynamicClient, fakeKubernetesClient, []string{defaultGlooNamespace})
|
||||
assert.NoError(t, err)
|
||||
assert.NotNil(t, source)
|
||||
|
||||
endpoints, err := source.Endpoints(context.Background())
|
||||
endpoints, err := source.Endpoints(t.Context())
|
||||
assert.NoError(t, err)
|
||||
assert.Len(t, endpoints, 11)
|
||||
|
||||
|
||||
@ -17,7 +17,6 @@ limitations under the License.
|
||||
package informers
|
||||
|
||||
import (
|
||||
"context"
|
||||
"reflect"
|
||||
"testing"
|
||||
|
||||
@ -68,7 +67,7 @@ func TestWaitForCacheSync(t *testing.T) {
|
||||
|
||||
for _, tt := range tests {
|
||||
t.Run(tt.name, func(t *testing.T) {
|
||||
ctx := context.Background()
|
||||
ctx := t.Context()
|
||||
|
||||
factory := &mockInformerFactory{syncResults: tt.syncResults}
|
||||
err := WaitForCacheSync(ctx, factory)
|
||||
@ -110,7 +109,7 @@ func TestWaitForDynamicCacheSync(t *testing.T) {
|
||||
|
||||
for _, tt := range tests {
|
||||
t.Run(tt.name, func(t *testing.T) {
|
||||
ctx := context.Background()
|
||||
ctx := t.Context()
|
||||
|
||||
factory := &mockDynamicInformerFactory{syncResults: tt.syncResults}
|
||||
err := WaitForDynamicCacheSync(ctx, factory)
|
||||
|
||||
@ -27,6 +27,7 @@ import (
|
||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
"k8s.io/apimachinery/pkg/labels"
|
||||
"k8s.io/client-go/kubernetes/fake"
|
||||
|
||||
"sigs.k8s.io/external-dns/internal/testutils"
|
||||
|
||||
"sigs.k8s.io/external-dns/endpoint"
|
||||
@ -1417,7 +1418,7 @@ func testIngressEndpoints(t *testing.T) {
|
||||
}
|
||||
|
||||
source, _ := NewIngressSource(
|
||||
context.TODO(),
|
||||
t.Context(),
|
||||
fakeClient,
|
||||
ti.targetNamespace,
|
||||
ti.annotationFilter,
|
||||
|
||||
@ -34,6 +34,7 @@ import (
|
||||
"k8s.io/apimachinery/pkg/types"
|
||||
"k8s.io/apimachinery/pkg/util/intstr"
|
||||
"k8s.io/client-go/kubernetes/fake"
|
||||
|
||||
"sigs.k8s.io/external-dns/internal/testutils"
|
||||
"sigs.k8s.io/external-dns/source/annotations"
|
||||
|
||||
@ -170,7 +171,7 @@ func TestNewIstioGatewaySource(t *testing.T) {
|
||||
t.Parallel()
|
||||
|
||||
_, err := NewIstioGatewaySource(
|
||||
context.TODO(),
|
||||
t.Context(),
|
||||
fake.NewClientset(),
|
||||
istiofake.NewSimpleClientset(),
|
||||
"",
|
||||
@ -1484,7 +1485,7 @@ func testGatewayEndpoints(t *testing.T) {
|
||||
|
||||
for _, lb := range ti.lbServices {
|
||||
service := lb.Service()
|
||||
_, err := fakeKubernetesClient.CoreV1().Services(service.Namespace).Create(context.Background(), service, metav1.CreateOptions{})
|
||||
_, err := fakeKubernetesClient.CoreV1().Services(service.Namespace).Create(t.Context(), service, metav1.CreateOptions{})
|
||||
require.NoError(t, err)
|
||||
}
|
||||
|
||||
@ -1493,19 +1494,19 @@ func testGatewayEndpoints(t *testing.T) {
|
||||
if ingress.Namespace != targetNamespace {
|
||||
targetNamespace = v1.NamespaceAll
|
||||
}
|
||||
_, err := fakeKubernetesClient.NetworkingV1().Ingresses(ingress.Namespace).Create(context.Background(), ingress, metav1.CreateOptions{})
|
||||
_, err := fakeKubernetesClient.NetworkingV1().Ingresses(ingress.Namespace).Create(t.Context(), ingress, metav1.CreateOptions{})
|
||||
require.NoError(t, err)
|
||||
}
|
||||
|
||||
fakeIstioClient := istiofake.NewSimpleClientset()
|
||||
for _, config := range ti.configItems {
|
||||
gatewayCfg := config.Config()
|
||||
_, err := fakeIstioClient.NetworkingV1beta1().Gateways(ti.targetNamespace).Create(context.Background(), gatewayCfg, metav1.CreateOptions{})
|
||||
_, err := fakeIstioClient.NetworkingV1beta1().Gateways(ti.targetNamespace).Create(t.Context(), gatewayCfg, metav1.CreateOptions{})
|
||||
require.NoError(t, err)
|
||||
}
|
||||
|
||||
gatewaySource, err := NewIstioGatewaySource(
|
||||
context.TODO(),
|
||||
t.Context(),
|
||||
fakeKubernetesClient,
|
||||
fakeIstioClient,
|
||||
targetNamespace,
|
||||
@ -1516,7 +1517,7 @@ func testGatewayEndpoints(t *testing.T) {
|
||||
)
|
||||
require.NoError(t, err)
|
||||
|
||||
res, err := gatewaySource.Endpoints(context.Background())
|
||||
res, err := gatewaySource.Endpoints(t.Context())
|
||||
if ti.expectError {
|
||||
assert.Error(t, err)
|
||||
} else {
|
||||
@ -1614,7 +1615,7 @@ func TestGatewaySource_GWSelectorMatchServiceSelector(t *testing.T) {
|
||||
},
|
||||
}
|
||||
|
||||
_, err = fakeIstioClient.NetworkingV1beta1().Gateways(gw.Namespace).Create(context.Background(), gw, metav1.CreateOptions{})
|
||||
_, err = fakeIstioClient.NetworkingV1beta1().Gateways(gw.Namespace).Create(t.Context(), gw, metav1.CreateOptions{})
|
||||
require.NoError(t, err)
|
||||
|
||||
src, err := NewIstioGatewaySource(
|
||||
@ -1699,7 +1700,7 @@ func TestTransformerInIstioGatewaySource(t *testing.T) {
|
||||
|
||||
fakeClient := fake.NewClientset()
|
||||
|
||||
_, err := fakeClient.CoreV1().Services(svc.Namespace).Create(context.Background(), svc, metav1.CreateOptions{})
|
||||
_, err := fakeClient.CoreV1().Services(svc.Namespace).Create(t.Context(), svc, metav1.CreateOptions{})
|
||||
require.NoError(t, err)
|
||||
|
||||
src, err := NewIstioGatewaySource(
|
||||
|
||||
@ -192,7 +192,7 @@ func TestNewIstioVirtualServiceSource(t *testing.T) {
|
||||
t.Parallel()
|
||||
|
||||
_, err := NewIstioVirtualServiceSource(
|
||||
context.TODO(),
|
||||
t.Context(),
|
||||
fake.NewClientset(),
|
||||
istiofake.NewSimpleClientset(),
|
||||
"",
|
||||
@ -716,7 +716,7 @@ func testEndpointsFromVirtualServiceConfig(t *testing.T) {
|
||||
|
||||
if source, err := newTestVirtualServiceSource(ti.lbServices, ti.ingresses, []fakeGatewayConfig{ti.gwconfig}); err != nil {
|
||||
require.NoError(t, err)
|
||||
} else if endpoints, err := source.endpointsFromVirtualService(context.Background(), ti.vsconfig.Config()); err != nil {
|
||||
} else if endpoints, err := source.endpointsFromVirtualService(t.Context(), ti.vsconfig.Config()); err != nil {
|
||||
require.NoError(t, err)
|
||||
} else {
|
||||
validateEndpoints(t, endpoints, ti.expected)
|
||||
@ -1966,30 +1966,30 @@ func testVirtualServiceEndpoints(t *testing.T) {
|
||||
|
||||
for _, lb := range ti.lbServices {
|
||||
service := lb.Service()
|
||||
_, err := fakeKubernetesClient.CoreV1().Services(service.Namespace).Create(context.Background(), service, metav1.CreateOptions{})
|
||||
_, err := fakeKubernetesClient.CoreV1().Services(service.Namespace).Create(t.Context(), service, metav1.CreateOptions{})
|
||||
require.NoError(t, err)
|
||||
}
|
||||
|
||||
for _, ing := range ti.ingresses {
|
||||
ingress := ing.Ingress()
|
||||
_, err := fakeKubernetesClient.NetworkingV1().Ingresses(ingress.Namespace).Create(context.Background(), ingress, metav1.CreateOptions{})
|
||||
_, err := fakeKubernetesClient.NetworkingV1().Ingresses(ingress.Namespace).Create(t.Context(), ingress, metav1.CreateOptions{})
|
||||
require.NoError(t, err)
|
||||
}
|
||||
|
||||
fakeIstioClient := istiofake.NewSimpleClientset()
|
||||
|
||||
for _, gateway := range gateways {
|
||||
_, err := fakeIstioClient.NetworkingV1beta1().Gateways(gateway.Namespace).Create(context.Background(), gateway, metav1.CreateOptions{})
|
||||
_, err := fakeIstioClient.NetworkingV1beta1().Gateways(gateway.Namespace).Create(t.Context(), gateway, metav1.CreateOptions{})
|
||||
require.NoError(t, err)
|
||||
}
|
||||
|
||||
for _, vService := range virtualservices {
|
||||
_, err := fakeIstioClient.NetworkingV1beta1().VirtualServices(vService.Namespace).Create(context.Background(), vService, metav1.CreateOptions{})
|
||||
_, err := fakeIstioClient.NetworkingV1beta1().VirtualServices(vService.Namespace).Create(t.Context(), vService, metav1.CreateOptions{})
|
||||
require.NoError(t, err)
|
||||
}
|
||||
|
||||
virtualServiceSource, err := NewIstioVirtualServiceSource(
|
||||
context.TODO(),
|
||||
t.Context(),
|
||||
fakeKubernetesClient,
|
||||
fakeIstioClient,
|
||||
ti.targetNamespace,
|
||||
@ -2000,7 +2000,7 @@ func testVirtualServiceEndpoints(t *testing.T) {
|
||||
)
|
||||
require.NoError(t, err)
|
||||
|
||||
res, err := virtualServiceSource.Endpoints(context.Background())
|
||||
res, err := virtualServiceSource.Endpoints(t.Context())
|
||||
if ti.expectError {
|
||||
assert.Error(t, err)
|
||||
} else {
|
||||
@ -2143,21 +2143,21 @@ func TestVirtualServiceSourceGetGateway(t *testing.T) {
|
||||
{name: "EmptyGateway", fields: fields{
|
||||
virtualServiceSource: func() *virtualServiceSource { vs, _ := newTestVirtualServiceSource(nil, nil, nil); return vs }(),
|
||||
}, args: args{
|
||||
ctx: context.TODO(),
|
||||
ctx: t.Context(),
|
||||
gatewayStr: "",
|
||||
virtualService: nil,
|
||||
}, want: nil, expectedErrStr: ""},
|
||||
{name: "MeshGateway", fields: fields{
|
||||
virtualServiceSource: func() *virtualServiceSource { vs, _ := newTestVirtualServiceSource(nil, nil, nil); return vs }(),
|
||||
}, args: args{
|
||||
ctx: context.TODO(),
|
||||
ctx: t.Context(),
|
||||
gatewayStr: IstioMeshGateway,
|
||||
virtualService: nil,
|
||||
}, want: nil, expectedErrStr: ""},
|
||||
{name: "MissingGateway", fields: fields{
|
||||
virtualServiceSource: func() *virtualServiceSource { vs, _ := newTestVirtualServiceSource(nil, nil, nil); return vs }(),
|
||||
}, args: args{
|
||||
ctx: context.TODO(),
|
||||
ctx: t.Context(),
|
||||
gatewayStr: "doesnt/exist",
|
||||
virtualService: &networkingv1beta1.VirtualService{
|
||||
TypeMeta: metav1.TypeMeta{},
|
||||
@ -2169,7 +2169,7 @@ func TestVirtualServiceSourceGetGateway(t *testing.T) {
|
||||
{name: "InvalidGatewayStr", fields: fields{
|
||||
virtualServiceSource: func() *virtualServiceSource { vs, _ := newTestVirtualServiceSource(nil, nil, nil); return vs }(),
|
||||
}, args: args{
|
||||
ctx: context.TODO(),
|
||||
ctx: t.Context(),
|
||||
gatewayStr: "1/2/3/",
|
||||
virtualService: &networkingv1beta1.VirtualService{},
|
||||
}, want: nil, expectedErrStr: "invalid ingress name (name or namespace/name) found \"1/2/3/\""},
|
||||
@ -2182,7 +2182,7 @@ func TestVirtualServiceSourceGetGateway(t *testing.T) {
|
||||
return vs
|
||||
}(),
|
||||
}, args: args{
|
||||
ctx: context.TODO(),
|
||||
ctx: t.Context(),
|
||||
gatewayStr: "bar/foo",
|
||||
virtualService: &networkingv1beta1.VirtualService{
|
||||
TypeMeta: metav1.TypeMeta{},
|
||||
@ -2285,7 +2285,7 @@ func TestIstioVirtualServiceSource_GWServiceSelectorMatchServiceSelector(t *test
|
||||
},
|
||||
}
|
||||
|
||||
_, err := fakeKubeClient.CoreV1().Services(svc.Namespace).Create(context.Background(), svc, metav1.CreateOptions{})
|
||||
_, err := fakeKubeClient.CoreV1().Services(svc.Namespace).Create(t.Context(), svc, metav1.CreateOptions{})
|
||||
require.NoError(t, err)
|
||||
|
||||
gw := &networkingv1beta1.Gateway{
|
||||
@ -2303,7 +2303,7 @@ func TestIstioVirtualServiceSource_GWServiceSelectorMatchServiceSelector(t *test
|
||||
},
|
||||
}
|
||||
|
||||
_, err = fakeIstioClient.NetworkingV1beta1().Gateways(gw.Namespace).Create(context.Background(), gw, metav1.CreateOptions{})
|
||||
_, err = fakeIstioClient.NetworkingV1beta1().Gateways(gw.Namespace).Create(t.Context(), gw, metav1.CreateOptions{})
|
||||
require.NoError(t, err)
|
||||
|
||||
gwService := &networkingv1beta1.VirtualService{
|
||||
|
||||
@ -17,7 +17,6 @@ limitations under the License.
|
||||
package source
|
||||
|
||||
import (
|
||||
"context"
|
||||
"encoding/json"
|
||||
"testing"
|
||||
|
||||
@ -360,19 +359,19 @@ func TestKongTCPIngressEndpoints(t *testing.T) {
|
||||
assert.NoError(t, tcpi.UnmarshalJSON(tcpIngressAsJSON))
|
||||
|
||||
// Create proxy resources
|
||||
_, err = fakeDynamicClient.Resource(kongGroupdVersionResource).Namespace(defaultKongNamespace).Create(context.Background(), &tcpi, metav1.CreateOptions{})
|
||||
_, err = fakeDynamicClient.Resource(kongGroupdVersionResource).Namespace(defaultKongNamespace).Create(t.Context(), &tcpi, metav1.CreateOptions{})
|
||||
assert.NoError(t, err)
|
||||
|
||||
source, err := NewKongTCPIngressSource(context.TODO(), fakeDynamicClient, fakeKubernetesClient, defaultKongNamespace, "kubernetes.io/ingress.class=kong", ti.ignoreHostnameAnnotation)
|
||||
source, err := NewKongTCPIngressSource(t.Context(), fakeDynamicClient, fakeKubernetesClient, defaultKongNamespace, "kubernetes.io/ingress.class=kong", ti.ignoreHostnameAnnotation)
|
||||
assert.NoError(t, err)
|
||||
assert.NotNil(t, source)
|
||||
|
||||
count := &unstructured.UnstructuredList{}
|
||||
for len(count.Items) < 1 {
|
||||
count, _ = fakeDynamicClient.Resource(kongGroupdVersionResource).Namespace(defaultKongNamespace).List(context.Background(), metav1.ListOptions{})
|
||||
count, _ = fakeDynamicClient.Resource(kongGroupdVersionResource).Namespace(defaultKongNamespace).List(t.Context(), metav1.ListOptions{})
|
||||
}
|
||||
|
||||
endpoints, err := source.Endpoints(context.Background())
|
||||
endpoints, err := source.Endpoints(t.Context())
|
||||
assert.NoError(t, err)
|
||||
validateEndpoints(t, endpoints, ti.expected)
|
||||
})
|
||||
|
||||
@ -17,7 +17,6 @@ limitations under the License.
|
||||
package source
|
||||
|
||||
import (
|
||||
"context"
|
||||
"fmt"
|
||||
"maps"
|
||||
"math/rand"
|
||||
@ -90,7 +89,7 @@ func testNodeSourceNewNodeSource(t *testing.T) {
|
||||
t.Parallel()
|
||||
|
||||
_, err := NewNodeSource(
|
||||
context.TODO(),
|
||||
t.Context(),
|
||||
fake.NewClientset(),
|
||||
ti.annotationFilter,
|
||||
ti.fqdnTemplate,
|
||||
@ -431,12 +430,12 @@ func testNodeSourceEndpoints(t *testing.T) {
|
||||
},
|
||||
}
|
||||
|
||||
_, err := kubeClient.CoreV1().Nodes().Create(context.Background(), node, metav1.CreateOptions{})
|
||||
_, err := kubeClient.CoreV1().Nodes().Create(t.Context(), node, metav1.CreateOptions{})
|
||||
require.NoError(t, err)
|
||||
|
||||
// Create our object under test and get the endpoints.
|
||||
client, err := NewNodeSource(
|
||||
context.TODO(),
|
||||
t.Context(),
|
||||
kubeClient,
|
||||
tc.annotationFilter,
|
||||
tc.fqdnTemplate,
|
||||
@ -447,7 +446,7 @@ func testNodeSourceEndpoints(t *testing.T) {
|
||||
)
|
||||
require.NoError(t, err)
|
||||
|
||||
endpoints, err := client.Endpoints(context.Background())
|
||||
endpoints, err := client.Endpoints(t.Context())
|
||||
if tc.expectError {
|
||||
require.Error(t, err)
|
||||
} else {
|
||||
|
||||
@ -14,7 +14,6 @@ limitations under the License.
|
||||
package source
|
||||
|
||||
import (
|
||||
"context"
|
||||
"testing"
|
||||
|
||||
routev1 "github.com/openshift/api/route/v1"
|
||||
@ -24,6 +23,7 @@ import (
|
||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
"k8s.io/apimachinery/pkg/labels"
|
||||
"k8s.io/apimachinery/pkg/util/intstr"
|
||||
|
||||
"sigs.k8s.io/external-dns/endpoint"
|
||||
"sigs.k8s.io/external-dns/source/annotations"
|
||||
)
|
||||
@ -330,7 +330,7 @@ func TestOpenShiftFqdnTemplatingExamples(t *testing.T) {
|
||||
t.Run(tt.title, func(t *testing.T) {
|
||||
kubeClient := fake.NewClientset()
|
||||
for _, ocp := range tt.ocpRoute {
|
||||
_, err := kubeClient.RouteV1().Routes(ocp.Namespace).Create(context.Background(), ocp, metav1.CreateOptions{})
|
||||
_, err := kubeClient.RouteV1().Routes(ocp.Namespace).Create(t.Context(), ocp, metav1.CreateOptions{})
|
||||
require.NoError(t, err)
|
||||
}
|
||||
|
||||
|
||||
@ -143,7 +143,7 @@ func testOcpRouteSourceNewOcpRouteSource(t *testing.T) {
|
||||
t.Parallel()
|
||||
|
||||
_, err := NewOcpRouteSource(
|
||||
context.TODO(),
|
||||
t.Context(),
|
||||
fake.NewSimpleClientset(),
|
||||
"",
|
||||
ti.annotationFilter,
|
||||
@ -521,14 +521,14 @@ func testOcpRouteSourceEndpoints(t *testing.T) {
|
||||
t.Parallel()
|
||||
// Create a Kubernetes testing client
|
||||
fakeClient := fake.NewSimpleClientset()
|
||||
_, err := fakeClient.RouteV1().Routes(tc.ocpRoute.Namespace).Create(context.Background(), tc.ocpRoute, metav1.CreateOptions{})
|
||||
_, err := fakeClient.RouteV1().Routes(tc.ocpRoute.Namespace).Create(t.Context(), tc.ocpRoute, metav1.CreateOptions{})
|
||||
require.NoError(t, err)
|
||||
|
||||
labelSelector, err := labels.Parse(tc.labelFilter)
|
||||
require.NoError(t, err)
|
||||
|
||||
source, err := NewOcpRouteSource(
|
||||
context.TODO(),
|
||||
t.Context(),
|
||||
fakeClient,
|
||||
"",
|
||||
"",
|
||||
@ -540,7 +540,7 @@ func testOcpRouteSourceEndpoints(t *testing.T) {
|
||||
)
|
||||
require.NoError(t, err)
|
||||
|
||||
res, err := source.Endpoints(context.Background())
|
||||
res, err := source.Endpoints(t.Context())
|
||||
if tc.expectError {
|
||||
require.Error(t, err)
|
||||
} else {
|
||||
|
||||
@ -17,7 +17,6 @@ limitations under the License.
|
||||
package source
|
||||
|
||||
import (
|
||||
"context"
|
||||
"fmt"
|
||||
"math/rand"
|
||||
"testing"
|
||||
@ -934,7 +933,7 @@ func TestPodSourceLogs(t *testing.T) {
|
||||
} {
|
||||
t.Run(tc.title, func(t *testing.T) {
|
||||
kubernetes := fake.NewClientset()
|
||||
ctx := context.Background()
|
||||
ctx := t.Context()
|
||||
// Create the nodes
|
||||
for _, node := range tc.nodes {
|
||||
if _, err := kubernetes.CoreV1().Nodes().Create(ctx, node, metav1.CreateOptions{}); err != nil {
|
||||
@ -1102,7 +1101,7 @@ func TestPodTransformerInPodSource(t *testing.T) {
|
||||
},
|
||||
}
|
||||
|
||||
_, err := fakeClient.CoreV1().Pods(pod.Namespace).Create(context.Background(), pod, metav1.CreateOptions{})
|
||||
_, err := fakeClient.CoreV1().Pods(pod.Namespace).Create(t.Context(), pod, metav1.CreateOptions{})
|
||||
require.NoError(t, err)
|
||||
|
||||
// Should not error when creating the source
|
||||
@ -1183,7 +1182,7 @@ func TestPodTransformerInPodSource(t *testing.T) {
|
||||
},
|
||||
}
|
||||
|
||||
_, err := fakeClient.CoreV1().Pods(pod.Namespace).Create(context.Background(), pod, metav1.CreateOptions{})
|
||||
_, err := fakeClient.CoreV1().Pods(pod.Namespace).Create(t.Context(), pod, metav1.CreateOptions{})
|
||||
require.NoError(t, err)
|
||||
|
||||
// Should not error when creating the source
|
||||
|
||||
@ -160,7 +160,7 @@ func testServiceSourceNewServiceSource(t *testing.T) {
|
||||
t.Parallel()
|
||||
|
||||
_, err := NewServiceSource(
|
||||
context.TODO(),
|
||||
t.Context(),
|
||||
fake.NewClientset(),
|
||||
"",
|
||||
ti.annotationFilter,
|
||||
@ -190,9 +190,9 @@ func testServiceSourceNewServiceSource(t *testing.T) {
|
||||
|
||||
// testServiceSourceEndpoints tests that various services generate the correct endpoints.
|
||||
func testServiceSourceEndpoints(t *testing.T) {
|
||||
exampleDotComIP4, err := net.DefaultResolver.LookupNetIP(context.Background(), "ip4", "example.com")
|
||||
exampleDotComIP4, err := net.DefaultResolver.LookupNetIP(t.Context(), "ip4", "example.com")
|
||||
assert.NoError(t, err)
|
||||
exampleDotComIP6, err := net.DefaultResolver.LookupNetIP(context.Background(), "ip6", "example.com")
|
||||
exampleDotComIP6, err := net.DefaultResolver.LookupNetIP(t.Context(), "ip6", "example.com")
|
||||
assert.NoError(t, err)
|
||||
|
||||
t.Parallel()
|
||||
@ -1132,7 +1132,7 @@ func testServiceSourceEndpoints(t *testing.T) {
|
||||
},
|
||||
}
|
||||
|
||||
_, err := kubernetes.CoreV1().Services(service.Namespace).Create(context.Background(), service, metav1.CreateOptions{})
|
||||
_, err := kubernetes.CoreV1().Services(service.Namespace).Create(t.Context(), service, metav1.CreateOptions{})
|
||||
require.NoError(t, err)
|
||||
|
||||
var sourceLabel labels.Selector
|
||||
@ -1145,7 +1145,7 @@ func testServiceSourceEndpoints(t *testing.T) {
|
||||
|
||||
// Create our object under test and get the endpoints.
|
||||
client, err := NewServiceSource(
|
||||
context.TODO(),
|
||||
t.Context(),
|
||||
kubernetes,
|
||||
tc.targetNamespace,
|
||||
tc.annotationFilter,
|
||||
@ -1166,7 +1166,7 @@ func testServiceSourceEndpoints(t *testing.T) {
|
||||
|
||||
require.NoError(t, err)
|
||||
|
||||
res, err := client.Endpoints(context.Background())
|
||||
res, err := client.Endpoints(t.Context())
|
||||
if tc.expectError {
|
||||
require.Error(t, err)
|
||||
} else {
|
||||
@ -1356,13 +1356,13 @@ func testMultipleServicesEndpoints(t *testing.T) {
|
||||
},
|
||||
}
|
||||
|
||||
_, err := kubernetes.CoreV1().Services(service.Namespace).Create(context.Background(), service, metav1.CreateOptions{})
|
||||
_, err := kubernetes.CoreV1().Services(service.Namespace).Create(t.Context(), service, metav1.CreateOptions{})
|
||||
require.NoError(t, err)
|
||||
}
|
||||
|
||||
// Create our object under test and get the endpoints.
|
||||
client, err := NewServiceSource(
|
||||
context.TODO(),
|
||||
t.Context(),
|
||||
kubernetes,
|
||||
tc.targetNamespace,
|
||||
tc.annotationFilter,
|
||||
@ -1382,7 +1382,7 @@ func testMultipleServicesEndpoints(t *testing.T) {
|
||||
)
|
||||
require.NoError(t, err)
|
||||
|
||||
res, err := client.Endpoints(context.Background())
|
||||
res, err := client.Endpoints(t.Context())
|
||||
if tc.expectError {
|
||||
require.Error(t, err)
|
||||
} else {
|
||||
@ -1656,7 +1656,7 @@ func TestClusterIpServices(t *testing.T) {
|
||||
},
|
||||
}
|
||||
|
||||
_, err := kubernetes.CoreV1().Services(service.Namespace).Create(context.Background(), service, metav1.CreateOptions{})
|
||||
_, err := kubernetes.CoreV1().Services(service.Namespace).Create(t.Context(), service, metav1.CreateOptions{})
|
||||
require.NoError(t, err)
|
||||
|
||||
var labelSelector labels.Selector
|
||||
@ -1668,7 +1668,7 @@ func TestClusterIpServices(t *testing.T) {
|
||||
}
|
||||
// Create our object under test and get the endpoints.
|
||||
client, _ := NewServiceSource(
|
||||
context.TODO(),
|
||||
t.Context(),
|
||||
kubernetes,
|
||||
tc.targetNamespace,
|
||||
tc.annotationFilter,
|
||||
@ -1688,7 +1688,7 @@ func TestClusterIpServices(t *testing.T) {
|
||||
)
|
||||
require.NoError(t, err)
|
||||
|
||||
endpoints, err := client.Endpoints(context.Background())
|
||||
endpoints, err := client.Endpoints(t.Context())
|
||||
if tc.expectError {
|
||||
require.Error(t, err)
|
||||
} else {
|
||||
@ -2442,7 +2442,7 @@ func TestServiceSourceNodePortServices(t *testing.T) {
|
||||
|
||||
// Create the nodes
|
||||
for _, node := range tc.nodes {
|
||||
if _, err := kubernetes.CoreV1().Nodes().Create(context.Background(), node, metav1.CreateOptions{}); err != nil {
|
||||
if _, err := kubernetes.CoreV1().Nodes().Create(t.Context(), node, metav1.CreateOptions{}); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
}
|
||||
@ -2468,7 +2468,7 @@ func TestServiceSourceNodePortServices(t *testing.T) {
|
||||
},
|
||||
}
|
||||
|
||||
_, err := kubernetes.CoreV1().Pods(tc.svcNamespace).Create(context.Background(), pod, metav1.CreateOptions{})
|
||||
_, err := kubernetes.CoreV1().Pods(tc.svcNamespace).Create(t.Context(), pod, metav1.CreateOptions{})
|
||||
require.NoError(t, err)
|
||||
}
|
||||
|
||||
@ -2491,12 +2491,12 @@ func TestServiceSourceNodePortServices(t *testing.T) {
|
||||
},
|
||||
}
|
||||
|
||||
_, err := kubernetes.CoreV1().Services(service.Namespace).Create(context.Background(), service, metav1.CreateOptions{})
|
||||
_, err := kubernetes.CoreV1().Services(service.Namespace).Create(t.Context(), service, metav1.CreateOptions{})
|
||||
require.NoError(t, err)
|
||||
|
||||
// Create our object under test and get the endpoints.
|
||||
client, _ := NewServiceSource(
|
||||
context.TODO(),
|
||||
t.Context(),
|
||||
kubernetes,
|
||||
tc.targetNamespace,
|
||||
tc.annotationFilter,
|
||||
@ -2516,7 +2516,7 @@ func TestServiceSourceNodePortServices(t *testing.T) {
|
||||
)
|
||||
require.NoError(t, err)
|
||||
|
||||
endpoints, err := client.Endpoints(context.Background())
|
||||
endpoints, err := client.Endpoints(t.Context())
|
||||
if tc.expectError {
|
||||
require.Error(t, err)
|
||||
} else {
|
||||
@ -3347,7 +3347,7 @@ func TestHeadlessServices(t *testing.T) {
|
||||
},
|
||||
Status: v1.ServiceStatus{},
|
||||
}
|
||||
_, err := kubernetes.CoreV1().Services(service.Namespace).Create(context.Background(), service, metav1.CreateOptions{})
|
||||
_, err := kubernetes.CoreV1().Services(service.Namespace).Create(t.Context(), service, metav1.CreateOptions{})
|
||||
require.NoError(t, err)
|
||||
|
||||
var endpointSliceEndpoints []discoveryv1.Endpoint
|
||||
@ -3369,7 +3369,7 @@ func TestHeadlessServices(t *testing.T) {
|
||||
},
|
||||
}
|
||||
|
||||
_, err = kubernetes.CoreV1().Pods(tc.svcNamespace).Create(context.Background(), pod, metav1.CreateOptions{})
|
||||
_, err = kubernetes.CoreV1().Pods(tc.svcNamespace).Create(t.Context(), pod, metav1.CreateOptions{})
|
||||
require.NoError(t, err)
|
||||
|
||||
ep := discoveryv1.Endpoint{
|
||||
@ -3396,16 +3396,16 @@ func TestHeadlessServices(t *testing.T) {
|
||||
AddressType: discoveryv1.AddressTypeIPv4,
|
||||
Endpoints: endpointSliceEndpoints,
|
||||
}
|
||||
_, err = kubernetes.DiscoveryV1().EndpointSlices(tc.svcNamespace).Create(context.Background(), endpointSlice, metav1.CreateOptions{})
|
||||
_, err = kubernetes.DiscoveryV1().EndpointSlices(tc.svcNamespace).Create(t.Context(), endpointSlice, metav1.CreateOptions{})
|
||||
require.NoError(t, err)
|
||||
for _, node := range tc.nodes {
|
||||
_, err = kubernetes.CoreV1().Nodes().Create(context.Background(), &node, metav1.CreateOptions{})
|
||||
_, err = kubernetes.CoreV1().Nodes().Create(t.Context(), &node, metav1.CreateOptions{})
|
||||
require.NoError(t, err)
|
||||
}
|
||||
|
||||
// Create our object under test and get the endpoints.
|
||||
client, _ := NewServiceSource(
|
||||
context.TODO(),
|
||||
t.Context(),
|
||||
kubernetes,
|
||||
tc.targetNamespace,
|
||||
"",
|
||||
@ -3425,7 +3425,7 @@ func TestHeadlessServices(t *testing.T) {
|
||||
)
|
||||
require.NoError(t, err)
|
||||
|
||||
endpoints, err := client.Endpoints(context.Background())
|
||||
endpoints, err := client.Endpoints(t.Context())
|
||||
if tc.expectError {
|
||||
require.Error(t, err)
|
||||
} else {
|
||||
@ -3894,17 +3894,17 @@ func TestMultipleHeadlessServicesPointingToPodsOnTheSameNode(t *testing.T) {
|
||||
}
|
||||
|
||||
for _, svc := range headless {
|
||||
_, err := kubernetes.CoreV1().Services(svc.Namespace).Create(context.Background(), svc, metav1.CreateOptions{})
|
||||
_, err := kubernetes.CoreV1().Services(svc.Namespace).Create(t.Context(), svc, metav1.CreateOptions{})
|
||||
require.NoError(t, err)
|
||||
}
|
||||
|
||||
for _, pod := range pods {
|
||||
_, err := kubernetes.CoreV1().Pods(pod.Namespace).Create(context.Background(), pod, metav1.CreateOptions{})
|
||||
_, err := kubernetes.CoreV1().Pods(pod.Namespace).Create(t.Context(), pod, metav1.CreateOptions{})
|
||||
require.NoError(t, err)
|
||||
}
|
||||
|
||||
for _, ep := range endpoints {
|
||||
_, err := kubernetes.DiscoveryV1().EndpointSlices(ep.Namespace).Create(context.Background(), ep, metav1.CreateOptions{})
|
||||
_, err := kubernetes.DiscoveryV1().EndpointSlices(ep.Namespace).Create(t.Context(), ep, metav1.CreateOptions{})
|
||||
require.NoError(t, err)
|
||||
}
|
||||
|
||||
@ -3930,7 +3930,7 @@ func TestMultipleHeadlessServicesPointingToPodsOnTheSameNode(t *testing.T) {
|
||||
require.NoError(t, err)
|
||||
assert.NotNil(t, src)
|
||||
|
||||
got, err := src.Endpoints(context.Background())
|
||||
got, err := src.Endpoints(t.Context())
|
||||
require.NoError(t, err)
|
||||
|
||||
want := []*endpoint.Endpoint{
|
||||
@ -4319,7 +4319,7 @@ func TestHeadlessServicesHostIP(t *testing.T) {
|
||||
},
|
||||
Status: v1.ServiceStatus{},
|
||||
}
|
||||
_, err := kubernetes.CoreV1().Services(service.Namespace).Create(context.Background(), service, metav1.CreateOptions{})
|
||||
_, err := kubernetes.CoreV1().Services(service.Namespace).Create(t.Context(), service, metav1.CreateOptions{})
|
||||
require.NoError(t, err)
|
||||
|
||||
var endpointsSlicesEndpoints []discoveryv1.Endpoint
|
||||
@ -4340,7 +4340,7 @@ func TestHeadlessServicesHostIP(t *testing.T) {
|
||||
},
|
||||
}
|
||||
|
||||
_, err = kubernetes.CoreV1().Pods(tc.svcNamespace).Create(context.Background(), pod, metav1.CreateOptions{})
|
||||
_, err = kubernetes.CoreV1().Pods(tc.svcNamespace).Create(t.Context(), pod, metav1.CreateOptions{})
|
||||
require.NoError(t, err)
|
||||
|
||||
ep := discoveryv1.Endpoint{
|
||||
@ -4363,12 +4363,12 @@ func TestHeadlessServicesHostIP(t *testing.T) {
|
||||
AddressType: discoveryv1.AddressTypeIPv4,
|
||||
Endpoints: endpointsSlicesEndpoints,
|
||||
}
|
||||
_, err = kubernetes.DiscoveryV1().EndpointSlices(tc.svcNamespace).Create(context.Background(), endpointSlice, metav1.CreateOptions{})
|
||||
_, err = kubernetes.DiscoveryV1().EndpointSlices(tc.svcNamespace).Create(t.Context(), endpointSlice, metav1.CreateOptions{})
|
||||
require.NoError(t, err)
|
||||
|
||||
// Create our object under test and get the endpoints.
|
||||
client, _ := NewServiceSource(
|
||||
context.TODO(),
|
||||
t.Context(),
|
||||
kubernetes,
|
||||
tc.targetNamespace,
|
||||
"",
|
||||
@ -4388,7 +4388,7 @@ func TestHeadlessServicesHostIP(t *testing.T) {
|
||||
)
|
||||
require.NoError(t, err)
|
||||
|
||||
endpoints, err := client.Endpoints(context.Background())
|
||||
endpoints, err := client.Endpoints(t.Context())
|
||||
if tc.expectError {
|
||||
require.Error(t, err)
|
||||
} else {
|
||||
@ -4574,12 +4574,12 @@ func TestExternalServices(t *testing.T) {
|
||||
},
|
||||
Status: v1.ServiceStatus{},
|
||||
}
|
||||
_, err := kubernetes.CoreV1().Services(service.Namespace).Create(context.Background(), service, metav1.CreateOptions{})
|
||||
_, err := kubernetes.CoreV1().Services(service.Namespace).Create(t.Context(), service, metav1.CreateOptions{})
|
||||
require.NoError(t, err)
|
||||
|
||||
// Create our object under test and get the endpoints.
|
||||
client, _ := NewServiceSource(
|
||||
context.TODO(),
|
||||
t.Context(),
|
||||
kubernetes,
|
||||
tc.targetNamespace,
|
||||
"",
|
||||
@ -4599,7 +4599,7 @@ func TestExternalServices(t *testing.T) {
|
||||
)
|
||||
require.NoError(t, err)
|
||||
|
||||
endpoints, err := client.Endpoints(context.Background())
|
||||
endpoints, err := client.Endpoints(t.Context())
|
||||
if tc.expectError {
|
||||
require.Error(t, err)
|
||||
} else {
|
||||
@ -4638,11 +4638,11 @@ func BenchmarkServiceEndpoints(b *testing.B) {
|
||||
},
|
||||
}
|
||||
|
||||
_, err := kubernetes.CoreV1().Services(service.Namespace).Create(context.Background(), service, metav1.CreateOptions{})
|
||||
_, err := kubernetes.CoreV1().Services(service.Namespace).Create(b.Context(), service, metav1.CreateOptions{})
|
||||
require.NoError(b, err)
|
||||
|
||||
client, err := NewServiceSource(
|
||||
context.TODO(),
|
||||
b.Context(),
|
||||
kubernetes,
|
||||
v1.NamespaceAll,
|
||||
"",
|
||||
@ -4663,7 +4663,7 @@ func BenchmarkServiceEndpoints(b *testing.B) {
|
||||
require.NoError(b, err)
|
||||
|
||||
for b.Loop() {
|
||||
_, err := client.Endpoints(context.Background())
|
||||
_, err := client.Endpoints(b.Context())
|
||||
require.NoError(b, err)
|
||||
}
|
||||
}
|
||||
@ -4774,7 +4774,7 @@ func TestNewServiceSourceWithServiceTypeFilters_Unsupported(t *testing.T) {
|
||||
serviceTypeFilter := []string{"ClusterIP", "ServiceTypeNotExist"}
|
||||
|
||||
svc, err := NewServiceSource(
|
||||
context.TODO(),
|
||||
t.Context(),
|
||||
fake.NewClientset(),
|
||||
"default",
|
||||
"",
|
||||
@ -5035,7 +5035,7 @@ func TestPodTransformerInServiceSource(t *testing.T) {
|
||||
},
|
||||
}
|
||||
|
||||
_, err := fakeClient.CoreV1().Pods(pod.Namespace).Create(context.Background(), pod, metav1.CreateOptions{})
|
||||
_, err := fakeClient.CoreV1().Pods(pod.Namespace).Create(t.Context(), pod, metav1.CreateOptions{})
|
||||
require.NoError(t, err)
|
||||
|
||||
// Should not error when creating the source
|
||||
|
||||
@ -17,11 +17,11 @@ limitations under the License.
|
||||
package source
|
||||
|
||||
import (
|
||||
"context"
|
||||
"errors"
|
||||
"testing"
|
||||
|
||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
|
||||
"sigs.k8s.io/external-dns/endpoint"
|
||||
"sigs.k8s.io/external-dns/source/annotations"
|
||||
"sigs.k8s.io/external-dns/source/fqdn"
|
||||
@ -797,7 +797,7 @@ func TestRouteGroupsEndpoints(t *testing.T) {
|
||||
tt.source.fqdnTemplate = tmpl
|
||||
}
|
||||
|
||||
got, err := tt.source.Endpoints(context.Background())
|
||||
got, err := tt.source.Endpoints(t.Context())
|
||||
if err != nil && !tt.wantErr {
|
||||
t.Errorf("Got error, but does not want to get an error: %v", err)
|
||||
}
|
||||
@ -831,7 +831,7 @@ func TestResourceLabelIsSet(t *testing.T) {
|
||||
},
|
||||
}
|
||||
|
||||
got, _ := source.Endpoints(context.Background())
|
||||
got, _ := source.Endpoints(t.Context())
|
||||
for _, ep := range got {
|
||||
if _, ok := ep.Labels[endpoint.ResourceLabelKey]; !ok {
|
||||
t.Errorf("Failed to set resource label on ep %v", ep)
|
||||
|
||||
@ -37,8 +37,9 @@ import (
|
||||
"k8s.io/client-go/kubernetes"
|
||||
fakeKube "k8s.io/client-go/kubernetes/fake"
|
||||
"k8s.io/client-go/rest"
|
||||
"sigs.k8s.io/external-dns/source/types"
|
||||
gateway "sigs.k8s.io/gateway-api/pkg/client/clientset/versioned"
|
||||
|
||||
"sigs.k8s.io/external-dns/source/types"
|
||||
)
|
||||
|
||||
type MockClientGenerator struct {
|
||||
@ -279,7 +280,7 @@ func (m *minimalMockClientGenerator) OpenShiftClient() (openshift.Interface, err
|
||||
func (m *minimalMockClientGenerator) RESTConfig() (*rest.Config, error) { return nil, errMock }
|
||||
|
||||
func TestBuildWithConfig_InvalidSource(t *testing.T) {
|
||||
ctx := context.Background()
|
||||
ctx := t.Context()
|
||||
p := &minimalMockClientGenerator{}
|
||||
cfg := &Config{LabelFilter: labels.NewSelector()}
|
||||
|
||||
|
||||
@ -17,7 +17,6 @@ limitations under the License.
|
||||
package source
|
||||
|
||||
import (
|
||||
"context"
|
||||
"encoding/json"
|
||||
"fmt"
|
||||
"testing"
|
||||
@ -351,19 +350,19 @@ func TestTraefikProxyIngressRouteEndpoints(t *testing.T) {
|
||||
assert.NoError(t, ir.UnmarshalJSON(ingressRouteAsJSON))
|
||||
|
||||
// Create proxy resources
|
||||
_, err = fakeDynamicClient.Resource(ingressRouteGVR).Namespace(defaultTraefikNamespace).Create(context.Background(), &ir, metav1.CreateOptions{})
|
||||
_, err = fakeDynamicClient.Resource(ingressRouteGVR).Namespace(defaultTraefikNamespace).Create(t.Context(), &ir, metav1.CreateOptions{})
|
||||
assert.NoError(t, err)
|
||||
|
||||
source, err := NewTraefikSource(context.TODO(), fakeDynamicClient, fakeKubernetesClient, defaultTraefikNamespace, "kubernetes.io/ingress.class=traefik", ti.ignoreHostnameAnnotation, false, false)
|
||||
source, err := NewTraefikSource(t.Context(), fakeDynamicClient, fakeKubernetesClient, defaultTraefikNamespace, "kubernetes.io/ingress.class=traefik", ti.ignoreHostnameAnnotation, false, false)
|
||||
assert.NoError(t, err)
|
||||
assert.NotNil(t, source)
|
||||
|
||||
count := &unstructured.UnstructuredList{}
|
||||
for len(count.Items) < 1 {
|
||||
count, _ = fakeDynamicClient.Resource(ingressRouteGVR).Namespace(defaultTraefikNamespace).List(context.Background(), metav1.ListOptions{})
|
||||
count, _ = fakeDynamicClient.Resource(ingressRouteGVR).Namespace(defaultTraefikNamespace).List(t.Context(), metav1.ListOptions{})
|
||||
}
|
||||
|
||||
endpoints, err := source.Endpoints(context.Background())
|
||||
endpoints, err := source.Endpoints(t.Context())
|
||||
assert.NoError(t, err)
|
||||
validateEndpoints(t, endpoints, ti.expected)
|
||||
})
|
||||
@ -643,19 +642,19 @@ func TestTraefikProxyIngressRouteTCPEndpoints(t *testing.T) {
|
||||
require.NoError(t, ir.UnmarshalJSON(ingressRouteAsJSON))
|
||||
|
||||
// Create proxy resources
|
||||
_, err = fakeDynamicClient.Resource(ingressRouteTCPGVR).Namespace(defaultTraefikNamespace).Create(context.Background(), &ir, metav1.CreateOptions{})
|
||||
_, err = fakeDynamicClient.Resource(ingressRouteTCPGVR).Namespace(defaultTraefikNamespace).Create(t.Context(), &ir, metav1.CreateOptions{})
|
||||
require.NoError(t, err)
|
||||
|
||||
source, err := NewTraefikSource(context.TODO(), fakeDynamicClient, fakeKubernetesClient, defaultTraefikNamespace, "kubernetes.io/ingress.class=traefik", ti.ignoreHostnameAnnotation, false, false)
|
||||
source, err := NewTraefikSource(t.Context(), fakeDynamicClient, fakeKubernetesClient, defaultTraefikNamespace, "kubernetes.io/ingress.class=traefik", ti.ignoreHostnameAnnotation, false, false)
|
||||
require.NoError(t, err)
|
||||
assert.NotNil(t, source)
|
||||
|
||||
count := &unstructured.UnstructuredList{}
|
||||
for len(count.Items) < 1 {
|
||||
count, _ = fakeDynamicClient.Resource(ingressRouteTCPGVR).Namespace(defaultTraefikNamespace).List(context.Background(), metav1.ListOptions{})
|
||||
count, _ = fakeDynamicClient.Resource(ingressRouteTCPGVR).Namespace(defaultTraefikNamespace).List(t.Context(), metav1.ListOptions{})
|
||||
}
|
||||
|
||||
endpoints, err := source.Endpoints(context.Background())
|
||||
endpoints, err := source.Endpoints(t.Context())
|
||||
require.NoError(t, err)
|
||||
validateEndpoints(t, endpoints, ti.expected)
|
||||
})
|
||||
@ -783,19 +782,19 @@ func TestTraefikProxyIngressRouteUDPEndpoints(t *testing.T) {
|
||||
assert.NoError(t, ir.UnmarshalJSON(ingressRouteAsJSON))
|
||||
|
||||
// Create proxy resources
|
||||
_, err = fakeDynamicClient.Resource(ingressRouteUDPGVR).Namespace(defaultTraefikNamespace).Create(context.Background(), &ir, metav1.CreateOptions{})
|
||||
_, err = fakeDynamicClient.Resource(ingressRouteUDPGVR).Namespace(defaultTraefikNamespace).Create(t.Context(), &ir, metav1.CreateOptions{})
|
||||
assert.NoError(t, err)
|
||||
|
||||
source, err := NewTraefikSource(context.TODO(), fakeDynamicClient, fakeKubernetesClient, defaultTraefikNamespace, "kubernetes.io/ingress.class=traefik", ti.ignoreHostnameAnnotation, false, false)
|
||||
source, err := NewTraefikSource(t.Context(), fakeDynamicClient, fakeKubernetesClient, defaultTraefikNamespace, "kubernetes.io/ingress.class=traefik", ti.ignoreHostnameAnnotation, false, false)
|
||||
assert.NoError(t, err)
|
||||
assert.NotNil(t, source)
|
||||
|
||||
count := &unstructured.UnstructuredList{}
|
||||
for len(count.Items) < 1 {
|
||||
count, _ = fakeDynamicClient.Resource(ingressRouteUDPGVR).Namespace(defaultTraefikNamespace).List(context.Background(), metav1.ListOptions{})
|
||||
count, _ = fakeDynamicClient.Resource(ingressRouteUDPGVR).Namespace(defaultTraefikNamespace).List(t.Context(), metav1.ListOptions{})
|
||||
}
|
||||
|
||||
endpoints, err := source.Endpoints(context.Background())
|
||||
endpoints, err := source.Endpoints(t.Context())
|
||||
assert.NoError(t, err)
|
||||
validateEndpoints(t, endpoints, ti.expected)
|
||||
})
|
||||
@ -1111,19 +1110,19 @@ func TestTraefikProxyOldIngressRouteEndpoints(t *testing.T) {
|
||||
assert.NoError(t, ir.UnmarshalJSON(ingressRouteAsJSON))
|
||||
|
||||
// Create proxy resources
|
||||
_, err = fakeDynamicClient.Resource(oldIngressRouteGVR).Namespace(defaultTraefikNamespace).Create(context.Background(), &ir, metav1.CreateOptions{})
|
||||
_, err = fakeDynamicClient.Resource(oldIngressRouteGVR).Namespace(defaultTraefikNamespace).Create(t.Context(), &ir, metav1.CreateOptions{})
|
||||
assert.NoError(t, err)
|
||||
|
||||
source, err := NewTraefikSource(context.TODO(), fakeDynamicClient, fakeKubernetesClient, defaultTraefikNamespace, "kubernetes.io/ingress.class=traefik", ti.ignoreHostnameAnnotation, true, false)
|
||||
source, err := NewTraefikSource(t.Context(), fakeDynamicClient, fakeKubernetesClient, defaultTraefikNamespace, "kubernetes.io/ingress.class=traefik", ti.ignoreHostnameAnnotation, true, false)
|
||||
assert.NoError(t, err)
|
||||
assert.NotNil(t, source)
|
||||
|
||||
count := &unstructured.UnstructuredList{}
|
||||
for len(count.Items) < 1 {
|
||||
count, _ = fakeDynamicClient.Resource(oldIngressRouteGVR).Namespace(defaultTraefikNamespace).List(context.Background(), metav1.ListOptions{})
|
||||
count, _ = fakeDynamicClient.Resource(oldIngressRouteGVR).Namespace(defaultTraefikNamespace).List(t.Context(), metav1.ListOptions{})
|
||||
}
|
||||
|
||||
endpoints, err := source.Endpoints(context.Background())
|
||||
endpoints, err := source.Endpoints(t.Context())
|
||||
assert.NoError(t, err)
|
||||
validateEndpoints(t, endpoints, ti.expected)
|
||||
})
|
||||
@ -1403,19 +1402,19 @@ func TestTraefikProxyOldIngressRouteTCPEndpoints(t *testing.T) {
|
||||
assert.NoError(t, ir.UnmarshalJSON(ingressRouteAsJSON))
|
||||
|
||||
// Create proxy resources
|
||||
_, err = fakeDynamicClient.Resource(oldIngressRouteTCPGVR).Namespace(defaultTraefikNamespace).Create(context.Background(), &ir, metav1.CreateOptions{})
|
||||
_, err = fakeDynamicClient.Resource(oldIngressRouteTCPGVR).Namespace(defaultTraefikNamespace).Create(t.Context(), &ir, metav1.CreateOptions{})
|
||||
assert.NoError(t, err)
|
||||
|
||||
source, err := NewTraefikSource(context.TODO(), fakeDynamicClient, fakeKubernetesClient, defaultTraefikNamespace, "kubernetes.io/ingress.class=traefik", ti.ignoreHostnameAnnotation, true, false)
|
||||
source, err := NewTraefikSource(t.Context(), fakeDynamicClient, fakeKubernetesClient, defaultTraefikNamespace, "kubernetes.io/ingress.class=traefik", ti.ignoreHostnameAnnotation, true, false)
|
||||
assert.NoError(t, err)
|
||||
assert.NotNil(t, source)
|
||||
|
||||
count := &unstructured.UnstructuredList{}
|
||||
for len(count.Items) < 1 {
|
||||
count, _ = fakeDynamicClient.Resource(oldIngressRouteTCPGVR).Namespace(defaultTraefikNamespace).List(context.Background(), metav1.ListOptions{})
|
||||
count, _ = fakeDynamicClient.Resource(oldIngressRouteTCPGVR).Namespace(defaultTraefikNamespace).List(t.Context(), metav1.ListOptions{})
|
||||
}
|
||||
|
||||
endpoints, err := source.Endpoints(context.Background())
|
||||
endpoints, err := source.Endpoints(t.Context())
|
||||
assert.NoError(t, err)
|
||||
validateEndpoints(t, endpoints, ti.expected)
|
||||
})
|
||||
@ -1543,19 +1542,19 @@ func TestTraefikProxyOldIngressRouteUDPEndpoints(t *testing.T) {
|
||||
assert.NoError(t, ir.UnmarshalJSON(ingressRouteAsJSON))
|
||||
|
||||
// Create proxy resources
|
||||
_, err = fakeDynamicClient.Resource(oldIngressRouteUDPGVR).Namespace(defaultTraefikNamespace).Create(context.Background(), &ir, metav1.CreateOptions{})
|
||||
_, err = fakeDynamicClient.Resource(oldIngressRouteUDPGVR).Namespace(defaultTraefikNamespace).Create(t.Context(), &ir, metav1.CreateOptions{})
|
||||
assert.NoError(t, err)
|
||||
|
||||
source, err := NewTraefikSource(context.TODO(), fakeDynamicClient, fakeKubernetesClient, defaultTraefikNamespace, "kubernetes.io/ingress.class=traefik", ti.ignoreHostnameAnnotation, true, false)
|
||||
source, err := NewTraefikSource(t.Context(), fakeDynamicClient, fakeKubernetesClient, defaultTraefikNamespace, "kubernetes.io/ingress.class=traefik", ti.ignoreHostnameAnnotation, true, false)
|
||||
assert.NoError(t, err)
|
||||
assert.NotNil(t, source)
|
||||
|
||||
count := &unstructured.UnstructuredList{}
|
||||
for len(count.Items) < 1 {
|
||||
count, _ = fakeDynamicClient.Resource(oldIngressRouteUDPGVR).Namespace(defaultTraefikNamespace).List(context.Background(), metav1.ListOptions{})
|
||||
count, _ = fakeDynamicClient.Resource(oldIngressRouteUDPGVR).Namespace(defaultTraefikNamespace).List(t.Context(), metav1.ListOptions{})
|
||||
}
|
||||
|
||||
endpoints, err := source.Endpoints(context.Background())
|
||||
endpoints, err := source.Endpoints(t.Context())
|
||||
assert.NoError(t, err)
|
||||
validateEndpoints(t, endpoints, ti.expected)
|
||||
})
|
||||
@ -1704,19 +1703,19 @@ func TestTraefikAPIGroupFlags(t *testing.T) {
|
||||
assert.NoError(t, ir.UnmarshalJSON(ingressRouteAsJSON))
|
||||
|
||||
// Create proxy resources
|
||||
_, err = fakeDynamicClient.Resource(ti.gvr).Namespace(defaultTraefikNamespace).Create(context.Background(), &ir, metav1.CreateOptions{})
|
||||
_, err = fakeDynamicClient.Resource(ti.gvr).Namespace(defaultTraefikNamespace).Create(t.Context(), &ir, metav1.CreateOptions{})
|
||||
assert.NoError(t, err)
|
||||
|
||||
source, err := NewTraefikSource(context.TODO(), fakeDynamicClient, fakeKubernetesClient, defaultTraefikNamespace, "kubernetes.io/ingress.class=traefik", ti.ignoreHostnameAnnotation, ti.enableLegacy, ti.disableNew)
|
||||
source, err := NewTraefikSource(t.Context(), fakeDynamicClient, fakeKubernetesClient, defaultTraefikNamespace, "kubernetes.io/ingress.class=traefik", ti.ignoreHostnameAnnotation, ti.enableLegacy, ti.disableNew)
|
||||
assert.NoError(t, err)
|
||||
assert.NotNil(t, source)
|
||||
|
||||
count := &unstructured.UnstructuredList{}
|
||||
for len(count.Items) < 1 {
|
||||
count, _ = fakeDynamicClient.Resource(ti.gvr).Namespace(defaultTraefikNamespace).List(context.Background(), metav1.ListOptions{})
|
||||
count, _ = fakeDynamicClient.Resource(ti.gvr).Namespace(defaultTraefikNamespace).List(t.Context(), metav1.ListOptions{})
|
||||
}
|
||||
|
||||
endpoints, err := source.Endpoints(context.Background())
|
||||
endpoints, err := source.Endpoints(t.Context())
|
||||
assert.NoError(t, err)
|
||||
validateEndpoints(t, endpoints, ti.expected)
|
||||
})
|
||||
@ -1724,7 +1723,7 @@ func TestTraefikAPIGroupFlags(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestAddEventHandler_AllBranches(t *testing.T) {
|
||||
ctx := context.Background()
|
||||
ctx := t.Context()
|
||||
handlerCalled := false
|
||||
handler := func() { handlerCalled = true }
|
||||
|
||||
|
||||
@ -17,11 +17,11 @@ limitations under the License.
|
||||
package wrappers
|
||||
|
||||
import (
|
||||
"context"
|
||||
"testing"
|
||||
|
||||
log "github.com/sirupsen/logrus"
|
||||
"github.com/stretchr/testify/require"
|
||||
|
||||
"sigs.k8s.io/external-dns/endpoint"
|
||||
"sigs.k8s.io/external-dns/internal/testutils"
|
||||
logtest "sigs.k8s.io/external-dns/internal/testutils/log"
|
||||
@ -148,7 +148,7 @@ func testDedupEndpoints(t *testing.T) {
|
||||
// Create our object under test and get the endpoints.
|
||||
source := NewDedupSource(mockSource)
|
||||
|
||||
endpoints, err := source.Endpoints(context.Background())
|
||||
endpoints, err := source.Endpoints(t.Context())
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
@ -304,7 +304,7 @@ func TestDedupEndpointsValidation(t *testing.T) {
|
||||
mockSource.On("Endpoints").Return(tt.endpoints, nil)
|
||||
|
||||
sr := NewDedupSource(mockSource)
|
||||
endpoints, err := sr.Endpoints(context.Background())
|
||||
endpoints, err := sr.Endpoints(t.Context())
|
||||
require.NoError(t, err)
|
||||
|
||||
validateEndpoints(t, endpoints, tt.expected)
|
||||
@ -349,7 +349,7 @@ func TestDedupSource_WarnsOnInvalidEndpoint(t *testing.T) {
|
||||
mockSource.On("Endpoints").Return([]*endpoint.Endpoint{tt.endpoint}, nil)
|
||||
|
||||
src := NewDedupSource(mockSource)
|
||||
_, err := src.Endpoints(context.Background())
|
||||
_, err := src.Endpoints(t.Context())
|
||||
require.NoError(t, err)
|
||||
|
||||
logtest.TestHelperLogContains(tt.wantLogMsg, hook, t)
|
||||
|
||||
@ -17,12 +17,12 @@ limitations under the License.
|
||||
package wrappers
|
||||
|
||||
import (
|
||||
"context"
|
||||
"errors"
|
||||
"testing"
|
||||
|
||||
"github.com/stretchr/testify/assert"
|
||||
"github.com/stretchr/testify/require"
|
||||
|
||||
"sigs.k8s.io/external-dns/source"
|
||||
|
||||
"sigs.k8s.io/external-dns/endpoint"
|
||||
@ -93,7 +93,7 @@ func testMultiSourceEndpoints(t *testing.T) {
|
||||
source := NewMultiSource(sources, nil, false)
|
||||
|
||||
// Get endpoints from the source.
|
||||
endpoints, err := source.Endpoints(context.Background())
|
||||
endpoints, err := source.Endpoints(t.Context())
|
||||
require.NoError(t, err)
|
||||
|
||||
// Validate returned endpoints against desired endpoints.
|
||||
@ -120,7 +120,7 @@ func testMultiSourceEndpointsWithError(t *testing.T) {
|
||||
source := NewMultiSource([]source.Source{src}, nil, false)
|
||||
|
||||
// Get endpoints from our source.
|
||||
_, err := source.Endpoints(context.Background())
|
||||
_, err := source.Endpoints(t.Context())
|
||||
assert.EqualError(t, err, "some error")
|
||||
|
||||
// Validate that the nested source was called.
|
||||
@ -158,7 +158,7 @@ func testMultiSourceEndpointsDefaultTargets(t *testing.T) {
|
||||
// Test with forceDefaultTargets=false (default behavior)
|
||||
source := NewMultiSource([]source.Source{src}, defaultTargets, false)
|
||||
|
||||
endpoints, err := source.Endpoints(context.Background())
|
||||
endpoints, err := source.Endpoints(t.Context())
|
||||
require.NoError(t, err)
|
||||
|
||||
validateEndpoints(t, endpoints, expectedEndpoints)
|
||||
@ -188,7 +188,7 @@ func testMultiSourceEndpointsDefaultTargets(t *testing.T) {
|
||||
// Test with forceDefaultTargets=false (default behavior)
|
||||
source := NewMultiSource([]source.Source{src}, defaultTargets, false)
|
||||
|
||||
endpoints, err := source.Endpoints(context.Background())
|
||||
endpoints, err := source.Endpoints(t.Context())
|
||||
require.NoError(t, err)
|
||||
|
||||
validateEndpoints(t, endpoints, expectedEndpoints)
|
||||
@ -226,7 +226,7 @@ func testMultiSourceEndpointsDefaultTargets(t *testing.T) {
|
||||
// Test with forceDefaultTargets=true (legacy behavior)
|
||||
source := NewMultiSource([]source.Source{src}, defaultTargets, true)
|
||||
|
||||
endpoints, err := source.Endpoints(context.Background())
|
||||
endpoints, err := source.Endpoints(t.Context())
|
||||
require.NoError(t, err)
|
||||
|
||||
validateEndpoints(t, endpoints, expectedEndpoints)
|
||||
@ -261,7 +261,7 @@ func testMultiSourceEndpointsDefaultTargets(t *testing.T) {
|
||||
// Test with forceDefaultTargets=true
|
||||
source := NewMultiSource([]source.Source{src}, defaultTargets, true)
|
||||
|
||||
endpoints, err := source.Endpoints(context.Background())
|
||||
endpoints, err := source.Endpoints(t.Context())
|
||||
require.NoError(t, err)
|
||||
|
||||
validateEndpoints(t, endpoints, expectedEndpoints)
|
||||
|
||||
@ -17,12 +17,12 @@ limitations under the License.
|
||||
package wrappers
|
||||
|
||||
import (
|
||||
"context"
|
||||
"net/netip"
|
||||
"testing"
|
||||
|
||||
"github.com/stretchr/testify/assert"
|
||||
"github.com/stretchr/testify/require"
|
||||
|
||||
"sigs.k8s.io/external-dns/endpoint"
|
||||
"sigs.k8s.io/external-dns/internal/testutils"
|
||||
"sigs.k8s.io/external-dns/source"
|
||||
@ -80,7 +80,7 @@ func testNat64Source(t *testing.T) {
|
||||
source, err := NewNAT64Source(mockSource, []string{"2001:DB8::/96"})
|
||||
require.NoError(t, err)
|
||||
|
||||
endpoints, err := source.Endpoints(context.Background())
|
||||
endpoints, err := source.Endpoints(t.Context())
|
||||
require.NoError(t, err)
|
||||
|
||||
// Validate returned endpoints against desired endpoints.
|
||||
@ -261,7 +261,7 @@ func TestNat64SourceEndpoints_VariousCases(t *testing.T) {
|
||||
src, err := NewNAT64Source(mockSource, []string{"2001:db8::/96"})
|
||||
require.NoError(t, err)
|
||||
|
||||
eps, err := src.Endpoints(context.Background())
|
||||
eps, err := src.Endpoints(t.Context())
|
||||
tc.asserts(eps, err)
|
||||
|
||||
mockSource.AssertExpectations(t)
|
||||
|
||||
@ -17,7 +17,6 @@ limitations under the License.
|
||||
package wrappers
|
||||
|
||||
import (
|
||||
"context"
|
||||
"testing"
|
||||
"time"
|
||||
|
||||
@ -155,7 +154,7 @@ func TestPostProcessorEndpointsWithTTL(t *testing.T) {
|
||||
ttl, _ := time.ParseDuration(tt.ttl)
|
||||
src := NewPostProcessor(ms, WithTTL(ttl))
|
||||
|
||||
endpoints, err := src.Endpoints(context.Background())
|
||||
endpoints, err := src.Endpoints(t.Context())
|
||||
require.NoError(t, err)
|
||||
validateEndpoints(t, endpoints, tt.expected)
|
||||
})
|
||||
@ -236,7 +235,7 @@ func TestPostProcessorEndpointsWithPreferAlias(t *testing.T) {
|
||||
ms.On("Endpoints").Return(tt.endpoints, nil)
|
||||
src := NewPostProcessor(ms, WithPostProcessorPreferAlias(tt.preferAlias))
|
||||
|
||||
endpoints, err := src.Endpoints(context.Background())
|
||||
endpoints, err := src.Endpoints(t.Context())
|
||||
require.NoError(t, err)
|
||||
validateEndpoints(t, endpoints, tt.expected)
|
||||
})
|
||||
|
||||
@ -20,7 +20,6 @@ import (
|
||||
"testing"
|
||||
|
||||
"github.com/stretchr/testify/require"
|
||||
"golang.org/x/net/context"
|
||||
|
||||
"sigs.k8s.io/external-dns/internal/testutils"
|
||||
"sigs.k8s.io/external-dns/source"
|
||||
@ -58,7 +57,7 @@ func TestEchoSourceReturnGivenSources(t *testing.T) {
|
||||
}}
|
||||
e := testutils.NewMockSource(startEndpoints...)
|
||||
|
||||
endpoints, err := e.Endpoints(context.Background())
|
||||
endpoints, err := e.Endpoints(t.Context())
|
||||
if err != nil {
|
||||
t.Errorf("Expected no error but got %s", err.Error())
|
||||
}
|
||||
@ -127,7 +126,7 @@ func TestTargetFilterSourceEndpoints(t *testing.T) {
|
||||
echo := testutils.NewMockSource(tt.endpoints...)
|
||||
src := NewTargetFilterSource(echo, tt.filters)
|
||||
|
||||
endpoints, err := src.Endpoints(context.Background())
|
||||
endpoints, err := src.Endpoints(t.Context())
|
||||
require.NoError(t, err, "failed to get Endpoints")
|
||||
validateEndpoints(t, endpoints, tt.expected)
|
||||
})
|
||||
@ -209,7 +208,7 @@ func TestTargetFilterConcreteTargetFilter(t *testing.T) {
|
||||
echo := testutils.NewMockSource(tt.endpoints...)
|
||||
src := NewTargetFilterSource(echo, tt.filters)
|
||||
|
||||
endpoints, err := src.Endpoints(context.Background())
|
||||
endpoints, err := src.Endpoints(t.Context())
|
||||
require.NoError(t, err, "failed to get Endpoints")
|
||||
|
||||
validateEndpoints(t, endpoints, tt.expected)
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user