patch 9.0.0625: too many delete() calls in tests

Problem:    Too many delete() calls in tests.
Solution:   Use deferred delete where possible.
diff --git a/src/testdir/test_lua.vim b/src/testdir/test_lua.vim
index 2a08607..2f9e21f 100644
--- a/src/testdir/test_lua.vim
+++ b/src/testdir/test_lua.vim
@@ -817,8 +817,7 @@
 
 " Test :luafile foo.lua
 func Test_luafile()
-  call delete('Xlua_file')
-  call writefile(["str = 'hello'", "num = 123" ], 'Xlua_file')
+  call writefile(["str = 'hello'", "num = 123" ], 'Xlua_file', 'D')
   call setfperm('Xlua_file', 'r-xr-xr-x')
 
   luafile Xlua_file
@@ -826,7 +825,6 @@
   call assert_equal(123, luaeval('num'))
 
   lua str, num = nil
-  call delete('Xlua_file')
 endfunc
 
 " Test :luafile %
@@ -849,12 +847,11 @@
 " Test :luafile with syntax error
 func Test_luafile_error()
   new Xlua_file
-  call writefile(['nil = 0' ], 'Xlua_file')
+  call writefile(['nil = 0' ], 'Xlua_file', 'D')
   call setfperm('Xlua_file', 'r-xr-xr-x')
 
   call assert_fails('luafile Xlua_file', "Xlua_file:1: unexpected symbol near 'nil'")
 
-  call delete('Xlua_file')
   bwipe!
 endfunc