public void _09_UintArrayAttributeTest() { Helpers.CheckPlatform(); List <NativeULong> originalValue = new List <NativeULong>(); originalValue.Add(333333); originalValue.Add(666666); // Create attribute with NativeULong array value using (ObjectAttribute attr = new ObjectAttribute(CKA.CKA_ALLOWED_MECHANISMS, originalValue)) { Assert.IsTrue(attr.Type == NativeLongUtils.ConvertFromCKA(CKA.CKA_ALLOWED_MECHANISMS)); List <NativeULong> recoveredValue = attr.GetValueAsNativeULongList(); for (int i = 0; i < recoveredValue.Count; i++) { Assert.IsTrue(originalValue[i] == recoveredValue[i]); } } originalValue = null; // Create attribute with null NativeULong array value using (ObjectAttribute attr = new ObjectAttribute(CKA.CKA_ALLOWED_MECHANISMS, originalValue)) { Assert.IsTrue(attr.Type == NativeLongUtils.ConvertFromCKA(CKA.CKA_ALLOWED_MECHANISMS)); Assert.IsTrue(attr.GetValueAsNativeULongList() == originalValue); } originalValue = new List <NativeULong>(); // Create attribute with empty NativeULong array value using (ObjectAttribute attr = new ObjectAttribute(CKA.CKA_ALLOWED_MECHANISMS, originalValue)) { Assert.IsTrue(attr.Type == NativeLongUtils.ConvertFromCKA(CKA.CKA_ALLOWED_MECHANISMS)); Assert.IsTrue(attr.GetValueAsNativeULongList() == null); } }