extern crate mtl;
extern crate libc;

use mtl::{Device};

#[test]
fn get_device() {
    let device = Device::system_default_device();
    assert!(device.is_ok());
}

#[test]
fn get_device_name() {
    let device = Device::system_default_device().unwrap();
    assert!(!device.name().into_owned().is_empty());
}

extern crate mtl;
extern crate libc;

use mtl::sys::{MTLCopyAllDevices,MTLOrigin, MTLOriginMake, MTLClearColorMake};

#[test]
fn it_works() {
    let _origin = MTLOriginMake(50, 21, 11);
    let _color = MTLClearColorMake(50.0, 21.0, 11.0, 100.0);
    let _hi = unsafe { MTLCopyAllDevices() };
}

--- 
+++ 
@@ -1,11 +1,16 @@
 extern crate mtl;
 extern crate libc;
 
-use mtl::sys::{MTLCopyAllDevices,MTLOrigin, MTLOriginMake, MTLClearColorMake};
+use mtl::{Device};
 
 #[test]
-fn it_works() {
-    let _origin = MTLOriginMake(50, 21, 11);
-    let _color = MTLClearColorMake(50.0, 21.0, 11.0, 100.0);
-    let _hi = unsafe { MTLCopyAllDevices() };
+fn get_device() {
+    let device = Device::system_default_device();
+    assert!(device.is_ok());
 }
+
+#[test]
+fn get_device_name() {
+    let device = Device::system_default_device().unwrap();
+    assert!(!device.name().into_owned().is_empty());
+}
Add some proper high level tests
