Skip to content

Commit a9f7cbe

Browse files
committed
stdlib: Add tests for sys::size_of and sys::align_of
1 parent 1f74af5 commit a9f7cbe

File tree

1 file changed

+45
-0
lines changed

1 file changed

+45
-0
lines changed

src/test/stdtest/sys.rs

+45
Original file line numberDiff line numberDiff line change
@@ -4,3 +4,48 @@ import std::sys;
44
fn last_os_error() {
55
log sys::last_os_error();
66
}
7+
8+
#[test]
9+
fn size_of_basic() {
10+
assert sys::size_of::<u8>() == 1u;
11+
assert sys::size_of::<u16>() == 2u;
12+
assert sys::size_of::<u32>() == 4u;
13+
assert sys::size_of::<u64>() == 8u;
14+
}
15+
16+
#[test]
17+
#[cfg(target_arch = "x86")]
18+
#[cfg(target_arch = "arm")]
19+
fn size_of_32() {
20+
assert sys::size_of::<uint>() == 4u;
21+
assert sys::size_of::<*uint>() == 4u;
22+
}
23+
24+
#[test]
25+
#[cfg(target_arch = "x86_64")]
26+
fn size_of_64() {
27+
assert sys::size_of::<uint>() == 8u;
28+
assert sys::size_of::<*uint>() == 8u;
29+
}
30+
31+
#[test]
32+
fn align_of_basic() {
33+
assert sys::align_of::<u8>() == 1u;
34+
assert sys::align_of::<u16>() == 2u;
35+
assert sys::align_of::<u32>() == 4u;
36+
}
37+
38+
#[test]
39+
#[cfg(target_arch = "x86")]
40+
#[cfg(target_arch = "arm")]
41+
fn align_of_32() {
42+
assert sys::align_of::<uint>() == 4u;
43+
assert sys::align_of::<*uint>() == 4u;
44+
}
45+
46+
#[test]
47+
#[cfg(target_arch = "x86_64")]
48+
fn align_of_64() {
49+
assert sys::align_of::<uint>() == 8u;
50+
assert sys::align_of::<*uint>() == 8u;
51+
}

0 commit comments

Comments
 (0)