blob: fc5085953299e892f882d15916f4cfcce6e29634 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
import std::generic_os::setenv;
import std::generic_os::getenv;
import std::option;
#[test]
fn test_setenv() {
// NB: Each test of setenv needs to use different variable names or the
// tests will not be threadsafe
setenv(~"NAME1", ~"VALUE");
assert (getenv(~"NAME1") == option::some(~"VALUE"));
}
#[test]
fn test_setenv_overwrite() {
setenv(~"NAME2", ~"1");
setenv(~"NAME2", ~"2");
assert (getenv(~"NAME2") == option::some(~"2"));
}
// Windows GetEnvironmentVariable requires some extra work to make sure
// the buffer the variable is copied into is the right size
#[test]
fn test_getenv_big() {
let s = ~"";
let i = 0;
while i < 100 { s += ~"aaaaaaaaaa"; i += 1; }
setenv(~"NAME3", s);
assert (getenv(~"NAME3") == option::some(s));
}
// Local Variables:
// mode: rust;
// fill-column: 78;
// indent-tabs-mode: nil
// c-basic-offset: 4
// buffer-file-coding-system: utf-8-unix
// compile-command: "make -k -C .. 2>&1 | sed -e 's/\\/x\\//x:\\//g'";
// End:
|