patch 8.2.1879: Vim9: argument types of insert() not checked when compiling

Problem:    Vim9: argument types of insert() not checked when compiling.
Solution:   Add argument type checks for insert().
diff --git a/src/testdir/test_vim9_builtin.vim b/src/testdir/test_vim9_builtin.vim
index fb94746..e3d7bb6 100644
--- a/src/testdir/test_vim9_builtin.vim
+++ b/src/testdir/test_vim9_builtin.vim
@@ -318,13 +318,20 @@
   index(['a', 'b', 'a', 'B'], 'b', 2, true)->assert_equal(3)
 enddef
 
-def Test_insert_return_type()
+def Test_insert()
   var l = insert([2, 1], 3)
   var res = 0
   for n in l
     res += n
   endfor
   res->assert_equal(6)
+
+  assert_equal([1, 2, 3], insert([2, 3], 1))
+  assert_equal([1, 2, 3], insert([1, 2], 3, 2))
+  assert_equal(['a', 'b', 'c'], insert(['b', 'c'], 'a'))
+  assert_equal(0z1234, insert(0z34, 0x12))
+  CheckDefFailure(['insert([2, 3], "a")'], 'E1013: Argument 2: type mismatch, expected number but got string', 1)
+  CheckDefFailure(['insert([2, 3], 1, "x")'], 'E1013: Argument 3: type mismatch, expected number but got string', 1)
 enddef
 
 def Test_keys_return_type()