diff options
| author | Paul Buetow <paul@buetow.org> | 2026-02-23 13:23:23 +0200 |
|---|---|---|
| committer | Paul Buetow <paul@buetow.org> | 2026-02-23 13:23:23 +0200 |
| commit | 4bdb0505635e66e07aa7edd9d1f842f860aa581c (patch) | |
| tree | 433e464e36aeb23cbe966c5796bdb164ec04c597 /internal | |
| parent | 2b1c849422973cf926e2bfda31703f4bfef5563d (diff) | |
tests: cover durationToPrev gap semantics
Diffstat (limited to 'internal')
| -rw-r--r-- | internal/event/pair_test.go | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/internal/event/pair_test.go b/internal/event/pair_test.go new file mode 100644 index 0000000..a1cb8ab --- /dev/null +++ b/internal/event/pair_test.go @@ -0,0 +1,56 @@ +package event + +import ( + "ior/internal/types" + "testing" +) + +func TestPairCalculateDurationsFirstEvent(t *testing.T) { + enter := &types.OpenEvent{ + Time: 1000, + Pid: 1, + Tid: 2, + } + exit := &types.RetEvent{ + Time: 1100, + Pid: 1, + Tid: 2, + Ret: 0, + } + + pair := NewPair(enter) + pair.ExitEv = exit + pair.CalculateDurations(0) + + if pair.Duration != 100 { + t.Fatalf("Duration = %d, want 100", pair.Duration) + } + if pair.DurationToPrev != 0 { + t.Fatalf("DurationToPrev = %d, want 0 for first event", pair.DurationToPrev) + } +} + +func TestPairCalculateDurationsWithPreviousExit(t *testing.T) { + enter := &types.OpenEvent{ + Time: 2000, + Pid: 1, + Tid: 2, + } + exit := &types.RetEvent{ + Time: 2100, + Pid: 1, + Tid: 2, + Ret: 0, + } + + pair := NewPair(enter) + pair.ExitEv = exit + pair.CalculateDurations(1500) + + if pair.Duration != 100 { + t.Fatalf("Duration = %d, want 100", pair.Duration) + } + if pair.DurationToPrev != 500 { + t.Fatalf("DurationToPrev = %d, want 500", pair.DurationToPrev) + } +} |
