@@ 0,0 1,14 @@
+<?php
+
+namespace BareMess\Example;
+
+use BareMess\UInt;
+
+class Department extends UInt
+{
+ public const ACCOUNTING = 0;
+ public const ADMINISTRATION = 1;
+ public const CUSTOMER_SERVICE = 2;
+ public const DEVELOPMENT = 3;
+ public const JSMITH = 99;
+}
@@ 3,6 3,7 @@
namespace BareMess\Tests;
use BareMess\Bare;
+use BareMess\Example\Department;
use BareMess\Example\PublicKey;
use BareMess\{I8,I16,I32,I64};
use BareMess\{U8,U16,U32,U64};
@@ 48,6 49,16 @@ class PrimitivesTest extends TestCase
$this->assertEquals($value, $pk3->get());
}
+ public function testEnum()
+ {
+ $dept = new Department();
+ $dept->set(Department::ACCOUNTING);
+ $this->assertEquals(Department::ACCOUNTING, $dept->get());
+ $dept->set(Department::DEVELOPMENT);
+ // This is just a UInt, so testing doesn't need to be extensive here.
+ $this->assertEquals("\x03", $dept->mess());
+ }
+
public function testIs()
{
$i8 = new I8();