summaryrefslogtreecommitdiff
path: root/integrationtests/mmap_test.go
blob: 3ef84c5f80f6bd5f09fd6dcff2e3987748201049 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
package integrationtests

import "testing"

func TestMmapBasic(t *testing.T) {
	runScenario(t, "mmap-basic", []ExpectedEvent{
		{
			PathContains: "mmapfile.txt",
			Tracepoint:   "enter_mmap",
			Comm:         "ioworkload",
			MinCount:     1,
		},
	})
}

func TestMmapMsyncSync(t *testing.T) {
	runScenario(t, "mmap-msync-sync", []ExpectedEvent{
		{
			PathContains: "msyncfile.txt",
			Tracepoint:   "enter_mmap",
			Comm:         "ioworkload",
			MinCount:     1,
		},
		{
			Tracepoint: "enter_msync",
			Comm:       "ioworkload",
			MinCount:   1,
		},
	})
}

func TestMmapMsyncInvalidFlags(t *testing.T) {
	runScenario(t, "mmap-msync-invalid-flags", []ExpectedEvent{
		{
			PathContains: "msyncinvalidfile.txt",
			Tracepoint:   "enter_mmap",
			Comm:         "ioworkload",
			MinCount:     1,
		},
		{
			Tracepoint: "enter_msync",
			Comm:       "ioworkload",
			MinCount:   1,
		},
	})
}

func TestMmapMremapMunmap(t *testing.T) {
	result, _ := runScenarioResult(t, "mmap-mremap-munmap", []ExpectedEvent{
		{
			Tracepoint: "enter_mremap",
			Comm:       "ioworkload",
			MinCount:   1,
		},
		{
			Tracepoint: "enter_munmap",
			Comm:       "ioworkload",
			MinCount:   1,
		},
	})

	assertEventBytesEqual(t, result, ExpectedEvent{
		Tracepoint: "enter_mremap",
		Comm:       "ioworkload",
	}, 0)
	assertEventBytesEqual(t, result, ExpectedEvent{
		Tracepoint: "enter_munmap",
		Comm:       "ioworkload",
	}, 0)
}