Bound external reference reads and fingerprints
This commit is contained in:
@@ -185,6 +185,27 @@ func TestGeneratedReferenceFingerprintChangesWithCanonicalContent(t *testing.T)
|
||||
}
|
||||
}
|
||||
|
||||
func TestGeneratedReferenceFingerprintChangesWithCanonicalSize(t *testing.T) {
|
||||
input, step, producerOutput := handoffFixture(t, codecNotes{Items: []string{"first"}})
|
||||
sets, _, err := buildStepReferenceSets(input, step, []contracts.SerializedOutput{producerOutput})
|
||||
if err != nil {
|
||||
t.Fatalf("build reference set: %v", err)
|
||||
}
|
||||
key := keyForReferenceTarget(step.lanes[0].resolved.ExtractReferences)
|
||||
firstDeps := generatedReferenceDependencies(sets[key])
|
||||
changed := CloneReferenceSet(sets[key])
|
||||
item := changed.Slots["producer-output"].Items[0]
|
||||
item.SizeBytes++
|
||||
changed.Slots["producer-output"] = contracts.ResolvedReferenceSlot{
|
||||
Slot: changed.Slots["producer-output"].Slot,
|
||||
Items: []contracts.ReferenceItem{item},
|
||||
}
|
||||
secondDeps := generatedReferenceDependencies(changed)
|
||||
if reflect.DeepEqual(firstDeps, secondDeps) {
|
||||
t.Fatalf("generated dependencies = %#v, want size-sensitive fingerprint", firstDeps)
|
||||
}
|
||||
}
|
||||
|
||||
func TestRunnerHandsOffAcceptedNormalizedOutputBeforeConsumerLanes(t *testing.T) {
|
||||
input, _, _ := handoffFixture(t, codecNotes{Items: []string{"first"}})
|
||||
prepared := input.Prepared
|
||||
|
||||
Reference in New Issue
Block a user