patch 8.2.1416: Vim9: boolean evaluation does not work as intended

Problem:    Vim9: boolean evaluation does not work as intended.
Solution:   Use tv2bool() in Vim9 script. (closes #6681)
diff --git a/src/testdir/test_vim9_expr.vim b/src/testdir/test_vim9_expr.vim
index aa59973..d2d2e0b 100644
--- a/src/testdir/test_vim9_expr.vim
+++ b/src/testdir/test_vim9_expr.vim
@@ -1750,31 +1750,35 @@
 
 
 def Test_expr7_not()
-  assert_equal(true, !'')
-  assert_equal(true, ![])
-  assert_equal(false, !'asdf')
-  assert_equal(false, ![2])
-  assert_equal(true, !!'asdf')
-  assert_equal(true, !![2])
+  let lines =<< trim END
+      assert_equal(true, !'')
+      assert_equal(true, ![])
+      assert_equal(false, !'asdf')
+      assert_equal(false, ![2])
+      assert_equal(true, !!'asdf')
+      assert_equal(true, !![2])
 
-  assert_equal(true, !test_null_partial())
-  assert_equal(false, !{-> 'yes'})
+      assert_equal(true, !test_null_partial())
+      assert_equal(false, !{-> 'yes'})
 
-  assert_equal(true, !test_null_dict())
-  assert_equal(true, !{})
-  assert_equal(false, !{'yes': 'no'})
+      assert_equal(true, !test_null_dict())
+      assert_equal(true, !{})
+      assert_equal(false, !{'yes': 'no'})
 
-  if has('channel')
-    assert_equal(true, !test_null_job())
-    assert_equal(true, !test_null_channel())
-  endif
+      if has('channel')
+	assert_equal(true, !test_null_job())
+	assert_equal(true, !test_null_channel())
+      endif
 
-  assert_equal(true, !test_null_blob())
-  assert_equal(true, !0z)
-  assert_equal(false, !0z01)
+      assert_equal(true, !test_null_blob())
+      assert_equal(true, !0z)
+      assert_equal(false, !0z01)
 
-  assert_equal(true, !test_void())
-  assert_equal(true, !test_unknown())
+      assert_equal(true, !test_void())
+      assert_equal(true, !test_unknown())
+  END
+  CheckDefSuccess(lines)
+  CheckScriptSuccess(['vim9script'] + lines)
 enddef
 
 func Test_expr7_fails()
diff --git a/src/testdir/vim9.vim b/src/testdir/vim9.vim
index fdad9f7..448aa3d 100644
--- a/src/testdir/vim9.vim
+++ b/src/testdir/vim9.vim
@@ -1,5 +1,13 @@
 " Utility functions for testing vim9 script
 
+" Check that "lines" inside ":def" has no error.
+func CheckDefSuccess(lines)
+  call writefile(['def Func()'] + a:lines + ['enddef', 'defcompile'], 'Xdef')
+  so Xdef
+  call Func()
+  call delete('Xdef')
+endfunc
+
 " Check that "lines" inside ":def" results in an "error" message.
 func CheckDefFailure(lines, error)
   call writefile(['def Func()'] + a:lines + ['enddef', 'defcompile'], 'Xdef')