diff src/testdir/test_assert.vim @ 13298:a88c5e12b860 v8.0.1523

patch 8.0.1523: cannot write and read terminal screendumps commit https://github.com/vim/vim/commit/d96ff165113ce5fe62107add590997660e3d4802 Author: Bram Moolenaar <Bram@vim.org> Date: Sun Feb 18 22:13:29 2018 +0100 patch 8.0.1523: cannot write and read terminal screendumps Problem: Cannot write and read terminal screendumps. Solution: Add term_dumpwrite(), term_dumpread() and term_dumpdiff(). Also add assert_equalfile().
author Christian Brabandt <cb@256bit.org>
date Sun, 18 Feb 2018 22:15:06 +0100
parents abaebba89fd4
children 87012d2b17b5
line wrap: on
line diff
--- a/src/testdir/test_assert.vim
+++ b/src/testdir/test_assert.vim
@@ -25,6 +25,41 @@ func Test_assert_equal()
   call remove(v:errors, 0)
 endfunc
 
+func Test_assert_equalfile()
+  call assert_equalfile('abcabc', 'xyzxyz')
+  call assert_match("E485: Can't read file abcabc", v:errors[0])
+  call remove(v:errors, 0)
+
+  let goodtext = ["one", "two", "three"]
+  call writefile(goodtext, 'Xone')
+  call assert_equalfile('Xone', 'xyzxyz')
+  call assert_match("E485: Can't read file xyzxyz", v:errors[0])
+  call remove(v:errors, 0)
+
+  call writefile(goodtext, 'Xtwo')
+  call assert_equalfile('Xone', 'Xtwo')
+
+  call writefile([goodtext[0]], 'Xone')
+  call assert_equalfile('Xone', 'Xtwo')
+  call assert_match("first file is shorter", v:errors[0])
+  call remove(v:errors, 0)
+
+  call writefile(goodtext, 'Xone')
+  call writefile([goodtext[0]], 'Xtwo')
+  call assert_equalfile('Xone', 'Xtwo')
+  call assert_match("second file is shorter", v:errors[0])
+  call remove(v:errors, 0)
+
+  call writefile(['1234X89'], 'Xone')
+  call writefile(['1234Y89'], 'Xtwo')
+  call assert_equalfile('Xone', 'Xtwo')
+  call assert_match("difference at byte 4", v:errors[0])
+  call remove(v:errors, 0)
+
+  call delete('Xone')
+  call delete('Xtwo')
+endfunc
+
 func Test_assert_notequal()
   let n = 4
   call assert_notequal('foo', n)