kerneltest/e32test/property/t_prop_ldd.cpp
changeset 271 dc268b18d709
parent 0 a41df078684a
--- a/kerneltest/e32test/property/t_prop_ldd.cpp	Mon Sep 13 15:16:07 2010 +0100
+++ b/kerneltest/e32test/property/t_prop_ldd.cpp	Wed Sep 22 10:53:45 2010 +0100
@@ -1,4 +1,4 @@
-// Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies).
+// Copyright (c) 2002-2010 Nokia Corporation and/or its subsidiary(-ies).
 // All rights reserved.
 // This component and the accompanying materials are made available
 // under the terms of the License "Eclipse Public License v1.0"
@@ -135,6 +135,7 @@
 	for (TUint i = 0; i < count; ++i)
 		{
 		RPropertyRef prop;
+		TPropertyStatus propStatus;
 		TInt r = prop.Open(category, key);
 		BASIC_ERROR(r, r == KErrNotFound);
 		r = prop.Attach(category, key);
@@ -146,8 +147,20 @@
 
 		TSecurityPolicy policy;
 
+		NKern::LockSystem();
+		TBool defined = prop.GetStatus(propStatus);
+		NKern::UnlockSystem();
+		BASIC_ERROR(defined, !defined); // should be EFALSE when not defined
+		
 		r = prop.Define(type, policy, policy);
 		BASIC_ERROR(r, r == KErrNone);
+
+		NKern::LockSystem();
+		defined = prop.GetStatus(propStatus);
+		NKern::UnlockSystem();
+		BASIC_ERROR(defined, defined);  // should be ETRUE, when defined
+		BASIC_ERROR(propStatus.iType, propStatus.iType==type);
+
 		r = prop.Define(type, policy, policy);
 		BASIC_ERROR(r, r == KErrAlreadyExists);
 		r = prop.Delete();
@@ -339,6 +352,12 @@
 			TPtr8 optr((TUint8*) obuf.Ptr(), 0, 15);
 			r = prop.Set(ibuf);
 			BASIC_ERROR(r, r == KErrNone);
+
+			NKern::LockSystem();
+			defined = prop.GetStatus(propStatus);
+			NKern::UnlockSystem();
+			BASIC_ERROR(propStatus.iSize, propStatus.iSize == ibuf.Length());
+
 			r = prop.Get(optr);
 			BASIC_ERROR(r, r == KErrOverflow);
 			BASIC_ERROR(optr.Length(), optr.Length() == 15);