summaryrefslogtreecommitdiffstats
path: root/src/testdir/test_vim9_disassemble.vim
diff options
context:
space:
mode:
Diffstat (limited to 'src/testdir/test_vim9_disassemble.vim')
-rw-r--r--src/testdir/test_vim9_disassemble.vim28
1 files changed, 28 insertions, 0 deletions
diff --git a/src/testdir/test_vim9_disassemble.vim b/src/testdir/test_vim9_disassemble.vim
index fe1ce66ec5..97797bc03a 100644
--- a/src/testdir/test_vim9_disassemble.vim
+++ b/src/testdir/test_vim9_disassemble.vim
@@ -301,6 +301,34 @@ def Test_disassemble_list_add()
res)
enddef
+def s:BlobAdd()
+ var b: blob = 0z
+ add(b, 123)
+ add(b, g:aNumber)
+enddef
+
+def Test_disassemble_blob_add()
+ var res = execute('disass s:BlobAdd')
+ assert_match('<SNR>\d*_BlobAdd\_s*' ..
+ 'var b: blob = 0z\_s*' ..
+ '\d PUSHBLOB 0z\_s*' ..
+ '\d STORE $0\_s*' ..
+ 'add(b, 123)\_s*' ..
+ '\d LOAD $0\_s*' ..
+ '\d PUSHNR 123\_s*' ..
+ '\d BLOBAPPEND\_s*' ..
+ '\d DROP\_s*' ..
+ 'add(b, g:aNumber)\_s*' ..
+ '\d LOAD $0\_s*' ..
+ '\d\+ LOADG g:aNumber\_s*' ..
+ '\d\+ CHECKTYPE number stack\[-1\]\_s*' ..
+ '\d\+ BLOBAPPEND\_s*' ..
+ '\d\+ DROP\_s*' ..
+ '\d\+ PUSHNR 0\_s*' ..
+ '\d\+ RETURN',
+ res)
+enddef
+
def s:ScriptFuncUnlet()
g:somevar = "value"
unlet g:somevar