comparison src/testdir/test_vim9_expr.vim @ 19848:36d629aa3d6e v8.2.0480

patch 8.2.0480: Vim9: some code is not tested Commit: https://github.com/vim/vim/commit/0b37a2f379f36d097e7fa90a3e86da6a29ed2aaa Author: Bram Moolenaar <Bram@vim.org> Date: Sun Mar 29 21:38:15 2020 +0200 patch 8.2.0480: Vim9: some code is not tested Problem: Vim9: some code is not tested. Solution: Add more tests.
author Bram Moolenaar <Bram@vim.org>
date Sun, 29 Mar 2020 21:45:03 +0200
parents e4ade28bfaf7
children eddc81783052
comparison
equal deleted inserted replaced
19847:8176228268cb 19848:36d629aa3d6e
704 def Test_expr7_list() 704 def Test_expr7_list()
705 " list 705 " list
706 assert_equal(g:list_empty, []) 706 assert_equal(g:list_empty, [])
707 assert_equal(g:list_empty, [ ]) 707 assert_equal(g:list_empty, [ ])
708 assert_equal(g:list_mixed, [1, 'b', false]) 708 assert_equal(g:list_mixed, [1, 'b', false])
709 assert_equal('b', g:list_mixed[1])
709 710
710 call CheckDefExecFailure("let x = g:anint[3]", 'E714:') 711 call CheckDefExecFailure("let x = g:anint[3]", 'E714:')
712 call CheckDefFailure("let x = g:list_mixed[xxx]", 'E1001:')
711 call CheckDefExecFailure("let x = g:list_mixed['xx']", 'E39:') 713 call CheckDefExecFailure("let x = g:list_mixed['xx']", 'E39:')
714 call CheckDefFailure("let x = g:list_mixed[0", 'E111:')
712 call CheckDefExecFailure("let x = g:list_empty[3]", 'E684:') 715 call CheckDefExecFailure("let x = g:list_empty[3]", 'E684:')
713 enddef 716 enddef
714 717
715 def Test_expr7_lambda() 718 def Test_expr7_lambda()
716 " lambda 719 " lambda
735 call CheckDefFailure("let x = {'a': xxx}", 'E1001:') 738 call CheckDefFailure("let x = {'a': xxx}", 'E1001:')
736 call CheckDefFailure("let x = {xxx: 8}", 'E1001:') 739 call CheckDefFailure("let x = {xxx: 8}", 'E1001:')
737 call CheckDefFailure("let x = #{a: 1, a: 2}", 'E721:') 740 call CheckDefFailure("let x = #{a: 1, a: 2}", 'E721:')
738 call CheckDefExecFailure("let x = g:anint.member", 'E715:') 741 call CheckDefExecFailure("let x = g:anint.member", 'E715:')
739 call CheckDefExecFailure("let x = g:dict_empty.member", 'E716:') 742 call CheckDefExecFailure("let x = g:dict_empty.member", 'E716:')
743 enddef
744
745 def Test_expr_member()
746 assert_equal(1, g:dict_one.one)
747
748 call CheckDefFailure("let x = g:dict_one.#$!", 'E1002:')
740 enddef 749 enddef
741 750
742 def Test_expr7_option() 751 def Test_expr7_option()
743 " option 752 " option
744 set ts=11 753 set ts=11
776 assert_equal(6, --6) 785 assert_equal(6, --6)
777 assert_equal(6, -+-6) 786 assert_equal(6, -+-6)
778 assert_equal(-6, ---6) 787 assert_equal(-6, ---6)
779 enddef 788 enddef
780 789
790 def Test_expr7_negate()
791 assert_equal(-99, -99)
792 assert_equal(99, --99)
793 let nr = 88
794 assert_equal(-88, -nr)
795 assert_equal(88, --nr)
796 enddef
797
798 def Echo(arg): string
799 return arg
800 enddef
801
802 def s:EchoArg(arg): string
803 return arg
804 enddef
805
806 def Test_expr7_call()
807 assert_equal('yes', 'yes'->Echo())
808 assert_equal('yes', 'yes'->s:EchoArg())
809
810 call CheckDefFailure("let x = 'yes'->Echo", 'E107:')
811 enddef
812
813
781 def Test_expr7_not() 814 def Test_expr7_not()
782 assert_equal(true, !'') 815 assert_equal(true, !'')
783 assert_equal(true, ![]) 816 assert_equal(true, ![])
784 assert_equal(false, !'asdf') 817 assert_equal(false, !'asdf')
785 assert_equal(false, ![2]) 818 assert_equal(false, ![2])