1# Test that editing a symlink does not mangle it 2 3body common control 4{ 5 inputs => { "../../default.cf.sub" }; 6 bundlesequence => { default("$(this.promise_filename)") }; 7 version => "1.0"; 8} 9 10bundle agent init 11{ 12 files: 13 "$(G.testdir)/file_dir/file" 14 create => "true", 15 edit_line => edit_init; 16 "$(G.testdir)/link_dir/." 17 create => "true"; 18 "$(G.testdir)/link_dir/link" 19 link_from => link_init; 20} 21 22bundle edit_line edit_init 23{ 24 insert_lines: 25 "Initial line"; 26} 27 28body link_from link_init 29{ 30 link_type => "symlink"; 31 source => "../file_dir/file"; 32} 33 34bundle agent test 35{ 36 meta: 37 "test_skip_unsupported" string => "windows"; 38 39 files: 40 "$(G.testdir)/link_dir/link" 41 edit_line => edit_test; 42} 43 44bundle edit_line edit_test 45{ 46 insert_lines: 47 "Added line"; 48} 49 50bundle agent check 51{ 52 classes: 53 "link_ok" expression => islink("$(G.testdir)/link_dir/link"); 54 "file_ok" not => islink("$(G.testdir)/file_dir/file"); 55 "link_line_one_ok" expression => regline("Initial line", "$(G.testdir)/link_dir/link"); 56 "file_line_one_ok" expression => regline("Initial line", "$(G.testdir)/file_dir/file"); 57 "link_line_two_ok" expression => regline("Added line", "$(G.testdir)/link_dir/link"); 58 "file_line_two_ok" expression => regline("Added line", "$(G.testdir)/file_dir/file"); 59 "ok" and => { "link_ok", "file_ok", "link_line_one_ok", "file_line_one_ok", "link_line_two_ok", "file_line_two_ok" }; 60 61 reports: 62 ok:: 63 "$(this.promise_filename) Pass"; 64 !ok:: 65 "$(this.promise_filename) FAIL"; 66} 67 68### PROJECT_ID: core 69### CATEGORY_ID: 27 70