Skip to content

Commit 7e2a196

Browse files
committed
---
yaml --- r: 5673 b: refs/heads/master c: 51ae302 h: refs/heads/master i: 5671: 82629a1 v: v3
1 parent 971e58e commit 7e2a196

File tree

3 files changed

+46
-1
lines changed

3 files changed

+46
-1
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
11
---
2-
refs/heads/master: 0e5ea4d64f43cfbf91670b3d13ff3be7562d99fd
2+
refs/heads/master: 51ae30287bf8512cde8747d7ae6788ec5ac41395

trunk/src/lib/fs.rs

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,15 @@ fn make_absolute(p: path) -> path {
7676
if path_is_absolute(p) { ret p; } else { ret connect(getcwd(), p); }
7777
}
7878

79+
fn split(p: path) -> [path] {
80+
let split1 = str::split(p, os_fs::path_sep as u8);
81+
let split2 = [];
82+
for s in split1 {
83+
split2 += str::split(s, os_fs::alt_path_sep as u8);
84+
}
85+
ret split2;
86+
}
87+
7988
// Local Variables:
8089
// mode: rust;
8190
// fill-column: 78;

trunk/src/test/stdtest/fs.rs

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,3 +28,39 @@ fn file_is_dir() {
2828
assert (fs::file_is_dir("."));
2929
assert (!fs::file_is_dir("test/stdtest/fs.rs"));
3030
}
31+
32+
fn ps() -> str {
33+
fs::path_sep()
34+
}
35+
36+
fn aps() -> str {
37+
"/"
38+
}
39+
40+
#[test]
41+
fn split1() {
42+
let actual = fs::split("a" + ps() + "b");
43+
let expected = ["a", "b"];
44+
assert actual == expected;
45+
}
46+
47+
#[test]
48+
fn split2() {
49+
let actual = fs::split("a" + aps() + "b");
50+
let expected = ["a", "b"];
51+
assert actual == expected;
52+
}
53+
54+
#[test]
55+
fn split3() {
56+
let actual = fs::split(ps() + "a" + ps() + "b");
57+
let expected = ["a", "b"];
58+
assert actual == expected;
59+
}
60+
61+
#[test]
62+
fn split4() {
63+
let actual = fs::split("a" + ps() + "b" + aps() + "c");
64+
let expected = ["a", "b", "c"];
65+
assert actual == expected;
66+
}

0 commit comments

Comments
 (0)