MCPcopy
hub / github.com/grpc/grpc-go / TestEqual

Method TestEqual

internal/credentials/xds/handshake_info_test.go:338–445  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

336}
337
338func (s) TestEqual(t *testing.T) {
339 tests := []struct {
340 desc string
341 hi1 *HandshakeInfo
342 hi2 *HandshakeInfo
343 wantMatch bool
344 }{
345 {
346 desc: "both HandshakeInfo are nil",
347 hi1: nil,
348 hi2: nil,
349 wantMatch: true,
350 },
351 {
352 desc: "one HandshakeInfo is nil",
353 hi1: nil,
354 hi2: NewHandshakeInfo(&testCertProvider{}, nil, nil, false, "", false, false),
355 wantMatch: false,
356 },
357 {
358 desc: "different root providers",
359 hi1: NewHandshakeInfo(&testCertProvider{}, nil, nil, false, "", false, false),
360 hi2: NewHandshakeInfo(&testCertProvider{}, nil, nil, false, "", false, false),
361 wantMatch: false,
362 },
363 {
364 desc: "same providers, same SAN matchers",
365 hi1: NewHandshakeInfo(testCertProvider{}, testCertProvider{}, []matcher.StringMatcher{
366 matcher.NewExactStringMatcher("foo.com", false),
367 }, false, "", false, false),
368 hi2: NewHandshakeInfo(testCertProvider{}, testCertProvider{}, []matcher.StringMatcher{
369 matcher.NewExactStringMatcher("foo.com", false),
370 }, false, "", false, false),
371 wantMatch: true,
372 },
373 {
374 desc: "same providers, different SAN matchers",
375 hi1: NewHandshakeInfo(testCertProvider{}, testCertProvider{}, []matcher.StringMatcher{
376 matcher.NewExactStringMatcher("foo.com", false),
377 }, false, "", false, false),
378 hi2: NewHandshakeInfo(testCertProvider{}, testCertProvider{}, []matcher.StringMatcher{
379 matcher.NewExactStringMatcher("bar.com", false),
380 }, false, "", false, false),
381 wantMatch: false,
382 },
383 {
384 desc: "same SAN matchers with different content",
385 hi1: NewHandshakeInfo(&testCertProvider{}, &testCertProvider{}, []matcher.StringMatcher{
386 matcher.NewExactStringMatcher("foo.com", false),
387 }, false, "", false, false),
388 hi2: NewHandshakeInfo(&testCertProvider{}, &testCertProvider{}, []matcher.StringMatcher{
389 matcher.NewExactStringMatcher("foo.com", false),
390 matcher.NewExactStringMatcher("bar.com", false),
391 }, false, "", false, false),
392 wantMatch: false,
393 },
394 {
395 desc: "different requireClientCert flags",

Callers

nothing calls this directly

Calls 4

NewExactStringMatcherFunction · 0.92
NewHandshakeInfoFunction · 0.85
EqualMethod · 0.65
ErrorfMethod · 0.65

Tested by

no test coverage detected