-IN: alien.tests
USING: accessors alien alien.accessors alien.syntax byte-arrays arrays
kernel kernel.private namespaces tools.test sequences libc math
-system prettyprint layouts ;
+system prettyprint layouts alien.libraries sets ;
+FROM: namespaces => set ;
+IN: alien.tests
[ t ] [ -1 <alien> alien-address 0 > ] unit-test
] unit-test
cell 8 = [
- [ HEX: 123412341234 ] [
+ [ 0x123412341234 ] [
8 <byte-array>
- HEX: 123412341234 over 0 set-alien-signed-8
+ 0x123412341234 over 0 set-alien-signed-8
0 alien-signed-8
] unit-test
- [ HEX: 123412341234 ] [
+ [ 0x123412341234 ] [
8 <byte-array>
- HEX: 123412341234 over 0 set-alien-signed-cell
+ 0x123412341234 over 0 set-alien-signed-cell
0 alien-signed-cell
] unit-test
] when
-[ "ALIEN: 1234" ] [ 1234 <alien> unparse ] unit-test
+[ "ALIEN: 1234" ] [ 0x1234 <alien> unparse ] unit-test
[ ] [ 0 B{ 1 2 3 } <displaced-alien> drop ] unit-test
[ 1 1 <displaced-alien> ] must-fail
-[ f ] [ 0 B{ 1 2 3 } <displaced-alien> pinned-c-ptr? ] unit-test
+[ f ] [ 1 B{ 1 2 3 } <displaced-alien> pinned-c-ptr? ] unit-test
-[ f ] [ 0 B{ 1 2 3 } <displaced-alien> 1 swap <displaced-alien> pinned-c-ptr? ] unit-test
+[ f ] [ 2 B{ 1 2 3 } <displaced-alien> 1 swap <displaced-alien> pinned-c-ptr? ] unit-test
[ t ] [ 0 B{ 1 2 3 } <displaced-alien> 1 swap <displaced-alien> underlying>> byte-array? ] unit-test
-[ "( displaced alien )" ] [ 0 B{ 1 2 3 } <displaced-alien> unparse ] unit-test
+[ "( displaced alien )" ] [ 1 B{ 1 2 3 } <displaced-alien> unparse ] unit-test
+
+SYMBOL: initialize-test
+
+f initialize-test set-global
+
+[ 31337 ] [ initialize-test [ 31337 ] initialize-alien ] unit-test
+
+[ 31337 ] [ initialize-test [ 69 ] initialize-alien ] unit-test
+
+[ ] [ initialize-test get BAD-ALIEN >>alien drop ] unit-test
-[ f ] [ DLL" fadfasdfsada" dll-valid? ] unit-test
+[ 7575 ] [ initialize-test [ 7575 ] initialize-alien ] unit-test
-[ f ] [ "does not exist" DLL" fadsfasfdsaf" dlsym ] unit-test
+[ { BAD-ALIEN } ] [ { BAD-ALIEN BAD-ALIEN BAD-ALIEN } members ] unit-test