Skip to content

Commit 1c780b4

Browse files
committed
Make the setenv tests threadsafe(ish)
1 parent 797cd9f commit 1c780b4

File tree

1 file changed

+9
-7
lines changed

1 file changed

+9
-7
lines changed

src/test/stdtest/os.rs

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -4,15 +4,17 @@ import std::option;
44

55
#[test]
66
fn test_setenv() {
7-
setenv("NAME", "VALUE");
8-
assert getenv("NAME") == option::some("VALUE");
7+
// NB: Each test of setenv needs to use different variable names or the
8+
// tests will not be threadsafe
9+
setenv("NAME1", "VALUE");
10+
assert getenv("NAME1") == option::some("VALUE");
911
}
1012

1113
#[test]
1214
fn test_setenv_overwrite() {
13-
setenv("NAME", "1");
14-
setenv("NAME", "2");
15-
assert getenv("NAME") == option::some("2");
15+
setenv("NAME2", "1");
16+
setenv("NAME2", "2");
17+
assert getenv("NAME2") == option::some("2");
1618
}
1719

1820
// Windows GetEnvironmentVariable requires some extra work to make sure
@@ -25,8 +27,8 @@ fn test_getenv_big() {
2527
s += "aaaaaaaaaa";
2628
i += 1;
2729
}
28-
setenv("NAME", s);
29-
assert getenv("NAME") == option::some(s);
30+
setenv("NAME3", s);
31+
assert getenv("NAME3") == option::some(s);
3032
}
3133

3234
// Local Variables:

0 commit comments

Comments
 (0)