forked from LeenkxTeam/LNXSDK
Update Files
This commit is contained in:
53
Kha/Backends/Kinc-hxcpp/khacpp/test/native/tests/TestRgb.hx
Normal file
53
Kha/Backends/Kinc-hxcpp/khacpp/test/native/tests/TestRgb.hx
Normal file
@ -0,0 +1,53 @@
|
||||
package tests;
|
||||
import externs.RGB;
|
||||
|
||||
class TestRgb extends haxe.unit.TestCase
|
||||
{
|
||||
public function testCreate()
|
||||
{
|
||||
// Pointer-like sysntax
|
||||
var rgbPtr = RGB.create(255,0,128);
|
||||
assertTrue( rgbPtr.ptr.toInt() == 0xff0080 );
|
||||
rgbPtr.ptr.deleteMe();
|
||||
|
||||
|
||||
// Structure-like syntax
|
||||
var rgbStruct:RGBStruct = null;
|
||||
rgbStruct.r = 1;
|
||||
rgbStruct = null;
|
||||
rgbStruct.r = 1;
|
||||
rgbStruct.g = 2;
|
||||
rgbStruct.b = 3;
|
||||
assertTrue( rgbStruct.toInt() == 0x010203 );
|
||||
// Store in dynamic
|
||||
var d:Dynamic = rgbStruct;
|
||||
|
||||
// Reference (pointer) like syntax
|
||||
var rgbRef:RGBRef = rgbStruct;
|
||||
rgbRef.g = 255;
|
||||
assertTrue( rgbStruct.toInt() == 0x01ff03 );
|
||||
|
||||
// Get from dynamic
|
||||
rgbStruct = d;
|
||||
assertTrue( rgbStruct.toInt() == 0x010203 );
|
||||
|
||||
var rgbStruct2:RGBStruct = cast rgbRef;
|
||||
assertTrue( rgbStruct2.toInt() == 0x010203 );
|
||||
|
||||
// Reference refers to rgbStruct, not rgbStruct2
|
||||
rgbRef.b = 0;
|
||||
assertTrue( rgbStruct2.toInt() == 0x010203 );
|
||||
assertTrue( rgbStruct.toInt() == 0x010200 );
|
||||
|
||||
|
||||
// TODO - non-dynamic versions
|
||||
var d2:Dynamic = rgbStruct2;
|
||||
// == dynamic
|
||||
assertTrue( d2==d );
|
||||
// != dynamic
|
||||
var d0:Dynamic = rgbStruct;
|
||||
assertTrue( d0!=d );
|
||||
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user