github.com/caos/orbos@v1.5.14-0.20221103111702-e6cd0cea7ad4/internal/operator/nodeagent/dep/swap/dep_test.go (about) 1 package swap_test 2 3 import ( 4 "io/ioutil" 5 "testing" 6 7 "github.com/caos/orbos/internal/operator/common" 8 "github.com/caos/orbos/internal/operator/nodeagent/dep/swap" 9 ) 10 11 func TestEnsure(t *testing.T) { 12 13 before := `# 14 # /etc/fstab 15 # Created by anaconda on Wed Sep 4 04:47:43 2019 16 # 17 # Accessible filesystems, by reference, are maintained under '/dev/disk' 18 # See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info 19 # 20 /dev/mapper/centos-root / xfs defaults 0 0 21 UUID=2be0c56f-32f4-4155-af7a-1db773af5ff0 /boot xfs defaults 0 0 22 /dev/mapper/centos-home /home xfs defaults 0 0 23 /dev/mapper/centos-swap swap swap defaults 0 0 24 ` 25 26 after := `# 27 # /etc/fstab 28 # Created by anaconda on Wed Sep 4 04:47:43 2019 29 # 30 # Accessible filesystems, by reference, are maintained under '/dev/disk' 31 # See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info 32 # 33 /dev/mapper/centos-root / xfs defaults 0 0 34 UUID=2be0c56f-32f4-4155-af7a-1db773af5ff0 /boot xfs defaults 0 0 35 /dev/mapper/centos-home /home xfs defaults 0 0 36 #/dev/mapper/centos-swap swap swap defaults 0 0 37 ` 38 39 testFile, err := testFile(before) 40 if err != nil { 41 t.Fatal(err) 42 } 43 44 if err = swap.New(testFile).Ensure(common.Package{Version: "enabled"}, common.Package{Version: "disabled"}); err != nil { 45 t.Fatal(err) 46 } 47 48 changed, err := ioutil.ReadFile(testFile) 49 if err != nil { 50 t.Fatal(err) 51 } 52 53 if string(changed) != after { 54 t.Fatalf("expected:\n%s\n\ninstead:\n%s", after, string(changed)) 55 } 56 } 57 58 func testFile(content string) (string, error) { 59 tmpFile, err := ioutil.TempFile("", "") 60 if err != nil { 61 return "", err 62 } 63 defer tmpFile.Close() 64 _, err = tmpFile.WriteString(content) 65 return tmpFile.Name(), err 66 }