2020package  file
2121
2222import  (
23- 	"io/ioutil " 
23+ 	"fmt " 
2424	"os" 
2525	"path/filepath" 
2626	"testing" 
@@ -29,19 +29,15 @@ import (
2929)
3030
3131func  TestSafeFileRotateExistingFile (t  * testing.T ) {
32- 	tempdir , err  :=  ioutil .TempDir ("" , "" )
33- 	assert .NoError (t , err )
34- 	defer  func () {
35- 		assert .NoError (t , os .RemoveAll (tempdir ))
36- 	}()
32+ 	tempdir  :=  t .TempDir ()
3733
3834	// create an existing registry file 
39- 	err  =   ioutil .WriteFile (filepath .Join (tempdir , "registry" ),
35+ 	err  :=   os .WriteFile (filepath .Join (tempdir , "registry" ),
4036		[]byte ("existing filebeat" ), 0x777 )
4137	assert .NoError (t , err )
4238
4339	// create a new registry.new file 
44- 	err  =  ioutil .WriteFile (filepath .Join (tempdir , "registry.new" ),
40+ 	err  =  os .WriteFile (filepath .Join (tempdir , "registry.new" ),
4541		[]byte ("new filebeat" ), 0x777 )
4642	assert .NoError (t , err )
4743
@@ -50,35 +46,23 @@ func TestSafeFileRotateExistingFile(t *testing.T) {
5046		filepath .Join (tempdir , "registry.new" ))
5147	assert .NoError (t , err )
5248
53- 	contents , err  :=  ioutil .ReadFile (filepath .Join (tempdir , "registry" ))
49+ 	contents , err  :=  os .ReadFile (filepath .Join (tempdir , "registry" ))
5450	assert .NoError (t , err )
5551	assert .Equal (t , []byte ("new filebeat" ), contents )
5652
57- 	// do it again to make sure we deal with deleting the old file 
58- 
59- 	err  =  ioutil .WriteFile (filepath .Join (tempdir , "registry.new" ),
60- 		[]byte ("new filebeat 1" ), 0x777 )
61- 	assert .NoError (t , err )
62- 
63- 	err  =  SafeFileRotate (filepath .Join (tempdir , "registry" ),
64- 		filepath .Join (tempdir , "registry.new" ))
65- 	assert .NoError (t , err )
66- 
67- 	contents , err  =  ioutil .ReadFile (filepath .Join (tempdir , "registry" ))
68- 	assert .NoError (t , err )
69- 	assert .Equal (t , []byte ("new filebeat 1" ), contents )
70- 
71- 	// and again for good measure 
72- 
73- 	err  =  ioutil .WriteFile (filepath .Join (tempdir , "registry.new" ),
74- 		[]byte ("new filebeat 2" ), 0x777 )
75- 	assert .NoError (t , err )
76- 
77- 	err  =  SafeFileRotate (filepath .Join (tempdir , "registry" ),
78- 		filepath .Join (tempdir , "registry.new" ))
79- 	assert .NoError (t , err )
80- 
81- 	contents , err  =  ioutil .ReadFile (filepath .Join (tempdir , "registry" ))
82- 	assert .NoError (t , err )
83- 	assert .Equal (t , []byte ("new filebeat 2" ), contents )
53+ 	// do it twice to make sure we deal with deleting the old file 
54+ 	for  i  :=  0 ; i  <  2 ; i ++  {
55+ 		expectedContents  :=  []byte (fmt .Sprintf ("new filebeat %d" , i ))
56+ 		err  =  os .WriteFile (filepath .Join (tempdir , "registry.new" ),
57+ 			expectedContents , 0x777 )
58+ 		assert .NoError (t , err )
59+ 
60+ 		err  =  SafeFileRotate (filepath .Join (tempdir , "registry" ),
61+ 			filepath .Join (tempdir , "registry.new" ))
62+ 		assert .NoError (t , err )
63+ 
64+ 		contents , err  =  os .ReadFile (filepath .Join (tempdir , "registry" ))
65+ 		assert .NoError (t , err )
66+ 		assert .Equal (t , expectedContents , contents )
67+ 	}
8468}
0 commit comments