Browse Source

The Test encodeDataValue_test has been added.

MaximilianBauer 11 years ago
parent
commit
84ee840820

+ 0 - 1
OPCUAServer/.cproject

@@ -499,7 +499,6 @@
 			</target>
 			<target name="Server" path="src" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
 				<buildCommand>make</buildCommand>
-				<buildArguments/>
 				<buildTarget>Server</buildTarget>
 				<stopOnError>true</stopOnError>
 				<useDefaultCommand>true</useDefaultCommand>

+ 5 - 5
OPCUAServer/m4/ltversion.m4

@@ -9,15 +9,15 @@
 
 # @configure_input@
 
-# serial 3294 ltversion.m4
+# serial 3337 ltversion.m4
 # This file is part of GNU Libtool
 
-m4_define([LT_PACKAGE_VERSION], [2.4])
-m4_define([LT_PACKAGE_REVISION], [1.3294])
+m4_define([LT_PACKAGE_VERSION], [2.4.2])
+m4_define([LT_PACKAGE_REVISION], [1.3337])
 
 AC_DEFUN([LTVERSION_VERSION],
-[macro_version='2.4'
-macro_revision='1.3294'
+[macro_version='2.4.2'
+macro_revision='1.3337'
 _LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?])
 _LT_DECL(, macro_revision, 0)
 ])

+ 1 - 1
OPCUAServer/src/opcua_binaryEncDec.c

@@ -1123,7 +1123,7 @@ Int32 decodeVariant(char * const buf, Int32 *pos, UA_Variant *dstVariant)
 	{
 		decoder_decodeBuiltInDatatype(buf, INT32, pos,
 				&(dstVariant->ArrayLength));
-		dstVariant->Value->
+		//dstVariant->Value->
 	}
 
 

+ 4 - 4
OPCUAServer/src/opcua_builtInDatatypes.h

@@ -107,7 +107,7 @@ typedef enum
 	VARIANT_MATRIX = 216,
 	DIAGNOSTIC_INFO_MATRIX = 217
 }
-UA_BuiltInDataTypes_Array;
+UA_BuiltInDataTypes_Matrix;
 
 
 
@@ -465,7 +465,7 @@ typedef struct
 	UInt32 *data;
 	Int32 arrayLength;
 	IntegerString  dimensions;
-}UInt32_Array
+}UInt32_Array;
 
 typedef struct
 {
@@ -574,14 +574,14 @@ typedef struct
 
 typedef struct
 {
-	UA_DataValue *data;
+	struct UA_DataValue *data;
 	Int32 arrayLength;
 	IntegerString  dimensions;
 }DataValue_Array;
 
 typedef struct
 {
-	UA_Variant *data;
+	struct UA_Variant *data;
 	Int32 arrayLength;
 	IntegerString  dimensions;
 }Variant_Array;

+ 45 - 0
OPCUAServer/tests/check_stack.c

@@ -498,6 +498,37 @@ START_TEST(responseHeader_calcSize_test)
 
 }
 END_TEST
+
+START_TEST(encodeDataValue_test)
+{
+	UA_DataValue dataValue;
+	Int32 pos = 0;
+	char *buf = (char*)opcua_malloc(500);
+
+	buf[0] = 99;
+	buf[1] = 99;
+	buf[2] = 99;
+
+	//without Variant
+	dataValue.EncodingMask = 0x08; //Only the SourvePicoseconds
+	UA_Variant variant;
+	variant.ArrayLength = 0;
+	variant.EncodingMask = VTEMT_UINT32;
+	UA_VariantUnion variantUnion;
+	variantUnion.Int32 = 45;
+	variant.Value = &variantUnion;
+	dataValue.Value = variant;
+	dataValue.SourcePicoseconds = 12;
+	dataValue.ServerPicoseconds = 34;
+
+	encodeDataValue(&dataValue, &pos, buf);
+	ck_assert_int_eq(pos, 3);// represents the length
+	ck_assert_int_eq(buf[0], 0x08);
+	ck_assert_int_eq(buf[1], 0);
+	ck_assert_int_eq(buf[2], 12);
+}
+END_TEST
+
 Suite *testSuite_getPacketType(void)
 {
 	Suite *s = suite_create("getPacketType");
@@ -673,6 +704,14 @@ Suite * testSuite_decodeUAString(void)
 	return s;
 }
 
+Suite* testSuite_encodeDataValue()
+{
+	Suite *s = suite_create("encodeDataValue");
+	TCase *tc_core = tcase_create("Core");
+	tcase_add_test(tc_core, encodeDataValue_test);
+	suite_add_tcase(s,tc_core);
+	return s;
+}
 
 /*
 Suite* TL_<TESTSUITENAME>(void)
@@ -708,6 +747,7 @@ Suite* testSuite_responseHeader_calcSize()
 	suite_add_tcase(s,tc_core);
 	return s;
 }
+
 int main (void)
 {
 	int number_failed = 0;
@@ -840,6 +880,11 @@ int main (void)
 	number_failed += srunner_ntests_failed(sr);
 	srunner_free(sr);
 
+	s = testSuite_encodeDataValue();
+	sr = srunner_create(s);
+	srunner_run_all(sr,CK_NORMAL);
+	number_failed += srunner_ntests_failed(sr);
+	srunner_free(sr);
 
 	/* <TESTSUITE_TEMPLATE>
 	s =  <TESTSUITENAME>;