annotate src/testdir/test_file_perm.vim @ 34686:83875247fbc0 v9.1.0224

patch 9.1.0224: cursor may move too many lines over "right" & "below" virt text Commit: https://github.com/vim/vim/commit/515f734e687f28f7199b2a8042197624d9f3ec15 Author: Dylan Thacker-Smith <dylan.ah.smith@gmail.com> Date: Thu Mar 28 12:01:14 2024 +0100 patch 9.1.0224: cursor may move too many lines over "right" & "below" virt text Problem: If a line has "right" & "below" virtual text properties, where the "below" property may be stored first due to lack of ordering between them, then the line height is calculated to be 1 more and causes the cursor to far over the line. Solution: Remove some unnecessary setting of a `next_right_goes_below = TRUE` flag for "below" and "above" text properties. (Dylan Thacker-Smith) I modified a regression test I recently added to cover this case, leveraging the fact that "after", "right" & "below" text properties are being stored in the reverse of the order they are added in. The previous version of this regression test was crafted to workaround this issue so it can be addressed by this separate patch. closes: #14317 Signed-off-by: Dylan Thacker-Smith <dylan.ah.smith@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
author Christian Brabandt <cb@256bit.org>
date Thu, 28 Mar 2024 12:15:03 +0100
parents a7a9e8b9af89
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
8451
c0b5c2b0a5ee commit https://github.com/vim/vim/commit/8049253b96838b3584600e5ad229abad37a95b10
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1 " Test getting and setting file permissions.
c0b5c2b0a5ee commit https://github.com/vim/vim/commit/8049253b96838b3584600e5ad229abad37a95b10
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2
c0b5c2b0a5ee commit https://github.com/vim/vim/commit/8049253b96838b3584600e5ad229abad37a95b10
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
3 func Test_file_perm()
30552
a7a9e8b9af89 patch 9.0.0611: tests delete files with a separate delete() call
Bram Moolenaar <Bram@vim.org>
parents: 30051
diff changeset
4 call assert_equal('', getfperm('XtestPerm'))
a7a9e8b9af89 patch 9.0.0611: tests delete files with a separate delete() call
Bram Moolenaar <Bram@vim.org>
parents: 30051
diff changeset
5 call assert_equal(0, 'XtestPerm'->setfperm('r--------'))
8451
c0b5c2b0a5ee commit https://github.com/vim/vim/commit/8049253b96838b3584600e5ad229abad37a95b10
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
6
30552
a7a9e8b9af89 patch 9.0.0611: tests delete files with a separate delete() call
Bram Moolenaar <Bram@vim.org>
parents: 30051
diff changeset
7 call writefile(['one'], 'XtestPerm', 'D')
a7a9e8b9af89 patch 9.0.0611: tests delete files with a separate delete() call
Bram Moolenaar <Bram@vim.org>
parents: 30051
diff changeset
8 call assert_true(len('XtestPerm'->getfperm()) == 9)
8451
c0b5c2b0a5ee commit https://github.com/vim/vim/commit/8049253b96838b3584600e5ad229abad37a95b10
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
9
30552
a7a9e8b9af89 patch 9.0.0611: tests delete files with a separate delete() call
Bram Moolenaar <Bram@vim.org>
parents: 30051
diff changeset
10 call assert_equal(1, setfperm('XtestPerm', 'rwx------'))
8461
988ddc5742f5 commit https://github.com/vim/vim/commit/8322e1f06e8fa39a6bb790a7d8d7db5d7aff3366
Christian Brabandt <cb@256bit.org>
parents: 8451
diff changeset
11 if has('win32')
30552
a7a9e8b9af89 patch 9.0.0611: tests delete files with a separate delete() call
Bram Moolenaar <Bram@vim.org>
parents: 30051
diff changeset
12 call assert_equal('rw-rw-rw-', getfperm('XtestPerm'))
8461
988ddc5742f5 commit https://github.com/vim/vim/commit/8322e1f06e8fa39a6bb790a7d8d7db5d7aff3366
Christian Brabandt <cb@256bit.org>
parents: 8451
diff changeset
13 else
30552
a7a9e8b9af89 patch 9.0.0611: tests delete files with a separate delete() call
Bram Moolenaar <Bram@vim.org>
parents: 30051
diff changeset
14 call assert_equal('rwx------', getfperm('XtestPerm'))
8461
988ddc5742f5 commit https://github.com/vim/vim/commit/8322e1f06e8fa39a6bb790a7d8d7db5d7aff3366
Christian Brabandt <cb@256bit.org>
parents: 8451
diff changeset
15 endif
8451
c0b5c2b0a5ee commit https://github.com/vim/vim/commit/8049253b96838b3584600e5ad229abad37a95b10
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
16
30552
a7a9e8b9af89 patch 9.0.0611: tests delete files with a separate delete() call
Bram Moolenaar <Bram@vim.org>
parents: 30051
diff changeset
17 call assert_equal(1, setfperm('XtestPerm', 'r--r--r--'))
a7a9e8b9af89 patch 9.0.0611: tests delete files with a separate delete() call
Bram Moolenaar <Bram@vim.org>
parents: 30051
diff changeset
18 call assert_equal('r--r--r--', getfperm('XtestPerm'))
8451
c0b5c2b0a5ee commit https://github.com/vim/vim/commit/8049253b96838b3584600e5ad229abad37a95b10
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
19
30552
a7a9e8b9af89 patch 9.0.0611: tests delete files with a separate delete() call
Bram Moolenaar <Bram@vim.org>
parents: 30051
diff changeset
20 call assert_fails("setfperm('XtestPerm', '---')")
8451
c0b5c2b0a5ee commit https://github.com/vim/vim/commit/8049253b96838b3584600e5ad229abad37a95b10
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
21
30552
a7a9e8b9af89 patch 9.0.0611: tests delete files with a separate delete() call
Bram Moolenaar <Bram@vim.org>
parents: 30051
diff changeset
22 call assert_equal(1, setfperm('XtestPerm', 'rwx------'))
19783
546bdeef35f1 patch 8.2.0448: various functions not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 17857
diff changeset
23
30051
13b02c1ea0f7 patch 9.0.0363: common names in test files causes tests to be flaky
Bram Moolenaar <Bram@vim.org>
parents: 19783
diff changeset
24 call assert_fails("call setfperm(['Xpermfile'], 'rw-rw-rw-')", 'E730:')
13b02c1ea0f7 patch 9.0.0363: common names in test files causes tests to be flaky
Bram Moolenaar <Bram@vim.org>
parents: 19783
diff changeset
25 call assert_fails("call setfperm('Xpermfile', [])", 'E730:')
13b02c1ea0f7 patch 9.0.0363: common names in test files causes tests to be flaky
Bram Moolenaar <Bram@vim.org>
parents: 19783
diff changeset
26 call assert_fails("call setfperm('Xpermfile', 'rwxrwxrwxrw')", 'E475:')
8451
c0b5c2b0a5ee commit https://github.com/vim/vim/commit/8049253b96838b3584600e5ad229abad37a95b10
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
27 endfunc
19783
546bdeef35f1 patch 8.2.0448: various functions not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 17857
diff changeset
28
546bdeef35f1 patch 8.2.0448: various functions not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 17857
diff changeset
29 " vim: shiftwidth=2 sts=2 expandtab