patch 8.0.0302: cannot set terminal key codes with :let

Problem:    Cannot set terminal key codes with :let.
Solution:   Make it work.
diff --git a/src/testdir/test_assign.vim b/src/testdir/test_assign.vim
index c1f036a..22aa4a1 100644
--- a/src/testdir/test_assign.vim
+++ b/src/testdir/test_assign.vim
@@ -7,3 +7,23 @@
   let v = 3.4
   let v = 'hello'
 endfunc
+
+func Test_let_termcap()
+  " Terminal code
+  let old_t_te = &t_te
+  let &t_te = "\<Esc>[yes;"
+  call assert_match('t_te.*^[[yes;', execute("set termcap"))
+  let &t_te = old_t_te
+
+  " Key code
+  let old_t_k1 = &t_k1
+  let &t_k1 = "that"
+  call assert_match('t_k1.*that', execute("set termcap"))
+  let &t_k1 = old_t_k1
+
+  call assert_fails('let x = &t_xx', 'E15')
+  let &t_xx = "yes"
+  call assert_equal("yes", &t_xx)
+  let &t_xx = ""
+  call assert_fails('let x = &t_xx', 'E15')
+endfunc