annotate test/org/tmatesoft/hg/test/TestFileFlags.java @ 608:e1b29756f901

Clean, organize and resolve some TODOs and FIXMEs: minor refactorings and comments
author Artem Tikhomirov <tikhomirov.artem@gmail.com>
date Tue, 07 May 2013 21:27:51 +0200
parents b3c16d1aede0
children 6526d8adbc0f
rev   line source
477
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
1 /*
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
2 * Copyright (c) 2012 TMate Software Ltd
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
3 *
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
4 * This program is free software; you can redistribute it and/or modify
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
5 * it under the terms of the GNU General Public License as published by
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
6 * the Free Software Foundation; version 2 of the License.
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
7 *
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
8 * This program is distributed in the hope that it will be useful,
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
11 * GNU General Public License for more details.
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
12 *
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
13 * For information on how to redistribute this software under
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
14 * the terms of a license other than GNU General Public License
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
15 * contact TMate Software at support@hg4j.com
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
16 */
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
17 package org.tmatesoft.hg.test;
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
18
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
19 import static org.junit.Assert.*;
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
20 import static org.tmatesoft.hg.repo.HgRepository.TIP;
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
21
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
22 import java.io.File;
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
23
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
24 import org.junit.After;
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
25 import org.junit.Before;
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
26 import org.junit.Rule;
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
27 import org.junit.Test;
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
28 import org.tmatesoft.hg.internal.Internals;
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
29 import org.tmatesoft.hg.internal.RelativePathRewrite;
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
30 import org.tmatesoft.hg.repo.HgDataFile;
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
31 import org.tmatesoft.hg.repo.HgManifest.Flags;
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
32 import org.tmatesoft.hg.repo.HgRepository;
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
33 import org.tmatesoft.hg.util.FileInfo;
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
34 import org.tmatesoft.hg.util.FileWalker;
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
35 import org.tmatesoft.hg.util.Path;
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
36 import org.tmatesoft.hg.util.PathRewrite;
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
37
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
38 /**
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
39 * {junit-test-repos}/test-flags/
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
40 *
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
41 * <p>Node, JAR can't keep symlinks. Solution would be to keep
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
42 * repo without WC and perform an `hg co -C` before use if we
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
43 * need files from working copy.
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
44 *
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
45 * @author Artem Tikhomirov
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
46 * @author TMate Software Ltd.
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
47 */
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
48 public class TestFileFlags {
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
49 @Rule
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
50 public ErrorCollectorExt errorCollector = new ErrorCollectorExt();
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
51
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
52 private HgRepository repo;
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
53
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
54 @Test
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
55 public void testFlagsInManifest() {
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
56 HgDataFile link = repo.getFileNode("file-link");
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
57 HgDataFile exec = repo.getFileNode("file-exec");
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
58 HgDataFile file = repo.getFileNode("regular-file");
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
59 assertEquals(Flags.Link, link.getFlags(TIP));
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
60 assertEquals(Flags.Exec, exec.getFlags(TIP));
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
61 assertEquals(Flags.RegularFile, file.getFlags(TIP));
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
62 }
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
63
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
64 @Test
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
65 public void testFlagsInWorkingCopy() throws Exception {
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
66 File repoRoot = repo.getWorkingDir();
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
67 Path.Source pathSrc = new Path.SimpleSource(new PathRewrite.Composite(new RelativePathRewrite(repoRoot), repo.getToRepoPathHelper()));
608
e1b29756f901 Clean, organize and resolve some TODOs and FIXMEs: minor refactorings and comments
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents: 490
diff changeset
68 FileWalker fw = new FileWalker(repo, repoRoot, pathSrc, null);
477
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
69
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
70 if (Internals.runningOnWindows()) {
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
71 System.out.println("Executing tests on Windows, no actual file flags in working area are checked");
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
72 assertFalse(fw.supportsExecFlag());
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
73 assertFalse(fw.supportsLinkFlag());
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
74 return;
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
75 } else {
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
76 assertTrue(fw.supportsExecFlag());
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
77 assertTrue(fw.supportsLinkFlag());
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
78 }
479
59b7c817bc4d Methods from Main graduated as tests
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents: 477
diff changeset
79 ExecHelper eh = new ExecHelper(new OutputParser.Stub(false), repo.getWorkingDir());
477
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
80 eh.run("hg", "checkout", "-C");
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
81
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
82 boolean exec, link, file;
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
83 exec = link = file = false;
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
84 while (fw.hasNext()) {
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
85 fw.next();
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
86 FileInfo fi = fw.file();
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
87 String fn = fw.name().toString();
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
88 if (fn.equals("file-link")) {
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
89 link = true;
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
90 errorCollector.assertTrue("Symlink shall exist despite the fact it points to nowhere", fi.exists());
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
91 errorCollector.assertFalse(fi.isExecutable());
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
92 errorCollector.assertTrue(fi.isSymlink());
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
93 } else if (fn.equals("file-exec")) {
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
94 exec = true;
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
95 errorCollector.assertTrue(fi.isExecutable());
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
96 errorCollector.assertFalse(fi.isSymlink());
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
97 } else if (fn.equals("regular-file")) {
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
98 file = true;
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
99 errorCollector.assertFalse(fi.isExecutable());
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
100 errorCollector.assertFalse(fi.isSymlink());
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
101 }
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
102 }
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
103 errorCollector.assertTrue("Missing executable file in WC", exec);
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
104 errorCollector.assertTrue("Missing symlink in WC", link);
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
105 errorCollector.assertTrue("Missing regular file in WC", file);
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
106 }
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
107
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
108 @Before
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
109 public void assignRepo() throws Exception {
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
110 repo = Configuration.get().find("test-flags");
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
111 }
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
112
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
113 @After
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
114 public void cleanFiles() {
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
115 File link = new File(repo.getWorkingDir(), "file-link");
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
116 File exec = new File(repo.getWorkingDir(), "file-exec");
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
117 File file = new File(repo.getWorkingDir(), "regular-file");
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
118 if (link.exists()) {
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
119 link.deleteOnExit();
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
120 }
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
121 if (exec.exists()) {
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
122 exec.deleteOnExit();
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
123 }
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
124 if (file.exists()) {
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
125 file.deleteOnExit();
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
126 }
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
127 }
9c9d09111aee Tests for file flags(exec, link, regular)
Artem Tikhomirov <tikhomirov.artem@gmail.com>
parents:
diff changeset
128 }