mirror of
https://github.com/emqx/neuron.git
synced 2026-10-26 20:09:48 +08:00
Fix memory leak in data_val_test.cc and reformat source files
This commit is contained in:
@@ -1132,6 +1132,7 @@ int neu_dvalue_serialize(neu_data_val_t *val, uint8_t **p_buf)
|
||||
|
||||
size = do_dvalue_serialize(val, out_buf);
|
||||
if (size == 0) {
|
||||
free(out_buf);
|
||||
return -1;
|
||||
}
|
||||
|
||||
|
||||
+8
-8
@@ -33,7 +33,7 @@ neu_double_t neu_bytedec_toDouble(neu_bytedec_t b)
|
||||
neu_word_t dec = 1;
|
||||
for (int m = 0; m < b.decimal; m++)
|
||||
dec *= 10;
|
||||
return (((neu_double_t) (b.value % dec)) / dec + b.value / dec);
|
||||
return (((neu_double_t)(b.value % dec)) / dec + b.value / dec);
|
||||
}
|
||||
|
||||
neu_double_t neu_ubytedec_toDouble(neu_ubytedec_t ub)
|
||||
@@ -41,7 +41,7 @@ neu_double_t neu_ubytedec_toDouble(neu_ubytedec_t ub)
|
||||
neu_word_t dec = 1;
|
||||
for (int m = 0; m < ub.decimal; m++)
|
||||
dec *= 10;
|
||||
return (((neu_double_t) (ub.value % dec)) / dec + ub.value / dec);
|
||||
return (((neu_double_t)(ub.value % dec)) / dec + ub.value / dec);
|
||||
}
|
||||
|
||||
neu_double_t neu_worddec_toDouble(neu_worddec_t w)
|
||||
@@ -49,7 +49,7 @@ neu_double_t neu_worddec_toDouble(neu_worddec_t w)
|
||||
neu_word_t dec = 1;
|
||||
for (int m = 0; m < w.decimal; m++)
|
||||
dec *= 10;
|
||||
return (((neu_double_t) (w.value % dec)) / dec + w.value / dec);
|
||||
return (((neu_double_t)(w.value % dec)) / dec + w.value / dec);
|
||||
}
|
||||
|
||||
neu_double_t neu_uworddec_toDouble(neu_uworddec_t uw)
|
||||
@@ -57,7 +57,7 @@ neu_double_t neu_uworddec_toDouble(neu_uworddec_t uw)
|
||||
neu_word_t dec = 1;
|
||||
for (int m = 0; m < uw.decimal; m++)
|
||||
dec *= 10;
|
||||
return (((neu_double_t) (uw.value % dec)) / dec + uw.value / dec);
|
||||
return (((neu_double_t)(uw.value % dec)) / dec + uw.value / dec);
|
||||
}
|
||||
|
||||
neu_double_t neu_dworddec_toDouble(neu_dworddec_t dw)
|
||||
@@ -65,7 +65,7 @@ neu_double_t neu_dworddec_toDouble(neu_dworddec_t dw)
|
||||
neu_word_t dec = 1;
|
||||
for (int m = 0; m < dw.decimal; m++)
|
||||
dec *= 10;
|
||||
return (((neu_double_t) (dw.value % dec)) / dec + dw.value / dec);
|
||||
return (((neu_double_t)(dw.value % dec)) / dec + dw.value / dec);
|
||||
}
|
||||
|
||||
neu_double_t neu_udworddec_toDouble(neu_udworddec_t udw)
|
||||
@@ -73,7 +73,7 @@ neu_double_t neu_udworddec_toDouble(neu_udworddec_t udw)
|
||||
neu_word_t dec = 1;
|
||||
for (int m = 0; m < udw.decimal; m++)
|
||||
dec *= 10;
|
||||
return (((neu_double_t) (udw.value % dec)) / dec + udw.value / dec);
|
||||
return (((neu_double_t)(udw.value % dec)) / dec + udw.value / dec);
|
||||
}
|
||||
|
||||
neu_double_t neu_qworddec_toDouble(neu_qworddec_t qw)
|
||||
@@ -81,7 +81,7 @@ neu_double_t neu_qworddec_toDouble(neu_qworddec_t qw)
|
||||
neu_word_t dec = 1;
|
||||
for (int m = 0; m < qw.decimal; m++)
|
||||
dec *= 10;
|
||||
return (((neu_double_t) (qw.value % dec)) / dec + qw.value / dec);
|
||||
return (((neu_double_t)(qw.value % dec)) / dec + qw.value / dec);
|
||||
}
|
||||
|
||||
neu_double_t neu_uqworddec_toDouble(neu_uqworddec_t uqw)
|
||||
@@ -89,7 +89,7 @@ neu_double_t neu_uqworddec_toDouble(neu_uqworddec_t uqw)
|
||||
neu_word_t dec = 1;
|
||||
for (int m = 0; m < uqw.decimal; m++)
|
||||
dec *= 10;
|
||||
return (((neu_double_t) (uqw.value % dec)) / dec + uqw.value / dec);
|
||||
return (((neu_double_t)(uqw.value % dec)) / dec + uqw.value / dec);
|
||||
}
|
||||
|
||||
/****************/
|
||||
|
||||
+43
-38
@@ -1,12 +1,12 @@
|
||||
#include <gtest/gtest.h>
|
||||
|
||||
#include "neu_types.h"
|
||||
#include "neu_data_expr.h"
|
||||
#include "neu_types.h"
|
||||
|
||||
TEST(DataValueTest, neu_dvalue_set_int8)
|
||||
{
|
||||
neu_data_val_t *val = neu_dvalue_new(NEU_DTYPE_INT8);
|
||||
int rc = neu_dvalue_set_int8(val, 16);
|
||||
int rc = neu_dvalue_set_int8(val, 16);
|
||||
EXPECT_EQ(0, rc);
|
||||
int8_t ret;
|
||||
rc = neu_dvalue_get_int8(val, &ret);
|
||||
@@ -17,8 +17,8 @@ TEST(DataValueTest, neu_dvalue_set_int8)
|
||||
|
||||
TEST(DataValueTest, neu_dvalue_set_int64)
|
||||
{
|
||||
neu_data_val_t *val = neu_dvalue_new(NEU_DTYPE_INT64);
|
||||
int rc = neu_dvalue_set_int64(val, 100010111010);
|
||||
neu_data_val_t *val = neu_dvalue_new(NEU_DTYPE_INT64);
|
||||
int rc = neu_dvalue_set_int64(val, 100010111010);
|
||||
EXPECT_EQ(0, rc);
|
||||
int64_t ret;
|
||||
rc = neu_dvalue_get_int64(val, &ret);
|
||||
@@ -29,8 +29,8 @@ TEST(DataValueTest, neu_dvalue_set_int64)
|
||||
|
||||
TEST(DataValueTest, neu_dvalue_set_double)
|
||||
{
|
||||
neu_data_val_t *val = neu_dvalue_new(NEU_DTYPE_DOUBLE);
|
||||
int rc = neu_dvalue_set_double(val, 100010111010.010603);
|
||||
neu_data_val_t *val = neu_dvalue_new(NEU_DTYPE_DOUBLE);
|
||||
int rc = neu_dvalue_set_double(val, 100010111010.010603);
|
||||
EXPECT_EQ(0, rc);
|
||||
double ret;
|
||||
rc = neu_dvalue_get_double(val, &ret);
|
||||
@@ -41,11 +41,11 @@ TEST(DataValueTest, neu_dvalue_set_double)
|
||||
|
||||
TEST(DataValueTest, neu_dvalue_set_cstr)
|
||||
{
|
||||
neu_data_val_t *val = neu_dvalue_new(NEU_DTYPE_CSTR);
|
||||
int rc = neu_dvalue_set_cstr(val, (char*)"Hello, Neuron!");
|
||||
neu_data_val_t *val = neu_dvalue_new(NEU_DTYPE_CSTR);
|
||||
int rc = neu_dvalue_set_cstr(val, (char *) "Hello, Neuron!");
|
||||
EXPECT_EQ(0, rc);
|
||||
char * ret = NULL;
|
||||
rc = neu_dvalue_get_cstr(val, &ret);
|
||||
char *ret = NULL;
|
||||
rc = neu_dvalue_get_cstr(val, &ret);
|
||||
EXPECT_EQ(0, rc);
|
||||
EXPECT_STREQ("Hello, Neuron!", ret);
|
||||
neu_dvalue_free(val);
|
||||
@@ -53,12 +53,13 @@ TEST(DataValueTest, neu_dvalue_set_cstr)
|
||||
|
||||
TEST(DataValueTest, neu_dvalue_set_array)
|
||||
{
|
||||
int rc;
|
||||
neu_data_val_t* val = neu_dvalue_array_new(NEU_DTYPE_INT8, 4, sizeof(int8_t));
|
||||
neu_fixed_array_t* array_set;
|
||||
int rc;
|
||||
neu_data_val_t *val =
|
||||
neu_dvalue_array_new(NEU_DTYPE_INT8, 4, sizeof(int8_t));
|
||||
neu_fixed_array_t *array_set;
|
||||
array_set = neu_fixed_array_new(4, sizeof(int8_t));
|
||||
rc = neu_dvalue_set_array(val, array_set);
|
||||
neu_fixed_array_t* array_get;
|
||||
rc = neu_dvalue_set_array(val, array_set);
|
||||
neu_fixed_array_t *array_get;
|
||||
rc = neu_dvalue_get_array(val, &array_get);
|
||||
|
||||
// TODO: assert two array is equal
|
||||
@@ -69,12 +70,12 @@ TEST(DataValueTest, neu_dvalue_set_array)
|
||||
|
||||
TEST(DataValueTest, neu_dvalue_set_vec)
|
||||
{
|
||||
int rc;
|
||||
neu_data_val_t* val = neu_dvalue_vec_new(NEU_DTYPE_INT8, 4, sizeof(int8_t));
|
||||
vector_t* vec_set;
|
||||
int rc;
|
||||
neu_data_val_t *val = neu_dvalue_vec_new(NEU_DTYPE_INT8, 4, sizeof(int8_t));
|
||||
vector_t * vec_set;
|
||||
vec_set = vector_new(4, sizeof(int8_t));
|
||||
rc = neu_dvalue_set_vec(val, vec_set);
|
||||
vector_t* vec_get;
|
||||
rc = neu_dvalue_set_vec(val, vec_set);
|
||||
vector_t *vec_get;
|
||||
rc = neu_dvalue_get_vec(val, &vec_get);
|
||||
|
||||
// TODO: assert two vector is equal
|
||||
@@ -85,7 +86,7 @@ TEST(DataValueTest, neu_dvalue_set_vec)
|
||||
|
||||
TEST(DataValueTest, neu_dvalue_base_deser)
|
||||
{
|
||||
int rc;
|
||||
int rc;
|
||||
uint8_t *buf;
|
||||
|
||||
neu_data_val_t *val = neu_dvalue_new(NEU_DTYPE_INT64);
|
||||
@@ -93,7 +94,7 @@ TEST(DataValueTest, neu_dvalue_base_deser)
|
||||
rc = neu_dvalue_serialize(val, &buf);
|
||||
EXPECT_EQ(0, rc);
|
||||
|
||||
neu_data_val_t* val1;
|
||||
neu_data_val_t *val1;
|
||||
rc = neu_dvalue_desialize(buf, &val1);
|
||||
EXPECT_EQ(0, rc);
|
||||
int64_t i64;
|
||||
@@ -101,30 +102,33 @@ TEST(DataValueTest, neu_dvalue_base_deser)
|
||||
EXPECT_EQ(0, rc);
|
||||
EXPECT_EQ(100, i64);
|
||||
|
||||
free(buf);
|
||||
neu_dvalue_free(val);
|
||||
neu_dvalue_free(val1);
|
||||
}
|
||||
|
||||
TEST(DataValueTest, neu_dvalue_array_deser)
|
||||
{
|
||||
int rc;
|
||||
int rc;
|
||||
uint8_t *buf;
|
||||
|
||||
neu_data_val_t* val = neu_dvalue_array_new(NEU_DTYPE_INT8, 4, sizeof(int8_t));
|
||||
neu_fixed_array_t* array_set;
|
||||
neu_data_val_t *val =
|
||||
neu_dvalue_array_new(NEU_DTYPE_INT8, 4, sizeof(int8_t));
|
||||
neu_fixed_array_t *array_set;
|
||||
array_set = neu_fixed_array_new(4, sizeof(int8_t));
|
||||
rc = neu_dvalue_set_array(val, array_set);
|
||||
rc = neu_dvalue_serialize(val, &buf);
|
||||
rc = neu_dvalue_set_array(val, array_set);
|
||||
rc = neu_dvalue_serialize(val, &buf);
|
||||
EXPECT_EQ(0, rc);
|
||||
|
||||
neu_data_val_t* val1;
|
||||
neu_data_val_t *val1;
|
||||
rc = neu_dvalue_desialize(buf, &val1);
|
||||
EXPECT_EQ(0, rc);
|
||||
neu_fixed_array_t* array_get;
|
||||
neu_fixed_array_t *array_get;
|
||||
rc = neu_dvalue_get_array(val, &array_get);
|
||||
EXPECT_EQ(0, rc);
|
||||
// TODO: assert tow array is euqal
|
||||
// TODO: assert two array is euqal
|
||||
|
||||
free(buf);
|
||||
neu_fixed_array_free(array_set);
|
||||
neu_dvalue_free(val);
|
||||
neu_dvalue_free(val1);
|
||||
@@ -132,24 +136,25 @@ TEST(DataValueTest, neu_dvalue_array_deser)
|
||||
|
||||
TEST(DataValueTest, neu_dvalue_vec_deser)
|
||||
{
|
||||
int rc;
|
||||
int rc;
|
||||
uint8_t *buf;
|
||||
|
||||
neu_data_val_t* val = neu_dvalue_vec_new(NEU_DTYPE_INT8, 4, sizeof(int8_t));
|
||||
vector_t* vec_set;
|
||||
neu_data_val_t *val = neu_dvalue_vec_new(NEU_DTYPE_INT8, 4, sizeof(int8_t));
|
||||
vector_t * vec_set;
|
||||
vec_set = vector_new(4, sizeof(int8_t));
|
||||
rc = neu_dvalue_set_vec(val, vec_set);
|
||||
rc = neu_dvalue_serialize(val, &buf);
|
||||
rc = neu_dvalue_set_vec(val, vec_set);
|
||||
rc = neu_dvalue_serialize(val, &buf);
|
||||
EXPECT_EQ(0, rc);
|
||||
|
||||
neu_data_val_t* val1;
|
||||
neu_data_val_t *val1;
|
||||
rc = neu_dvalue_desialize(buf, &val1);
|
||||
EXPECT_EQ(0, rc);
|
||||
vector_t* vec_get;
|
||||
vector_t *vec_get;
|
||||
rc = neu_dvalue_get_vec(val, &vec_get);
|
||||
EXPECT_EQ(0, rc);
|
||||
// TODO: assert tow vector is euqal
|
||||
// TODO: assert two vector is euqal
|
||||
|
||||
free(buf);
|
||||
vector_free(vec_set);
|
||||
neu_dvalue_free(val);
|
||||
neu_dvalue_free(val1);
|
||||
|
||||
Reference in New Issue
Block a user