MCPcopy Create free account
hub / github.com/dlclark/regexp2 / assertEquivalentStringMatchAPIs

Function assertEquivalentStringMatchAPIs

regexp_optimization_test.go:451–469  ·  view source on GitHub ↗
(t *testing.T, optimized, unoptimized *Regexp, input string)

Source from the content-addressed store, hash-verified

449}
450
451func assertEquivalentStringMatchAPIs(t *testing.T, optimized, unoptimized *Regexp, input string) {
452 t.Helper()
453
454 gotMatchString, gotErr := optimized.MatchString(input)
455 wantMatchString, wantErr := unoptimized.MatchString(input)
456 if (gotErr != nil) != (wantErr != nil) || gotMatchString != wantMatchString {
457 t.Fatalf("MatchString(%q) = (%v, %v), want (%v, %v)", input, gotMatchString, gotErr, wantMatchString, wantErr)
458 }
459
460 gotMatch, gotErr := optimized.FindStringMatch(input)
461 wantMatch, wantErr := unoptimized.FindStringMatch(input)
462 assertSameMatchResult(t, "FindStringMatch", input, gotMatch, gotErr, wantMatch, wantErr)
463
464 gotIndexes, gotErr := optimized.FindAllStringIndex(input, -1)
465 wantIndexes, wantErr := unoptimized.FindAllStringIndex(input, -1)
466 if (gotErr != nil) != (wantErr != nil) || !sameStringIndexes(gotIndexes, wantIndexes) {
467 t.Fatalf("FindAllStringIndex(%q) = (%v, %v), want (%v, %v)", input, gotIndexes, gotErr, wantIndexes, wantErr)
468 }
469}
470
471func assertEquivalentStringMatchStartingAt(t *testing.T, optimized, unoptimized *Regexp, input string, startAt int) {
472 t.Helper()

Calls 5

assertSameMatchResultFunction · 0.85
sameStringIndexesFunction · 0.85
FindStringMatchMethod · 0.80
MatchStringMethod · 0.65
FindAllStringIndexMethod · 0.65

Tested by

no test coverage detected