}
void *key_struct = boundary_key[0];
void *val_struct = NULL;
+ val_boundary_st_t st_boundary_val;
if (!boundary_val.empty()) {
- val_boundary_st_t st_boundary_val =
- *(reinterpret_cast<val_boundary_st_t *> (boundary_val[0]));
+ st_boundary_val =
+ *(reinterpret_cast<val_boundary_st_t *> (boundary_val[0]));
val_struct = reinterpret_cast<void *>(&st_boundary_val.boundary);
}
}
void *key_struct = ctr_key[0];
void *val_struct = NULL;
+ val_ctr_st_t st_ctr_val;
if (!ctr_val.empty()) {
- val_ctr_st_t st_ctr_val = *(reinterpret_cast<val_ctr_st_t *> (ctr_val[0]));
+ st_ctr_val = *(reinterpret_cast<val_ctr_st_t *> (ctr_val[0]));
val_struct = reinterpret_cast<void *>(&st_ctr_val.controller);
}
// Get read response from database
using unc::uppl::ODBCMUtils;
using unc::uppl::ODBCMTableColumns;
+/*
+ * Set UINT8 value to the specified TableAttrSchema.
+ */
+#define TABLE_ATTR_SCHEMA_UINT8_SET(schema, len, str, bufsize) \
+ do { \
+ ColumnAttrValue <unsigned char[(bufsize)]> *__v= \
+ new ColumnAttrValue <unsigned char[(bufsize)]>; \
+ strncpy(reinterpret_cast<char *>(__v->value), (str).c_str(), \
+ (bufsize)); \
+ (schema).p_table_attribute_value = __v; \
+ (schema).table_attribute_length = (len); \
+ } while (0)
+
/**getRespHeaderFromReqHeader
* @Description : This function is for giving response to logical using
* serversession object
table_attr_schema.p_table_attribute_value = value;
break;
}
+
case DATATYPE_IPV6:
- {
- ColumnAttrValue <unsigned char[16+1]> *value=
- new ColumnAttrValue <unsigned char[16+1]>;
- memset(&value->value, '\0', sizeof(value->value));
- memcpy(value->value,
- attr_value.c_str(), attr_length+1);
- table_attr_schema.p_table_attribute_value = value;
- table_attr_schema.table_attribute_length = attr_length;
+ TABLE_ATTR_SCHEMA_UINT8_SET(table_attr_schema, attr_length, attr_value,
+ 16 + 1);
break;
- }
+
case DATATYPE_UINT8_ARRAY_2:
- {
- ColumnAttrValue <unsigned char[2+1]> *value=
- new ColumnAttrValue <unsigned char[2+1]>;
- memset(&value->value, '\0', sizeof(value->value));
- memcpy(value->value,
- attr_value.c_str(), attr_length+1);
- table_attr_schema.p_table_attribute_value = value;
- table_attr_schema.table_attribute_length = attr_length;
+ TABLE_ATTR_SCHEMA_UINT8_SET(table_attr_schema, attr_length, attr_value,
+ 2 + 1);
break;
- }
+
case DATATYPE_UINT8_ARRAY_3:
- {
- ColumnAttrValue <unsigned char[3+1]> *value=
- new ColumnAttrValue <unsigned char[3+1]>;
- memset(&value->value, '\0', sizeof(value->value));
- memcpy(value->value,
- attr_value.c_str(), attr_length+1);
- table_attr_schema.p_table_attribute_value = value;
- table_attr_schema.table_attribute_length = attr_length;
+ TABLE_ATTR_SCHEMA_UINT8_SET(table_attr_schema, attr_length, attr_value,
+ 3 + 1);
break;
- }
+
case DATATYPE_UINT8_ARRAY_6:
- {
- ColumnAttrValue <unsigned char[6+1]> *value=
- new ColumnAttrValue <unsigned char[6+1]>;
- memset(&value->value, '\0', sizeof(value->value));
- memcpy(value->value,
- attr_value.c_str(), attr_length+1);
- table_attr_schema.p_table_attribute_value = value;
- table_attr_schema.table_attribute_length = attr_length;
+ TABLE_ATTR_SCHEMA_UINT8_SET(table_attr_schema, attr_length, attr_value,
+ 6 + 1);
break;
- }
+
case DATATYPE_UINT8_ARRAY_8:
- {
- ColumnAttrValue <unsigned char[8+1]> *value=
- new ColumnAttrValue <unsigned char[8+1]>;
- memset(&value->value, '\0', sizeof(value->value));
- memcpy(value->value,
- attr_value.c_str(), attr_length+1);
- table_attr_schema.p_table_attribute_value = value;
- table_attr_schema.table_attribute_length = attr_length;
+ TABLE_ATTR_SCHEMA_UINT8_SET(table_attr_schema, attr_length, attr_value,
+ 8 + 1);
break;
- }
+
case DATATYPE_UINT8_ARRAY_9:
- {
- ColumnAttrValue <unsigned char[9+1]> *value=
- new ColumnAttrValue <unsigned char[9+1]>;
- memset(&value->value, '\0', sizeof(value->value));
- memcpy(value->value,
- attr_value.c_str(), attr_length+1);
- table_attr_schema.p_table_attribute_value = value;
- table_attr_schema.table_attribute_length = attr_length;
+ TABLE_ATTR_SCHEMA_UINT8_SET(table_attr_schema, attr_length, attr_value,
+ 9 + 1);
break;
- }
+
case DATATYPE_UINT8_ARRAY_11:
- {
- ColumnAttrValue <unsigned char[11+1]> *value=
- new ColumnAttrValue <unsigned char[11+1]>;
- memset(&value->value, '\0', sizeof(value->value));
- memcpy(value->value,
- attr_value.c_str(), attr_length+1);
- table_attr_schema.p_table_attribute_value = value;
- table_attr_schema.table_attribute_length = attr_length;
+ TABLE_ATTR_SCHEMA_UINT8_SET(table_attr_schema, attr_length, attr_value,
+ 11 + 1);
break;
- }
+
case DATATYPE_UINT8_ARRAY_16:
- {
- ColumnAttrValue <unsigned char[16+1]> *value=
- new ColumnAttrValue <unsigned char[16+1]>;
- memset(&value->value, '\0', sizeof(value->value));
- memcpy(value->value,
- attr_value.c_str(), attr_length+1);
- table_attr_schema.p_table_attribute_value = value;
- table_attr_schema.table_attribute_length = attr_length;
+ TABLE_ATTR_SCHEMA_UINT8_SET(table_attr_schema, attr_length, attr_value,
+ 16 + 1);
break;
- }
+
case DATATYPE_UINT8_ARRAY_32:
- {
- ColumnAttrValue <unsigned char[32+1]> *value=
- new ColumnAttrValue <unsigned char[32+1]>;
- memset(value->value, '\0', sizeof(value->value));
- memcpy(value->value,
- attr_value.c_str(), attr_length+1);
- table_attr_schema.p_table_attribute_value = value;
- table_attr_schema.table_attribute_length = attr_length;
+ TABLE_ATTR_SCHEMA_UINT8_SET(table_attr_schema, attr_length, attr_value,
+ 32 + 1);
break;
- }
+
case DATATYPE_UINT8_ARRAY_128:
- {
- ColumnAttrValue <unsigned char[128+1]> *value=
- new ColumnAttrValue <unsigned char[128+1]>;
- memset(value->value, '\0', sizeof(value->value));
- memcpy(value->value,
- attr_value.c_str(), attr_length+1);
- table_attr_schema.p_table_attribute_value = value;
- table_attr_schema.table_attribute_length = attr_length;
+ TABLE_ATTR_SCHEMA_UINT8_SET(table_attr_schema, attr_length, attr_value,
+ 128 + 1);
break;
- }
+
case DATATYPE_UINT8_ARRAY_256:
- {
- ColumnAttrValue <unsigned char[256+1]> *value=
- new ColumnAttrValue <unsigned char[256+1]>;
- memset(&value->value, '\0', sizeof(value->value));
- memcpy(value->value,
- attr_value.c_str(), attr_length+1);
- table_attr_schema.p_table_attribute_value = value;
- table_attr_schema.table_attribute_length = attr_length;
+ TABLE_ATTR_SCHEMA_UINT8_SET(table_attr_schema, attr_length, attr_value,
+ 256 + 1);
break;
- }
+
case DATATYPE_UINT8_ARRAY_257:
- {
- ColumnAttrValue <unsigned char[257+1]> *value=
- new ColumnAttrValue <unsigned char[257+1]>;
- memset(&value->value, '\0', sizeof(value->value));
- memcpy(value->value,
- attr_value.c_str(), attr_length+1);
- table_attr_schema.p_table_attribute_value = value;
- table_attr_schema.table_attribute_length = attr_length;
+ TABLE_ATTR_SCHEMA_UINT8_SET(table_attr_schema, attr_length, attr_value,
+ 257 + 1);
break;
- }
+
case DATATYPE_UINT8_ARRAY_320:
- {
- ColumnAttrValue <unsigned char[320+1]> *value=
- new ColumnAttrValue <unsigned char[320+1]>;
- memset(&value->value, '\0', sizeof(value->value));
- memcpy(value->value,
- attr_value.c_str(), attr_length+1);
- table_attr_schema.p_table_attribute_value = value;
- table_attr_schema.table_attribute_length = attr_length;
+ TABLE_ATTR_SCHEMA_UINT8_SET(table_attr_schema, attr_length, attr_value,
+ 320 + 1);
break;
- }
}
table_attr_schema.request_attribute_type = attr_type;
vect_attr.push_back(table_attr_schema);
--- /dev/null
+#
+# Copyright (c) 2013 NEC Corporation
+# All rights reserved.
+#
+# This program and the accompanying materials are made available under the
+# terms of the Eclipse Public License v1.0 which accompanies this
+# distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
+#
+
+##
+## Common configurations to build unit tests for VTN Coordinator modules.
+## GTEST_SRCROOT must be defined in advance.
+##
+
+include $(GTEST_SRCROOT)/test/build/gtest-defs.mk
+
+MODULE_SRCROOT = $(GTEST_SRCROOT)/modules
+
+# Construct header include path.
+ifeq ($(strip $(SUBARCH)),)
+CC_INCDIRS = core/include/arch/$(ARCH)
+else # !empty(SUBARCH)
+CC_INCDIRS = core/include/arch/$(SUBARCH) core/include/arch/$(ARCH)
+endif # empty(SUBARCH)
+
+CC_INCDIRS += core/include/os/$(OSTYPE) core/include
+CC_INCDIRS_PREP = $(UT_INCDIRS_PREP) $(UNC_INCDIRS) $(CORE_EXP_INCDIR)
+
+CXX_INCDIRS = core/include/cxx
+
+CXX_INCLUDES = $(UT_INCDIRS_PREP:%=-I%) $(UTXX_INCDIRS_PREP:%=-I%)
+CXX_INCLUDES += $(CXX_INCDIRS:%=-I$(SRCROOT)/%) $(BOOST_INCDIR:%=-I%)
+CXX_INCLUDES += $(EXTRA_CXX_INCDIRS:%=-I%)
--- /dev/null
+#
+# Copyright (c) 2013 NEC Corporation
+# All rights reserved.
+#
+# This program and the accompanying materials are made available under the
+# terms of the Eclipse Public License v1.0 which accompanies this
+# distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
+#
+
+##
+## Common rules to build unit tests for VTN Coordinator modules.
+## defs.mk must be included in advance.
+##
+
+ALT_CFDEF_NAMES = $(notdir $(ALT_CFDEF_FILES))
+CFDEF_SOURCES += $(ALT_CFDEF_NAMES:%.cfdef=$(OBJDIR)/$(CFDEF_PREFIX)%.c)
+CFDEF_DEPFILES += $(ALT_CFDEF_NAMES:%=$(OBJ_DEPDIR)/%.d)
+OBJECTS += $(ALT_CFDEF_NAMES:%.cfdef=$(CFDEF_PREFIX)%.o)
+
+include $(GTEST_BLDDIR)/gtest-rules.mk
+
+# Define rules to build source files under ALT_SRCDIRS.
+define COMPILE_TEMPLATE
+$$(OBJDIR)/%.o $$(OBJ_CMDDIR)/%.cc.cmd: $(1)/%.cc FRC
+ @$$(call CMD_EXECUTE,CXX_O,$$(OBJ_CMDDIR)/$$*.cc.cmd,$$?)
+endef
+
+$(foreach dir,$(ALT_SRCDIRS),$(eval $(call COMPILE_TEMPLATE,$(dir))))
+
+# Define rules to compile cfdef files in ALT_CFDEF_FILES.
+ALT_CFDEF_DIRS = $(sort $(dir $(ALT_CFDEF_FILES)))
+
+define CFDEF_TEMPLATE
+$$(OBJDIR)/$$(CFDEF_PREFIX)%.c $$(OBJ_CMDDIR)/%.cfdef.cmd: $(1)%.cfdef FRC
+ @$$(call CMD_EXECUTE,CFDEF_C,$$(OBJ_CMDDIR)/$$*.cfdef.cmd,$$?)
+endef
+
+$(foreach dir,$(ALT_CFDEF_DIRS),$(eval $(call CFDEF_TEMPLATE,$(dir))))
## Makefile that run the unit tests for UPLL.
##
-
-GTEST_SRCROOT = ../../../../modules
-
-CPPFLAGS +=
-
-INCLUDE = -Iinclude \
- -Istub/include \
- -Istub/include/cxx \
- -Istub/include/cxx/pfcxx \
- -Istub/include/core_include \
- -Istub \
- -Istub/tclib_module \
- -Istub/capa_module \
- -I$(GTEST_SRCROOT)/capa/include \
- -Istub/dal \
- -Istub/dal/include \
- -I$(GTEST_SRCROOT)/upll \
- -I$(GTEST_SRCROOT)/dal/ \
- -I$(GTEST_SRCROOT) \
- -I$(GTEST_SRCROOT)/../dist/target/objs/include \
- -I$(GTEST_SRCROOT)/../dist/target/objs/core_include \
- -I$(GTEST_SRCROOT)/../dist/target/objs/core/include \
- -I$(GTEST_SRCROOT)/../core/include \
- -I$(GTEST_SRCROOT)/../core/include/cxx \
- -I$(GTEST_SRCROOT)/../include/ \
- -I$(GTEST_SRCROOT)/../include/pfcapi/pfcapi_generic/ \
- -I$(GTEST_SRCROOT)/../include/unc \
- -I$(GTEST_SRCROOT)/upll/include \
- -I$(GTEST_SRCROOT) \
- -I$(GTEST_SRCROOT)/../test/modules/upll/ut \
- -I$(GTEST_SRCROOT)/alarm/include\
-
-
-CXXFLAGS += -g -fprofile-arcs -ftest-coverage -Dprivate=public -Dprotected=public
-
-SOURCE_FILES = $(GTEST_SRCROOT)/upll/ipc_util.cc \
- $(GTEST_SRCROOT)/upll/ipct_st.cc \
- $(GTEST_SRCROOT)/upll/config_mgr.cc \
- $(GTEST_SRCROOT)/upll/ctrlr_mgr.cc \
- $(GTEST_SRCROOT)/upll/key_tree.cc \
- $(GTEST_SRCROOT)/upll/tclib_intf_impl.cc \
- $(GTEST_SRCROOT)/upll/momgr_intf.cc \
- $(GTEST_SRCROOT)/upll/momgr_impl.cc \
- $(GTEST_SRCROOT)/upll/tx_mgr.cc \
- $(GTEST_SRCROOT)/upll/config_lock.cc \
- $(GTEST_SRCROOT)/upll/kt_util.cc \
- $(GTEST_SRCROOT)/upll/vtn_momgr.cc \
- $(GTEST_SRCROOT)/upll/vbr_momgr.cc \
- $(GTEST_SRCROOT)/upll/vbr_if_momgr.cc \
- $(GTEST_SRCROOT)/upll/vlanmap_momgr.cc \
- $(GTEST_SRCROOT)/upll/nwm_momgr.cc \
- $(GTEST_SRCROOT)/upll/nwm_host_momgr.cc \
- $(GTEST_SRCROOT)/upll/iproute_momgr.cc \
- $(GTEST_SRCROOT)/upll/dhcprelay_if_momgr.cc \
- $(GTEST_SRCROOT)/upll/dhcprelay_server_momgr.cc \
- $(GTEST_SRCROOT)/upll/vrt_if_momgr.cc \
- $(GTEST_SRCROOT)/upll/vunk_momgr.cc \
- $(GTEST_SRCROOT)/upll/vunk_if_momgr.cc \
- $(GTEST_SRCROOT)/upll/vnode_child_momgr.cc \
- $(GTEST_SRCROOT)/upll/momgr_util.cc \
- $(GTEST_SRCROOT)/upll/vnode_momgr.cc \
- $(GTEST_SRCROOT)/upll/read_bulk.cc \
- $(GTEST_SRCROOT)/upll/vlink_momgr.cc \
- $(GTEST_SRCROOT)/upll/vrt_momgr.cc \
- $(GTEST_SRCROOT)/upll/vtn_flowfilter_entry_momgr.cc \
- $(GTEST_SRCROOT)/upll/vtn_flowfilter_momgr.cc \
- $(GTEST_SRCROOT)/upll/flowlist_entry_momgr.cc \
- $(GTEST_SRCROOT)/upll/flowlist_momgr.cc \
- $(GTEST_SRCROOT)/upll/policingprofile_entry_momgr.cc \
- $(GTEST_SRCROOT)/upll/policingprofile_momgr.cc \
- $(GTEST_SRCROOT)/upll/vbr_flowfilter_entry_momgr.cc\
- $(GTEST_SRCROOT)/upll/vbr_flowfilter_momgr.cc \
- $(GTEST_SRCROOT)/upll/vbr_if_flowfilter_entry_momgr.cc \
- $(GTEST_SRCROOT)/upll/vbr_if_flowfilter_momgr.cc \
- $(GTEST_SRCROOT)/upll/vbr_if_policingmap_momgr.cc \
- $(GTEST_SRCROOT)/upll/vbr_policingmap_momgr.cc \
- $(GTEST_SRCROOT)/upll/vrt_if_flowfilter_entry_momgr.cc \
- $(GTEST_SRCROOT)/upll/vrt_if_flowfilter_momgr.cc \
- $(GTEST_SRCROOT)/upll/vtn_policingmap_momgr.cc \
- $(GTEST_SRCROOT)/upll/vtep_momgr.cc \
- $(GTEST_SRCROOT)/upll/vtep_if_momgr.cc \
- $(GTEST_SRCROOT)/upll/vtep_grp_momgr.cc \
- $(GTEST_SRCROOT)/upll/vtepgrp_mem_momgr.cc \
- $(GTEST_SRCROOT)/upll/vtunnel_momgr.cc \
- $(GTEST_SRCROOT)/upll/vtunnel_if_momgr.cc \
-
-
-SRC_OBJS = $(patsubst $(GTEST_SRCROOT)/upll/%.cc,$(OBJSDIR)/upll/%.o,$(SOURCE_FILES))
-
-UNITTEST_FILES = vbr_if_momgr_ut.cc vtn_momgr_ut.cc vbr_momgr_ut.cc
-
-OBJSDIR = objs
-
-UT_OBJS_DIR = objs/ut
-UPLL_OBJS_DIR = objs/upll
-
-EXEC_NAME = vbr_if_momgr_ut vbr_momgr_ut vtn_momgr_ut
-
-UT_LIBS = -L$(GTEST_SRCROOT)/../dist/target/objs/ldlibs -lpthread -lpfc_util -lgtest_main $(UT_OBJS_DIR)/upll_ut.a ./stub/stub_objs/stub.a ./stub/stub_objs/stub.a -lgcov
-
-LD_LIBRARY_PATH= $(GTEST_SRCROOT)/../dist/target/objs/ldlibs
-export LD_LIBRARY_PATH
-.NOTPARALLEL: createobjsupll createobjsut stub upll_lib ut_exe
-all : createobjsupll createobjsut stub upll_lib ut_exe
-test :
- ./vtn_momgr_ut
- ./vbr_momgr_ut
- ./vbr_if_momgr_ut
-clean :
- @(cd $(OBJSDIR)/ut/; rm -f upll_ut.a *.o *.gcno *.gcov *.gcda);
- @(cd $(OBJSDIR)/upll/; rm -f *.o *.gcno *.gcov *.gcda);
- @(cd ./stub/; $(MAKE) clean);
- rm -f $(EXEC_NAME) *.gcov
-
-
-UT_OBJS = $(patsubst %.cc,$(OBJSDIR)/ut/%.o,$(UNITTEST_FILES))
-
-$(SRC_OBJS): $(OBJSDIR)/upll/%.o : $(GTEST_SRCROOT)/upll/%.cc
- $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(INCLUDE) -c $< -o $@
-
-$(UT_OBJS): $(OBJSDIR)/ut/%.o : %.cc
- $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(INCLUDE) -c $< -o $@
-
-createobjsupll:
- mkdir -p $(UPLL_OBJS_DIR)
-
-createobjsut:
- mkdir -p $(UT_OBJS_DIR)
-
-stub:
- @echo "****** Invoking stub makefile"
- @($(MAKE) -C ./stub/ );
-
-.PHONY: stub upll_lib \
-
-upll_lib : $(UT_OBJS_DIR)/upll_ut.a
-
-$(UT_OBJS_DIR)/upll_ut.a : $(SRC_OBJS)
- $(AR) $(ARFLAGS) $@ $^
-
-compile_ut:$(UT_OBJS)
-
-ut_exe : $(EXEC_NAME)
-
-vtn_momgr_ut : $(UT_OBJS_DIR)/vtn_momgr_ut.o
- $(CXX) $^ -o $@ $(UT_LIBS)
-vbr_momgr_ut : $(UT_OBJS_DIR)/vbr_momgr_ut.o
- $(CXX) $^ -o $@ $(UT_LIBS)
-vbr_if_momgr_ut : $(UT_OBJS_DIR)/vbr_if_momgr_ut.o
- $(CXX) $^ -o $@ $(UT_LIBS)
-
-
-install: all
+GTEST_SRCROOT := ../../../..
+include ../../defs.mk
+
+EXEC_NAME := upll_ut
+
+TCLIB_STUBDIR = stub/tclib_module
+CAPA_STUBDIR = stub/capa_module
+DAL_STUBDIR = stub/dal
+MISC_STUBDIR = stub/misc
+
+UPLL_SRCDIR = $(MODULE_SRCROOT)/upll
+CAPA_SRCDIR = $(MODULE_SRCROOT)/capa
+DAL_SRCDIR = $(MODULE_SRCROOT)/dal
+TCLIB_SRCDIR = $(MODULE_SRCROOT)/tclib
+ALARM_SRCDIR = $(MODULE_SRCROOT)/alarm
+
+# Define a list of directories that contain source files.
+ALT_SRCDIRS = $(UPLL_SRCDIR) $(CAPA_STUBDIR) $(DAL_STUBDIR)
+ALT_SRCDIRS += $(TCLIB_STUBDIR) $(MISC_STUBDIR)
+
+UT_INCDIRS_PREP = stub/include stub/include/core_include
+
+UTXX_INCDIRS_PREP = $(TCLIB_STUBDIR)
+UTXX_INCDIRS_PREP += $(CAPA_STUBDIR)
+UTXX_INCDIRS_PREP += $(DAL_STUBDIR)
+UTXX_INCDIRS_PREP += $(DAL_STUBDIR)/include
+
+EXTRA_CXX_INCDIRS = $(MODULE_SRCROOT)
+EXTRA_CXX_INCDIRS += $(CAPA_SRCDIR)/include
+EXTRA_CXX_INCDIRS += $(UPLL_SRCDIR)
+EXTRA_CXX_INCDIRS += $(UPLL_SRCDIR)/include
+EXTRA_CXX_INCDIRS += $(DAL_SRCDIR)
+EXTRA_CXX_INCDIRS += $(TCLIB_SRCDIR)/include
+EXTRA_CXX_INCDIRS += $(ALARM_SRCDIR)/include
+
+CPPFLAGS += -include ut_stub.h
+
+UPLL_SOURCES = ipc_util.cc
+UPLL_SOURCES += ipct_st.cc
+UPLL_SOURCES += config_mgr.cc
+UPLL_SOURCES += ctrlr_mgr.cc
+UPLL_SOURCES += key_tree.cc
+UPLL_SOURCES += tclib_intf_impl.cc
+UPLL_SOURCES += momgr_intf.cc
+UPLL_SOURCES += momgr_impl.cc
+UPLL_SOURCES += tx_mgr.cc
+UPLL_SOURCES += config_lock.cc
+UPLL_SOURCES += kt_util.cc
+UPLL_SOURCES += vtn_momgr.cc
+UPLL_SOURCES += vbr_momgr.cc
+UPLL_SOURCES += vbr_if_momgr.cc
+UPLL_SOURCES += vlanmap_momgr.cc
+UPLL_SOURCES += nwm_momgr.cc
+UPLL_SOURCES += nwm_host_momgr.cc
+UPLL_SOURCES += iproute_momgr.cc
+UPLL_SOURCES += dhcprelay_if_momgr.cc
+UPLL_SOURCES += dhcprelay_server_momgr.cc
+UPLL_SOURCES += vrt_if_momgr.cc
+UPLL_SOURCES += vunk_momgr.cc
+UPLL_SOURCES += vunk_if_momgr.cc
+UPLL_SOURCES += vnode_child_momgr.cc
+UPLL_SOURCES += momgr_util.cc
+UPLL_SOURCES += vnode_momgr.cc
+UPLL_SOURCES += read_bulk.cc
+UPLL_SOURCES += vlink_momgr.cc
+UPLL_SOURCES += vrt_momgr.cc
+UPLL_SOURCES += vtn_flowfilter_entry_momgr.cc
+UPLL_SOURCES += vtn_flowfilter_momgr.cc
+UPLL_SOURCES += flowlist_entry_momgr.cc
+UPLL_SOURCES += flowlist_momgr.cc
+UPLL_SOURCES += policingprofile_entry_momgr.cc
+UPLL_SOURCES += policingprofile_momgr.cc
+UPLL_SOURCES += vbr_flowfilter_entry_momgr.cc
+UPLL_SOURCES += vbr_flowfilter_momgr.cc
+UPLL_SOURCES += vbr_if_flowfilter_entry_momgr.cc
+UPLL_SOURCES += vbr_if_flowfilter_momgr.cc
+UPLL_SOURCES += vbr_if_policingmap_momgr.cc
+UPLL_SOURCES += vbr_policingmap_momgr.cc
+UPLL_SOURCES += vrt_if_flowfilter_entry_momgr.cc
+UPLL_SOURCES += vrt_if_flowfilter_momgr.cc
+UPLL_SOURCES += vtn_policingmap_momgr.cc
+UPLL_SOURCES += vtep_momgr.cc
+UPLL_SOURCES += vtep_if_momgr.cc
+UPLL_SOURCES += vtep_grp_momgr.cc
+UPLL_SOURCES += vtepgrp_mem_momgr.cc
+UPLL_SOURCES += vtunnel_momgr.cc
+UPLL_SOURCES += vtunnel_if_momgr.cc
+
+CAPA_SOURCES = capa_module_stub.cc
+DAL_SOURCES = dal_odbc_mgr.cc dal_bind_info.cc dal_schema.cc
+TCLIB_SOURCES = tclib_module.cc
+MISC_SOURCES = alarm.cc ipc_client.cc ipc_server.cc module.cc
+
+UT_SOURCES = vtn_momgr_ut.cc
+UT_SOURCES += vbr_momgr_ut.cc
+UT_SOURCES += vbr_if_momgr_ut.cc
+
+CXX_SOURCES = $(UT_SOURCES) util.cc
+CXX_SOURCES += $(UPLL_SOURCES) $(CAPA_SOURCES) $(DAL_SOURCES)
+CXX_SOURCES += $(TCLIB_SOURCES) $(MISC_SOURCES)
+
+EXTRA_CXXFLAGS += -fprofile-arcs -ftest-coverage
+EXTRA_CXXFLAGS += -Dprivate=public -Dprotected=public
+
+UNC_LIBS = libpfc_util libpfc libpfc_ipcsrv libpfc_ipcclnt
+UNC_LIBS += libpfcxx libpfcxx_ipcsrv libpfcxx_ipcclnt
+EXTRA_LDLIBS += -lgcov
+
+include ../../rules.mk
+++ /dev/null
-#
-# Copyright (c) 2013 NEC Corporation
-# All rights reserved.
-#
-# This program and the accompanying materials are made available under the
-# terms of the Eclipse Public License v1.0 which accompanies this
-# distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
-#
-
-##
-## Makefile that includes stubs to run UPLL test cases.
-##
-
-STUB_OBJS=stub_objs
-.NOTPARALLEL: createobjs buildall link_stub
-all: createobjs buildall link_stub
-
-createobjs:
- mkdir -p $(STUB_OBJS)
-
-OBJS = $(STUB_OBJS)/capa_module_stub.o \
- $(STUB_OBJS)/tclib_module.o \
- $(STUB_OBJS)/dal_bind_info.o \
- $(STUB_OBJS)/dal_odbc_mgr.o \
- $(STUB_OBJS)/dal_schema.o \
- $(STUB_OBJS)/ipc_client.o \
- $(STUB_OBJS)/ipc_server.o \
- $(STUB_OBJS)/module.o \
- $(STUB_OBJS)/alarm.o \
-
-buildall:
-
- @echo "****** Invoking tclib_stub makefile"
- @($(MAKE) -C ./tclib_module/ );
-
- @echo "****** Invoking dal_stub makefile"
- @($(MAKE) -C ./dal/ )
- @echo "****** Invoking Cap_Stub makefile"
- @($(MAKE) -C ./capa_module/ );
-
- @echo "****** Invoking ipc_client_server_stub makefile"
- @($(MAKE) -C ./ipc_client_server/ );
-
-clean: clearall
-
-clearall:
- @(cd ./capa_module/ ;$(MAKE) clean)
- @(cd ./ipc_client_server/ ;$(MAKE) clean)
- @(cd ./tclib_module/ ;$(MAKE) clean)
- @(cd ./dal/ ;$(MAKE) clean)
- @(cd $(STUB_OBJS) ;rm -rf stub.a)
-
-link_stub :$(STUB_OBJS)/stub.a
-
-$(STUB_OBJS)/stub.a :$(OBJS)
- $(AR) $(ARFLAGS) $@ $^
+++ /dev/null
-#
-# Copyright (c) 2013 NEC Corporation
-# All rights reserved.
-#
-# This program and the accompanying materials are made available under the
-# terms of the Eclipse Public License v1.0 which accompanies this
-# distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
-#
-
-##
-## Makefile that capa module stubs to run unit tests for UPLL modules.
-##
-
-
-CPPFLAGS = -g
-
-OBJS=../stub_objs
-
-SRC_DIR = ../../../../../../modules
-STUB_DIR =..
-INCLUDE = -I$(STUB_DIR)/include \
- -I$(STUB_DIR)/include/cxx \
- -I$(STUB_DIR)/include/cxx/pfcxx \
- -I$(SRC_DIR)/../core/include \
- -I$(SRC_DIR)/../include \
- -I$(SRC_DIR)/../core/libs/libpfc_ipc \
- -I$(SRC_DIR)/../dist/target/objs/core_include \
- -I$(SRC_DIR)/../dist/target/objs/include \
- -I$(SRC_DIR)/upll/include \
-
-
-
-all: $(OBJS)/capa_module_stub.o
-
-OBJ=capa_module_stub.o
-
-clean :
- @(cd $(OBJS); rm -rf $(OBJS)/$(OBJ) )
-
-$(OBJS)/capa_module_stub.o :capa_module_stub.cc capa_module_stub.hh
- $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(INCLUDE) -c $< -o $@
-
-
-
-
-
-
+++ /dev/null
-/*
-* Copyright (c) 2012-2013 NEC Corporation
-* All rights reserved.
-*
-* This program and the accompanying materials are made available under the
-* terms of the Eclipse Public License v1.0 which accompanies this
-* distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
-*/
-
-
-
-#include"../../../../../../modules/capa/include/capa_intf.hh"
namespace unc {
namespace capa {
- std::map<CapaModuleStub::CapaMethod,bool>CapaModuleStub::method_capa_map;
- uint32_t CapaModuleStub::max_instance_count_local;
- uint32_t *CapaModuleStub::num_attrs_local;
- uint8_t *CapaModuleStub::attrs_local;
-
- void CapaModuleStub::stub_setResultcode(CapaModuleStub::CapaMethod methodType ,bool res_code) {
- method_capa_map.insert(std::make_pair(methodType,res_code));
- }
-
- bool CapaModuleStub::stub_getMappedResultCode(CapaModuleStub::CapaMethod methodType)
- {
- if (0!= method_capa_map.count(methodType))
- {
- return method_capa_map[methodType];
- }
- return false;
- }
-
- void CapaModuleStub::stub_clearStubData()
- {
- method_capa_map.clear();
+std::map<CapaModuleStub::CapaMethod,bool>CapaModuleStub::method_capa_map;
+uint32_t CapaModuleStub::max_instance_count_local;
+uint32_t *CapaModuleStub::num_attrs_local;
+uint8_t *CapaModuleStub::attrs_local;
+
+static CapaModuleStub theInstance(NULL);
+
+void
+CapaModuleStub::stub_loadCapaModule(void)
+{
+ pfc::core::Module::capaModule = &theInstance;
+}
+
+void
+CapaModuleStub::stub_unloadCapaModule(void)
+{
+ pfc::core::Module::capaModule = NULL;
+}
+
+void
+CapaModuleStub::stub_setResultcode(CapaModuleStub::CapaMethod methodType,
+ bool res_code)
+{
+ method_capa_map.insert(std::make_pair(methodType,res_code));
+}
+
+bool
+CapaModuleStub::stub_getMappedResultCode(CapaModuleStub::CapaMethod methodType)
+{
+ if (method_capa_map.count(methodType) != 0) {
+ return method_capa_map[methodType];
}
+ return false;
+}
+void
+CapaModuleStub::stub_clearStubData()
+{
+ method_capa_map.clear();
}
}
+}
namespace capa {
class CapaModuleStub : public pfc::core::Module,CapaIntf {
- public:
- enum CapaMethod
- {
- INIT,
- FINI,
- LOAD_CAPABILLITY_FILES,
- GET_INSTANCE_COUNT,
- GET_CREATE_CAPABILITY,
- GET_UPDATE_CAPABILITY,
- GET_READ_CAPABILITY,
- GET_STATE_CAPABILITY,
- };
+public:
+ enum CapaMethod {
+ INIT,
+ FINI,
+ LOAD_CAPABILLITY_FILES,
+ GET_INSTANCE_COUNT,
+ GET_CREATE_CAPABILITY,
+ GET_UPDATE_CAPABILITY,
+ GET_READ_CAPABILITY,
+ GET_STATE_CAPABILITY,
+ };
+
CapaModuleStub(const pfc_modattr_t *attr)
- :pfc::core::Module(attr)
+ : pfc::core::Module(attr)
{
-
}
+
~CapaModuleStub()
{
-
}
- inline pfc_bool_t init(){
- return stub_getMappedResultCode(CapaModuleStub::INIT);
+ inline pfc_bool_t init() {
+ return stub_getMappedResultCode(CapaModuleStub::INIT);
}
inline pfc_bool_t fini(void) {
- return stub_getMappedResultCode(CapaModuleStub::FINI);
+ return stub_getMappedResultCode(CapaModuleStub::FINI);
}
- static CapaModuleStub* get_capability_mgr()
- {
- pfc_modattr_t attr;
-
- return new CapaModuleStub(&attr);
+ static CapaModuleStub* get_capability_mgr() {
+ pfc_modattr_t attr;
+ return new CapaModuleStub(&attr);
}
virtual bool LoadCapabilityFiles() {
- return stub_getMappedResultCode(CapaModuleStub::LOAD_CAPABILLITY_FILES);
+ return stub_getMappedResultCode(CapaModuleStub::LOAD_CAPABILLITY_FILES);
}
virtual std::string GetCtrlrParentVersion(const std::string &version) {
- return std::string("ParentVersion");
+ return std::string("ParentVersion");
}
- virtual bool GetInstanceCount(unc_keytype_ctrtype_t ctrlr_type, const std::string &version,
- unc_key_type_t keytype, uint32_t &instance_count) {
- return stub_getMappedResultCode(CapaModuleStub::GET_INSTANCE_COUNT);
+ virtual bool GetInstanceCount(unc_keytype_ctrtype_t ctrlr_type,
+ const std::string &version,
+ unc_key_type_t keytype,
+ uint32_t &instance_count) {
+ return stub_getMappedResultCode(CapaModuleStub::GET_INSTANCE_COUNT);
}
- virtual bool GetCreateCapability(unc_keytype_ctrtype_t ctrlr_type, const std::string &version,
- unc_key_type_t keytype,
- uint32_t *instnace_count,
- uint32_t *num_attrs, const uint8_t **attrs) {
- *instnace_count = max_instance_count_local;
- num_attrs = num_attrs_local;
- *attrs = attrs_local;
- return stub_getMappedResultCode(CapaModuleStub::GET_CREATE_CAPABILITY);
+ virtual bool GetCreateCapability(unc_keytype_ctrtype_t ctrlr_type,
+ const std::string &version,
+ unc_key_type_t keytype,
+ uint32_t *instnace_count,
+ uint32_t *num_attrs,
+ const uint8_t **attrs) {
+ *instnace_count = max_instance_count_local;
+ *num_attrs = *num_attrs_local;
+ *attrs = attrs_local;
+ return stub_getMappedResultCode(CapaModuleStub::GET_CREATE_CAPABILITY);
}
-
- virtual bool GetUpdateCapability(unc_keytype_ctrtype_t ctrlr_type, const std::string &version,
- unc_key_type_t keytype,
- uint32_t *num_attrs, const uint8_t **attrs) {
- num_attrs = num_attrs_local;
- *attrs = attrs_local;
- return stub_getMappedResultCode(CapaModuleStub::GET_UPDATE_CAPABILITY);
+ virtual bool GetUpdateCapability(unc_keytype_ctrtype_t ctrlr_type,
+ const std::string &version,
+ unc_key_type_t keytype,
+ uint32_t *num_attrs,
+ const uint8_t **attrs) {
+ *num_attrs = *num_attrs_local;
+ *attrs = attrs_local;
+ return stub_getMappedResultCode(CapaModuleStub::GET_UPDATE_CAPABILITY);
}
- virtual bool GetReadCapability(unc_keytype_ctrtype_t ctrlr_type, const std::string &version,
- unc_key_type_t keytype,
- uint32_t *num_attrs, const uint8_t **attrs) {
- num_attrs = num_attrs_local;
- *attrs = attrs_local;
+ virtual bool GetReadCapability(unc_keytype_ctrtype_t ctrlr_type,
+ const std::string &version,
+ unc_key_type_t keytype,
+ uint32_t *num_attrs, const uint8_t **attrs) {
+ *num_attrs = *num_attrs_local;
+ *attrs = attrs_local;
- return stub_getMappedResultCode(CapaModuleStub::GET_READ_CAPABILITY);
+ return stub_getMappedResultCode(CapaModuleStub::GET_READ_CAPABILITY);
}
- virtual bool GetStateCapability(unc_keytype_ctrtype_t ctrlr_type, const std::string &version,
- unc_key_type_t keytype,
- uint32_t *num_attrs, const uint8_t **attrs) {
- return stub_getMappedResultCode(CapaModuleStub::GET_STATE_CAPABILITY);
+ virtual bool GetStateCapability(unc_keytype_ctrtype_t ctrlr_type,
+ const std::string &version,
+ unc_key_type_t keytype,
+ uint32_t *num_attrs, const uint8_t **attrs) {
+ return stub_getMappedResultCode(CapaModuleStub::GET_STATE_CAPABILITY);
}
-
inline void VerboseDumpAll() {
-
}
- inline void VerboseDump(unc_keytype_ctrtype_t ctrlr_type, std::string version){
-
+ inline void VerboseDump(unc_keytype_ctrtype_t ctrlr_type,
+ std::string version) {
}
//stub Methods
- static void stub_setResultcode(CapaModuleStub::CapaMethod methodType ,bool res_code);
+ static void stub_setResultcode(CapaModuleStub::CapaMethod methodType,
+ bool res_code);
static void stub_clearStubData();
- static void stub_setCreatecapaParameters(uint32_t max_instance_count, uint32_t *num_attrs, uint8_t *attrs) {
- max_instance_count_local = max_instance_count;
- num_attrs_local = num_attrs;
- attrs_local = attrs;
- }
-
- static void stub_loadCapaModule() {
- const pfc_modattr_t *attr;
- pfc::core::Module* module(reinterpret_cast<pfc::core::Module*>(static_cast<CapaIntf*>(new CapaModuleStub(attr))));
- Module::capaModule= module;
- }
+ static void stub_setCreatecapaParameters(uint32_t max_instance_count,
+ uint32_t *num_attrs,
+ uint8_t *attrs) {
+ max_instance_count_local = max_instance_count;
+ num_attrs_local = num_attrs;
+ attrs_local = attrs;
+ }
- static void stub_unloadCapaModule() {
- Module::capaModule= NULL;
- }
+ static void stub_loadCapaModule(void);
+ static void stub_unloadCapaModule(void);
- private:
+private:
static bool stub_getMappedResultCode(CapaModuleStub::CapaMethod methodType);
static std::map<CapaModuleStub::CapaMethod,bool> method_capa_map;
static uint32_t max_instance_count_local;
static uint32_t *num_attrs_local;
static uint8_t *attrs_local;
-
};
// NOLINT
* distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
*/
+#ifndef _TEST_UPLL_MOMGR_INTF_STUB_HH
+#define _TEST_UPLL_MOMGR_INTF_STUB_HH
#include "vbr_momgr.hh"
~VbrMoMgrStub(){}
bool GetCreateCapability(const char *ctrlr_name,
unc_key_type_t keytype,
- uint32_t *instnace_count,
+ uint32_t *instance_count,
uint32_t *num_attrs,
const uint8_t **attrs) {
- instnace_count = max_inst_;
- num_attrs = num_attrs_;
+ *instance_count = *max_inst_;
+ *num_attrs = *num_attrs_;
if (*num_attrs == 0) return false;
*attrs = attrs_;
return true;
} // namespace upll
} // namespace unc
+#endif /* !_TEST_UPLL_MOMGR_INTF_STUB_HH */
+++ /dev/null
-#
-# Copyright (c) 2013 NEC Corporation
-# All rights reserved.
-#
-# This program and the accompanying materials are made available under the
-# terms of the Eclipse Public License v1.0 which accompanies this
-# distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
-#
-
-##
-## Makefile that includes dal module as stub to run unit tests for UPLL module.
-##
-
-
-CPPFLAGS = -g
-
-OBJS=../stub_objs
-
-SRC_DIR = ../../../../../../modules
-
-INCLUDE = -I$ ../stub/include \
- -I$ ../stub/include/cxx \
- -I$ ../stub/include/cxx/pfcxx \
- -I$ ../stub/dal/include \
- -I$ ../stub/dal \
- -I$(SRC_DIR)/ \
- -I$(SRC_DIR)/../core/libs/libpfc_ipc \
- -I$(SRC_DIR)/../dist/target/objs/core_include \
- -I$(SRC_DIR)/../dist/target/objs/core/include \
- -I$(SRC_DIR)/../dist/target/objs/include \
- -I$(SRC_DIR)/../core/include \
- -I$(SRC_DIR)/../include/ \
- -I$(SRC_DIR)/upll/include \
- -I$(SRC_DIR)/modules \
- -I$(SRC_DIR)/dal \
-
-
-all: compile
-
-Dependent_File = dal_odbc_mgr.cc dal_bind_info.cc dal_schema.cc
-OBJ1 = $(patsubst %.cc,$(OBJS)/%.o,$(Dependent_File))
-
-clean :
- @(cd $(OBJS); rm -rf *.o)
-
-$(OBJ1):$(OBJS)/%.o : %.cc dal_odbc_mgr.hh dal_bind_info.hh dal_cursor.hh dal_schema.hh
- $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(INCLUDE) -c $< -o $@
-
-compile :$(OBJ1)
-
-
}
bool DalBindInfo::BindInput(const DalColumnIndex column_index,
- const DalCDataType app_data_type,
- const size_t array_size,
- const void *bind_addr) {
+ const DalCDataType app_data_type,
+ const size_t array_size,
+ const void *bind_addr) {
return stub_getMappedResultCode(DalBindInfo::BIND_INPUT);
}
bool DalBindInfo::BindOutput(const DalColumnIndex column_index,
- const DalCDataType app_data_type,
- const size_t array_size,
- const void *bind_addr) {
+ const DalCDataType app_data_type,
+ const size_t array_size,
+ const void *bind_addr) {
return stub_getMappedResultCode(DalBindInfo::BIND_OUTPUT);
}
bool DalBindInfo::BindMatch(const DalColumnIndex column_index,
- const DalCDataType app_data_type,
- const size_t array_size,
- const void *bind_addr) {
+ const DalCDataType app_data_type,
+ const size_t array_size,
+ const void *bind_addr) {
return stub_getMappedResultCode(DalBindInfo::BIND_MATCH);
}
}
bool DalBindInfo::stub_getMappedResultCode(DalBindInfo::Method methodType) {
-if (0 != method_result_map.count(methodType)) {
-return method_result_map[methodType];
-}
-return false;
+ if (0 != method_result_map.count(methodType)) {
+ return method_result_map[methodType];
+ }
+ return false;
}
+
}
}
}
#include <string.h>
#include <vector>
#include <map>
-#include "include/dal_defines.hh"
-#include "include/dal_schema.hh"
-#include "include/dal_bind_column_info.hh"
+#include <dal_defines.hh>
+#include <dal_schema.hh>
+#include <dal_bind_column_info.hh>
namespace unc {
namespace upll {
typedef std::vector<DalBindColumnInfo *> DalBindList;
class DalBindInfo {
- public:
+public:
-enum Method
- {
- BIND_INPUT,
- BIND_OUTPUT,
- BIND_MATCH,
- COPY,
- RESET
- };
+ enum Method {
+ BIND_INPUT,
+ BIND_OUTPUT,
+ BIND_MATCH,
+ COPY,
+ RESET
+ };
- explicit DalBindInfo(const DalTableIndex table_index);
+ explicit DalBindInfo(const DalTableIndex table_index);
- ~DalBindInfo();
+ ~DalBindInfo();
- bool BindInput(const DalColumnIndex column_index,
- const DalCDataType app_data_type,
- const size_t array_size,
- const void *bind_addr);
+ bool BindInput(const DalColumnIndex column_index,
+ const DalCDataType app_data_type,
+ const size_t array_size,
+ const void *bind_addr);
- bool BindOutput(const DalColumnIndex column_index,
- const DalCDataType app_data_type,
- const size_t array_size,
- const void *bind_addr);
+ bool BindOutput(const DalColumnIndex column_index,
+ const DalCDataType app_data_type,
+ const size_t array_size,
+ const void *bind_addr);
- bool BindMatch(const DalColumnIndex column_index,
- const DalCDataType app_data_type,
- const size_t array_size,
- const void *bind_addr);
+ bool BindMatch(const DalColumnIndex column_index,
+ const DalCDataType app_data_type,
+ const size_t array_size,
+ const void *bind_addr);
- inline DalTableIndex get_table_index() const {
- return (table_index_);
- }
+ inline DalTableIndex get_table_index() const {
+ return (table_index_);
+ }
- inline DalBindList get_bind_list() const {
- return (bind_list_);
- }
+ inline DalBindList get_bind_list() const {
+ return (bind_list_);
+ }
- inline uint16_t get_input_bind_count() const {
- return (input_bind_count_);
- }
+ inline uint16_t get_input_bind_count() const {
+ return (input_bind_count_);
+ }
- inline uint16_t get_output_bind_count() const {
- return (output_bind_count_);
- }
+ inline uint16_t get_output_bind_count() const {
+ return (output_bind_count_);
+ }
- inline uint16_t get_match_bind_count() const {
- return (match_bind_count_);
- }
+ inline uint16_t get_match_bind_count() const {
+ return (match_bind_count_);
+ }
- static void stub_set_table_index(DalTableIndex tableIndex) {
- table_index_ = tableIndex;
- }
+ static void stub_set_table_index(DalTableIndex tableIndex) {
+ table_index_ = tableIndex;
+ }
- static void stub_set_bind_list( DalBindList dalBindList) {
- bind_list_ = dalBindList;
- }
+ static void stub_set_bind_list( DalBindList dalBindList) {
+ bind_list_ = dalBindList;
+ }
- static void stub_set_input_bind_count(uint16_t bind_count) {
- input_bind_count_= bind_count;
- }
+ static void stub_set_input_bind_count(uint16_t bind_count) {
+ input_bind_count_= bind_count;
+ }
- static void stub_set_output_bind_count( uint16_t output_bind) {
- output_bind_count_=output_bind;
- }
+ static void stub_set_output_bind_count( uint16_t output_bind) {
+ output_bind_count_=output_bind;
+ }
- static void stub_set_match_bind_count(uint16_t bind_count) {
- match_bind_count_ = bind_count;
- }
+ static void stub_set_match_bind_count(uint16_t bind_count) {
+ match_bind_count_ = bind_count;
+ }
- static void stub_setResultcode(DalBindInfo::Method methodType ,DalResultCode res_code) {
- method_result_map.insert(std::make_pair(methodType,res_code));
- }
+ static void stub_setResultcode(DalBindInfo::Method methodType,
+ DalResultCode res_code) {
+ method_result_map.insert(std::make_pair(methodType,res_code));
+ }
- static void clearStubData() {
- method_result_map.clear();
- }
+ static void clearStubData() {
+ method_result_map.clear();
+ }
+ bool CopyResultToApp();
- bool CopyResultToApp();
+ bool ResetDalOutBuffer();
+private:
+ bool stub_getMappedResultCode(DalBindInfo::Method);
+ static DalBindList bind_list_;
+ static DalTableIndex table_index_;
+ static uint16_t input_bind_count_;
- bool ResetDalOutBuffer();
- private:
- bool stub_getMappedResultCode(DalBindInfo::Method);
- static DalBindList bind_list_;
- static DalTableIndex table_index_;
- static uint16_t input_bind_count_;
+ static uint16_t output_bind_count_;
- static uint16_t output_bind_count_;
-
- static uint16_t match_bind_count_;
- static std::map<DalBindInfo::Method,bool> method_result_map;
+ static uint16_t match_bind_count_;
+ static std::map<DalBindInfo::Method,bool> method_result_map;
}; // class DalBindInfo
+
} // namespace dal
} // namespace upll
} // namespace unc
+
#endif // __DAL_BIND_INFO_HH__
/*
-* Copyright (c) 2012-2013 NEC Corporation
-* All rights reserved.
-*
-* This program and the accompanying materials are made available under the
-* terms of the Eclipse Public License v1.0 which accompanies this
-* distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
-*/
+ * Copyright (c) 2012-2013 NEC Corporation
+ * All rights reserved.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this
+ * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
+ */
/*
* dal_cusor.hh
namespace upll {
namespace dal {
-
class DalCursor {
- public :
- explicit DalCursor( ) {
- }
- ~DalCursor() {
- }
- DalResultCode GetNextRecord() {
- return kDalRcSuccess;
- }
- DalResultCode CloseCursor(bool delete_bind) {
- return kDalRcSuccess;
+public :
+ DalCursor(const DalBindInfo *info)
+ : _bindInfo1(info),
+ _bindInfo2(reinterpret_cast<const DalBindInfo *>(NULL)) {}
+
+ DalCursor(const DalBindInfo *info1, const DalBindInfo *info2)
+ : _bindInfo1(info1), _bindInfo2(info2) {}
+
+ ~DalCursor() {}
+
+ inline DalResultCode
+ GetNextRecord()
+ {
+ return kDalRcSuccess;
+ }
+
+ inline DalResultCode
+ CloseCursor(bool delete_bind)
+ {
+ if (delete_bind) {
+ delete _bindInfo1;
+ delete _bindInfo2;
}
+ return kDalRcSuccess;
+ }
+
+private:
+ const DalBindInfo *_bindInfo1;
+ const DalBindInfo *_bindInfo2;
}; // class DalCursor
} // namespace dal
#define __DAL_DML_INTF_HH__
#include <stdint.h>
-#include "include/dal_defines.hh"
-#include "dal_bind_info.hh"
-#include "include/dal_schema.hh"
-#include "dal_cursor.hh"
+#include <dal_defines.hh>
+#include <dal_bind_info.hh>
+#include <dal_schema.hh>
+#include <dal_cursor.hh>
namespace unc {
namespace upll {
/*
-* Copyright (c) 2012-2013 NEC Corporation
-* All rights reserved.
-*
-* This program and the accompanying materials are made available under the
-* terms of the Eclipse Public License v1.0 which accompanies this
-* distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
-*/
+ * Copyright (c) 2012-2013 NEC Corporation
+ * All rights reserved.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this
+ * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
+ */
#include "dal_odbc_mgr.hh"
std::map<uint8_t,DalResultCode> DalOdbcMgr::resultcodes;
DalOdbcMgr::DalOdbcMgr(void) {
-
}
+
DalOdbcMgr::~DalOdbcMgr(void) {
}
DalResultCode DalOdbcMgr::Init(void) {
- return stub_getMappedResultCode(DalOdbcMgr::INIT);
-}
-DalResultCode DalOdbcMgr::ConnectToDb(const DalConnType conn_type) {
- return stub_getMappedResultCode(DalOdbcMgr::CONNECT);
+ return stub_getMappedResultCode(DalOdbcMgr::INIT);
}
-DalResultCode DalOdbcMgr::DisconnectFromDb() {
- return stub_getMappedResultCode(DalOdbcMgr::DISCONNECT);
+DalResultCode DalOdbcMgr::ConnectToDb(const DalConnType conn_type) const {
+ return stub_getMappedResultCode(DalOdbcMgr::CONNECT);
}
-DalResultCode DalOdbcMgr::CommitTransaction(){
- return stub_getMappedResultCode(DalOdbcMgr::COMMIT);
+DalResultCode DalOdbcMgr::DisconnectFromDb() const {
+ return stub_getMappedResultCode(DalOdbcMgr::DISCONNECT);
+}
+DalResultCode DalOdbcMgr::CommitTransaction() const {
+ return stub_getMappedResultCode(DalOdbcMgr::COMMIT);
}
-DalResultCode DalOdbcMgr::RollbackTransaction() {
- return stub_getMappedResultCode(DalOdbcMgr::ROLLBACK);
+DalResultCode DalOdbcMgr::RollbackTransaction() const {
+ return stub_getMappedResultCode(DalOdbcMgr::ROLLBACK);
}
+
DalConnType DalOdbcMgr::get_conn_type() {
- return conn_type_;
+ return conn_type_;
}
-DalResultCode DalOdbcMgr::GetSingleRecord(
- const UpllCfgType cfg_type,
- const DalTableIndex table_index,
- const DalBindInfo *ouput_and_matching_attr_info) {
- return stub_getMappedResultCode(DalOdbcMgr::SINGLE);
+DalResultCode DalOdbcMgr::GetSingleRecord(
+ const UpllCfgType cfg_type, const DalTableIndex table_index,
+ const DalBindInfo *output_and_matching_attr_info) {
+ return stub_getMappedResultCode(DalOdbcMgr::SINGLE);
}
DalResultCode DalOdbcMgr::GetMultipleRecords(
- const UpllCfgType cfg_type,
- const DalTableIndex table_index,
- const size_t max_record_count,
- const DalBindInfo *ouput_and_matching_attr_info,
- DalCursor **cursor) {
- *cursor=new DalCursor();
- return stub_getMappedResultCode(DalOdbcMgr::MULTIPLE);
-
+ const UpllCfgType cfg_type, const DalTableIndex table_index,
+ const size_t max_record_count,
+ const DalBindInfo *output_and_matching_attr_info, DalCursor **cursor) {
+ return initCursor(cursor, output_and_matching_attr_info, MULTIPLE);
}
DalResultCode DalOdbcMgr::GetNextRecord(const DalCursor *cursor) {
-
- return resultcodes[count++];
+ return resultcodes[count++];
}
-DalResultCode DalOdbcMgr::CloseCursor(DalCursor *cursor, bool) {
- return stub_getMappedResultCode(DalOdbcMgr::CLOSE_CURSOR);
+DalResultCode DalOdbcMgr::CloseCursor(DalCursor *cursor, bool delete_bind) {
+ if (cursor != NULL) {
+ cursor->CloseCursor(delete_bind);
+ delete cursor;
+ }
+ return stub_getMappedResultCode(DalOdbcMgr::CLOSE_CURSOR);
}
DalResultCode DalOdbcMgr::RecordExists(const UpllCfgType cfg_type,
- const DalTableIndex table_index,
- const DalBindInfo *matching_attr_info,
- bool *existence) {
- *existence=exists_;
- return stub_getMappedResultCode(DalOdbcMgr::RECORD_EXISTS);
+ const DalTableIndex table_index,
+ const DalBindInfo *matching_attr_info,
+ bool *existence) {
+ *existence=exists_;
+ return stub_getMappedResultCode(DalOdbcMgr::RECORD_EXISTS);
}
DalResultCode DalOdbcMgr::GetSiblingBegin(
- const UpllCfgType cfg_type,
- const DalTableIndex table_index,
- const size_t max_record_count,
- const DalBindInfo *ouput_and_matching_attr_info,
- DalCursor **cursor) {
- return stub_getMappedResultCode(DalOdbcMgr::SIBLING_BEGIN);
+ const UpllCfgType cfg_type, const DalTableIndex table_index,
+ const size_t max_record_count,
+ const DalBindInfo *output_and_matching_attr_info, DalCursor **cursor) {
+ return initCursor(cursor, output_and_matching_attr_info, SIBLING_BEGIN);
}
DalResultCode DalOdbcMgr::GetSiblingRecords(
- const UpllCfgType cfg_type,
- const DalTableIndex table_index,
- const size_t max_record_count,
- const DalBindInfo *ouput_and_matching_attr_info,
- DalCursor **cursor) {
- return stub_getMappedResultCode(DalOdbcMgr::SIBLING_COUNT);
+ const UpllCfgType cfg_type, const DalTableIndex table_index,
+ const size_t max_record_count,
+ const DalBindInfo *output_and_matching_attr_info, DalCursor **cursor) {
+ return initCursor(cursor, output_and_matching_attr_info, SIBLING_COUNT);
}
DalResultCode DalOdbcMgr::GetSiblingCount(const UpllCfgType cfg_type,
- const DalTableIndex table_index,
- const DalBindInfo *matching_attr_info,
- uint32_t *count) {
- return stub_getMappedResultCode(DalOdbcMgr::SIBLING_COUNT);
+ const DalTableIndex table_index,
+ const DalBindInfo *matching_attr_info,
+ uint32_t *count) {
+ return stub_getMappedResultCode(DalOdbcMgr::SIBLING_COUNT);
}
DalResultCode DalOdbcMgr::GetRecordCount(const UpllCfgType cfg_type,
- const DalTableIndex table_index,
- const DalBindInfo *matching_attr_info,
- uint32_t *count) {
- *count=sibling_count_;
- return stub_getMappedResultCode(DalOdbcMgr::RECORD_COUNT);
+ const DalTableIndex table_index,
+ const DalBindInfo *matching_attr_info,
+ uint32_t *count) {
+ *count=sibling_count_;
+ return stub_getMappedResultCode(DalOdbcMgr::RECORD_COUNT);
}
DalResultCode DalOdbcMgr::DeleteRecords(const UpllCfgType cfg_type,
- const DalTableIndex table_index,
- const DalBindInfo *matching_attr_info) {
- return stub_getMappedResultCode(DalOdbcMgr::DELETE_RECORD);
+ const DalTableIndex table_index,
+ const DalBindInfo *matching_attr_info) {
+ return stub_getMappedResultCode(DalOdbcMgr::DELETE_RECORD);
}
DalResultCode DalOdbcMgr::CreateRecord(const UpllCfgType cfg_type,
- const DalTableIndex table_index,
- const DalBindInfo *input_attr_info) {
- return stub_getMappedResultCode(DalOdbcMgr::UPDATE_RECORD);
+ const DalTableIndex table_index,
+ const DalBindInfo *input_attr_info) {
+ return stub_getMappedResultCode(DalOdbcMgr::UPDATE_RECORD);
}
DalResultCode DalOdbcMgr::UpdateRecords(
- const UpllCfgType cfg_type,
- const DalTableIndex table_index,
- const DalBindInfo *input_and_matching_attr_info) {
- return stub_getMappedResultCode(DalOdbcMgr::CREATE_RECORD);
+ const UpllCfgType cfg_type, const DalTableIndex table_index,
+ const DalBindInfo *input_and_matching_attr_info) {
+ return stub_getMappedResultCode(DalOdbcMgr::CREATE_RECORD);
}
DalResultCode DalOdbcMgr::GetDeletedRecords(const UpllCfgType cfg_type_1,
- const UpllCfgType cfg_type_2,
- const DalTableIndex table_index,
- const size_t max_record_count,
- const DalBindInfo *output_attr_info,
- DalCursor **cursor) {
- return stub_getMappedResultCode(DalOdbcMgr::GET_DELETED_RECORDS);
+ const UpllCfgType cfg_type_2,
+ const DalTableIndex table_index,
+ const size_t max_record_count,
+ const DalBindInfo *output_attr_info,
+ DalCursor **cursor) {
+ return initCursor(cursor, output_attr_info, GET_DELETED_RECORDS);
}
DalResultCode DalOdbcMgr::GetCreatedRecords(const UpllCfgType cfg_type_1,
- const UpllCfgType cfg_type_2,
- const DalTableIndex table_index,
- const size_t max_record_count,
- const DalBindInfo *output_attr_info,
- DalCursor **cursor) {
- return stub_getMappedResultCode(DalOdbcMgr::GET_CREATED_RECORDS);
+ const UpllCfgType cfg_type_2,
+ const DalTableIndex table_index,
+ const size_t max_record_count,
+ const DalBindInfo *output_attr_info,
+ DalCursor **cursor) {
+ return initCursor(cursor, output_attr_info, GET_CREATED_RECORDS);
}
DalResultCode DalOdbcMgr::GetUpdatedRecords(
- const UpllCfgType cfg_type_1,
- const UpllCfgType cfg_type_2,
- const DalTableIndex table_index,
- const size_t max_record_count,
- const DalBindInfo *cfg_1_output_and_match_attr_info,
- const DalBindInfo *cfg_2_output_and_match_attr_info,
- DalCursor **cursor) {
- return stub_getMappedResultCode(DalOdbcMgr::GET_UPDATED_RECORDS);
+ const UpllCfgType cfg_type_1, const UpllCfgType cfg_type_2,
+ const DalTableIndex table_index, const size_t max_record_count,
+ const DalBindInfo *cfg_1_output_and_match_attr_info,
+ const DalBindInfo *cfg_2_output_and_match_attr_info, DalCursor **cursor) {
+ return initCursor(cursor, cfg_1_output_and_match_attr_info,
+ cfg_2_output_and_match_attr_info, GET_UPDATED_RECORDS);
}
-DalResultCode DalOdbcMgr::CopyEntireRecords(const UpllCfgType dest_cfg_type,
- const UpllCfgType src_cfg_type,
- const DalTableIndex table_index,
- const DalBindInfo *output_attr_info) {
- return stub_getMappedResultCode(DalOdbcMgr::COPY_ENTIRE);
+DalResultCode DalOdbcMgr::CopyEntireRecords(
+ const UpllCfgType dest_cfg_type, const UpllCfgType src_cfg_type,
+ const DalTableIndex table_index, const DalBindInfo *output_attr_info) {
+ return stub_getMappedResultCode(DalOdbcMgr::COPY_ENTIRE);
}
DalResultCode DalOdbcMgr::CopyModifiedRecords(
- const UpllCfgType dest_cfg_type,
- const UpllCfgType src_cfg_type,
- const DalTableIndex table_index,
- const DalBindInfo *output_and_match_attr_info) {
- return stub_getMappedResultCode(DalOdbcMgr::COPY_MODIFY);
+ const UpllCfgType dest_cfg_type, const UpllCfgType src_cfg_type,
+ const DalTableIndex table_index,
+ const DalBindInfo *output_and_match_attr_info) {
+ return stub_getMappedResultCode(DalOdbcMgr::COPY_MODIFY);
}
-DalResultCode DalOdbcMgr::CopyModifiedInsertRecords(
- const UpllCfgType dest_cfg_type,
- const UpllCfgType src_cfg_type,
- const DalTableIndex table_index,
- const DalBindInfo *output_and_match_attr_info) {
- return stub_getMappedResultCode(DalOdbcMgr::COPY_MODIFY_INSERT);
+DalResultCode DalOdbcMgr::CopyModifiedInsertRecords(
+ const UpllCfgType dest_cfg_type, const UpllCfgType src_cfg_type,
+ const DalTableIndex table_index,
+ const DalBindInfo *output_and_match_attr_info) {
+ return stub_getMappedResultCode(DalOdbcMgr::COPY_MODIFY_INSERT);
}
DalResultCode DalOdbcMgr::CopyMatchingRecords(
- const UpllCfgType dest_cfg_type,
- const UpllCfgType src_cfg_type,
- const DalTableIndex table_index,
- const DalBindInfo *output_and_match_attr_info) {
- return stub_getMappedResultCode(DalOdbcMgr::COPY_MATCHING);
+ const UpllCfgType dest_cfg_type, const UpllCfgType src_cfg_type,
+ const DalTableIndex table_index,
+ const DalBindInfo *output_and_match_attr_info) {
+ return stub_getMappedResultCode(DalOdbcMgr::COPY_MATCHING);
}
+
DalResultCode DalOdbcMgr::ExecuteAppQueryMultipleRecords(
- const std::string query_stmt,
- const size_t max_record_count,
- const DalBindInfo *bind_info,
- DalCursor **cursor) {
- return stub_getMappedResultCode(DalOdbcMgr::EXECUTE_APPQUERY_MULTIPLE);
+ const std::string query_stmt, const size_t max_record_count,
+ const DalBindInfo *bind_info, DalCursor **cursor) {
+ return initCursor(cursor, bind_info, EXECUTE_APPQUERY_MULTIPLE);
}
-DalResultCode DalOdbcMgr::CheckRecordsIdentical(const UpllCfgType cfg_type_1,
- const UpllCfgType cfg_type_2,
- const DalTableIndex table_index,
- const DalBindInfo *matching_attr_info,
- bool *identical) {
- return stub_getMappedResultCode(DalOdbcMgr::CHECK_IDENTICAL);
-
+DalResultCode DalOdbcMgr::CheckRecordsIdentical(
+ const UpllCfgType cfg_type_1, const UpllCfgType cfg_type_2,
+ const DalTableIndex table_index, const DalBindInfo *matching_attr_info,
+ bool *identical) {
+ return stub_getMappedResultCode(DalOdbcMgr::CHECK_IDENTICAL);
}
DalResultCode DalOdbcMgr::ExecuteQuery(SQLHANDLE *dal_stmt_handle,
- const std::string *query_stmt,
- const DalBindInfo *bind_info,
- const uint32_t max_count) {
-
- return stub_getMappedResultCode(DalOdbcMgr::EXECUTE_QUERY);
-}
-DalResultCode DalOdbcMgr::stub_getMappedResultCode(DalOdbcMgr::Method methodType) {
-
- if (0 != method_resultcode_map.count(methodType))
- {
- return method_resultcode_map[methodType];
- }
- return kDalRcGeneralError;
+ const std::string *query_stmt,
+ const DalBindInfo *bind_info,
+ const uint32_t max_count) {
+ return stub_getMappedResultCode(DalOdbcMgr::EXECUTE_QUERY);
+}
+
+DalResultCode DalOdbcMgr::stub_getMappedResultCode(
+ DalOdbcMgr::Method methodType) const {
+ if (0 != method_resultcode_map.count(methodType)) {
+ return method_resultcode_map[methodType];
+ }
+ return kDalRcGeneralError;
}
} // namespace dal
/*
-* Copyright (c) 2012-2013 NEC Corporation
-* All rights reserved.
-*
-* This program and the accompanying materials are made available under the
-* terms of the Eclipse Public License v1.0 which accompanies this
-* distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
-*/
+ * Copyright (c) 2012-2013 NEC Corporation
+ * All rights reserved.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this
+ * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
+ */
/**
* dal_odbc_mgr.hh
#ifndef __DAL_ODBC_MGR_HH__
#define __DAL_ODBC_MGR_HH__
-#include "include/dal_defines.hh"
-#include "include/dal_conn_intf.hh"
-#include "include/dal_schema.hh"
-#include "dal_bind_info.hh"
-#include "dal_cursor.hh"
-#include "dal_dml_intf.hh"
+#include <dal_defines.hh>
+#include <dal_conn_intf.hh>
+#include <dal_schema.hh>
+#include <dal_bind_info.hh>
+#include <dal_cursor.hh>
+#include <dal_dml_intf.hh>
//#include "upll/upll_log.hh"
#include <iostream>
#include <map>
#include <list>
+
using namespace std;
+
namespace unc {
namespace upll {
namespace dal {
//class DalCursor;
//typedef upll_keytype_datatype_t UpllCfgType;
class DalOdbcMgr :public DalConnIntf, public DalDmlIntf {
- public:
-
- enum Method
- {
- INIT,
- CONNECT,
- DISCONNECT,
- COMMIT,
- ROLLBACK,
- SINGLE,
- MULTIPLE,
- NEXT,
- CLOSE_CURSOR,
- RECORD_EXISTS,
- SIBLING_BEGIN,
- SIBLING_RECORDS,
- SIBLING_COUNT,
- RECORD_COUNT,
- DELETE_RECORD,
- UPDATE_RECORD,
- CREATE_RECORD,
- GET_DELETED_RECORDS,
- GET_CREATED_RECORDS,
- GET_UPDATED_RECORDS,
- COPY_ENTIRE,
- COPY_MODIFY,
- COPY_MODIFY_INSERT,
- COPY_MATCHING,
- CHECK_IDENTICAL,
- EXECUTE_APPQUERY_MULTIPLE,
- EXECUTE_QUERY,
- };
- DalOdbcMgr(void);
-
- ~DalOdbcMgr(void);
-
- DalResultCode Init(void);
- DalResultCode ConnectToDb(const DalConnType conn_type) ;
- DalResultCode DisconnectFromDb();
-
- DalResultCode CommitTransaction();
-
- DalResultCode RollbackTransaction();
-
- DalConnType get_conn_type();
-
- DalResultCode GetSingleRecord(
- const UpllCfgType cfg_type,
- const DalTableIndex table_index,
- const DalBindInfo *ouput_and_matching_attr_info) ;
-
- DalResultCode GetMultipleRecords(
- const UpllCfgType cfg_type,
- const DalTableIndex table_index,
- const size_t max_record_count,
- const DalBindInfo *ouput_and_matching_attr_info,
- DalCursor **cursor);
-
- DalResultCode GetNextRecord(const DalCursor *cursor);
-
- DalResultCode CloseCursor(DalCursor *cursor,bool);
-
- DalResultCode RecordExists(const UpllCfgType cfg_type,
+public:
+ enum Method {
+ INIT,
+ CONNECT,
+ DISCONNECT,
+ COMMIT,
+ ROLLBACK,
+ SINGLE,
+ MULTIPLE,
+ NEXT,
+ CLOSE_CURSOR,
+ RECORD_EXISTS,
+ SIBLING_BEGIN,
+ SIBLING_RECORDS,
+ SIBLING_COUNT,
+ RECORD_COUNT,
+ DELETE_RECORD,
+ UPDATE_RECORD,
+ CREATE_RECORD,
+ GET_DELETED_RECORDS,
+ GET_CREATED_RECORDS,
+ GET_UPDATED_RECORDS,
+ COPY_ENTIRE,
+ COPY_MODIFY,
+ COPY_MODIFY_INSERT,
+ COPY_MATCHING,
+ CHECK_IDENTICAL,
+ EXECUTE_APPQUERY_MULTIPLE,
+ EXECUTE_QUERY,
+ };
+
+ DalOdbcMgr(void);
+ ~DalOdbcMgr(void);
+
+ DalResultCode Init(void);
+ DalResultCode ConnectToDb(const DalConnType conn_type) const;
+ DalResultCode DisconnectFromDb() const;
+ DalResultCode CommitTransaction() const;
+ DalResultCode RollbackTransaction() const;
+
+ DalConnType get_conn_type();
+
+ DalResultCode GetSingleRecord(
+ const UpllCfgType cfg_type, const DalTableIndex table_index,
+ const DalBindInfo *ouput_and_matching_attr_info) ;
+
+ DalResultCode GetMultipleRecords(
+ const UpllCfgType cfg_type, const DalTableIndex table_index,
+ const size_t max_record_count,
+ const DalBindInfo *ouput_and_matching_attr_info, DalCursor **cursor);
+
+ DalResultCode GetNextRecord(const DalCursor *cursor);
+
+ DalResultCode CloseCursor(DalCursor *cursor, bool delete_bind = false);
+
+ DalResultCode RecordExists(const UpllCfgType cfg_type,
+ const DalTableIndex table_index,
+ const DalBindInfo *matching_attr_info,
+ bool *existence);
+
+ DalResultCode GetSiblingBegin(
+ const UpllCfgType cfg_type, const DalTableIndex table_index,
+ const size_t max_record_count,
+ const DalBindInfo *ouput_and_matching_attr_info, DalCursor **cursor);
+
+ DalResultCode GetSiblingRecords(
+ const UpllCfgType cfg_type, const DalTableIndex table_index,
+ const size_t max_record_count,
+ const DalBindInfo *ouput_and_matching_attr_info, DalCursor **cursor);
+
+ DalResultCode GetSiblingCount(const UpllCfgType cfg_type,
+ const DalTableIndex table_index,
+ const DalBindInfo *matching_attr_info,
+ uint32_t *count);
+
+ DalResultCode GetRecordCount(const UpllCfgType cfg_type,
const DalTableIndex table_index,
const DalBindInfo *matching_attr_info,
- bool *existence);
-
- DalResultCode GetSiblingBegin(
- const UpllCfgType cfg_type,
- const DalTableIndex table_index,
- const size_t max_record_count,
- const DalBindInfo *ouput_and_matching_attr_info,
- DalCursor **cursor);
-
- DalResultCode GetSiblingRecords(
- const UpllCfgType cfg_type,
- const DalTableIndex table_index,
- const size_t max_record_count,
- const DalBindInfo *ouput_and_matching_attr_info,
- DalCursor **cursor);
-
- DalResultCode GetSiblingCount(const UpllCfgType cfg_type,
- const DalTableIndex table_index,
- const DalBindInfo *matching_attr_info,
- uint32_t *count);
+ uint32_t *count);
- DalResultCode GetRecordCount(const UpllCfgType cfg_type,
- const DalTableIndex table_index,
- const DalBindInfo *matching_attr_info,
- uint32_t *count);
+ DalResultCode DeleteRecords(const UpllCfgType cfg_type,
+ const DalTableIndex table_index,
+ const DalBindInfo *matching_attr_info);
- DalResultCode DeleteRecords(const UpllCfgType cfg_type,
- const DalTableIndex table_index,
- const DalBindInfo *matching_attr_info);
+ DalResultCode CreateRecord(const UpllCfgType cfg_type,
+ const DalTableIndex table_index,
+ const DalBindInfo *input_attr_info);
- DalResultCode CreateRecord(const UpllCfgType cfg_type,
- const DalTableIndex table_index,
- const DalBindInfo *input_attr_info);
-
- DalResultCode UpdateRecords(
- const UpllCfgType cfg_type,
- const DalTableIndex table_index,
- const DalBindInfo *input_and_matching_attr_info);
-
- DalResultCode GetDeletedRecords(const UpllCfgType cfg_type_1,
- const UpllCfgType cfg_type_2,
- const DalTableIndex table_index,
- const size_t max_record_count,
- const DalBindInfo *output_attr_info,
- DalCursor **cursor);
-
-
- DalResultCode GetCreatedRecords(const UpllCfgType cfg_type_1,
- const UpllCfgType cfg_type_2,
- const DalTableIndex table_index,
- const size_t max_record_count,
- const DalBindInfo *output_attr_info,
- DalCursor **cursor);
- DalResultCode GetUpdatedRecords(
- const UpllCfgType cfg_type_1,
- const UpllCfgType cfg_type_2,
- const DalTableIndex table_index,
- const size_t max_record_count,
- const DalBindInfo *cfg_1_output_and_match_attr_info,
- const DalBindInfo *cfg_2_output_and_match_attr_info,
- DalCursor **cursor);
-
- DalResultCode CopyEntireRecords(const UpllCfgType dest_cfg_type,
- const UpllCfgType src_cfg_type,
- const DalTableIndex table_index,
- const DalBindInfo *output_attr_info);
-
- DalResultCode CopyModifiedRecords(
- const UpllCfgType dest_cfg_type,
- const UpllCfgType src_cfg_type,
- const DalTableIndex table_index,
- const DalBindInfo *output_and_match_attr_info);
-
- DalResultCode CopyModifiedInsertRecords(
- const UpllCfgType dest_cfg_type,
- const UpllCfgType src_cfg_type,
- const DalTableIndex table_index,
- const DalBindInfo *output_and_match_attr_info);
-
-
- DalResultCode CopyMatchingRecords(
- const UpllCfgType dest_cfg_type,
- const UpllCfgType src_cfg_type,
- const DalTableIndex table_index,
- const DalBindInfo *output_and_match_attr_info);
-
- DalResultCode CheckRecordsIdentical(const UpllCfgType cfg_type_1,
- const UpllCfgType cfg_type_2,
- const DalTableIndex table_index,
- const DalBindInfo *matching_attr_info,
- bool *identical);
-
- DalResultCode ExecuteAppQueryMultipleRecords(
- const std::string query_stmt,
- const size_t max_record_count,
- const DalBindInfo *bind_info,
- DalCursor **cursor) ;
- DalResultCode ExecuteQuery(SQLHANDLE *dal_stmt_handle,
- const std::string *query_stmt,
- const DalBindInfo *bind_info,
- const uint32_t max_count);
-
- static void stub_setResultcode(DalOdbcMgr::Method methodType ,DalResultCode res_code) {
- method_resultcode_map.insert(std::make_pair(methodType,res_code));
- }
+ DalResultCode UpdateRecords(const UpllCfgType cfg_type,
+ const DalTableIndex table_index,
+ const DalBindInfo *input_and_matching_attr_info);
- static void stub_setSingleRecordExists(bool exists) {
- exists_=exists;
- }
- static void stub_setSiblingCount(uint32_t sibling_count1) {
- sibling_count_=sibling_count1;
- }
+ DalResultCode GetDeletedRecords(const UpllCfgType cfg_type_1,
+ const UpllCfgType cfg_type_2,
+ const DalTableIndex table_index,
+ const size_t max_record_count,
+ const DalBindInfo *output_attr_info,
+ DalCursor **cursor);
- static void clearStubData() {
- method_resultcode_map.clear();
- count=0;
- resultcodes.clear();
- }
- static void stub_setNextRecordResultCodes( const std::map<uint8_t,DalResultCode>& amap) {
- resultcodes=amap;
+ DalResultCode GetCreatedRecords(const UpllCfgType cfg_type_1,
+ const UpllCfgType cfg_type_2,
+ const DalTableIndex table_index,
+ const size_t max_record_count,
+ const DalBindInfo *output_attr_info,
+ DalCursor **cursor);
+
+ DalResultCode GetUpdatedRecords(
+ const UpllCfgType cfg_type_1, const UpllCfgType cfg_type_2,
+ const DalTableIndex table_index, const size_t max_record_count,
+ const DalBindInfo *cfg_1_output_and_match_attr_info,
+ const DalBindInfo *cfg_2_output_and_match_attr_info, DalCursor **cursor);
+
+ DalResultCode CopyEntireRecords(const UpllCfgType dest_cfg_type,
+ const UpllCfgType src_cfg_type,
+ const DalTableIndex table_index,
+ const DalBindInfo *output_attr_info);
+
+ DalResultCode CopyModifiedRecords(
+ const UpllCfgType dest_cfg_type, const UpllCfgType src_cfg_type,
+ const DalTableIndex table_index,
+ const DalBindInfo *output_and_match_attr_info);
+
+ DalResultCode CopyModifiedInsertRecords(
+ const UpllCfgType dest_cfg_type, const UpllCfgType src_cfg_type,
+ const DalTableIndex table_index,
+ const DalBindInfo *output_and_match_attr_info);
+
+ DalResultCode CopyMatchingRecords(
+ const UpllCfgType dest_cfg_type, const UpllCfgType src_cfg_type,
+ const DalTableIndex table_index,
+ const DalBindInfo *output_and_match_attr_info);
+
+ DalResultCode CheckRecordsIdentical(const UpllCfgType cfg_type_1,
+ const UpllCfgType cfg_type_2,
+ const DalTableIndex table_index,
+ const DalBindInfo *matching_attr_info,
+ bool *identical);
+
+ DalResultCode ExecuteAppQueryMultipleRecords(
+ const std::string query_stmt, const size_t max_record_count,
+ const DalBindInfo *bind_info, DalCursor **cursor) ;
+
+ DalResultCode ExecuteQuery(SQLHANDLE *dal_stmt_handle,
+ const std::string *query_stmt,
+ const DalBindInfo *bind_info,
+ const uint32_t max_count);
+
+ static void stub_setResultcode(DalOdbcMgr::Method methodType,
+ DalResultCode res_code) {
+ method_resultcode_map.insert(std::make_pair(methodType,res_code));
+ }
+
+ static void stub_setSingleRecordExists(bool exists) {
+ exists_ = exists;
+ }
+
+ static void stub_setSiblingCount(uint32_t sibling_count1) {
+ sibling_count_ = sibling_count1;
+ }
+
+ static void clearStubData() {
+ method_resultcode_map.clear();
+ count = 0;
+ resultcodes.clear();
+ exists_ = false;
+ sibling_count_ = 0;
+ }
+
+ static void stub_setNextRecordResultCodes(
+ const std::map<uint8_t,DalResultCode>& amap) {
+ resultcodes=amap;
+ }
+
+private:
+ DalResultCode stub_getMappedResultCode(Method) const;
+
+ inline DalResultCode
+ initCursor(DalCursor **cursor, const DalBindInfo *info, Method type) const
+ {
+ DalResultCode ret(stub_getMappedResultCode(type));
+ if (ret == kDalRcSuccess) {
+ *cursor = new DalCursor(info);
}
- private:
- DalResultCode stub_getMappedResultCode(Method);
- static std::map<DalOdbcMgr::Method,DalResultCode> method_resultcode_map;
- static bool exists_;
- static uint32_t sibling_count_;
- mutable DalConnType conn_type_;
- static map<uint8_t,DalResultCode> resultcodes;
- static uint32_t count;
-
-
+ return ret;
+ }
+
+ inline DalResultCode
+ initCursor(DalCursor **cursor, const DalBindInfo *info1,
+ const DalBindInfo *info2, Method type) const
+ {
+ DalResultCode ret(stub_getMappedResultCode(type));
+ if (ret == kDalRcSuccess) {
+ *cursor = new DalCursor(info1, info2);
+ }
+ return ret;
+ }
+
+ static std::map<DalOdbcMgr::Method,DalResultCode> method_resultcode_map;
+ static bool exists_;
+ static uint32_t sibling_count_;
+ mutable DalConnType conn_type_;
+ static map<uint8_t,DalResultCode> resultcodes;
+ static uint32_t count;
}; // class DalOdbcMgr
} // namespace dal
/*
-* Copyright (c) 2012-2013 NEC Corporation
-* All rights reserved.
-*
-* This program and the accompanying materials are made available under the
-* terms of the Eclipse Public License v1.0 which accompanies this
-* distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
-*/
+ * Copyright (c) 2012-2013 NEC Corporation
+ * All rights reserved.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this
+ * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
+ */
/*
* dal_schema.cc - contians schema information of all tables
/*
-* Copyright (c) 2012-2013 NEC Corporation
-* All rights reserved.
-*
-* This program and the accompanying materials are made available under the
-* terms of the Eclipse Public License v1.0 which accompanies this
-* distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
-*/
+ * Copyright (c) 2012-2013 NEC Corporation
+ * All rights reserved.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this
+ * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
+ */
/*
* dal_schema.hh - contians schema information of all tables
+++ /dev/null
-/*
-* Copyright (c) 2012-2013 NEC Corporation
-* All rights reserved.
-*
-* This program and the accompanying materials are made available under the
-* terms of the Eclipse Public License v1.0 which accompanies this
-* distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
-*/
-
-#include "../../../../../../../modules/dal/dal_bind_column_info.hh"
+++ /dev/null
-/*
-* Copyright (c) 2012-2013 NEC Corporation
-* All rights reserved.
-*
-* This program and the accompanying materials are made available under the
-* terms of the Eclipse Public License v1.0 which accompanies this
-* distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
-*/
-
-/*
- * dal_conn_intf.h
- * Contians class definition for Database connection and transaction
- * interfaces
- *
- * Implemented by DalOdbcMgr
- */
-#ifndef __DAL_CONN_INTF_HH__
-#define __DAL_CONN_INTF_HH__
-
-#include "dal_defines.hh"
-
-namespace unc {
-namespace upll {
-namespace dal {
-
-enum DalConnType {
- kDalConnReadOnly = 0, // Read Only Connection
- kDalConnReadWrite // Read Write Connection
-};
-
-/**
- * DalConnIntf
- * Connection and Transaction APIs for database
- *
- * Inherited by DalOdbcMgr
- */
-class DalConnIntf {
- public:
- /**
- * DalConnIntf - Constructor
- *
- * @return void - None
- */
- DalConnIntf() {
- }
-
- /**
- * ~DalConnIntf - Destructor
- *
- * @return void - None
- */
- virtual ~DalConnIntf() {
- }
-
- /**
- * ConnectToDb
- * Connects to the DB with the connection parameters from conf file.
- *
- * @param[in] conn_type - Type of the connection (Read-Only or Read/Write)
- *
- * @return DalResultCode - kDalRcSuccess in case of success
- * - Valid errorcode otherwise
- */
- virtual DalResultCode ConnectToDb(const DalConnType conn_type)= 0;
-
- /**
- * DisconnectFromDb
- * Disconnects from the database for the corresponding connection
- *
- * @return DalResultCode - kDalRcSuccess in case of success
- * - Valid errorcode otherwise
- */
- virtual DalResultCode DisconnectFromDb() = 0;
-
- /**
- * CommitTransaction
- * Commits all the pending changes in the database for the correpsonding
- * connection.
- *
- * @return DalResultCode - kDalRcSuccess in case of success
- * - Valid errorcode otherwise
- */
- virtual DalResultCode CommitTransaction() = 0;
-
- /**
- * RollbackTransaction
- * Discards all the pending changes in the database for the correpsonding
- * connection.
- *
- * @return DalResultCode - kDalRcSuccess in case of success
- * - Valid errorcode otherwise
- */
- virtual DalResultCode RollbackTransaction() = 0;
-
- virtual DalConnType get_conn_type() = 0;
-
-
-};
-
-} // namespace dal
-} // namespace upll
-} // namespace unc
-#endif // __DAL_CONN_INTF_HH__
+++ /dev/null
-/*
-* Copyright (c) 2012-2013 NEC Corporation
-* All rights reserved.
-*
-* This program and the accompanying materials are made available under the
-* terms of the Eclipse Public License v1.0 which accompanies this
-* distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
-*/
-
-#include "../../../../../../../modules/dal/dal_defines.hh"
-
+++ /dev/null
-/* Copyright (c) 2013 NEC Corporation */
-/* NEC CONFIDENTIAL AND PROPRIETARY */
-/* All rights reserved by NEC Corporation. */
-/* This program must be used solely for the purpose for */
-/* which it was furnished by NEC Corporation. No part */
-/* of this program may be reproduced or disclosed to */
-/* others, in any form, without the prior written */
-/* permission of NEC Corporation. Use of copyright */
-/* notice does not evidence publication of the program. */
-
-/*
- * dal_dml_intf.hh
- * Contains definition of DalDmlIntf
- * DML interface of database
- *
- * Implemented by DalOdbcMgr
- */
-
-#ifndef __DAL_DML_INTF_HH__
-#define __DAL_DML_INTF_HH__
-
-#include <stdint.h>
-#include "dal_defines.hh"
-#include "dal_bind_info.hh"
-#include "dal_schema.hh"
-#include "dal_cursor.hh"
-
-namespace unc {
-namespace upll {
-namespace dal {
-
-/**
- * DalConnIntf
- * Database management query APIs for database
- *
- * Inherited by DalOdbcMgr
- */
-class DalDmlIntf {
- public:
- /**
- * DalDmlIntf - Constructor
- *
- * @return void - None
- */
- DalDmlIntf() {
- }
-
- /**
- * DalDmlIntf - Constructor
- *
- * @return void - None
- */
-
- virtual ~DalDmlIntf() {
- }
-
- /**
- * GetSingleRecords
- * Gets single record of the given table that matches the given values
- *
- * @param[in] cfg_type - Configuration Type from which the matching
- * records are required
- * @param[in] table_index - Valid Index of the table
- * @param[in] output_and_matching_attr_info
- * - Bind Information for matching and output
- * attributes
- * - Output values are populated in the dal
- * output buffer bound, on successful execution
- *
- * @return DalResultCode - kDalRcSuccess in case of success
- * - Valid errorcode otherwise
- *
- * Note:
- * Information on usage of DalBindInfo
- * 1. Valid instance of DalBindInfo with same table_index used in this API
- * 2. BindInput if used for any attributes, ignored.
- * 3. BindMatch is Mandatory.
- * It is recommended to bind all the primary keys to get a unique ouput.
- * 4. BindOutput is mandatory for the interested attributes.
- */
- virtual DalResultCode GetSingleRecord(
- const UpllCfgType cfg_type,
- const DalTableIndex table_index,
- const DalBindInfo *ouput_and_matching_attr_info) const = 0;
-
- /**
- * GetMultipleRecords
- * Gets the records of the given table that matches the given values
- *
- * @param[in] cfg_type - Configuration Type from which the matching
- * records are required
- * @param[in] table_index - Valid Index of the table
- * @param[in] max_record_count- Will be filled later. Under discussion
- * @param[in] output_and_matching_attr_info
- * - Bind Information for matching and output
- * attributes
- * @param[in/out] cursor - reference to the unallocated DalCursor
- * pointer
- * - Output - cursor pointer with valid instance
- * of DalCursor
- *
- * @return DalResultCode - kDalRcSuccess in case of success
- * - Valid errorcode otherwise
- *
- * Note:
- * Information on usage of DalBindInfo
- * 1. Valid instance of DalBindInfo with same table_index used in this API
- * 2. BindInput if used for any attributes, ignored.
- * 3. BindMatch is Optional.
- * If not used, return all the records of the table.
- * 4. BindOutput is mandatory for the interested attributes.
- *
- * Information on usage of cursor
- * 1. Input - Reference to the unallocated DalCursor pointer.
- * 2. Output - Allocated cursor pointer with valid instance of DalCursor
- * 3. GetNextRecord with this cursor as input populates the output
- * records to the output_attr_info
- * 4. Only the attributes bound for output are populated in
- * output_attr_info
- * 5. CloseCursor with this cursor as input will destroy the cursor object
- */
- virtual DalResultCode GetMultipleRecords(
- const UpllCfgType cfg_type,
- const DalTableIndex table_index,
- const size_t max_record_count,
- const DalBindInfo *ouput_and_matching_attr_info,
- DalCursor **cursor) const = 0;
-
- /**
- * GetNextRecord
- * Gets the next record pointer by the cursor.
- * aavailable.
- *
- * @param[in] cursor - Pointer to the valid cursor instance
- *
- * @return DalResultCode - kDalRcSuccess in case of success
- * - Valid errorcode otherwise
- *
- * Note:
- * On successful execution, the values of the attributes that are bound for
- * output are populated in the dal user output buffer
- */
- virtual DalResultCode GetNextRecord(const DalCursor *cursor) const = 0;
-
- /**
- * CloseCursor
- * Close and destroy the cursor. After this call, cursor object is not
- * aavailable.
- *
- * @param[in] cursor - Pointer to the valid cursor instance
- *
- * @return DalResultCode - kDalRcSuccess in case of success
- * - Valid errorcode otherwise
- */
- virtual DalResultCode CloseCursor(DalCursor *cursor) const = 0;
-
- /**
- * RecordExists
- * Checks the existence of the record that matches the given values from
- * the table
- *
- * @param[in] cfg_type - Configuration Type from which the count is
- * required
- * @param[in] table_index - Valid Index of the table
- * @param[in] matching_attr_info
- * - Bind Information for matching attributes
- * @param[in/out] existence - Input - Reference to the existence variable
- * - Output - contains valid existence value on
- * successful execution
- * true - if record exists
- * false - if record not exists
- *
- * @return DalResultCode - kDalRcSuccess in case of success
- * - Valid errorcode otherwise
- *
- * Note:
- * Information on usage of DalBindInfo
- * 1. Valid instance of DalBindInfo with same table_index used in this API
- * 2. BindInput if used for any attributes, ignored.
- * 3. BindMatch is Mandatory.
- * 4. BindOutput if used for any attributes, ignored.
- */
- virtual DalResultCode RecordExists(const UpllCfgType cfg_type,
- const DalTableIndex table_index,
- const DalBindInfo *matching_attr_info,
- bool *existence) const = 0;
-
- /**
- * GetSiblingBegin
- * Gets the sibling records from the begin to the given matching record
- * of the table from the given cfg_type
- *
- * @param[in] cfg_type - Configuration Type from which the
- * sibling records are required
- * @param[in] table_index - Valid Index of the table
- * @param[in] max_record_count- Will be filled later. Under discussion
- * @param[in] output_and_matching_attr_info
- * - Bind Information for matching and output
- * attributes
- * @param[in/out] cursor - reference to the unallocated DalCursor
- * pointer
- * - Output - cursor pointer with valid instance
- * of DalCursor
- *
- * @return DalResultCode - kDalRcSuccess in case of success
- * - Valid errorcode otherwise
- *
- * Note:
- * Definition of Sibling Begin
- * Records that match the last but one bound attributes
- *
- * Note:
- * Information on usage of DalBindInfo
- * 1. Valid instance of DalBindInfo with same table_index used in this API
- * 2. BindInput if used for any attributes, ignored.
- * 3. BindMatch is Optional.
- * It is recommended to bind only the primary keys.
- * 4. BindOutput is mandatory for the interested attributes.
- *
- * Information on usage of cursor
- * 1. Input - Reference to the unallocated DalCursor pointer.
- * 2. Output - Allocated cursor pointer with valid instance of DalCursor
- * 3. GetNextRecord with this cursor as input populates the output
- * records to the output_attr_info
- * 4. Only the attributes bound for output are populated in
- * output_attr_info
- * 5. CloseCursor with this cursor as input will destroy the cursor object
- */
- virtual DalResultCode GetSiblingBegin(
- const UpllCfgType cfg_type,
- const DalTableIndex table_index,
- const size_t max_record_count,
- const DalBindInfo *ouput_and_matching_attr_info,
- DalCursor **cursor) const = 0;
-
- /**
- * GetSiblingRecords
- * Gets the sibling records to the given matching record of the
- * table from the given cfg_type
- *
- * @param[in] cfg_type - Configuration Type from which the
- * sibling records are required
- * @param[in] table_index - Valid Index of the table
- * @param[in] max_record_count- Will be filled later. Under discussion
- * @param[in] output_and_matching_attr_info
- * - Bind Information for matching and output
- * attributes
- * @param[in/out] cursor - reference to the unallocated DalCursor
- * pointer
- * - Output - cursor pointer with valid instance
- * of DalCursor
- *
- * @return DalResultCode - kDalRcSuccess in case of success
- * - Valid errorcode otherwise
- *
- * Note:
- * Definition of Sibling
- * Records that match the last but one bound attributes and the last
- * bound attribute with greater values
- *
- * Note:
- * Information on usage of DalBindInfo
- * 1. Valid instance of DalBindInfo with same table_index used in this API
- * 2. BindInput if used for any attributes, ignored.
- * 3. BindMatch is mandatory.
- * It is recommended to bind only the primary keys.
- * 4. BindOutput is mandatory for the interested attributes.
- *
- * Information on usage of cursor
- * 1. Input - Reference to the unallocated DalCursor pointer.
- * 2. Output - Allocated cursor pointer with valid instance of DalCursor
- * 3. GetNextRecord with this cursor as input populates the output
- * records to the output_attr_info
- * 4. Only the attributes bound for output are populated in
- * output_attr_info
- * 5. CloseCursor with this cursor as input will destroy the cursor object
- */
- virtual DalResultCode GetSiblingRecords(
- const UpllCfgType cfg_type,
- const DalTableIndex table_index,
- const size_t max_record_count,
- const DalBindInfo *ouput_and_matching_attr_info,
- DalCursor **cursor) const = 0;
-
- /**
- * GetSiblingCount
- * Gets the count of sibling records to the given matching record of the
- * table from the given cfg_type
- *
- * @param[in] cfg_type - Configuration Type from which the count of
- * sibling records is required
- * @param[in] table_index - Valid Index of the table
- * @param[in] matching_attr_info
- * - Bind Information for matching attributes
- * @param[in/out] count - Input - Reference to the count variable
- * - Output - contains valid count value on
- * successful execution
- *
- * @return DalResultCode - kDalRcSuccess in case of success
- * - Valid errorcode otherwise
- *
- * Note:
- * Definition of Sibling
- * Records that match the last but one bound attributes and the last
- * bound attribute with greater values
- *
- * Note:
- * Information on usage of DalBindInfo
- * 1. Valid instance of DalBindInfo with same table_index used in this API
- * 2. BindInput if used for any attributes, ignored.
- * 3. BindMatch is Mandatory.
- * It is recommended to bind only the primary keys.
- * 4. BindOutput if used for any attributes, ignored.
- */
- virtual DalResultCode GetSiblingCount(const UpllCfgType cfg_type,
- const DalTableIndex table_index,
- const DalBindInfo *matching_attr_info,
- uint32_t *count) const = 0;
-
- /**
- * GetRecordCount
- * Gets the count of the records of the table from the given cfg_type
- * that match the given values.
- *
- * @param[in] cfg_type - Configuration Type from which the count is
- * required
- * @param[in] table_index - Valid Index of the table
- * @param[in] matching_attr_info
- * - Bind Information for matching attributes
- * @param[in/out] count - Input - Reference to the count variable
- * - Output - contains valid count value on
- * successful execution
- *
- * @return DalResultCode - kDalRcSuccess in case of success
- * - Valid errorcode otherwise
- *
- * Note:
- * Information on usage of DalBindInfo
- * 1. Valid instance of DalBindInfo with same table_index used in this API
- * 2. BindInput if used for any attributes, ignored.
- * 3. BindMatch is optional.
- * BindMatch if used, count has the number of records that match the
- * given values.
- * BindMatch if not used, count has the number of records in the table.
- * 4. BindOutput if used for any attributes, ignored.
- */
- virtual DalResultCode GetRecordCount(const UpllCfgType cfg_type,
- const DalTableIndex table_index,
- const DalBindInfo *matching_attr_info,
- uint32_t *count) const = 0;
-
- /**
- * DeleteRecords
- * Deletes the records of table from the given cfg_type
- *
- * @param[in] cfg_type - Configuration Type for which the records
- * have to be updated
- * @param[in] table_index - Valid Index of the table
- * @param[in] matching_attr_info
- * - Bind Information for deleting records
- *
- * @return DalResultCode - kDalRcSuccess in case of success
- * - Valid errorcode otherwise
- *
- * Note:
- * Information on usage of DalBindInfo
- * 1. Valid instance of DalBindInfo with same table_index used in this API
- * 2. BindInput if used for any attributes, ignored.
- * 3. BindMatch is optional.
- * But it is recommended to provide all primary keys for match to
- * delete unique record.
- * BindMatch if used, deletes all the records that match the given
- * values.
- * BindMatch if not used, deletes all the records from the table.
- * 4. BindOutput if used for any attributes, ignored.
- */
- virtual DalResultCode DeleteRecords(const UpllCfgType cfg_type,
- const DalTableIndex table_index,
- const DalBindInfo *matching_attr_info) const = 0;
-
- /**
- * CreateRecord
- * Creates the record in table with the given input data for
- * the given cfg_type
- *
- * @param[in] cfg_type - Configuration Type for which the record
- * has to be created
- * @param[in] table_index - Valid Index of the table
- * @param[in] input_attr_info - Bind Information for creating record
- *
- * @return DalResultCode - kDalRcSuccess in case of success
- * - Valid errorcode otherwise
- *
- * Note:
- * Information on usage of DalBindInfo
- * 1. Valid instance of DalBindInfo with same table_index used in this API
- * 2. BindInput is mandatory for the interested attributes.
- * It is mandatory to bind input for all primary keys.
- * 3. BindMatch if used for any attributes, ignored.
- * 4. BindOutput if used for any attributes, ignored.
- */
- virtual DalResultCode CreateRecord(const UpllCfgType cfg_type,
- const DalTableIndex table_index,
- const DalBindInfo *input_attr_info) const = 0;
-
- /**
- * UpdateRecords
- * Updates the records of table with the given input data for
- * the given cfg_type
- *
- * @param[in] cfg_type - Configuration Type for which the records
- * have to be updated
- * @param[in] table_index - Valid Index of the table
- * @param[in] input_and_matching_attr_info
- * - Bind Information for updating records
- *
- * @return DalResultCode - kDalRcSuccess in case of success
- * - Valid errorcode otherwise
- *
- * Note:
- * Information on usage of DalBindInfo
- * 1. Valid instance of DalBindInfo with same table_index used in this API
- * 2. BindInput is mandatory for the interested attributes.
- * 3. BindMatch is optional.
- * But it is recommended to provide all primary keys for match to
- * update unique record.
- * BindMatch if used, updates multiple records that match the given
- * values.
- * BindMatch if not used, updates all the records from the table.
- * 4. BindOutput if used for any attributes, ignored.
- */
- virtual DalResultCode UpdateRecords(
- const UpllCfgType cfg_type,
- const DalTableIndex table_index,
- const DalBindInfo *input_and_matching_attr_info) const = 0;
-
- /**
- * GetDeletedRecords
- * Fetches the records from cfg_type_2 which are not in cfg_type_1
- *
- * @param[in] cfg_type_1 - Configuration Type 1
- * (not equal to cfg_type_2)
- * @param[in] cfg_type_2 - Configuration Type 2
- * (not equal to cfg_type_1)
- * @param[in] table_index - Valid Index of the table
- * @param[in] max_record_count- Will be filled later. Under discussion
- * @param[in] output_attr_info
- * - Bind Information for output records
- * @param[in/out] cursor - reference to the unallocated DalCursor
- * pointer
- * - Output - cursor pointer with valid instance
- * of DalCursor
- *
- * @return DalResultCode - kDalRcSuccess in case of success
- * - Valid errorcode otherwise
- *
- * Note:
- * Information on usage of DalBindInfo
- * 1. Valid instance of DalBindInfo with same table_index used in this API
- * 2. BindInput if used for any attributes, ignored.
- * 3. BindMatch if used for any attributes, ignored.
- * 4. BindOutput is mandatory for the interested attributes.
- *
- * Information on usage of cursor
- * 1. Input - Reference to the unallocated DalCursor pointer.
- * 2. Output - Allocated cursor pointer with valid instance of DalCursor
- * 3. GetNextRecord with this cursor as input populates the output
- * records to the output_attr_info
- * 4. Only the attributes bound for output are populated in
- * output_attr_info
- * 5. CloseCursor with this cursor as input will destroy the cursor object
- */
- virtual DalResultCode GetDeletedRecords(const UpllCfgType cfg_type_1,
- const UpllCfgType cfg_type_2,
- const DalTableIndex table_index,
- const size_t max_record_count,
- const DalBindInfo *output_attr_info,
- DalCursor **cursor) const = 0;
-
- /**
- * GetCreatedRecords
- * Fetches the records from cfg_type_1 which are not in cfg_type_2
- *
- * @param[in] cfg_type_1 - Configuration Type 1
- * (not equal to cfg_type_2)
- * @param[in] cfg_type_2 - Configuration Type 2
- * (not equal to cfg_type_1)
- * @param[in] table_index - Valid Index of the table
- * @param[in] max_record_count- Will be filled later. Under discussion
- * @param[in] output_attr_info
- * - Bind Information for output records
- * @param[in/out] cursor - reference to the unallocated DalCursor
- * pointer
- * - Output - cursor pointer with valid instance
- * of DalCursor
- *
- * @return DalResultCode - kDalRcSuccess in case of success
- * - Valid errorcode otherwise
- *
- * Note:
- * Information on usage of DalBindInfo
- * 1. Valid instance of DalBindInfo with same table_index used in this API
- * 2. BindInput if used for any attributes, ignored.
- * 3. BindMatch if used for any attributes, ignored.
- * 4. BindOutput is mandatory for the interested attributes.
- *
- * Information on usage of cursor
- * 1. Input - Reference to the unallocated DalCursor pointer.
- * 2. Output - Allocated cursor pointer with valid instance of DalCursor
- * 3. GetNextRecord with this cursor as input populates the output
- * records to the output_attr_info
- * 4. Only the attributes bound for output are populated in
- * output_attr_info
- * 5. CloseCursor with this cursor as input will destroy the cursor object
- */
- virtual DalResultCode GetCreatedRecords(const UpllCfgType cfg_type_1,
- const UpllCfgType cfg_type_2,
- const DalTableIndex table_index,
- const size_t max_record_count,
- const DalBindInfo *output_attr_info,
- DalCursor **cursor) const = 0;
-
- /**
- * GetUpdatedRecords
- * Fetches the records from cfg_type_1 and cfg_type_2,
- * that are updated in cfg_type_1 as compared to cfg_type_2
- *
- * @param[in] cfg_type_1 - Configuration Type 1
- * (not equal to cfg_type_2)
- * @param[in] cfg_type_2 - Configuration Type 2
- * (not equal to cfg_type_1)
- * @param[in] table_index - Valid Index of the table
- * @param[in] max_record_count- Will be filled later. Under discussion
- * @param[in] cfg_1_output_and_match_attr_info
- * - Bind Information for output records of
- * - cfg_type_1
- * @param[in] cfg_2_output_and_match_attr_info
- * - Bind Information for output records of
- * - cfg_type_2
- * @param[in/out] cursor - reference to the unallocated DalCursor
- * pointer
- * - Output - cursor pointer with valid instance
- * of DalCursor
- *
- * @return DalResultCode - kDalRcSuccess in case of success
- * - Valid errorcode otherwise
- *
- * Note:
- * Information on usage of DalBindInfo
- * 1. Valid instance of DalBindInfo with same table_index used in this API
- * 2. BindInput if used for any attributes, ignored.
- * 3. BindMatch is optional.
- * BindMatch if used, Primary Key attributes are mandtory.
- * BindMatch if used, comparison is done only for the bound columns
- * BindMatch if not used, comparison is done only for all the columns.
- * Bound value is not used for comparison. The comparison is performed
- * between the values in the cfg_type_1 and cfg_type_2 for the specific
- * columns.
- * Both cfg_type_1 and cfg_type_2 should bind same columns for match
- * Since the bound value is not used for this API, it is ok to bind
- * dummy address. Do not pass NULL address.
- * 4. BindOutput is mandatory for the interested attributes.
- *
- * Information on usage of cursor
- * 1. Input - Reference to the unallocated DalCursor pointer.
- * 2. Output - Allocated cursor pointer with valid instance of DalCursor
- * 3. GetNextRecord with this cursor as input populates the output records
- * of cfg_type_1 and cfg_type_2 to the correponding DalBindInfo
- * instances.
- * 4. Only the attributes bound for output are populated in both
- * cfg_1_output_attr_info and cfg_2_output_attr_info.
- * 5. CloseCursor with this cursor as input will destroy the cursor object
- */
- virtual DalResultCode GetUpdatedRecords(
- const UpllCfgType cfg_type_1,
- const UpllCfgType cfg_type_2,
- const DalTableIndex table_index,
- const size_t max_record_count,
- const DalBindInfo *cfg_1_output_and_match_attr_info,
- const DalBindInfo *cfg_2_output_and_match_attr_info,
- DalCursor **cursor) const = 0;
-
- /**
- * CopyEntireRecords
- * Copies the entire records of table from source configuration to
- * destination configuration.
- *
- * @param[in] dest_cfg_type - Configuration Type where the records to be
- * copied (not equal to src_cfg_type)
- * @param[in] src_cfg_type - Configuration Type from where the records
- * will be copied (not equal to dest_cfg_type)
- * @param[in] table_index - Valid Index of the table
- * @param[in] output_attr_info
- * - Bind Information for output columns
- *
- * @return DalResultCode - kDalRcSuccess in case of success
- * - Valid errorcode otherwise
- * On successful execution, both the
- * configurations have same records.
- *
- * Note:
- * Information on Copy Logic
- * 1. Remove the entire records of the dest_cfg_type
- * 2. Copy the entire records from src_cfg_type to dest_cfg_type
- * 3. Recommended to use this API, where difference between both the
- * configurations are drastically more.
- *
- * Information on usage of DalBindInfo
- * 1. Valid instance of DalBindInfo with same table_index used in this API
- * 2. BindInput if used for any attributes, ignored.
- * 3. BindMatch if used for any attributes, ignored.
- * 4. BindOutput is optional.
- * BindOutput, if used, copy the values of bound columns from
- * src_cfg_type to dst_cfg_type
- * BindOutput, if not used, copy the values of all columns from
- * src_cfg_type to dst_cfg_type
- * Since the bound value is not used for this API, it is ok to bind
- * dummy address. Do not pass NULL address.
- */
- virtual DalResultCode CopyEntireRecords(const UpllCfgType dest_cfg_type,
- const UpllCfgType src_cfg_type,
- const DalTableIndex table_index,
- const DalBindInfo *output_attr_info) const = 0;
-
- /**
- * CopyModifiedRecords
- * Copies the entire records of table from source configuration to
- * destination configuration.
- *
- * @param[in] dest_cfg_type - Configuration Type where the records to be
- * copied (not equal to src_cfg_type)
- * @param[in] src_cfg_type - Configuration Type from where the records
- * will be copied (not equal to dest_cfg_type)
- * @param[in] table_index - Valid Index of the table
- * @param[in] output_and_match_attr_info
- * - Bind Information for output and match
- * - columns
- *
- * @return DalResultCode - kDalRcSuccess in case of success
- * - Valid errorcode otherwise
- * On successful execution, both the
- * configurations have same records.
- *
- * Note:
- * Information on Copy Logic
- * 1. Remvoe the records from dest_cfg_type that are result of
- * GetDeletedRecords(dest_cfg_type, src_cfg_type, ...)
- * 2. Add the records in dest_cfg_type that are result of
- * GetCreatedRecords(dest_cfg_type, src_cfg_type, ...)
- * 3. Update the records in dest_cfg_type with the records from
- * src_cfg_type that are result of
- * GetUpdatedRecords(dest_cfg_type, src_cfg_type, ...)
- * 4. Recommended to use this API, where difference between both the
- * configurations are comparitively lesser.
- *
- * Information on usage of DalBindInfo
- * 1. Valid instance of DalBindInfo with same table_index used in this API
- * 2. BindInput if used for any attributes, ignored.
- * 3. BindMatch is optional. Used in step 3 of Copy Logic.
- * BindMatch if used, Primary Key attributes are mandtory.
- * BindMatch if used, comparison is done only for the bound columns
- * BindMatch if not used, comparison is done only for all the columns.
- * Bound value is not used for comparison. The comparison is performed
- * between the values in the cfg_type_1 and cfg_type_2 for the specific
- * columns.
- * Both src_cfg_type and dst_cfg_type_2 should bind same columns
- * for match
- * Since the bound value is not used for this API, it is ok to bind
- * dummy address. Do not pass NULL.
- * 4. BindOutput is optional.
- * BindOutput, if used, copy the values of bound columns from
- * src_cfg_type to dst_cfg_type
- * BindOutput, if not used, copy the values of all columns from
- * src_cfg_type to dst_cfg_type
- * Since the bound value is not used for this API, it is ok to bind
- * dummy address. Do not pass NULL address.
- *
- */
- virtual DalResultCode CopyModifiedRecords(
- const UpllCfgType dest_cfg_type,
- const UpllCfgType src_cfg_type,
- const DalTableIndex table_index,
- const DalBindInfo *output_and_match_attr_info) const = 0;
-
- /**
- * CopyMatchingRecords
- * Copies all the matching records of table from source configuration to
- * destination configuration.
- *
- * @param[in] dest_cfg_type - Configuration Type where the records to be
- * copied (not equal to src_cfg_type)
- * @param[in] src_cfg_type - Configuration Type from where the records
- * will be copied (not equal to dest_cfg_type)
- * @param[in] table_index - Valid Index of the table
- * @param[in] output_and_match_attr_info
- * - Bind Information for match and ouput columns
- *
- * @return DalResultCode - kDalRcSuccess in case of success
- * - Valid errorcode otherwise
- *
- * Note:
- * Information on usage of DalBindInfo
- * 1. Valid instance of DalBindInfo with same table_index used in this API
- * 2. BindInput if used for any attributes, ignored.
- * 3. BindMatch is Mandatory.
- * 4. BindOutput is optional.
- * BindOutput, if used, Primary Key columns are mandatory.
- * BindOutput, if used, copy the values of bound columns from
- * src_cfg_type to dst_cfg_type
- * BindOutput, if not used, copy the values of all columns from
- * src_cfg_type to dst_cfg_type
- * Since the bound value is not used for this API, it is ok to bind
- * dummy address. Do not pass NULL address.
- */
- virtual DalResultCode CopyMatchingRecords(
- const UpllCfgType dest_cfg_type,
- const UpllCfgType src_cfg_type,
- const DalTableIndex table_index,
- const DalBindInfo *output_and_match_attr_info) const = 0;
-
- /**
- * CheckRecordsIdentical
- * Checks whether cfg_type_1 and cfg_type_2 configurations contains same
- * records in the given table.
- *
- * @param[in] cfg_type_1 - Configuration Type 1
- * (not equal to cfg_type_2)
- * @param[in] cfg_type_2 - Configuration Type 2
- * (not equal to cfg_type_1)
- * @param[in] table_index - Valid Index of the table
- * @param[in] matching_attr_info
- * - Bind Information for comparing columns
- * @param[in/out] identical - Pointer to the identical value.
- * - On successful execution, contains
- * true, if both config have same records
- * false, if not
- *
- * @return DalResultCode - kDalRcSuccess in case of success
- * - Valid errorcode otherwise
- *
- * Note:
- * Information on usage of DalBindInfo
- * 1. Valid instance of DalBindInfo with same table_index used in this API
- * 2. BindInput if used for any attributes, ignored.
- * 3. BindMatch is Optional.
- * If used, comparison is done only for bound columns.
- * If not used, comparison is done for all the columns.
- * Bound value is not used for comparison. The comparison is performed
- * between the values in the cfg_type_1 and cfg_type_2 for the specific
- * columns.
- * Since the bound value is not used for this API, it is ok to bind
- * dummy address. Do not pass NULL address.
- * 4. BindOutput if used for any attributes, ignored.
- */
- virtual DalResultCode CheckRecordsIdentical(const UpllCfgType cfg_type_1,
- const UpllCfgType cfg_type_2,
- const DalTableIndex table_index,
- const DalBindInfo *matching_attr_info,
- bool *identical) const = 0;
-}; // class DalDmlIntf
-
-}; // namespace dal
-}; // namespace upll
-}; // namespace unc
-#endif // __DAL_DML_INTF_HH__
+++ /dev/null
-/*
-* Copyright (c) 2012-2013 NEC Corporation
-* All rights reserved.
-*
-* This program and the accompanying materials are made available under the
-* terms of the Eclipse Public License v1.0 which accompanies this
-* distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
-*/
-
-#include "../../../../../../../modules/dal/dal_schema.hh"
-
-
+++ /dev/null
-/*\r
-* Copyright (c) 2012-2013 NEC Corporation\r
-* All rights reserved.\r
-*\r
-* This program and the accompanying materials are made available under the\r
-* terms of the Eclipse Public License v1.0 which accompanies this\r
-* distribution, and is available at http://www.eclipse.org/legal/epl-v10.html\r
-*/\r
-\r
-\r
-#include "vrt_if_momgr.hh"\r
-#include <stdio.h>\r
-#include "momgr_impl.hh"\r
-#include "ipct_st.hh"\r
-#include "unc/keytype.h"\r
-#include "config_mgr.hh"\r
-#include "dal/dal_odbc_mgr.hh"\r
-#include "dal/dal_dml_intf.hh"\r
-#include "tclib_module.hh"\r
-#include "config_mgr.hh"\r
-#include "dal_defines.hh"\r
-\r
-using namespace unc::upll::kt_momgr;\r
-\r
- enum Method\r
- {Read1, Read2};\r
-\r
-class VrtIfstub : public VrtIfMoMgr {\r
-public:\r
-VrtIfstub() {std::cout<<"In VrtIfConstructor \n";}\r
- static std::map<Method, upll_rc_t> stub_result_map;\r
-\r
-upll_rc_t ReadConfigDB(ConfigKeyVal *ikey,\r
- upll_keytype_datatype_t dt_type,\r
- unc_keytype_operation_t op,\r
- DbSubOp dbop,\r
- DalDmlIntf *dmi,\r
- MoMgrTables tbl){\r
-std::cout << "hellllloooooooooooooo\n";\r
-return stub_result_map[Read1];\r
-}\r
-\r
-upll_rc_t ReadConfigDB(ConfigKeyVal *ikey,\r
- upll_keytype_datatype_t dt_type,\r
- unc_keytype_operation_t op,\r
- DbSubOp dbop,\r
- uint32_t &sibling_count,\r
- DalDmlIntf *dmi,\r
- MoMgrTables tbl) {\r
-std::cout << "hellllloooooooooooooo\n";\r
-return stub_result_map[Read2];\r
-}\r
-\r
-const MoManager *GetMoManager(unc_key_type_t kt) {\r
- std::cout<<" Get MoManager called \n";\r
- return new VrtIfstub();\r
-}\r
-\r
- \r
-};\r
-std::map<Method, upll_rc_t> VrtIfstub::stub_result_map;\r
/*
-* Copyright (c) 2012-2013 NEC Corporation
-* All rights reserved.
-*
-* This program and the accompanying materials are made available under the
-* terms of the Eclipse Public License v1.0 which accompanies this
-* distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
-*/
+ * Copyright (c) 2012-2013 NEC Corporation
+ * All rights reserved.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this
+ * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
+ */
#ifndef _PFC_IPC_CLIENT_H
#define _PFC_IPC_CLIENT_H
pfc_ipcclnt_altopen(const char *PFC_RESTRICT name,
pfc_ipcconn_t *PFC_RESTRICT connp)
{
+ *connp = 1;
return result_;
}
-/*\r
-* Copyright (c) 2012-2013 NEC Corporation\r
-* All rights reserved.\r
-*\r
-* This program and the accompanying materials are made available under the\r
-* terms of the Eclipse Public License v1.0 which accompanies this\r
-* distribution, and is available at http://www.eclipse.org/legal/epl-v10.html\r
-*/\r
-\r
-\r
-#include <pfc/ipc.h>\r
-#include <netinet/in.h>\r
-#include <string>\r
-#include <map>\r
-#include <list>\r
-#include <pfc/ipc_client.h>\r
-#include <pfcxx/ipc_server.hh>\r
-\r
-#ifndef _PFCXX_IPC_CLIENT_HH\r
-#define _PFCXX_IPC_CLIENT_HH\r
-\r
-namespace pfc {\r
-namespace core {\r
-namespace ipc {\r
-\r
-class ClientSession\r
-{\r
- friend class ::pfc::core::ipc::ServerSession;\r
-\r
-public:\r
- /*\r
- * Constructors.\r
- */\r
- ClientSession(const char *name, pfc_ipcid_t service, int &err);\r
- ClientSession(const char *name, pfc_ipcid_t service, int &err,\r
- uint32_t flags);\r
- ClientSession(const std::string &name, pfc_ipcid_t service, int &err);\r
- ClientSession(const std::string &name, pfc_ipcid_t service, int &err,\r
- uint32_t flags);\r
- ClientSession(pfc_ipcconn_t conn, const char *name, pfc_ipcid_t service,\r
- int &err);\r
- ClientSession(pfc_ipcconn_t conn, const char *name, pfc_ipcid_t service,\r
- int &err, uint32_t flags);\r
- ClientSession(pfc_ipcconn_t conn, const std::string &name,\r
- pfc_ipcid_t service, int &err);\r
- ClientSession(pfc_ipcconn_t conn, const std::string &name,\r
- pfc_ipcid_t service, int &err, uint32_t flags);\r
- explicit ClientSession();\r
-\r
- /*\r
- * Destructor.\r
- */\r
- ~ClientSession();\r
-\r
- /*\r
- * Instance methods.\r
- */\r
- int reset(const char *name, pfc_ipcid_t service);\r
- int reset(const std::string &name, pfc_ipcid_t service);\r
-\r
- int setTimeout(const pfc_timespec_t *timeout=NULL);\r
- int invoke(pfc_ipcresp_t &response);\r
- int cancel(pfc_bool_t discard=PFC_FALSE);\r
- int forward(ClientSession &sess, uint32_t begin = 0,\r
- uint32_t end = UINT32_MAX);\r
- int forward(ServerSession &sess, uint32_t begin = 0,\r
- uint32_t end = UINT32_MAX);\r
- int forwardTo(ServerSession &sess, uint32_t begin = 0,\r
- uint32_t end = UINT32_MAX);\r
-\r
- int addOutput(int8_t data);\r
- int addOutputInt8(int8_t data);\r
- int addOutput(uint8_t data);\r
- int addOutputUint8(uint8_t data);\r
- int addOutput(int16_t data);\r
- int addOutputInt16(int16_t data);\r
- int addOutput(uint16_t data);\r
- int addOutputUint16(uint16_t data);\r
- int addOutput(int32_t data);\r
- int addOutputInt32(int32_t data);\r
- int addOutput(uint32_t data);\r
- int addOutputUint32(uint32_t data);\r
- int addOutput(int64_t data);\r
- int addOutputInt64(int64_t data);\r
- int addOutput(uint64_t data);\r
- int addOutputUint64(uint64_t data);\r
- int addOutput(float data);\r
- int addOutputFloat(float data);\r
- int addOutput(double data);\r
- int addOutputDouble(double data);\r
- int addOutput(struct in_addr &data);\r
- int addOutput(struct in6_addr &data);\r
- int addOutput(const char *data);\r
- int addOutput(const std::string &data);\r
- int addOutput(const uint8_t *data, uint32_t length);\r
- int addOutput(const pfc_ipcstdef_t &def, pfc_cptr_t data);\r
- int addOutput(void);\r
-\r
- int getResponse(uint32_t index, int8_t &data);\r
- int getResponse(uint32_t index, uint8_t &data);\r
- int getResponse(uint32_t index, int16_t &data);\r
- int getResponse(uint32_t index, uint16_t &data);\r
- int getResponse(uint32_t index, int32_t &data);\r
- int getResponse(uint32_t index, uint32_t &data);\r
- int getResponse(uint32_t index, int64_t &data);\r
- int getResponse(uint32_t index, uint64_t &data);\r
- int getResponse(uint32_t index, float &data);\r
- int getResponse(uint32_t index, double &data);\r
- int getResponse(uint32_t index, struct in_addr &data);\r
- int getResponse(uint32_t index, struct in6_addr &data);\r
- int getResponse(uint32_t index, const char *&data);\r
- int getResponse(uint32_t index, const uint8_t *&data, uint32_t &length);\r
- int getResponse(uint32_t index, const pfc_ipcstdef_t &def,\r
- pfc_ptr_t datap);\r
-\r
- uint32_t getResponseCount(void);\r
- int getResponseType(uint32_t index, pfc_ipctype_t& type);\r
-\r
- int getResponseStructName(uint32_t index, const char *&name);\r
- int getResponseStructName(uint32_t index, std::string &name);\r
-\r
- //stubs\r
- static void stub_setResponseStructName(uint32_t index, std::string &name);\r
- static void clearStubData(void);\r
- static void stub_setResponse(int result);\r
- static void stub_setResponsetype(uint32_t index,pfc_ipctype_t ipctype );\r
- static void stub_setClientSessionErrorCode(int result);\r
- static void stub_setAddOutput(int result);\r
- static void stub_setAddOutput(uint32_t result);\r
- static void stub_setAddOutput(const char* data);\r
- static void stub_setResponseCount(int argCount);\r
- static void stub_setResponse( uint32_t index,uint32_t value );\r
- static void stub_setinvoke(pfc_ipcresp_t ipcresp,int err);\r
-\r
-private:\r
-// TODO add comments\r
-// TODO keep only modifed files; rest take it from system directory\r
-// TODO keep all stubs inside stub directory\r
-// TODO all changes prefix/suffic with stub_/_stub.\r
- //stub data\r
- static std::map<uint32_t,pfc_ipctype_t > arg_parameters;\r
- static std::map<uint32_t,std::string> structNameMap;//<index,structname>\r
- static std::map<uint32_t,uint32_t> arg_map;\r
- static std::list<uint32_t> add_output_list;//list of addoutput values\r
- static int addOutPut_;\r
- static int responseResult_;\r
- static int ClientsesErrorCode_;\r
- static int argCount_;\r
- static pfc_ipcresp_t ipcresp_;\r
- static int err_;\r
- static std::list<const char*> add_output_str;\r
-};\r
-\r
-class IpcEventMask\r
-{\r
-\r
-public:\r
- /* Create an event mask which contains all IPC event types. */\r
- IpcEventMask(): _mask(PFC_IPC_EVENT_MASK_FILL) {}\r
-\r
- /* Create an event mask which contains the specified IPC event type. */\r
- explicit IpcEventMask(pfc_ipcevtype_t type)\r
- : _mask(PFC_IPC_EVENT_MASK_BIT(type)) {}\r
-\r
- /* Copy constructor. */\r
- explicit IpcEventMask(const IpcEventMask &mask) : _mask(mask._mask) {}\r
-\r
-\r
- inline void\r
- empty(void)\r
- {\r
-\r
- }\r
-\r
-\r
- inline void\r
- fill(void)\r
- {\r
-\r
- }\r
-\r
- inline int\r
- add(pfc_ipcevtype_t type)\r
- {\r
- return 0;\r
- }\r
-\r
- inline int\r
- remove(pfc_ipcevtype_t type)\r
- {\r
- return 0;\r
- }\r
-\r
- inline pfc_bool_t\r
- test(pfc_ipcevtype_t type) const\r
- {\r
- return true;\r
- }\r
- inline const pfc_ipcevmask_t *\r
- getMask(void) const\r
- {\r
- return &_mask;\r
- }\r
-\r
-private:\r
- /* Event mask value. */\r
- pfc_ipcevmask_t _mask;\r
-};\r
-\r
-class IpcEventAttr\r
-{\r
-public:\r
- IpcEventAttr()\r
- {\r
-\r
- }\r
-\r
-\r
- ~IpcEventAttr()\r
- {\r
-\r
- }\r
-\r
-\r
- inline void\r
- getHostSet(const char *&name) const\r
- {\r
-\r
-\r
- }\r
-\r
-\r
- inline int\r
- setHostSet(const char *name)\r
- {\r
- return 0;\r
- }\r
-\r
- inline void\r
- getTarget(const char *service, IpcEventMask &mask) const\r
- {\r
-\r
-\r
- }\r
-\r
- inline int\r
- addTarget(const char *service)\r
- {\r
- return 0;\r
- }\r
-\r
- inline int\r
- addTarget(const char *service, const IpcEventMask &mask)\r
- {\r
- return 0;\r
- }\r
-\r
-\r
- inline void\r
- resetTarget(void)\r
- {\r
-\r
- }\r
-\r
- inline void\r
- getPriority(uint32_t &priority) const\r
- {\r
-\r
- }\r
-\r
- inline void\r
- setPriority(uint32_t priority)\r
- {\r
-\r
- }\r
-\r
- inline void\r
- getLog(pfc_bool_t &log) const\r
- {\r
-\r
- }\r
-\r
-\r
- inline void\r
- setLog(pfc_bool_t log)\r
- {\r
-\r
- }\r
-\r
-private:\r
- pfc_ipcevattr_t _attr;\r
-};\r
-\r
-class IpcEvent\r
-{\r
-public:\r
- inline pfc_ipcevid_t\r
- getSerial(void) const\r
- {\r
- return pfc_ipcevid_t();\r
- }\r
-\r
- inline pfc_ipcevtype_t\r
- getType(void) const\r
- {\r
- return pfc_ipcevtype_t();\r
- }\r
-\r
- inline void\r
- getTime(pfc_timespec_t &ts) const\r
- {\r
- ts=pfc_timespec_t();\r
- }\r
-\r
- inline const char *\r
- getChannelName(void) const\r
- {\r
- return "channelName";\r
- }\r
-\r
-\r
- inline const pfc_hostaddr_t *\r
- getHostAddress(void) const\r
- {\r
- pfc_hostaddr_t* host((pfc_hostaddr_t*)malloc(sizeof( pfc_hostaddr_t)));\r
- return host;\r
- }\r
-\r
- inline const char *\r
- getServiceName(void) const\r
- {\r
- return "serviceName";\r
- }\r
-\r
- /*inline pfc_ipcsess_t *\r
- getSession(void) const\r
- {\r
- return pfc_ipcevent_getsess(_event);\r
- }*/\r
-\r
- inline pfc_bool_t\r
- isStateChangeEvent(void) const\r
- {\r
- return true;\r
- }\r
-\r
-private:\r
- explicit IpcEvent(pfc_ipcevent_t *event) : _event(event) {}\r
- pfc_ipcevent_t *_event;\r
-};\r
-\r
-class IpcEventHandler\r
-{\r
-public:\r
- IpcEventHandler() : _id() {}\r
- virtual ~IpcEventHandler();\r
- inline pfc_ipcevhdlr_t\r
- getId(void) const\r
- {\r
- return _id;\r
- }\r
-\r
- virtual void eventHandler(const IpcEvent &event) = 0;\r
- virtual const char *getName(void);\r
-\r
-private:\r
- pfc_ipcevhdlr_t _id;\r
-};\r
-\r
-extern int add_event_handler(const char *channel, IpcEventHandler *handler,\r
- const IpcEventAttr *attr = NULL);\r
-extern int remove_event_handler(pfc_ipcevhdlr_t id);\r
-static inline int\r
-remove_event_handler(IpcEventHandler *handler)\r
-{\r
- return 0;\r
-}\r
-\r
-}\r
-}\r
-}\r
-#endif /* !_PFCXX_IPC_CLIENT_HH */\r
+/*
+ * Copyright (c) 2012-2013 NEC Corporation
+ * All rights reserved.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this
+ * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
+ */
+
+#include <pfc/ipc.h>
+#include <netinet/in.h>
+#include <string>
+#include <map>
+#include <list>
+#include <pfc/ipc_client.h>
+#include "ipc_server.hh"
+
+#ifndef _PFCXX_IPC_CLIENT_HH
+#define _PFCXX_IPC_CLIENT_HH
+
+namespace pfc {
+namespace core {
+namespace ipc {
+
+class ClientSession
+{
+ friend class ::pfc::core::ipc::ServerSession;
+
+public:
+ /*
+ * Constructors.
+ */
+ ClientSession(const char *name, pfc_ipcid_t service, int &err);
+ ClientSession(const char *name, pfc_ipcid_t service, int &err,
+ uint32_t flags);
+ ClientSession(const std::string &name, pfc_ipcid_t service, int &err);
+ ClientSession(const std::string &name, pfc_ipcid_t service, int &err,
+ uint32_t flags);
+ ClientSession(pfc_ipcconn_t conn, const char *name, pfc_ipcid_t service,
+ int &err);
+ ClientSession(pfc_ipcconn_t conn, const char *name, pfc_ipcid_t service,
+ int &err, uint32_t flags);
+ ClientSession(pfc_ipcconn_t conn, const std::string &name,
+ pfc_ipcid_t service, int &err);
+ ClientSession(pfc_ipcconn_t conn, const std::string &name,
+ pfc_ipcid_t service, int &err, uint32_t flags);
+ explicit ClientSession();
+
+ /*
+ * Destructor.
+ */
+ ~ClientSession();
+
+ /*
+ * Instance methods.
+ */
+ int reset(const char *name, pfc_ipcid_t service);
+ int reset(const std::string &name, pfc_ipcid_t service);
+
+ int setTimeout(const pfc_timespec_t *timeout=NULL);
+ int invoke(pfc_ipcresp_t &response);
+ int cancel(pfc_bool_t discard=PFC_FALSE);
+ int forward(ClientSession &sess, uint32_t begin = 0,
+ uint32_t end = UINT32_MAX);
+ int forward(ServerSession &sess, uint32_t begin = 0,
+ uint32_t end = UINT32_MAX);
+ int forwardTo(ServerSession &sess, uint32_t begin = 0,
+ uint32_t end = UINT32_MAX);
+
+ int addOutput(int8_t data);
+ int addOutputInt8(int8_t data);
+ int addOutput(uint8_t data);
+ int addOutputUint8(uint8_t data);
+ int addOutput(int16_t data);
+ int addOutputInt16(int16_t data);
+ int addOutput(uint16_t data);
+ int addOutputUint16(uint16_t data);
+ int addOutput(int32_t data);
+ int addOutputInt32(int32_t data);
+ int addOutput(uint32_t data);
+ int addOutputUint32(uint32_t data);
+ int addOutput(int64_t data);
+ int addOutputInt64(int64_t data);
+ int addOutput(uint64_t data);
+ int addOutputUint64(uint64_t data);
+ int addOutput(float data);
+ int addOutputFloat(float data);
+ int addOutput(double data);
+ int addOutputDouble(double data);
+ int addOutput(struct in_addr &data);
+ int addOutput(struct in6_addr &data);
+ int addOutput(const char *data);
+ int addOutput(const std::string &data);
+ int addOutput(const uint8_t *data, uint32_t length);
+ int addOutput(const pfc_ipcstdef_t &def, pfc_cptr_t data);
+ int addOutput(void);
+
+ int getResponse(uint32_t index, int8_t &data);
+ int getResponse(uint32_t index, uint8_t &data);
+ int getResponse(uint32_t index, int16_t &data);
+ int getResponse(uint32_t index, uint16_t &data);
+ int getResponse(uint32_t index, int32_t &data);
+ int getResponse(uint32_t index, uint32_t &data);
+ int getResponse(uint32_t index, int64_t &data);
+ int getResponse(uint32_t index, uint64_t &data);
+ int getResponse(uint32_t index, float &data);
+ int getResponse(uint32_t index, double &data);
+ int getResponse(uint32_t index, struct in_addr &data);
+ int getResponse(uint32_t index, struct in6_addr &data);
+ int getResponse(uint32_t index, const char *&data);
+ int getResponse(uint32_t index, const uint8_t *&data, uint32_t &length);
+ int getResponse(uint32_t index, const pfc_ipcstdef_t &def,
+ pfc_ptr_t datap);
+
+ uint32_t getResponseCount(void);
+ int getResponseType(uint32_t index, pfc_ipctype_t& type);
+
+ int getResponseStructName(uint32_t index, const char *&name);
+ int getResponseStructName(uint32_t index, std::string &name);
+
+ //stubs
+ static void stub_setResponseStructName(uint32_t index, std::string &name);
+ static void clearStubData(void);
+ static void stub_setResponse(int result);
+ static void stub_setResponsetype(uint32_t index,pfc_ipctype_t ipctype );
+ static void stub_setClientSessionErrorCode(int result);
+ static void stub_setAddOutput(int result);
+ static void stub_setAddOutput(uint32_t result);
+ static void stub_setAddOutput(const char* data);
+ static void stub_setResponseCount(int argCount);
+ static void stub_setResponse( uint32_t index,uint32_t value );
+ static void stub_setinvoke(pfc_ipcresp_t ipcresp,int err);
+
+private:
+// TODO add comments
+// TODO keep only modifed files; rest take it from system directory
+// TODO keep all stubs inside stub directory
+// TODO all changes prefix/suffic with stub_/_stub.
+ //stub data
+ static std::map<uint32_t,pfc_ipctype_t > arg_parameters;
+ static std::map<uint32_t,std::string> structNameMap;//<index,structname>
+ static std::map<uint32_t,uint32_t> arg_map;
+ static std::list<uint32_t> add_output_list;//list of addoutput values
+ static int addOutPut_;
+ static int responseResult_;
+ static int ClientsesErrorCode_;
+ static int argCount_;
+ static pfc_ipcresp_t ipcresp_;
+ static int err_;
+ static std::list<const char*> add_output_str;
+};
+
+class IpcEventMask
+{
+
+public:
+ /* Create an event mask which contains all IPC event types. */
+ IpcEventMask(): _mask(PFC_IPC_EVENT_MASK_FILL) {}
+
+ /* Create an event mask which contains the specified IPC event type. */
+ explicit IpcEventMask(pfc_ipcevtype_t type)
+ : _mask(PFC_IPC_EVENT_MASK_BIT(type)) {}
+
+ /* Copy constructor. */
+ explicit IpcEventMask(const IpcEventMask &mask) : _mask(mask._mask) {}
+
+
+ inline void
+ empty(void)
+ {
+
+ }
+
+
+ inline void
+ fill(void)
+ {
+
+ }
+
+ inline int
+ add(pfc_ipcevtype_t type)
+ {
+ return 0;
+ }
+
+ inline int
+ remove(pfc_ipcevtype_t type)
+ {
+ return 0;
+ }
+
+ inline pfc_bool_t
+ test(pfc_ipcevtype_t type) const
+ {
+ return true;
+ }
+ inline const pfc_ipcevmask_t *
+ getMask(void) const
+ {
+ return &_mask;
+ }
+
+private:
+ /* Event mask value. */
+ pfc_ipcevmask_t _mask;
+};
+
+class IpcEventAttr
+{
+public:
+ IpcEventAttr()
+ {
+
+ }
+
+
+ ~IpcEventAttr()
+ {
+
+ }
+
+
+ inline void
+ getHostSet(const char *&name) const
+ {
+
+
+ }
+
+
+ inline int
+ setHostSet(const char *name)
+ {
+ return 0;
+ }
+
+ inline void
+ getTarget(const char *service, IpcEventMask &mask) const
+ {
+
+
+ }
+
+ inline int
+ addTarget(const char *service)
+ {
+ return 0;
+ }
+
+ inline int
+ addTarget(const char *service, const IpcEventMask &mask)
+ {
+ return 0;
+ }
+
+
+ inline void
+ resetTarget(void)
+ {
+
+ }
+
+ inline void
+ getPriority(uint32_t &priority) const
+ {
+
+ }
+
+ inline void
+ setPriority(uint32_t priority)
+ {
+
+ }
+
+ inline void
+ getLog(pfc_bool_t &log) const
+ {
+
+ }
+
+
+ inline void
+ setLog(pfc_bool_t log)
+ {
+
+ }
+
+private:
+ pfc_ipcevattr_t _attr;
+};
+
+class IpcEvent
+{
+public:
+ inline pfc_ipcevid_t
+ getSerial(void) const
+ {
+ return pfc_ipcevid_t();
+ }
+
+ inline pfc_ipcevtype_t
+ getType(void) const
+ {
+ return pfc_ipcevtype_t();
+ }
+
+ inline void
+ getTime(pfc_timespec_t &ts) const
+ {
+ ts=pfc_timespec_t();
+ }
+
+ inline const char *
+ getChannelName(void) const
+ {
+ return "channelName";
+ }
+
+
+ inline const pfc_hostaddr_t *
+ getHostAddress(void) const
+ {
+ pfc_hostaddr_t* host((pfc_hostaddr_t*)malloc(sizeof( pfc_hostaddr_t)));
+ return host;
+ }
+
+ inline const char *
+ getServiceName(void) const
+ {
+ return "serviceName";
+ }
+
+ /*inline pfc_ipcsess_t *
+ getSession(void) const
+ {
+ return pfc_ipcevent_getsess(_event);
+ }*/
+
+ inline pfc_bool_t
+ isStateChangeEvent(void) const
+ {
+ return true;
+ }
+
+private:
+ explicit IpcEvent(pfc_ipcevent_t *event) : _event(event) {}
+ pfc_ipcevent_t *_event;
+};
+
+class IpcEventHandler
+{
+public:
+ IpcEventHandler() : _id() {}
+ virtual ~IpcEventHandler();
+ inline pfc_ipcevhdlr_t
+ getId(void) const
+ {
+ return _id;
+ }
+
+ virtual void eventHandler(const IpcEvent &event) = 0;
+ virtual const char *getName(void);
+
+private:
+ pfc_ipcevhdlr_t _id;
+};
+
+extern int add_event_handler(const char *channel, IpcEventHandler *handler,
+ const IpcEventAttr *attr = NULL);
+extern int remove_event_handler(pfc_ipcevhdlr_t id);
+static inline int
+remove_event_handler(IpcEventHandler *handler)
+{
+ return 0;
+}
+
+}
+}
+}
+#endif /* !_PFCXX_IPC_CLIENT_HH */
-/*\r
-* Copyright (c) 2012-2013 NEC Corporation\r
-* All rights reserved.\r
-*\r
-* This program and the accompanying materials are made available under the\r
-* terms of the Eclipse Public License v1.0 which accompanies this\r
-* distribution, and is available at http://www.eclipse.org/legal/epl-v10.html\r
-*/\r
-\r
-\r
-#include <pfc/ipc.h>\r
-#include <netinet/in.h>\r
-#include <string>\r
-#include <map>\r
-#include <list>\r
-#include <vector>\r
-#include<iostream>\r
-\r
-#ifndef _PFCXX_IPC_SERVER_HH\r
-#define _PFCXX_IPC_SERVER_HH\r
-\r
-namespace pfc {\r
-namespace core {\r
-namespace ipc {\r
-\r
-class ClientSession;\r
-class ServerCallback;\r
-class ServerEvent;\r
-\r
-/*\r
- * C++ wrapper for IPC server session instance.\r
- */\r
-class ServerSession\r
-{\r
- friend class ::pfc::core::ipc::ClientSession;\r
- friend class ::pfc::core::ipc::ServerEvent;\r
-\r
-public:\r
- /*\r
- * Constructor.\r
- */\r
- ServerSession();\r
-\r
- /*\r
- * Destructor.\r
- */\r
- virtual ~ServerSession(){\r
-\r
- }\r
-\r
- /*\r
- * Instance methods.\r
- */\r
- int setTimeout(const pfc_timespec_t *timeout=NULL);\r
- int getClientAddress(pfc_ipccladdr_t &claddr);\r
-\r
- int addOutput(int8_t data);\r
- int addOutputInt8(int8_t data);\r
- int addOutput(uint8_t data);\r
- int addOutputUint8(uint8_t data);\r
- int addOutput(int16_t data);\r
- int addOutputInt16(int16_t data);\r
- int addOutput(uint16_t data);\r
- int addOutputUint16(uint16_t data);\r
- int addOutput(int32_t data);\r
- int addOutputInt32(int32_t data);\r
- int addOutput(uint32_t data);\r
- int addOutputUint32(uint32_t data);\r
- int addOutput(int64_t data);\r
- int addOutputInt64(int64_t data);\r
- int addOutput(uint64_t data);\r
- int addOutputUint64(uint64_t data);\r
- int addOutput(float data);\r
- int addOutputFloat(float data);\r
- int addOutput(double data);\r
- int addOutputDouble(double data);\r
- int addOutput(struct in_addr &data);\r
- int addOutput(struct in6_addr &data);\r
- int addOutput(const char *data);\r
- int addOutput(const std::string &data);\r
- int addOutput(const uint8_t *data, uint32_t length);\r
- int addOutput(const pfc_ipcstdef_t &def, pfc_cptr_t data);\r
- int addOutput(void);\r
-\r
-\r
- int getArgument(uint32_t index, int8_t &data);\r
- int getArgument(uint32_t index, uint8_t &data);\r
- int getArgument(uint32_t index, int16_t &data);\r
- int getArgument(uint32_t index, uint16_t &data);\r
- int getArgument(uint32_t index, int32_t &data);\r
- int getArgument(uint32_t index, uint32_t &data);\r
- int getArgument(uint32_t index, int64_t &data);\r
- int getArgument(uint32_t index, uint64_t &data);\r
- int getArgument(uint32_t index, float &data);\r
- int getArgument(uint32_t index, double &data);\r
- int getArgument(uint32_t index, struct in_addr &data);\r
- int getArgument(uint32_t index, struct in6_addr &data);\r
- int getArgument(uint32_t index, const char *&data);\r
- int getArgument(uint32_t index, const uint8_t *&data, uint32_t &length);\r
- int getArgument(uint32_t index, const pfc_ipcstdef_t &def,\r
- pfc_ptr_t datap);\r
-\r
- uint32_t getArgCount(void);\r
- int getArgType(uint32_t index, pfc_ipctype_t &type);\r
- int getArgStructName(uint32_t index, const char *&name);\r
- int getArgStructName(uint32_t index, std::string &name);\r
-\r
- int setCallback(pfc_ipcsrvcb_type_t type, ServerCallback *cbp);\r
- void unsetCallback(pfc_ipcsrvcb_type_t type);\r
- void clearCallbacks(void);\r
-\r
- //stub functions\r
- static void stub_setArgCount(uint32_t argCount);\r
- static void stub_setArgStructName(uint32_t index, std::string &name);\r
- static void stub_setArgument(int result);\r
- static void stub_setArgument( uint32_t index,uint32_t value );\r
- static void clearStubData();\r
- static void stub_setArgType(uint32_t index, pfc_ipctype_t ipctype);\r
- static void stub_setAddOutput(int result);\r
- static void stub_setAddOutput(uint32_t value);\r
-\r
-private:\r
- static std::map<uint32_t,pfc_ipctype_t > arg_parameters;\r
- static std::map<uint32_t,std::string> structNameMap;\r
- static std::map<uint32_t,uint32_t> arg_map;\r
- static std::vector<uint32_t> add_output_list;\r
- static bool addOutPut_;\r
- static int result_;\r
- static uint32_t argCount_;\r
-};\r
-\r
-class ServerEvent\r
- : public ServerSession\r
-{\r
-public:\r
- ServerEvent(const char *name, pfc_ipcevtype_t type, int &err)\r
- : ServerSession()\r
- {\r
- std::cout<<" ServerEvent(const char *name, pfc_ipcevtype_t type, int &err) "<<std::endl;\r
- err = serverEventErr_;\r
- }\r
-\r
- ServerEvent(std::string &name, pfc_ipcevtype_t type, int &err)\r
- : ServerSession()\r
- {\r
- std::cout<<" ServerEvent(std::string &name, pfc_ipcevtype_t type, int &err)"<<std::endl;\r
- err = serverEventErr_;\r
- }\r
-\r
- ServerEvent(uint8_t type, int &err)\r
- : ServerSession()\r
- {\r
- err = serverEventErr_;\r
- }\r
-\r
- ~ServerEvent()\r
- {\r
-\r
- }\r
-\r
- inline int\r
- post(void)\r
- {\r
- std::cout<<" post(void) "<<std::endl;\r
- return postResult_;\r
- }\r
-\r
- inline int\r
- postTo(pfc_ipccladdr_t &claddr)\r
- {\r
-\r
- return 0;\r
- }\r
-\r
- static void clearStubData();\r
- static void stub_setserverEventErr(int err);\r
- static void stub_setPostResult(int result);\r
-private:\r
- static int serverEventErr_;\r
- static int postResult_;\r
-};\r
-\r
-class ServerCallback\r
-{\r
-public:\r
-\r
- ServerCallback(ServerSession &sess) : _sess(&sess), _refcnt(0) {}\r
- virtual ~ServerCallback();\r
- virtual void callback(pfc_ipcsrvcb_type_t type) = 0;\r
- inline ServerSession &\r
- getSession(void)\r
- {\r
- return *_sess;\r
- }\r
-\r
-private:\r
- ServerSession *_sess;\r
- uint32_t _refcnt;\r
-};\r
-\r
-}\r
-}\r
-}\r
-\r
-#endif /* !_PFCXX_IPC_SERVER_HH */\r
+/*
+ * Copyright (c) 2012-2013 NEC Corporation
+ * All rights reserved.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this
+ * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
+ */
+
+#include <pfc/ipc.h>
+#include <netinet/in.h>
+#include <string>
+#include <map>
+#include <list>
+#include <vector>
+#include <iostream>
+
+#ifndef _PFCXX_IPC_SERVER_HH
+#define _PFCXX_IPC_SERVER_HH
+
+namespace pfc {
+namespace core {
+namespace ipc {
+
+class ClientSession;
+class ServerCallback;
+class ServerEvent;
+
+/*
+ * C++ wrapper for IPC server session instance.
+ */
+class ServerSession
+{
+ friend class ::pfc::core::ipc::ClientSession;
+ friend class ::pfc::core::ipc::ServerEvent;
+
+public:
+ /*
+ * Constructor.
+ */
+ ServerSession();
+
+ /*
+ * Destructor.
+ */
+ virtual ~ServerSession(){
+
+ }
+
+ /*
+ * Instance methods.
+ */
+ int setTimeout(const pfc_timespec_t *timeout=NULL);
+ int getClientAddress(pfc_ipccladdr_t &claddr);
+
+ int addOutput(int8_t data);
+ int addOutputInt8(int8_t data);
+ int addOutput(uint8_t data);
+ int addOutputUint8(uint8_t data);
+ int addOutput(int16_t data);
+ int addOutputInt16(int16_t data);
+ int addOutput(uint16_t data);
+ int addOutputUint16(uint16_t data);
+ int addOutput(int32_t data);
+ int addOutputInt32(int32_t data);
+ int addOutput(uint32_t data);
+ int addOutputUint32(uint32_t data);
+ int addOutput(int64_t data);
+ int addOutputInt64(int64_t data);
+ int addOutput(uint64_t data);
+ int addOutputUint64(uint64_t data);
+ int addOutput(float data);
+ int addOutputFloat(float data);
+ int addOutput(double data);
+ int addOutputDouble(double data);
+ int addOutput(struct in_addr &data);
+ int addOutput(struct in6_addr &data);
+ int addOutput(const char *data);
+ int addOutput(const std::string &data);
+ int addOutput(const uint8_t *data, uint32_t length);
+ int addOutput(const pfc_ipcstdef_t &def, pfc_cptr_t data);
+ int addOutput(void);
+
+
+ int getArgument(uint32_t index, int8_t &data);
+ int getArgument(uint32_t index, uint8_t &data);
+ int getArgument(uint32_t index, int16_t &data);
+ int getArgument(uint32_t index, uint16_t &data);
+ int getArgument(uint32_t index, int32_t &data);
+ int getArgument(uint32_t index, uint32_t &data);
+ int getArgument(uint32_t index, int64_t &data);
+ int getArgument(uint32_t index, uint64_t &data);
+ int getArgument(uint32_t index, float &data);
+ int getArgument(uint32_t index, double &data);
+ int getArgument(uint32_t index, struct in_addr &data);
+ int getArgument(uint32_t index, struct in6_addr &data);
+ int getArgument(uint32_t index, const char *&data);
+ int getArgument(uint32_t index, const uint8_t *&data, uint32_t &length);
+ int getArgument(uint32_t index, const pfc_ipcstdef_t &def,
+ pfc_ptr_t datap);
+
+ uint32_t getArgCount(void);
+ int getArgType(uint32_t index, pfc_ipctype_t &type);
+ int getArgStructName(uint32_t index, const char *&name);
+ int getArgStructName(uint32_t index, std::string &name);
+
+ int setCallback(pfc_ipcsrvcb_type_t type, ServerCallback *cbp);
+ void unsetCallback(pfc_ipcsrvcb_type_t type);
+ void clearCallbacks(void);
+
+ //stub functions
+ static void stub_setArgCount(uint32_t argCount);
+ static void stub_setArgStructName(uint32_t index, std::string &name);
+ static void stub_setArgument(int result);
+ static void stub_setArgument( uint32_t index,uint32_t value );
+ static void clearStubData();
+ static void stub_setArgType(uint32_t index, pfc_ipctype_t ipctype);
+ static void stub_setAddOutput(int result);
+ static void stub_setAddOutput(uint32_t value);
+
+private:
+ static std::map<uint32_t,pfc_ipctype_t > arg_parameters;
+ static std::map<uint32_t,std::string> structNameMap;
+ static std::map<uint32_t,uint32_t> arg_map;
+ static std::vector<uint32_t> add_output_list;
+ static bool addOutPut_;
+ static int result_;
+ static uint32_t argCount_;
+};
+
+class ServerEvent
+ : public ServerSession
+{
+public:
+ ServerEvent(const char *name, pfc_ipcevtype_t type, int &err)
+ : ServerSession()
+ {
+ std::cout<<" ServerEvent(const char *name, pfc_ipcevtype_t type, int &err) "<<std::endl;
+ err = serverEventErr_;
+ }
+
+ ServerEvent(std::string &name, pfc_ipcevtype_t type, int &err)
+ : ServerSession()
+ {
+ std::cout<<" ServerEvent(std::string &name, pfc_ipcevtype_t type, int &err)"<<std::endl;
+ err = serverEventErr_;
+ }
+
+ ServerEvent(uint8_t type, int &err)
+ : ServerSession()
+ {
+ err = serverEventErr_;
+ }
+
+ ~ServerEvent()
+ {
+
+ }
+
+ inline int
+ post(void)
+ {
+ std::cout<<" post(void) "<<std::endl;
+ return postResult_;
+ }
+
+ inline int
+ postTo(pfc_ipccladdr_t &claddr)
+ {
+
+ return 0;
+ }
+
+ static void clearStubData();
+ static void stub_setserverEventErr(int err);
+ static void stub_setPostResult(int result);
+private:
+ static int serverEventErr_;
+ static int postResult_;
+};
+
+class ServerCallback
+{
+public:
+
+ ServerCallback(ServerSession &sess) : _sess(&sess), _refcnt(0) {}
+ virtual ~ServerCallback();
+ virtual void callback(pfc_ipcsrvcb_type_t type) = 0;
+ inline ServerSession &
+ getSession(void)
+ {
+ return *_sess;
+ }
+
+private:
+ ServerSession *_sess;
+ uint32_t _refcnt;
+};
+
+}
+}
+}
+
+#endif /* !_PFCXX_IPC_SERVER_HH */
/*
-* Copyright (c) 2012-2013 NEC Corporation
-* All rights reserved.
-*
-* This program and the accompanying materials are made available under the
-* terms of the Eclipse Public License v1.0 which accompanies this
-* distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
-*/
+ * Copyright (c) 2012-2013 NEC Corporation
+ * All rights reserved.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this
+ * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
+ */
#ifndef _PFCXX_MODULE_HH
#define _PFCXX_MODULE_HH
#include <pfc/module.h>
#include <pfc/log.h>
-#include <cxx/pfcxx/conf.hh>
-#include <cxx/pfcxx/event.hh>
-#include "cxx/pfcxx/ipc_client.hh"
-#include<string>
-
+#include <pfcxx/conf.hh>
+#include <pfcxx/event.hh>
+#include <pfcxx/ipc_client.hh>
+#include <string>
namespace pfc {
namespace core {
+++ /dev/null
-/*
-* Copyright (c) 2012-2013 NEC Corporation
-* All rights reserved.
-*
-* This program and the accompanying materials are made available under the
-* terms of the Eclipse Public License v1.0 which accompanies this
-* distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
-*/
-
-
-
-/*
- * stub_momgr_impl.hh
- *
- * Created on: Feb 27, 2013
- * Author: guest
- */
-
-#ifndef STUB_MOMGR_IMPL_HH_
-#define STUB_MOMGR_IMPL_HH_
-
-#include <limits.h>
-#include <gtest/gtest.h>
-#include "momgr_intf.hh"
-#include "pfc/event.h"
-#include "cxx/pfcxx/synch.hh"
-#include "unc/keytype.h"
-
-#include "upll_errno.h"
-#include "dal/dal_dml_intf.hh"
-#include "ipc_util.hh"
-#include "cxx/pfcxx/module.hh"
-#include "capa_module_stub.hh"
-#include "ctrlr_mgr.hh"
-#include "ipct_st.hh"
-#include "dal/dal_dml_intf.hh"
-
-using std::string;
-using std::list;
-using std::set;
-using unc::upll::ipc_util::IpcReqRespHeader;
-using unc::upll::ipc_util::ConfigKeyVal;
-using unc::upll::ipc_util::ConfigNotification;
-using unc::upll::dal::DalDmlIntf;
-
-
-using ::testing::TestWithParam;
-using namespace unc::upll::ipc_util;
-using ::testing::Values;
-
-using namespace unc::upll::config_momgr;
-
-class StubMoMgr : public MoManager
-{
-public:
- virtual upll_rc_t TxUpdateController(unc_key_type_t keytype,
- uint32_t session_id, uint32_t config_id,
- UpdateCtrlrPhase phase,
- set<string> *affected_ctrlr_set,
- DalDmlIntf *dmi,
- ConfigKeyVal **err_ckv ) {
- ConfigKeyVal* configKeyVal(new ConfigKeyVal(UNC_KT_FLOWLIST_ENTRY,IpctSt::kIpcInvalidStNum));
- *err_ckv = configKeyVal;
- if ( phase == kUpllUcpDelete )
- {
- return ( session_id == 0)? UPLL_RC_ERR_GENERIC:UPLL_RC_SUCCESS;
- }
- else if ( phase == kUpllUcpCreate )
- {
- return ( config_id == 0)? UPLL_RC_ERR_GENERIC:UPLL_RC_SUCCESS;
- }
- else if (phase == kUpllUcpUpdate )
- std::cout<<"affected_ctrlr_set->size() "<< affected_ctrlr_set->size()<<std::endl;
- return ( affected_ctrlr_set->size() == 0 )? UPLL_RC_ERR_GENERIC:UPLL_RC_SUCCESS;
- }
- virtual upll_rc_t TxVote(unc_key_type_t keytype, DalDmlIntf *dmi, ConfigKeyVal **err_ckv ) {
- return UPLL_RC_SUCCESS;
- }
-
- virtual upll_rc_t TxVoteCtrlrStatus(
- unc_key_type_t keytype,
- list<CtrlrVoteStatus*> *ctrlr_vote_status,
- DalDmlIntf *dmi) {
- return UPLL_RC_SUCCESS;
- }
-
-
-virtual upll_rc_t AuditUpdateController(unc_key_type_t, const char*, uint32_t, uint32_t, unc::upll::config_momgr::UpdateCtrlrPhase, bool*, unc::upll::dal::DalDmlIntf*){
- return UPLL_RC_SUCCESS;
-}
-
- virtual upll_rc_t TxCopyCandidateToRunning(
- unc_key_type_t keytype,
- list<CtrlrCommitStatus*> *ctrlr_commit_status,
- DalDmlIntf *dmi) {
- return UPLL_RC_SUCCESS;
- }
-
- virtual upll_rc_t TxEnd(unc_key_type_t keytype, DalDmlIntf *dmi){
- return UPLL_RC_SUCCESS;
- }
-
- virtual upll_rc_t CreateMo(IpcReqRespHeader *req, ConfigKeyVal *key,
- DalDmlIntf *dmi) {
- return UPLL_RC_SUCCESS;
- }
- virtual upll_rc_t CreateImportMo(IpcReqRespHeader *req, ConfigKeyVal *key,
- DalDmlIntf *dmi, const char *ctrlr_id,const char *domain_id) {
- return UPLL_RC_SUCCESS;
- }
- virtual upll_rc_t DeleteMo(IpcReqRespHeader *req, ConfigKeyVal *key,
- DalDmlIntf *dmi) {
- return UPLL_RC_SUCCESS;
- }
-
- virtual upll_rc_t UpdateMo(IpcReqRespHeader *req, ConfigKeyVal *key,
- DalDmlIntf *dmi) {
- return UPLL_RC_SUCCESS;
- }
-
- /*virtual upll_rc_t RenameMo(IpcReqRespHeader *req, ConfigKeyVal *key,
- DalDmlIntf *dmi, const char *ctrlr_id) {
- return UPLL_RC_ERR_NOT_ALLOWED_FOR_THIS_KT;
- }*/
-
- virtual upll_rc_t ReadMo(IpcReqRespHeader *req, ConfigKeyVal *key,
- DalDmlIntf *dmi) {
- return UPLL_RC_SUCCESS;
- }
-
- virtual upll_rc_t ReadSiblingMo(IpcReqRespHeader *req, ConfigKeyVal *key,
- bool begin, DalDmlIntf *dal)
- {
- return UPLL_RC_SUCCESS;
- }
- virtual upll_rc_t ReadSiblingCount(IpcReqRespHeader *req, ConfigKeyVal *key,
- DalDmlIntf *dmi) {
- return UPLL_RC_SUCCESS;
- }
-
- virtual upll_rc_t ControlMo(IpcReqRespHeader *req, ConfigKeyVal *key,
- DalDmlIntf *dmi) {
- return UPLL_RC_ERR_NOT_ALLOWED_FOR_THIS_KT;
- }
-
- virtual upll_rc_t AuditUpdateController(unc_key_type_t keytype,
- const char *ctrlr_id,
- uint32_t session_id, uint32_t config_id,
- UpdateCtrlrPhase phase,
- DalDmlIntf *dmi) {
- if ( phase == kUpllUcpDelete )
- {
- return ( session_id == 0)? UPLL_RC_ERR_GENERIC:UPLL_RC_SUCCESS;
- }
- else if ( phase == kUpllUcpCreate )
- {
- return ( config_id == 10)? UPLL_RC_ERR_GENERIC:UPLL_RC_SUCCESS;
- }
- else if (phase == kUpllUcpUpdate )
-
- return UPLL_RC_SUCCESS;
- }
- // virtual upll_rc_t AuditVote(const char *ctrlr_id) = 0;
- virtual upll_rc_t AuditVoteCtrlrStatus(unc_key_type_t keytype,
- CtrlrVoteStatus *vote_satus,
- DalDmlIntf *dmi) {
- return UPLL_RC_SUCCESS;
- }
- virtual upll_rc_t AuditCommitCtrlrStatus(unc_key_type_t keytype,
- CtrlrCommitStatus *commit_satus,
- DalDmlIntf *dmi) {
- return UPLL_RC_SUCCESS;
- }
- virtual upll_rc_t AuditEnd(unc_key_type_t keytype, const char *ctrlr_id,
- DalDmlIntf *dmi) {
- std::string cntrl_id(ctrlr_id);
- return ( 0 == cntrl_id.compare("success"))?UPLL_RC_SUCCESS:UPLL_RC_ERR_GENERIC;
- }
-
- virtual upll_rc_t MergeValidate(unc_key_type_t keytype,
- const char *ctrlr_id,
- ConfigKeyVal *conflict_ckv,
- DalDmlIntf *dmi) {
- return UPLL_RC_SUCCESS;
- }
-
- virtual upll_rc_t MergeImportToCandidate(unc_key_type_t keytype,
- const char *ctrlr_id,
- DalDmlIntf *dmi) {
- return UPLL_RC_SUCCESS;
- }
- virtual upll_rc_t ImportClear(unc_key_type_t keytype,
- const char *ctrlr_id,
- DalDmlIntf *dmi) {
- return UPLL_RC_SUCCESS;
- }
-
- virtual upll_rc_t CopyRunningToStartup(unc_key_type_t kt,
- DalDmlIntf *dmi) {
- return UPLL_RC_SUCCESS;
- }
- virtual upll_rc_t ClearStartup(unc_key_type_t kt, DalDmlIntf *dmi) {
- return UPLL_RC_SUCCESS;
- }
- virtual upll_rc_t LoadStartup(unc_key_type_t kt, DalDmlIntf *dmi) {
- return UPLL_RC_SUCCESS;
- }
- virtual upll_rc_t CopyRunningToCandidate(unc_key_type_t kt,
- DalDmlIntf *dmi) {
- return UPLL_RC_SUCCESS;
- }
- virtual upll_rc_t IsCandidateDirty(unc_key_type_t kt, bool *dirty,
- DalDmlIntf *dmi) {
- return UPLL_RC_SUCCESS;
- }
- virtual void UpplNotificationHandler(pfc_event_t event, pfc_ptr_t arg) {
-
- }
- virtual void DriverNotificationHandler(pfc_event_t event, pfc_ptr_t arg) {
-
- }
-};
-
-
-#endif /* STUB_MOMGR_IMPL_HH_ */
+++ /dev/null
-/*
- * Copyright (c) 2012-2013 NEC Corporation
- * All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this
- * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
- */
-
-#ifndef ALARM_ALARM_HH
-#define ALARM_ALARM_HH
-
-#include <stdint.h>
-#include <string>
-#include <sys/time.h>
-
-namespace pfc{
-namespace alarm{
-
-/*
- * alarm API
- */
-
-#define ALARM_KEY_MAX 64
-
-typedef struct alarm_info {
- uint8_t alarm_class;
- uint8_t apl_No;
- uint16_t alarm_category;
- uint32_t alarm_id ;
- uint8_t alarm_kind;
-} alarm_info_t;
-
-typedef struct alarm_info_with_key {
- uint8_t alarm_class;
- uint8_t apl_No;
- uint16_t alarm_category;
- uint8_t alarm_key_size;
- uint8_t* alarm_key;
- uint8_t alarm_kind;
-} alarm_info_with_key_t;
-
-typedef enum{
- ALM_EMERG=0,
- ALM_ALERT,
- ALM_CRITICAL,
- ALM_ERROR,
- ALM_WARNING,
- ALM_NOTICE,
- ALM_INFO,
- ALM_DEBUG
-}alarm_level_t;
-
-typedef enum {
- ALM_OK = 0,
- ALM_EAGAIN,
- ALM_ERR
-} alarm_return_code_t;
-
-alarm_return_code_t
-pfc_alarm_initialize(int32_t *fd);
-
-alarm_return_code_t
-pfc_alarm_send(const std::string& VTN_name, const std::string& alm_msg,
-const std::string& alm_msg_summary, alarm_info_t *data, int32_t fd);
-
-alarm_return_code_t
-pfc_alarm_send_with_key(const std::string& VTN_name, const std::string& alm_msg,
-const std::string& alm_msg_summary, alarm_info_with_key_t* data, int32_t fd);
-
-alarm_return_code_t
-pfc_alarm_send_with_key2(const std::string& VTN_name,
- const std::string& alm_msg, const std::string& alm_msg_summary,
- alarm_info_with_key_t* data, int32_t fd, struct timeval* tv);
-
-alarm_return_code_t
-pfc_alarm_clear (uint8_t apl_No);
-
-alarm_return_code_t
-pfc_alarm_close(int32_t fd);
-
-alarm_return_code_t pfc_alarm_view_start(void);
-
-};
-};
-
-#endif /* !ALARM_ALARM_HH */
+++ /dev/null
-#
-# Copyright (c) 2013 NEC Corporation
-# All rights reserved.
-#
-# This program and the accompanying materials are made available under the
-# terms of the Eclipse Public License v1.0 which accompanies this
-# distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
-#
-
-##
-## Makefile that includes ipc stubs to run unit tests for UPLL module.
-##
-
-CPPFLAGS = -g
-
-OBJS=../stub_objs
-
-SRC_DIR = ../../../../../../modules
-STUB_DIR =..
-INCLUDE = -I$(STUB_DIR)/include \
- -I$(STUB_DIR)/include/cxx \
- -I$(STUB_DIR)/include/cxx/pfcxx \
- -I$(STUB_DIR)/include/uncxx \
- -I$(STUB_DIR)/dal/include \
- -I$(SRC_DIR)/upll \
- -I$(SRC_DIR)/../core/libs/libpfc_ipc \
- -I$(SRC_DIR)/../dist/target/objs/core_include \
- -I$(SRC_DIR)/../dist/target/objs/core/include \
- -I$(SRC_DIR)/../dist/target/objs/include \
- -I$(SRC_DIR)/../core/include \
- -I$(SRC_DIR)/../include/ \
- -I$(SRC_DIR)/upll/include \
- -I$(SRC_DIR)/dal \
- -I$(SRC_DIR)/alarm/include
-all: compile
-
-clean :
- @(cd $(OBJS); rm -rf $(OBJS)/ipc_client.o ipc_server.o alarm.o)
-DEPENDENT_FILES = ipc_server.cc ipc_client.cc module.cc alarm.cc
-OBJ1 = $(patsubst %.cc,$(OBJS)/%.o,$(DEPENDENT_FILES))
-
-$(OBJ1):$(OBJS)/%.o : ./%.cc
- $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(INCLUDE) -c $< -o $@
-
-compile : $(OBJ1)
-
-
-
+++ /dev/null
-/*
-* Copyright (c) 2012-2013 NEC Corporation
-* All rights reserved.
-*
-* This program and the accompanying materials are made available under the
-* terms of the Eclipse Public License v1.0 which accompanies this
-* distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
-*/
-
-
-#include "cxx/pfcxx/module.hh"
-
-namespace pfc {
-namespace core {
-
-Module* Module::capaModule=NULL;
-Module* Module::tcLib=NULL;
-
-
- Module* Module::getModule(const char* moduleName) {
- if (!strcmp(moduleName,"capa"))
- {
- return capaModule;
- }
- else if(!strcmp(moduleName,"tclib"))
- {
- return tcLib;
- }
- else
- {
- return NULL;
- }
-
- }
-
-}
-}
#include <sys/un.h>
#include <math.h>
#include <string>
-#include "cxx/pfcxx/module.hh"
-#include "uncxx/alarm.hh"
+#include <pfcxx/module.hh>
+#include <alarm.hh>
namespace pfc{
namespace alarm{
--- /dev/null
+/*
+ * Copyright (c) 2012-2013 NEC Corporation
+ * All rights reserved.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this
+ * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
+ */
+
+#include <string.h>
+#include <pfcxx/module.hh>
+
+namespace pfc {
+namespace core {
+
+Module* Module::capaModule = NULL;
+Module* Module::tcLib = NULL;
+
+Module* Module::getModule(const char* moduleName) {
+ if (!strcmp(moduleName, "capa")) {
+ return capaModule;
+ }
+ if(!strcmp(moduleName, "tclib")) {
+ return tcLib;
+ }
+
+ return NULL;
+}
+
+}
+}
+++ /dev/null
-#
-# Copyright (c) 2013 NEC Corporation
-# All rights reserved.
-#
-# This program and the accompanying materials are made available under the
-# terms of the Eclipse Public License v1.0 which accompanies this
-# distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
-#
-
-##
-## Makefile that include tclib modules stub to run unit tests for UPLL module.
-##
-
-
-
-
-CPPFLAGS = -g
-
-OBJS=../stub_objs
-
-SRC_DIR = ../../../../../../modules
-STUB_DIR =..
-INCLUDE = -I$(STUB_DIR)/include \
- -I$(STUB_DIR)/include/cxx \
- -I$(STUB_DIR)/include/cxx/pfcxx \
- -I$(SRC_DIR)/../core/include \
- -I$(SRC_DIR)/../include \
- -I$(SRC_DIR)/../core/libs/libpfc_ipc \
- -I$(SRC_DIR)/../dist/target/objs/core_include \
- -I$(SRC_DIR)/../dist/target/objs/core/include \
- -I$(SRC_DIR)/../dist/target/objs/include \
- -I$(SRC_DIR)/upll/include \
- -I$(SRC_DIR)/dal \
-
-
-
-all: $(OBJS)/tclib_module.o
-
-clean :
- @(cd $(OBJS); rm -rf $(OBJ) tclib_module.o)
-
-$(OBJS)/tclib_module.o :tclib_module.cc tclib_module.hh
- $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(INCLUDE) -c $< -o $@
-
-
-
-
-
-
uint32_t TcLibModule::keyIndex;
TcLibInterface* TcLibModule::pTcLibInterface_=0;
+static TcLibModule theInstance(NULL);
+
+void
+TcLibModule::stub_loadtcLibModule(void) {
+ pfc::core::Module::tcLib = &theInstance;
+}
+
+void
+TcLibModule::stub_unloadtcLibModule(void) {
+ pfc::core::Module::tcLib = NULL;
+}
+
TcApiCommonRet TcLibModule::TcLibRegisterHandler(TcLibInterface* handler) {
pTcLibInterface_ = handler;
return stub_getMappedResultCode(TcLibModule::REGISTER);
#ifndef _UNC_TCLIB_MODULE_HH_
#define _UNC_TCLIB_MODULE_HH_
-#include "cxx/pfcxx/module.hh"
-#include <cxx/pfcxx/synch.hh>
+#include <pfcxx/module.hh>
+#include <pfcxx/synch.hh>
#include <uncxx/tclib/tclib_interface.hh>
-#include "tclib_struct_defs.hh"
+#include <tclib_struct_defs.hh>
#include <string>
namespace unc {
class TcLibInterface;
class TcLibModule : public pfc::core::Module {
- public:
-
- enum TCApiCommonRet {
- REGISTER,
- AUDIT_CONTROLLER,
- VALIDATE_UPDATE,
- READ_KEY_VAL,
- WRITE_CONTROLLER,
- WRITE_KEY_VALUE,
- IS_READ_KEY,
- IS_WRITE_KEY,
- KEY_INDEX,
-
- };
-
- enum TCCommonRet {
- VALIDATE_OPER_TYPE,
- VALIDATE_COMMIT_OPER,
- VALIDATE_AUDIT_OPER,
- VALIDATE_UPLL_COMMIT,
- VALIDATE_DRIVER_COMMIT,
- VALIDATE_UPLL_AUDIT,
- VALIDATE_DRIVER_AUDIT,
- UPDATE_CONTROLLER_KEY,
- NOTIFY_SESSION_CONFIG,
- COMMIT_TRANS_START,
- COMMIT_VOTE_GLOBAL,
- COMMIT_TRANS,
- COMMIT_DRIVER_VOTE,
- COMMIT_DRIVER_RESULT,
- COMMIT_GLOBAL_ABORT,
- AUDIT_TRANS_START,
- AUDIT_VOTE_GLOBAL,
- AUDIT_TRANS,
- AUDIT_DRIVER_VOTE,
- AUDIT_DRIVER_RESULT,
- AUDIT_GLOBAL_ABORT,
- SAVE_CONFIGURATION,
- CLEAR_START_UP,
- ABORT_CANDIDATE,
- AUDIT_CONFIG,
- SET_UP,
- SET_UP_COMPLETE,
- };
-
- TcLibModule(const pfc_modattr_t *mattr):
- pfc::core::Module(mattr){
-
+public:
+ enum TCApiCommonRet {
+ REGISTER,
+ AUDIT_CONTROLLER,
+ VALIDATE_UPDATE,
+ READ_KEY_VAL,
+ WRITE_CONTROLLER,
+ WRITE_KEY_VALUE,
+ IS_READ_KEY,
+ IS_WRITE_KEY,
+ KEY_INDEX,
+ };
+
+ enum TCCommonRet {
+ VALIDATE_OPER_TYPE,
+ VALIDATE_COMMIT_OPER,
+ VALIDATE_AUDIT_OPER,
+ VALIDATE_UPLL_COMMIT,
+ VALIDATE_DRIVER_COMMIT,
+ VALIDATE_UPLL_AUDIT,
+ VALIDATE_DRIVER_AUDIT,
+ UPDATE_CONTROLLER_KEY,
+ NOTIFY_SESSION_CONFIG,
+ COMMIT_TRANS_START,
+ COMMIT_VOTE_GLOBAL,
+ COMMIT_TRANS,
+ COMMIT_DRIVER_VOTE,
+ COMMIT_DRIVER_RESULT,
+ COMMIT_GLOBAL_ABORT,
+ AUDIT_TRANS_START,
+ AUDIT_VOTE_GLOBAL,
+ AUDIT_TRANS,
+ AUDIT_DRIVER_VOTE,
+ AUDIT_DRIVER_RESULT,
+ AUDIT_GLOBAL_ABORT,
+ SAVE_CONFIGURATION,
+ CLEAR_START_UP,
+ ABORT_CANDIDATE,
+ AUDIT_CONFIG,
+ SET_UP,
+ SET_UP_COMPLETE,
+ };
+
+ TcLibModule(const pfc_modattr_t *mattr) : pfc::core::Module(mattr) {
}
~TcLibModule() {
-
}
-
pfc_bool_t init() {
- return true;
+ return true;
}
-
pfc_bool_t fini() {
- return true;
+ return true;
}
pfc_ipcresp_t ipcService(pfc::core::ipc::ServerSession& sess,
pfc_ipcid_t service) {
- return pfc_ipcresp_t();
-}
+ return pfc_ipcresp_t();
+ }
TcApiCommonRet TcLibRegisterHandler(TcLibInterface* handler);
TcApiCommonRet TcLibAuditControllerRequest(std::string controller_id);
-
TcApiCommonRet TcLibValidateUpdateMsg(uint32_t sessionid, uint32_t configid);
TcApiCommonRet TcLibReadKeyValueDataInfo(std::string controller_id,
void* key_data,
void* value_data);
- private:
-
+private:
TcCommonRet ValidateOperTypeSequence(TcMsgOperType oper_type);
-
TcCommonRet ValidateCommitOperSequence(TcMsgOperType oper_type);
-
TcCommonRet ValidateAuditOperSequence(TcMsgOperType oper_type);
-
TcCommonRet ValidateUpllUpplCommitSequence(TcMsgOperType oper_type);
-
TcCommonRet ValidateDriverCommitSequence(TcMsgOperType oper_type);
-
TcCommonRet ValidateUpllUpplAuditSequence(TcMsgOperType oper_type);
-
TcCommonRet ValidateDriverAuditSequence(TcMsgOperType oper_type);
-
TcApiCommonRet IsReadKeyValueAllowed();
TcApiCommonRet IsWriteKeyValueAllowed();
-
TcCommonRet UpdateControllerKeyList();
TcCommonRet NotifySessionConfig();
-
TcCommonRet CommitTransStartEnd(TcMsgOperType oper_type,
TcCommitTransactionMsg commit_trans_msg);
-
TcCommonRet CommitVoteGlobal(TcMsgOperType oper_type,
TcCommitTransactionMsg commit_trans_msg);
-
TcCommonRet CommitTransaction();
-
TcCommonRet CommitDriverVoteGlobal();
-
TcCommonRet CommitDriverResult();
-
TcCommonRet CommitGlobalAbort();
TcCommonRet AuditTransStartEnd(TcMsgOperType oper_type,
TcCommonRet SaveConfiguaration();
-
TcCommonRet ClearStartup();
TcCommonRet AbortCandidate();
//stub Methods
static inline void Stub_setDriverId(unc_keytype_ctrtype_t driverid ) {
- driverId = driverid;
+ driverId = driverid;
}
static inline void stub_setControllerType(unc_keytype_ctrtype_t cntrlrType) {
- controllerType = cntrlrType;
+ controllerType = cntrlrType;
}
static inline void stub_setKeyIndex(uint32_t index) {
- keyIndex = index;
- }
-
- static void stub_setTcCommonRetcode(TcLibModule::TCCommonRet methodType ,TcCommonRet res_code) {
- method_tccommon_map.insert(std::make_pair(methodType,res_code));
+ keyIndex = index;
}
- static void stub_setTCApiCommonRetcode(TcLibModule::TCApiCommonRet methodType,TcApiCommonRet res_code) {
- method_tcapi_map.insert(std::make_pair(methodType,res_code));
+ static void stub_setTcCommonRetcode(TcLibModule::TCCommonRet methodType,
+ TcCommonRet res_code) {
+ method_tccommon_map.insert(std::make_pair(methodType,res_code));
}
- static void stub_loadtcLibModule() {
- const pfc_modattr_t *attr;
- tcLib=static_cast<pfc::core::Module*>( new TcLibModule(attr) );
+ static void stub_setTCApiCommonRetcode(TcLibModule::TCApiCommonRet methodType,
+ TcApiCommonRet res_code) {
+ method_tcapi_map.insert(std::make_pair(methodType,res_code));
}
- static void stub_unloadtcLibModule() {
- tcLib=NULL;
- }
+ static void stub_loadtcLibModule(void);
+ static void stub_unloadtcLibModule(void);
static void stub_clearTcLibStubData() {
- method_tccommon_map.clear();
- method_tcapi_map.clear();
-
+ method_tccommon_map.clear();
+ method_tcapi_map.clear();
}
- private:
+
static TcApiCommonRet stub_getMappedResultCode(TcLibModule::TCApiCommonRet);
static TcCommonRet stub_getMappedResultCode(TcLibModule::TCCommonRet);
+++ /dev/null
-/*
-* Copyright (c) 2012-2013 NEC Corporation
-* All rights reserved.
-*
-* This program and the accompanying materials are made available under the
-* terms of the Eclipse Public License v1.0 which accompanies this
-* distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
-*/
-
-
-#include "../../../../../../modules/tclib/include/tclib_struct_defs.hh"
-
--- /dev/null
+/*
+ * Copyright (c) 2013 NEC Corporation
+ * All rights reserved.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this
+ * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
+ */
+
+#ifndef _TEST_UPLL_UT_STUB_H
+#define _TEST_UPLL_UT_STUB_H
+
+/*
+ * Include stub header files.
+ */
+
+#include "stub/include/core_include/pfc/ipc_client.h"
+
+#ifdef __cplusplus
+#include "stub/include/cxx/pfcxx/ipc_server.hh"
+#include "stub/include/cxx/pfcxx/ipc_client.hh"
+#include "stub/include/cxx/pfcxx/module.hh"
+#include "stub/dal/dal_cursor.hh"
+#include "stub/dal/dal_dml_intf.hh"
+#include "stub/dal/dal_bind_info.hh"
+#include "stub/dal/dal_odbc_mgr.hh"
+#include "stub/dal/dal_schema.hh"
+#include "stub/tclib_module/tclib_module.hh"
+#endif /* __cplusplus */
+
+#endif /* !_TEST_UPLL_UT_STUB_H */
--- /dev/null
+/*
+ * Copyright (c) 2013 NEC Corporation
+ * All rights reserved.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this
+ * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
+ */
+
+#ifndef _TEST_UPLL_UT_UTIL_HH
+#define _TEST_UPLL_UT_UTIL_HH
+
+/*
+ * Miscellaneous utility.
+ */
+#include <stdlib.h>
+#include <string.h>
+#include <gtest/gtest.h>
+#include <ipc_util.hh>
+#include <dal_odbc_mgr.hh>
+
+namespace unc {
+namespace upll {
+namespace test {
+
+/*
+ * Allocate zeroed buffer.
+ */
+#define ZALLOC_TYPE(type) \
+ (reinterpret_cast<type *>(calloc(1, sizeof(type))))
+#define ZALLOC_ARRAY(type, nelems) \
+ (reinterpret_cast<type *>(calloc((nelems), sizeof(type))))
+
+/*
+ * Create a shallow copy.
+ */
+static inline void *
+ut_clone(void *addr, size_t size) {
+ void *newbuf(calloc(1, size));
+
+ if (PFC_EXPECT_TRUE(newbuf != NULL)) {
+ memcpy(newbuf, addr, size);
+ }
+ return newbuf;
+}
+
+#define UT_CLONE(type, addr) \
+ (reinterpret_cast<type *>(ut_clone(addr, sizeof(type))))
+
+/*
+ * Base class for test environment.
+ */
+class UpllTestEnv
+ : public ::testing::Test
+{
+protected:
+ virtual void SetUp();
+ virtual void TearDown();
+
+ inline unc::upll::dal::DalDmlIntf *
+ getDalDmlIntf(void)
+ {
+ return dynamic_cast<unc::upll::dal::DalDmlIntf *>(&_dalOdbcMgr);
+ }
+
+private:
+ unc::upll::dal::DalOdbcMgr _dalOdbcMgr;
+};
+
+/*
+ * Declare IpcReqRespHeader as local variable.
+ */
+#define IPC_REQ_RESP_HEADER_DECL(name) \
+ IpcReqRespHeader __buf_##name; \
+ IpcReqRespHeader *name(&__buf_##name); \
+ memset(name, 0, sizeof(*name))
+
+/*
+ * Declare IpcResponse as local variable.
+ */
+#define IPC_RESPONSE_DECL(name) \
+ IpcResponse __buf_##name; \
+ IpcResponse *name(&__buf_##name); \
+ memset(name, 0, sizeof(*name))
+
+} // test
+} // upll
+} // unc
+
+#endif /* !_TEST_UPLL_UT_UTIL_HH */
--- /dev/null
+/*
+ * Copyright (c) 2013 NEC Corporation
+ * All rights reserved.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this
+ * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
+ */
+
+/*
+ * misc.cc - Miscellaneous utilities.
+ */
+
+#include <capa_module_stub.hh>
+#include <dal_odbc_mgr.hh>
+#include <tclib_module.hh>
+#include <ctrlr_mgr.hh>
+#include <config_mgr.hh>
+#include "ut_util.hh"
+
+using namespace unc::upll::dal;
+using namespace unc::upll::test;
+using namespace unc::upll::config_momgr;
+using namespace unc::capa;
+using namespace unc::tclib;
+
+/*
+ * Set up test environment.
+ */
+void
+UpllTestEnv::SetUp()
+{
+ // Load stub modules.
+ TcLibModule::stub_setTCApiCommonRetcode(TcLibModule::REGISTER,
+ unc::tclib::TC_API_COMMON_SUCCESS);
+ TcLibModule::stub_loadtcLibModule();
+
+ // Initialize UpllConfigMgr.
+ UpllConfigMgr::GetUpllConfigMgr();
+}
+
+/*
+ * Clean up test environment.
+ */
+void
+UpllTestEnv::TearDown()
+{
+ CtrlrMgr::GetInstance()->CleanUp();
+
+ TcLibModule::stub_clearTcLibStubData();
+ TcLibModule::stub_unloadtcLibModule();
+
+ CapaModuleStub::stub_clearStubData();
+ CapaModuleStub::stub_unloadCapaModule();
+
+ DalOdbcMgr::clearStubData();
+}
#include <limits.h>
#include <arpa/inet.h>
#include <gtest/gtest.h>
+#include <pfc/util.h>
#include <pfc/ipc.h>
#include <pfc/ipc_struct.h>
#include <unc/keytype.h>
#include <pfcxx/synch.hh>
-#include "vtn_momgr.hh"
-#include "vbr_momgr.hh"
-#include "vbr_if_momgr.hh"
-#include "unc/keytype.h"
-#include "config_mgr.hh"
-#include "dal_odbc_mgr.hh"
-#include "dal_dml_intf.hh"
-#include "capa_intf.hh"
-#include "capa_module_stub.hh"
-#include "tclib_module.hh"
-#include "ctrlr_mgr.hh"
-#include "momgr_intf_stub.hh"
-#include "dal_cursor.hh"
-#include "momgr_intf.hh"
-#include "momgr_impl.hh"
+#include <vtn_momgr.hh>
+#include <vbr_momgr.hh>
+#include <vbr_if_momgr.hh>
+#include <unc/keytype.h>
+#include <config_mgr.hh>
+#include <dal_odbc_mgr.hh>
+#include <dal_dml_intf.hh>
+#include <capa_intf.hh>
+#include <capa_module_stub.hh>
+#include <tclib_module.hh>
+#include <ctrlr_mgr.hh>
+#include <momgr_intf_stub.hh>
+#include <dal_cursor.hh>
+#include <momgr_intf.hh>
+#include <momgr_impl.hh>
+#include "ut_util.hh"
using ::testing::TestWithParam;
using ::testing::Values;
using namespace unc::upll::dal;
using namespace unc::upll::kt_momgr;
using namespace unc::upll::config_momgr;
+using namespace unc::upll::test;
using namespace unc::capa;
using namespace pfc::core;
using namespace unc::upll::dal::schema::table;
-namespace {
-
-class VbrIfMoMgrTest: public VbrMoMgr, public ::testing::Test {
- public:
- protected:
- virtual void SetUp() {}
-
- virtual void TearDown() {}
+class VbrIfMoMgrTest
+ : public UpllTestEnv
+{
};
-
-
-void GetKeyValStruct(key_vbr_if *&kst, val_vbr_if *&vst) {
+static void GetKeyStruct(key_vbr_if *&kst) {
const char *vtn_name = "VTN_1";
const char *if_name = "IF_1";
const char *vbr_name = "VBR_1";
- const char *desc = "thisisvbridge";
- const char *logical_port_id ="lport1";
- kst = reinterpret_cast<key_vbr_if *>(malloc
- (sizeof(key_vbr_if)));
- memset(kst, 0, sizeof(key_vbr_if));
+
+ kst = ZALLOC_TYPE(key_vbr_if);
strncpy(reinterpret_cast<char *>(kst->vbr_key.vtn_key.vtn_name),
- vtn_name, strlen(vtn_name)+1);
+ vtn_name, strlen(vtn_name)+1);
strncpy(reinterpret_cast<char *>(kst->vbr_key.vbridge_name),
- vbr_name, strlen(vbr_name)+1);
+ vbr_name, strlen(vbr_name)+1);
strncpy(reinterpret_cast<char *>(kst->if_name),
- if_name, strlen(if_name)+1);
- vst = reinterpret_cast<val_vbr_if *>(malloc
- (sizeof(val_vbr_if)));
- memset(vst, 0, sizeof(val_vbr_if));
- for( unsigned int loop = 0; loop < sizeof( vst->valid )/
- sizeof( vst->valid[0] ); ++loop ) {
+ if_name, strlen(if_name)+1);
+}
+
+static void GetValStruct(val_vbr_if *&vst)
+{
+ const char *desc = "thisisvbridge";
+ const char *logical_port_id ="lport1";
+
+ vst = ZALLOC_TYPE(val_vbr_if);
+ for (unsigned int loop = 0; loop < PFC_ARRAY_CAPACITY(vst->valid); ++loop) {
vst->valid[loop] = UNC_VF_VALID;
}
vst->cs_row_status = UNC_VF_VALID;
- for( unsigned int loop = 0; loop < sizeof( vst->valid )/
- sizeof(vst->valid[0]); ++loop) {
+
+ for (unsigned int loop = 0; loop < PFC_ARRAY_CAPACITY(vst->cs_attr);
+ ++loop) {
vst->cs_attr[loop] = UNC_CS_APPLIED;
}
+
vst->admin_status = UPLL_ADMIN_ENABLE;
- strncpy(reinterpret_cast<char *>(vst->description), desc,
- strlen(desc)+1);
+ strncpy(reinterpret_cast<char *>(vst->description), desc, strlen(desc)+1);
vst->portmap.vlan_id=1;
vst->portmap.tagged=1;
- for( unsigned int loop = 0; loop < sizeof( vst->portmap.valid )/
- sizeof( vst->portmap.valid[0]); ++loop ) {
+ for (unsigned int loop = 0; loop < PFC_ARRAY_CAPACITY(vst->portmap.valid);
+ ++loop) {
vst->portmap.valid[loop] = UNC_VF_VALID;
}
- for( unsigned int loop = 0; loop < sizeof( vst->portmap.valid )/
- sizeof( vst->portmap.valid[0] ); ++loop ) {
+
+ for (unsigned int loop = 0; loop < PFC_ARRAY_CAPACITY(vst->portmap.valid);
+ ++loop) {
vst->portmap.cs_attr[loop] = UNC_CS_APPLIED;
}
- strncpy(reinterpret_cast<char *>
- (vst->portmap.logical_port_id), logical_port_id,
- strlen(logical_port_id)+1);
+ strncpy(reinterpret_cast<char *>(vst->portmap.logical_port_id),
+ logical_port_id, strlen(logical_port_id)+1);
+}
+static void GetKeyValStruct(key_vbr_if *&kst, val_vbr_if *&vst)
+{
+ GetKeyStruct(kst);
+ GetValStruct(vst);
}
-void GetKeyValDrvStruct(key_vbr_if *&kst, val_drv_vbr_if *&vst) {
+static void GetValDrvStruct(val_drv_vbr_if *&vst)
+{
const char *vex_name = "Vex_1";
const char *vex_if_name = "Vex if_1";
const char *vex_link_name = "Vex link_1";
- const char *vtn_name = "VTN_1";
- const char *if_name = "IF_1";
- const char *vbr_name = "VBR_1";
const char *desc = "thisisvbridge";
const char *logical_port_id ="lport1";
- kst = reinterpret_cast<key_vbr_if *>(malloc
- (sizeof(key_vbr_if)));
- memset(kst,0,sizeof(key_vbr_if));
- strncpy(reinterpret_cast<char *>(kst->vbr_key.vtn_key.vtn_name),
- vtn_name, strlen(vtn_name)+1);
- strncpy(reinterpret_cast<char *>(kst->vbr_key.vbridge_name),
- vbr_name, strlen(vbr_name)+1);
- strncpy(reinterpret_cast<char *>(kst->if_name),
- if_name, strlen(if_name)+1);
- vst = reinterpret_cast<val_drv_vbr_if *>(malloc
- (sizeof(val_drv_vbr_if)));
- memset(vst,0,sizeof(val_drv_vbr_if));
+
+ vst = ZALLOC_TYPE(val_drv_vbr_if);
strncpy(reinterpret_cast<char *>(vst->vex_name), vex_name,
strlen(vex_name)+1);
strncpy(reinterpret_cast<char *>(vst->vex_if_name), vex_if_name,
strlen(vex_if_name)+1);
strncpy(reinterpret_cast<char *>(vst->vex_link_name), vex_link_name,
strlen(vex_link_name)+1);
- for(unsigned int loop = 0; loop < sizeof(vst->valid)/
- sizeof(vst->valid[0]); ++loop) {
+
+ for (unsigned int loop = 0; loop < PFC_ARRAY_CAPACITY(vst->valid); ++loop) {
vst->valid[loop] = UNC_VF_VALID;
}
- for(unsigned int loop = 0; loop < sizeof(vst->vbr_if_val.valid)/
- sizeof(vst->vbr_if_val.valid[0]); ++loop) {
+ for (unsigned int loop = 0; loop < PFC_ARRAY_CAPACITY(vst->vbr_if_val.valid);
+ ++loop) {
vst->vbr_if_val.valid[loop] = UNC_VF_VALID;
}
+
vst->vbr_if_val.cs_row_status = UNC_VF_VALID;
- for(unsigned int loop = 0; loop < sizeof(vst->vbr_if_val.valid)/
- sizeof(vst->vbr_if_val.valid[0]); ++loop) {
+
+ for (unsigned int loop = 0; loop < PFC_ARRAY_CAPACITY(vst->vbr_if_val.valid);
+ ++loop) {
vst->vbr_if_val.cs_attr[loop] = UNC_CS_APPLIED;
}
+
vst->vbr_if_val.admin_status=UPLL_ADMIN_ENABLE;
strncpy(reinterpret_cast<char *>(vst->vbr_if_val.description), desc,
- strlen(desc)+1);
+ strlen(desc)+1);
vst->vbr_if_val.portmap.vlan_id=1;
vst->vbr_if_val.portmap.tagged=0;
- for(unsigned int loop = 0; loop < sizeof(vst->vbr_if_val.portmap.valid)/
- sizeof(vst->vbr_if_val.portmap.valid[0]); ++loop) {
+
+ for (unsigned int loop = 0;
+ loop < PFC_ARRAY_CAPACITY(vst->vbr_if_val.portmap.valid); ++loop) {
vst->vbr_if_val.portmap.valid[loop] = UNC_VF_VALID;
}
- for(unsigned int loop = 0; loop < sizeof(vst->vbr_if_val.portmap.valid)/
- sizeof(vst->vbr_if_val.portmap.valid[0]); ++loop) {
+ for (unsigned int loop = 0;
+ loop < PFC_ARRAY_CAPACITY(vst->vbr_if_val.portmap.valid); ++loop) {
vst->vbr_if_val.portmap.cs_attr[loop] = UNC_CS_APPLIED;
}
- strncpy(reinterpret_cast<char *>(vst->vbr_if_val.portmap.logical_port_id), logical_port_id,
- strlen(logical_port_id)+1);
+ strncpy(reinterpret_cast<char *>(vst->vbr_if_val.portmap.logical_port_id),
+ logical_port_id, strlen(logical_port_id)+1);
+}
+
+static void GetKeyValDrvStruct(key_vbr_if *&kst, val_drv_vbr_if *&vst)
+{
+ GetKeyStruct(kst);
+ GetValDrvStruct(vst);
}
+
TEST_F(VbrIfMoMgrTest, DupConfigKeyVal_ReqInvalidKT) {
VbrIfMoMgr obj;
ConfigKeyVal *okey = NULL;
delete req;
delete okey;
}
+
TEST_F(VbrIfMoMgrTest, DupConfigKeyVal_SuccessMAINTBL) {
VbrIfMoMgr obj;
ConfigKeyVal *okey = NULL;
delete req;
delete okey;
}
+
TEST_F(VbrIfMoMgrTest, DupConfigKeyVal_Error) {
VbrIfMoMgr obj;
ConfigKeyVal *okey = NULL;
- key_vbr_if *key;
+ key_vbr_if *key(NULL);
val_vbr_if *val=NULL;
ConfigVal *tmp = new ConfigVal(IpctSt::kIpcStValVbrIf, val);
key, tmp);
EXPECT_EQ(UPLL_RC_ERR_GENERIC,obj.DupConfigKeyVal(okey,req,MAINTBL));
+ delete req;
delete okey;
}
+
TEST_F(VbrIfMoMgrTest, IsValidKey_InvalidIndex) {
VbrIfMoMgr obj;
uint64_t index = uudst::vbridge_interface::kDbiCtrlrName;
key_vbr_if *key;
- val_vbr_if *val;
- GetKeyValStruct(key, val);
+ GetKeyStruct(key);
EXPECT_EQ(true, obj.IsValidKey(reinterpret_cast<void *>(key),
index));
}
+
TEST_F(VbrIfMoMgrTest, CopyToConfigkey_InValidName) {
VbrIfMoMgr obj;
ConfigKeyVal *okey = NULL;
const char *vtn_name = "";
const char *vbr_name = "";
const char *if_name = "";
- key = reinterpret_cast<key_vbr_if *>(malloc
- (sizeof(key_vbr_if)));
- memset(key,0,sizeof(key_vbr_if));
+ key = ZALLOC_TYPE(key_vbr_if);
strncpy(reinterpret_cast<char *>(key->vbr_key.vtn_key.vtn_name),
- vtn_name, strlen(vtn_name)+1);
+ vtn_name, strlen(vtn_name)+1);
strncpy(reinterpret_cast<char *>(key->vbr_key.vbridge_name),
- vbr_name, strlen(vbr_name)+1);
+ vbr_name, strlen(vbr_name)+1);
strncpy(reinterpret_cast<char *>(key->if_name),
- if_name, strlen(if_name)+1);
+ if_name, strlen(if_name)+1);
- ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF,
- IpctSt::kIpcStKeyVbrIf,
- key, NULL);
+ ConfigKeyVal *ikey(new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf,
+ key, NULL));
EXPECT_EQ(UPLL_RC_ERR_GENERIC,obj.CopyToConfigKey(okey,ikey));
strncpy(reinterpret_cast<char *>(key->vbr_key.vtn_key.vtn_name),"VTN_1",32);
EXPECT_EQ(UPLL_RC_ERR_GENERIC,obj.CopyToConfigKey(okey,ikey));
- ConfigKeyVal *ikey1 = new ConfigKeyVal(UNC_KT_VBRIDGE,
- IpctSt::kIpcStKeyVbr,
- key, NULL);
- EXPECT_EQ(UPLL_RC_ERR_GENERIC,obj.CopyToConfigKey(okey,ikey));
+ key_vbr_if *key1(UT_CLONE(key_vbr_if, key));
+ ConfigKeyVal *ikey1(new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVbr,
+ key1, NULL));
+ EXPECT_EQ(UPLL_RC_ERR_GENERIC,obj.CopyToConfigKey(okey,ikey1));
+ delete ikey;
+ delete ikey1;
+ delete okey;
}
+
TEST_F(VbrIfMoMgrTest, CopyToConfigkey_InValidName_01) {
VbrIfMoMgr obj;
ConfigKeyVal *okey = NULL;
const char *vtn_name = "vtn1";
const char *vbr_name = "";
const char *if_name = "";
- key = reinterpret_cast<key_vbr_if *>(malloc
- (sizeof(key_vbr_if)));
- memset(key,0,sizeof(key_vbr_if));
+ key = ZALLOC_TYPE(key_vbr_if);
strncpy(reinterpret_cast<char *>(key->vbr_key.vtn_key.vtn_name),
- vtn_name, strlen(vtn_name)+1);
+ vtn_name, strlen(vtn_name)+1);
strncpy(reinterpret_cast<char *>(key->vbr_key.vbridge_name),
- vbr_name, strlen(vbr_name)+1);
+ vbr_name, strlen(vbr_name)+1);
strncpy(reinterpret_cast<char *>(key->if_name),
- if_name, strlen(if_name)+1);
+ if_name, strlen(if_name)+1);
- ConfigKeyVal *ikey1 = new ConfigKeyVal(UNC_KT_VBRIDGE,
- IpctSt::kIpcStKeyVbr,
- key, NULL);
+ ConfigKeyVal *ikey1(new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVbr,
+ key, NULL));
EXPECT_EQ(UPLL_RC_ERR_GENERIC,obj.CopyToConfigKey(okey,ikey1));
+ delete ikey1;
+ delete okey;
}
-TEST_F(VbrIfMoMgrTest, CompareValidValue_AuditTrue) {
+TEST_F(VbrIfMoMgrTest, CompareValidValue_AuditTrue) {
VbrIfMoMgr obj;
- key_vbr_if *key;
- val_vbr_if *val, *val1;
- GetKeyValStruct(key, val);
- GetKeyValStruct(key, val1);
-
- strncpy(reinterpret_cast<char *>(val1->description), "des1",
- strlen("des1")+1);
- void *vbrval = reinterpret_cast<void *>(&val);
-
- obj.CompareValidValue(vbrval, (void *)val,true);
- obj.CompareValidValue(vbrval, (void *)val1,true);
+ val_drv_vbr_if *val, *val1;
+ GetValDrvStruct(val);
+ GetValDrvStruct(val1);
+ void *vbrval = reinterpret_cast<void *>(val);
+ ASSERT_TRUE(obj.CompareValidValue(vbrval, (void *)val1, true));
+ free(val);
+ free(val1);
}
-TEST_F(VbrIfMoMgrTest, CompareValidValue_01) {
+TEST_F(VbrIfMoMgrTest, CompareValidValue_01) {
VbrIfMoMgr obj;
- key_vbr_if *key;
- val_drv_vbr_if *val, *val1;
- GetKeyValDrvStruct(key, val);
- GetKeyValDrvStruct(key, val1);
+ val_drv_vbr_if *val, *val1, *val2;
+ GetValDrvStruct(val);
+ GetValDrvStruct(val1);
+ GetValDrvStruct(val2);
+
+ void *vbrval = reinterpret_cast<void *>(val);
+ val->valid[PFCDRV_IDX_VEXT_NAME_VBRIF] = UNC_VF_VALID_NO_VALUE;
+ val->valid[PFCDRV_IDX_VEXTIF_NAME_VBRIF] = UNC_VF_VALID_NO_VALUE;
+ val->valid[PFCDRV_IDX_VLINK_NAME_VBRIF] = UNC_VF_VALID_NO_VALUE;
+ val1->valid[PFCDRV_IDX_VEXT_NAME_VBRIF] = UNC_VF_VALID_NO_VALUE;
+ val1->valid[PFCDRV_IDX_VEXTIF_NAME_VBRIF] = UNC_VF_VALID_NO_VALUE;
+ val1->valid[PFCDRV_IDX_VLINK_NAME_VBRIF] = UNC_VF_VALID_NO_VALUE;
+ ASSERT_FALSE(obj.CompareValidValue(vbrval, (void *)val1, true));
- void *vbrval = reinterpret_cast<void *>(&val);
+ val->valid[PFCDRV_IDX_VAL_VBRIF] = UNC_VF_VALID;
val->valid[PFCDRV_IDX_VEXT_NAME_VBRIF] = UNC_VF_VALID_NO_VALUE;
val->valid[PFCDRV_IDX_VEXTIF_NAME_VBRIF] = UNC_VF_VALID_NO_VALUE;
val->valid[PFCDRV_IDX_VLINK_NAME_VBRIF] = UNC_VF_VALID_NO_VALUE;
- obj.CompareValidValue(vbrval, (void *)val,true);
- obj.CompareValidValue(vbrval, (void *)val1,true);
+ ASSERT_FALSE(obj.CompareValidValue(vbrval, (void *)val2, true));
+
+ free(val);
+ free(val1);
+ free(val2);
}
-TEST_F(VbrIfMoMgrTest, CompareValidValue_02) {
+TEST_F(VbrIfMoMgrTest, CompareValidValue_02) {
VbrIfMoMgr obj;
- key_vbr_if *key;
val_drv_vbr_if *val, *val1;
- GetKeyValDrvStruct(key, val);
- GetKeyValDrvStruct(key, val1);
+ GetValDrvStruct(val);
+ GetValDrvStruct(val1);
- void *vbrval = reinterpret_cast<void *>(&val);
+ void *vbrval = reinterpret_cast<void *>(val);
val->valid[PFCDRV_IDX_VEXT_NAME_VBRIF] = UNC_VF_VALID;
val1->valid[PFCDRV_IDX_VEXT_NAME_VBRIF] = UNC_VF_VALID;
- obj.CompareValidValue(vbrval, (void *)val,true);
- obj.CompareValidValue(vbrval, (void *)val1,true);
+ ASSERT_TRUE(obj.CompareValidValue(vbrval, (void *)val1, true));
+ free(val);
+ free(val1);
}
-TEST(FilterAttributes,CreateOperation) {
+
+TEST_F(VbrIfMoMgrTest, FilterAttributes_CreateOperation) {
VbrIfMoMgr vbr;
void *val1 = NULL;
void *val2 = NULL;
bool audit_status = true;
unc_keytype_operation_t op = UNC_OP_CREATE;
- val_vbr_if_t *valvbr1 = reinterpret_cast<val_vbr_if *>(malloc(sizeof(val_vbr_if_t)));
+ val_vbr_if_t *valvbr1(ZALLOC_TYPE(val_vbr_if));
valvbr1->valid[UPLL_IDX_DESC_VBRI] = UNC_VF_INVALID;
val1 = reinterpret_cast<void *>(reinterpret_cast<char *>(valvbr1));
val2 = reinterpret_cast<void *>(reinterpret_cast<char *>(valvbr1));
EXPECT_EQ(false, vbr.FilterAttributes(val1,val2,audit_status,op));
+
+ free(valvbr1);
}
-TEST(FilterAttributes,OperationUpdate) {
+TEST_F(VbrIfMoMgrTest, FilterAttributes_OperationUpdate) {
VbrIfMoMgr vbr;
void *val1 = NULL;
void *val2 = NULL;
bool audit_status = true;
unc_keytype_operation_t op = UNC_OP_UPDATE;
- val_vbr_if_t *valvbr1 = reinterpret_cast<val_vbr_if *>(malloc(sizeof(val_vbr_if_t)));
+ val_drv_vbr_if_t *valvbr1(ZALLOC_TYPE(val_drv_vbr_if));
+ val_drv_vbr_if_t *valvbr2(ZALLOC_TYPE(val_drv_vbr_if_t));
valvbr1->valid[UPLL_IDX_DESC_VBRI] = UNC_VF_INVALID;
+ valvbr2->valid[UPLL_IDX_DESC_VBRI] = UNC_VF_INVALID;
val1 = reinterpret_cast<void *>(reinterpret_cast<char *>(valvbr1));
- val2 = reinterpret_cast<void *>(reinterpret_cast<char *>(valvbr1));
+ val2 = reinterpret_cast<void *>(reinterpret_cast<char *>(valvbr2));
EXPECT_EQ(true, vbr.FilterAttributes(val1,val2,audit_status,op));
+
+ free(valvbr1);
+ free(valvbr2);
}
TEST_F(VbrIfMoMgrTest, ValidateCapability_ErrorInput) {
-
VbrIfMoMgr obj;
key_vbr_if *key;
val_vbr_if *val;
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF,
IpctSt::kIpcStKeyVbrIf,
key, cfgval);
- IpcReqRespHeader *req;
- req = reinterpret_cast<IpcReqRespHeader *>(malloc
- (sizeof(IpcReqRespHeader)));
- memset(req,0,sizeof(IpcReqRespHeader));
- EXPECT_EQ(UPLL_RC_ERR_GENERIC, obj.ValidateCapability(req, ikey,NULL ));
+ IPC_REQ_RESP_HEADER_DECL(req);
+ EXPECT_EQ(UPLL_RC_ERR_GENERIC, obj.ValidateCapability(req, ikey, NULL));
+
+ delete ikey;
}
-TEST(ValidateCapability, ValidateCapability_Success) {
+TEST_F(VbrIfMoMgrTest, ValidateCapability_Success) {
VbrIfMoMgr vbr;
- DalDmlIntf * dmi= new DalOdbcMgr();
key_vbr_if *key;
val_vbr_if *val;
GetKeyValStruct(key, val);
+
ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF,
IpctSt::kIpcStKeyVbrIf,
key, cfgval);
-
CtrlrMgr::Ctrlr ctrlrobj("CTR_1", UNC_CT_PFC, "5.0");
CtrlrMgr::GetInstance()->Add(ctrlrobj, UPLL_DT_CANDIDATE);
- IpcReqRespHeader *req;
- req = reinterpret_cast<IpcReqRespHeader *>(malloc
- (sizeof(IpcReqRespHeader)));
- memset(req,0,sizeof(IpcReqRespHeader));
+ IPC_REQ_RESP_HEADER_DECL(req);
req->clnt_sess_id = 5;
req->config_id = 14;
req->operation = UNC_OP_CREATE;
EXPECT_EQ(UPLL_RC_ERR_NOT_SUPPORTED_BY_CTRLR, vbr.ValidateCapability(req, ikey, "CTR_1"));
req->operation = UNC_OP_DELETE;
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.ValidateCapability(req, ikey, "CTR_1"));
+
+ delete ikey;
}
-TEST(ValidateCapability, ValidateCapability_ikey_NULL) {
+TEST_F(VbrIfMoMgrTest, ValidateCapability_ikey_NULL) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.ValidateCapability(req, ikey, ctrlr_name));
}
-TEST(vbr_if_momgr_test, ValidateCapability_SUCCESS) {
-VbrIfMoMgr obj;
-const char * ctrlr_name = reinterpret_cast<const char *>("PFC222");
- key_vbr_if *vbrif_key = reinterpret_cast<key_vbr_if *>
- (malloc(sizeof(key_vrt_if)));
-
-memset(vbrif_key, 0, sizeof(key_vrt_if));
-strcpy((char*)vbrif_key->vbr_key.vtn_key.vtn_name,(char*)"vtn1");
-strcpy((char*)vbrif_key->vbr_key.vbridge_name,(char*)"VRT31");
-strcpy((char*)vbrif_key->if_name,(char*)"VRTIF11");
+TEST_F(VbrIfMoMgrTest, ValidateCapability_SUCCESS) {
+ VbrIfMoMgr obj;
+ const char * ctrlr_name = reinterpret_cast<const char *>("PFC222");
+ key_vbr_if *vbrif_key(ZALLOC_TYPE(key_vbr_if));
+ strcpy((char*)vbrif_key->vbr_key.vtn_key.vtn_name,(char*)"vtn1");
+ strcpy((char*)vbrif_key->vbr_key.vbridge_name,(char*)"VRT31");
+ strcpy((char*)vbrif_key->if_name,(char*)"VRTIF11");
-IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(
- malloc(sizeof(IpcReqRespHeader)));
+ IPC_REQ_RESP_HEADER_DECL(req);
+ req->operation = UNC_OP_UPDATE;
+ req->datatype = UPLL_DT_CANDIDATE;
-req->operation = UNC_OP_UPDATE;
-req->datatype = UPLL_DT_CANDIDATE;
+ ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf, vbrif_key, NULL);
+ EXPECT_EQ(UPLL_RC_ERR_NOT_SUPPORTED_BY_CTRLR, obj.ValidateCapability(req, ikey, ctrlr_name));
-ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf, vbrif_key, NULL);
-EXPECT_EQ(UPLL_RC_ERR_NOT_SUPPORTED_BY_CTRLR, obj.ValidateCapability(req, ikey, ctrlr_name));
-free(req);
+ delete ikey;
}
-
-TEST_F(VbrIfMoMgrTest, Success_01) {
-
+TEST_F(VbrIfMoMgrTest, AdaptValToVtnService_Success_01) {
VbrIfMoMgr obj;
key_vbr_if *key;
val_vbr_if *val;
GetKeyValStruct(key, val);
-
ConfigVal *cfg_val = new ConfigVal(IpctSt::kIpcStPfcdrvValVbrIf, val);
-
-
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF,
IpctSt::kIpcStKeyVbrIf,
key, cfg_val);
EXPECT_EQ(UPLL_RC_SUCCESS, obj.AdaptValToVtnService(ikey));
delete ikey;
}
-TEST_F(VbrIfMoMgrTest, Success_02) {
+TEST_F(VbrIfMoMgrTest, AdaptValToVtnService_Success_02) {
VbrIfMoMgr obj;
key_vbr_if *key;
val_vbr_if *val;
val->valid[UPLL_IDX_ADMIN_STATUS_VBRI] = UNC_VF_INVALID;
ConfigVal *cfg_val = new ConfigVal(IpctSt::kIpcStPfcdrvValVbrIf, val);
-
-
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF,
IpctSt::kIpcStKeyVbrIf,
key, cfg_val);
EXPECT_EQ(UPLL_RC_SUCCESS, obj.AdaptValToVtnService(ikey));
delete ikey;
}
-TEST_F(VbrIfMoMgrTest, Success_03) {
+TEST_F(VbrIfMoMgrTest, AdaptValToVtnService_Success_03) {
VbrIfMoMgr obj;
key_vbr_if *key;
val_vbr_if *val;
GetKeyValStruct(key, val);
-
ConfigVal *cfg_val = new ConfigVal(IpctSt::kIpcStValVbrIfSt, val);
-
-
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF,
IpctSt::kIpcStKeyVbrIf,
key, cfg_val);
EXPECT_EQ(UPLL_RC_SUCCESS, obj.AdaptValToVtnService(ikey));
delete ikey;
}
-TEST_F(VbrIfMoMgrTest, AdaptValToVtnService_Failure) {
+TEST_F(VbrIfMoMgrTest, AdaptValToVtnService_Failure) {
VbrIfMoMgr obj;
key_vbr_if *key;
val_vbr_if *val;
delete ikey;
}
-TEST(ValVbrAttributeSupportCheck, ValVbrAttributeSupportCheck_01) {
- DalOdbcMgr::clearStubData();
+TEST_F(VbrIfMoMgrTest, ValVbrAttributeSupportCheck_01) {
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::INIT,kDalRcSuccess);
- TcLibModule::stub_setTCApiCommonRetcode(TcLibModule::REGISTER,unc::tclib::TC_API_COMMON_SUCCESS);
- TcLibModule::stub_loadtcLibModule();
+
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
-
GetKeyValStruct(key, val);
+
unc_keytype_operation_t operation= UNC_OP_CREATE;
uint8_t attrs1=0;
uint8_t *attrs=&attrs1;
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf, key, config_val);
EXPECT_EQ(UPLL_RC_ERR_NOT_SUPPORTED_BY_CTRLR, vbr.ValVbrIfAttributeSupportCheck(attrs,ikey,operation,UPLL_DT_IMPORT));
delete ikey;
- DalOdbcMgr::clearStubData();
}
-TEST(ValVbrAttributeSupportCheck, ValVbrAttributeSupportCheck_02) {
+TEST_F(VbrIfMoMgrTest, ValVbrAttributeSupportCheck_02) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
-
GetKeyValStruct(key, val);
+
unc_keytype_operation_t operation= UNC_OP_CREATE;
uint8_t attrs1=0;
uint8_t *attrs=&attrs1;
delete ikey;
}
-TEST(ValVbrAttributeSupportCheck, ValVbrAttributeSupportCheck_03) {
-
+TEST_F(VbrIfMoMgrTest, ValVbrAttributeSupportCheck_03) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
-
GetKeyValStruct(key, val);
+
unc_keytype_operation_t operation= UNC_OP_CREATE;
val->valid[UPLL_IDX_DESC_VBRI] = UNC_VF_VALID;
uint8_t attrs1=0;
EXPECT_EQ(UPLL_RC_ERR_NOT_SUPPORTED_BY_CTRLR, vbr.ValVbrIfAttributeSupportCheck(attrs,ikey,operation,UPLL_DT_STATE));
delete ikey;
}
-TEST(ValVbrAttributeSupportCheck, ValVbrAttributeSupportCheck_04) {
+TEST_F(VbrIfMoMgrTest, ValVbrAttributeSupportCheck_04) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
-
GetKeyValStruct(key, val);
+
unc_keytype_operation_t operation= UNC_OP_CREATE;
uint8_t attrs1=0;
uint8_t *attrs=&attrs1;
delete ikey;
}
-TEST(ValVbrAttributeSupportCheck, ValVbrAttributeSupportCheck_05) {
-
+TEST_F(VbrIfMoMgrTest, ValVbrAttributeSupportCheck_05) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
GetKeyValStruct(key, val);
+
unc_keytype_operation_t operation= UNC_OP_CREATE;
uint8_t attrs[10];
+ memset(attrs, 0xff, sizeof(attrs));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf, key, config_val);
val->admin_status=UPLL_ADMIN_ENABLE;
EXPECT_EQ(UPLL_RC_ERR_NOT_SUPPORTED_BY_CTRLR, vbr.ValVbrIfAttributeSupportCheck(attrs,ikey,operation,UPLL_DT_STATE));
delete ikey;
}
-TEST(ValVbrAttributeSupportCheck, ValVbrAttrbuteSupportCheck_06) {
+TEST_F(VbrIfMoMgrTest, ValVbrAttributeSupportCheck_06) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
-
GetKeyValStruct(key, val);
+
unc_keytype_operation_t operation= UNC_OP_CREATE;
uint8_t attrs[10];
+ memset(attrs, 0xff, sizeof(attrs));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf, key, config_val);
val->valid[UPLL_IDX_ADMIN_STATUS_VBRI] = UNC_VF_VALID_NO_VALUE;
EXPECT_EQ(UPLL_RC_ERR_NOT_SUPPORTED_BY_CTRLR, vbr.ValVbrIfAttributeSupportCheck(attrs,ikey,operation,UPLL_DT_STATE));
delete ikey;
}
-TEST(ValVbrAttributeSupportCheck, ValVbrAttributeSupportCheck_07) {
+TEST_F(VbrIfMoMgrTest, ValVbrAttributeSupportCheck_07) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
-
GetKeyValStruct(key, val);
+
unc_keytype_operation_t operation= UNC_OP_CREATE;
uint8_t attrs[10];
+ memset(attrs, 0xff, sizeof(attrs));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf, key, config_val);
val->valid[UPLL_IDX_PM_VBRI] = UNC_VF_VALID_NO_VALUE;
EXPECT_EQ(UPLL_RC_ERR_NOT_SUPPORTED_BY_CTRLR, vbr.ValVbrIfAttributeSupportCheck(attrs,ikey,operation,UPLL_DT_STATE));
delete ikey;
}
-TEST(ValVbrAttributeSupportCheck, ValVbrAttrbuteSupportCheck_08) {
+TEST_F(VbrIfMoMgrTest, ValVbrAttributeSupportCheck_08) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
-
GetKeyValStruct(key, val);
+
unc_keytype_operation_t operation= UNC_OP_CREATE;
uint8_t attrs[10];
+ memset(attrs, 0xff, sizeof(attrs));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf, key, config_val);
attrs[unc::capa::vbr_if::kCapLogicalPortId]=0;
EXPECT_EQ(UPLL_RC_ERR_NOT_SUPPORTED_BY_CTRLR, vbr.ValVbrIfAttributeSupportCheck(attrs,ikey,operation,UPLL_DT_STATE));
delete ikey;
}
-TEST(ValVbrAttributeSupportCheck, ValVbrAttributeSupportCheck_09) {
+TEST_F(VbrIfMoMgrTest, ValVbrAttributeSupportCheck_09) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
-
GetKeyValStruct(key, val);
+
unc_keytype_operation_t operation= UNC_OP_CREATE;
uint8_t attrs[10];
+ memset(attrs, 0xff, sizeof(attrs));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf, key, config_val);
val->valid[UPLL_IDX_PM_VBRI] = UNC_VF_VALID_NO_VALUE;
EXPECT_EQ(UPLL_RC_ERR_NOT_SUPPORTED_BY_CTRLR, vbr.ValVbrIfAttributeSupportCheck(attrs,ikey,operation,UPLL_DT_STATE));
delete ikey;
}
-TEST(ValVbrAttributeSupportCheck, ValVbrAttrbuteSupportCheck_10) {
+TEST_F(VbrIfMoMgrTest, ValVbrAttributeSupportCheck_10) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
-
GetKeyValStruct(key, val);
+
unc_keytype_operation_t operation= UNC_OP_CREATE;
uint8_t attrs[10];
+ memset(attrs, 0xff, sizeof(attrs));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf, key, config_val);
attrs[unc::capa::vbr_if::kCapVlanId]=0;
delete ikey;
}
-TEST(ValVbrAttributeSupportCheck, ValVbrAttributeSupportCheck_11) {
-
+TEST_F(VbrIfMoMgrTest, ValVbrAttributeSupportCheck_11) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
-
GetKeyValStruct(key, val);
+
unc_keytype_operation_t operation= UNC_OP_CREATE;
uint8_t attrs[20];
+ memset(attrs, 0xff, sizeof(attrs));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf, key, config_val);
attrs[unc::capa::vbr_if::kCapTagged]=0;
EXPECT_EQ(UPLL_RC_ERR_NOT_SUPPORTED_BY_CTRLR, vbr.ValVbrIfAttributeSupportCheck(attrs,ikey,operation,UPLL_DT_STATE));
delete ikey;
}
-TEST(ValVbrAttributeSupportCheck, ValVbrAttrbuteSupportCheck_12) {
+TEST_F(VbrIfMoMgrTest, ValVbrAttributeSupportCheck_12) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
-
GetKeyValStruct(key, val);
+
unc_keytype_operation_t operation= UNC_OP_CREATE;
uint8_t attrs[20];
+ memset(attrs, 0xff, sizeof(attrs));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf, key, config_val);
attrs[unc::capa::vbr_if::kCapTagged]=0;
EXPECT_EQ(UPLL_RC_ERR_NOT_SUPPORTED_BY_CTRLR, vbr.ValVbrIfAttributeSupportCheck(attrs,ikey,operation,UPLL_DT_STATE));
delete ikey;
}
-TEST(ValVbrAttributeSupportCheck, ValVbrAttributeSupportCheck_13) {
+TEST_F(VbrIfMoMgrTest, ValVbrAttributeSupportCheck_13) {
VbrIfMoMgr vbr;
key_vbr_if *kst;
val_vbr_if *vst=NULL;
- const char *vtn_name = "VTN_1";
- const char *if_name = "IF_1";
- const char *vbr_name = "VBR_1";
- kst = reinterpret_cast<key_vbr_if *>(malloc
- (sizeof(key_vbr_if)));
- memset(kst,0,sizeof(key_vbr_if));
- strncpy(reinterpret_cast<char *>(kst->vbr_key.vtn_key.vtn_name),
- vtn_name, strlen(vtn_name)+1);
- strncpy(reinterpret_cast<char *>(kst->vbr_key.vbridge_name),
- vbr_name, strlen(vbr_name)+1);
- strncpy(reinterpret_cast<char *>(kst->if_name),
- if_name, strlen(if_name)+1);
+ GetKeyStruct(kst);
unc_keytype_operation_t operation= UNC_OP_CREATE;
uint8_t attrs1=0;
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.ValVbrIfAttributeSupportCheck(attrs,ikey,operation,UPLL_DT_IMPORT));
delete ikey;
}
-TEST(RestoreUnInitOPerStatus, RestoreUnInitOPerStatus_01) {
+TEST_F(VbrIfMoMgrTest, RestoreUnInitOPerStatus_01) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
-
GetKeyValStruct(key, val);
+
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf, key, config_val);
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.RestoreUnInitOPerStatus(dmi));
+
delete ikey;
}
-TEST(GetVexternal, GetVexternal_01) {
-
+TEST_F(VbrIfMoMgrTest, GetVexternal_01) {
VbrIfMoMgr vbr;
key_vbr_if *key;
- val_vbr_if *val;
+ val_drv_vbr_if *val;
upll_keytype_datatype_t dt_type=UPLL_DT_RUNNING;
- GetKeyValStruct(key, val);
+ GetKeyValDrvStruct(key, val);
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf, key, config_val);
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
uint8_t vexternal1=1;
uint8_t *vexternal=&vexternal1;
uint8_t vex_if1=1;
uint8_t *vex_if=&vex_if1;
InterfacePortMapInfo iftype;
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.GetVexternal(ikey,dt_type,dmi,vexternal,vex_if,iftype));
+
delete ikey;
}
-TEST(GetVexternal, GetVexternal_02) {
+TEST_F(VbrIfMoMgrTest, GetVexternal_02) {
VbrIfMoMgr vbr;
key_vbr_if *key;
- val_vbr_if *val;
+ val_drv_vbr_if *val;
upll_keytype_datatype_t dt_type=UPLL_DT_AUDIT;
- GetKeyValStruct(key, val);
+ GetKeyValDrvStruct(key, val);
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf, key, config_val);
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
uint8_t vexternal1=1;
uint8_t *vexternal=&vexternal1;
uint8_t vex_if1=1;
InterfacePortMapInfo iftype;
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::SINGLE,kDalRcSuccess);
EXPECT_EQ(UPLL_RC_SUCCESS, vbr.GetVexternal(ikey,dt_type,dmi,vexternal,vex_if,iftype));
+
delete ikey;
}
-TEST(GetVexternal, GetVexternal_03) {
+TEST_F(VbrIfMoMgrTest, GetVexternal_03) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
upll_keytype_datatype_t dt_type=UPLL_DT_STATE;
GetKeyValStruct(key, val);
+
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf, key, config_val);
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
uint8_t vexternal1=1;
uint8_t *vexternal=&vexternal1;
uint8_t vex_if1=1;
uint8_t *vex_if=&vex_if1;
InterfacePortMapInfo iftype;
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.GetVexternal(ikey,dt_type,dmi,vexternal,vex_if,iftype));
+
delete ikey;
}
-TEST(GetVexternal, GetVexternal_04) {
-
+TEST_F(VbrIfMoMgrTest, GetVexternal_04) {
VbrIfMoMgr vbr;
key_vbr_if *key=NULL;
val_vbr_if *val=NULL;
upll_keytype_datatype_t dt_type=UPLL_DT_RUNNING;
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf, key, config_val);
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
uint8_t vexternal1=1;
uint8_t *vexternal=&vexternal1;
uint8_t vex_if1=1;
uint8_t *vex_if=&vex_if1;
InterfacePortMapInfo iftype;
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.GetVexternal(ikey,dt_type,dmi,vexternal,vex_if,iftype));
+
delete ikey;
}
-TEST(IsReferenced, IsReferenced_01) {
+TEST_F(VbrIfMoMgrTest, IsReferenced_01) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
upll_keytype_datatype_t dt_type=UPLL_DT_STATE;
-
GetKeyValStruct(key, val);
- ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, val);
+
ConfigKeyVal *ikey = NULL;
- DalDmlIntf *dmi=new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.IsReferenced(ikey,dt_type,dmi));
+
delete ikey;
}
-TEST(IsReferenced, IsReferenced_02) {
+TEST_F(VbrIfMoMgrTest, IsReferenced_02) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
upll_keytype_datatype_t dt_type=UPLL_DT_STATE;
-
GetKeyValStruct(key, val);
+
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf, key, config_val);
- DalDmlIntf *dmi=new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.IsReferenced(ikey,dt_type,dmi));
+
delete ikey;
}
-TEST(IsReferenced, IsReferenced_03) {
+TEST_F(VbrIfMoMgrTest, IsReferenced_03) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
map.insert(std::make_pair(1,kDalRcRecordNoMore));
map.insert(std::make_pair(0,kDalRcSuccess));
DalOdbcMgr::stub_setNextRecordResultCodes(map);
-
GetKeyValStruct(key, val);
+
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf, key, config_val);
- DalDmlIntf *dmi=new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
EXPECT_EQ(UPLL_RC_SUCCESS, vbr.IsReferenced(ikey,dt_type,dmi));
+
delete ikey;
- DalOdbcMgr::clearStubData();
}
-TEST(IsReferenced, IsReferenced_04) {
+TEST_F(VbrIfMoMgrTest, IsReferenced_04) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
upll_keytype_datatype_t dt_type=UPLL_DT_STATE;
-
GetKeyValStruct(key, val);
+
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VRT_IF, IpctSt::kIpcStKeyVbrIf, key, config_val);
- DalDmlIntf *dmi=new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.IsReferenced(ikey,dt_type,dmi));
+
delete ikey;
}
-TEST(UpdateMo, UpdateMo_01) {
+TEST_F(VbrIfMoMgrTest, UpdateMo_01) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
-
GetKeyValStruct(key, val);
+
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf, key, config_val);
- DalDmlIntf *dmi=new DalOdbcMgr();
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
+ DalDmlIntf *dmi(getDalDmlIntf());
+ IPC_REQ_RESP_HEADER_DECL(req);
EXPECT_EQ(UPLL_RC_ERR_NOT_ALLOWED_FOR_THIS_DT, vbr.UpdateMo(req,ikey,dmi));
+
delete ikey;
}
-TEST(UpdateMo, UpdateMo_02) {
+TEST_F(VbrIfMoMgrTest, UpdateMo_02) {
VbrIfMoMgr vbr;
- key_vbr_if *key;
- val_vbr_if *val;
-
- GetKeyValStruct(key, val);
- ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = NULL;
- DalDmlIntf *dmi=new DalOdbcMgr();
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
+ DalDmlIntf *dmi(getDalDmlIntf());
+ IPC_REQ_RESP_HEADER_DECL(req);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.UpdateMo(req,ikey,dmi));
- delete ikey;
}
-TEST(UpdateMo, UpdateMo_03) {
+TEST_F(VbrIfMoMgrTest, UpdateMo_03) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
-
GetKeyValStruct(key, val);
+
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf, key, config_val);
- DalDmlIntf *dmi=new DalOdbcMgr();
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
+ DalDmlIntf *dmi(getDalDmlIntf());
+ IPC_REQ_RESP_HEADER_DECL(req);
req->datatype = UPLL_DT_CANDIDATE;
req->operation = UNC_OP_UPDATE;
req->option1 = UNC_OPT1_NORMAL;
CapaModuleStub::stub_loadCapaModule();
CapaModuleStub::stub_setResultcode(CapaModuleStub::GET_UPDATE_CAPABILITY, true);
- key_user_data_t *user_data = reinterpret_cast<key_user_data_t *>(malloc(sizeof(key_user_data_t)));
+ key_user_data_t *user_data(ZALLOC_TYPE(key_user_data_t));
uuu::upll_strncpy(user_data->ctrlr_id,"ctr_id", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(user_data->domain_id,"dom_id", (kMaxLenCtrlrId + 1));
ikey->set_user_data((void*)user_data);
EXPECT_EQ(UPLL_RC_ERR_NOT_SUPPORTED_BY_CTRLR, vbr.UpdateMo(req,ikey,dmi));
+
delete ikey;
- DalOdbcMgr::clearStubData();
}
-TEST(UpdateMo, UpdateMo_04) {
+TEST_F(VbrIfMoMgrTest, UpdateMo_04) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
GetKeyValStruct(key, val);
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf, key, config_val);
- DalDmlIntf *dmi=new DalOdbcMgr();
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
+ DalDmlIntf *dmi(getDalDmlIntf());
+ IPC_REQ_RESP_HEADER_DECL(req);
req->datatype = UPLL_DT_CANDIDATE;
req->operation = UNC_OP_CREATE;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NONE;
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::SINGLE,kDalRcRecordNoMore);
EXPECT_EQ(UPLL_RC_ERR_NO_SUCH_INSTANCE, vbr.UpdateMo(req,ikey,dmi));
+
delete ikey;
- DalOdbcMgr::clearStubData();
}
-TEST(UpdateMo, UpdateMo_05) {
+TEST_F(VbrIfMoMgrTest, UpdateMo_05) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
GetKeyValStruct(key, val);
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf, key, config_val);
- DalDmlIntf *dmi=new DalOdbcMgr();
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
+ DalDmlIntf *dmi(getDalDmlIntf());
+ IPC_REQ_RESP_HEADER_DECL(req);
req->datatype = UPLL_DT_CANDIDATE;
req->operation = UNC_OP_CREATE;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NONE;
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::SINGLE,kDalRcSuccess);
- key_user_data_t *user_data = reinterpret_cast<key_user_data_t *>(malloc(sizeof(key_user_data_t)));
+ key_user_data_t *user_data(ZALLOC_TYPE(key_user_data_t));
uuu::upll_strncpy(user_data->ctrlr_id,"ctr_id", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(user_data->domain_id,"dom_id", (kMaxLenCtrlrId + 1));
ikey->set_user_data((void*)user_data);
CapaModuleStub::stub_setResultcode(CapaModuleStub::GET_CREATE_CAPABILITY, true);
EXPECT_EQ(UPLL_RC_ERR_NOT_SUPPORTED_BY_CTRLR, vbr.UpdateMo(req,ikey,dmi));
+
delete ikey;
- DalOdbcMgr::clearStubData();
}
-TEST(ValidateAttribute, ValidateAttribute_01) {
+TEST_F(VbrIfMoMgrTest, ValidateAttribute_01) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
GetKeyValStruct(key, val);
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf, key, config_val);
- DalDmlIntf *dmi=new DalOdbcMgr();
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
+ DalDmlIntf *dmi(getDalDmlIntf());
+ IPC_REQ_RESP_HEADER_DECL(req);
req->datatype = UPLL_DT_CANDIDATE;
req->operation = UNC_OP_CREATE;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NONE;
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.ValidateAttribute(ikey,dmi,req));
+
delete ikey;
}
-TEST(ValidateAttribute, ValidateAttribute_02) {
+TEST_F(VbrIfMoMgrTest, ValidateAttribute_02) {
VbrIfMoMgr vbr;
key_vbr_if *kst;
val_vbr_if *vst=NULL;
+ GetKeyStruct(kst);
- const char *vtn_name = "VTN_1";
- const char *if_name = "IF_1";
- const char *vbr_name = "VBR_1";
- kst = reinterpret_cast<key_vbr_if *>(malloc
- (sizeof(key_vbr_if)));
- memset(kst,0,sizeof(key_vbr_if));
- strncpy(reinterpret_cast<char *>(kst->vbr_key.vtn_key.vtn_name),
- vtn_name, strlen(vtn_name)+1);
- strncpy(reinterpret_cast<char *>(kst->vbr_key.vbridge_name),
- vbr_name, strlen(vbr_name)+1);
- strncpy(reinterpret_cast<char *>(kst->if_name),
- if_name, strlen(if_name)+1);
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, vst);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf, kst, config_val);
- DalDmlIntf *dmi=new DalOdbcMgr();
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
+ DalDmlIntf *dmi(getDalDmlIntf());
+ IPC_REQ_RESP_HEADER_DECL(req);
req->datatype = UPLL_DT_CANDIDATE;
req->operation = UNC_OP_CREATE;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NONE;
EXPECT_EQ(UPLL_RC_SUCCESS, vbr.ValidateAttribute(ikey,dmi,req));
+
delete ikey;
}
-TEST(ValidateAttribute, ValidateAttribute_03) {
+TEST_F(VbrIfMoMgrTest, ValidateAttribute_03) {
VbrIfMoMgr vbr;
key_vbr_if *kst;
val_vbr_if *vst=NULL;
+ GetKeyStruct(kst);
- const char *vtn_name = "VTN_1";
- const char *if_name = "IF_1";
- const char *vbr_name = "VBR_1";
- kst = reinterpret_cast<key_vbr_if *>(malloc
- (sizeof(key_vbr_if)));
- memset(kst,0,sizeof(key_vbr_if));
- strncpy(reinterpret_cast<char *>(kst->vbr_key.vtn_key.vtn_name),
- vtn_name, strlen(vtn_name)+1);
- strncpy(reinterpret_cast<char *>(kst->vbr_key.vbridge_name),
- vbr_name, strlen(vbr_name)+1);
- strncpy(reinterpret_cast<char *>(kst->if_name),
- if_name, strlen(if_name)+1);
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, vst);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf, kst, config_val);
- DalDmlIntf *dmi=new DalOdbcMgr();
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
+ DalDmlIntf *dmi(getDalDmlIntf());
+ IPC_REQ_RESP_HEADER_DECL(req);
req->datatype = UPLL_DT_CANDIDATE;
req->operation = UNC_OP_UPDATE;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NONE;
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.ValidateAttribute(ikey,dmi,req));
+
+ delete ikey;
}
- TEST(ValidateAttribute, ValidateAttribute_04) {
+TEST_F(VbrIfMoMgrTest, ValidateAttribute_04) {
VbrIfMoMgr vbr;
key_vbr_if *kst;
val_vbr_if *vst=NULL;
- const char *vtn_name = "VTN_1";
- const char *if_name = "IF_1";
- const char *vbr_name = "VBR_1";
- kst = reinterpret_cast<key_vbr_if *>(malloc
- (sizeof(key_vbr_if)));
- memset(kst,0,sizeof(key_vbr_if));
- strncpy(reinterpret_cast<char *>(kst->vbr_key.vtn_key.vtn_name),
- vtn_name, strlen(vtn_name)+1);
- strncpy(reinterpret_cast<char *>(kst->vbr_key.vbridge_name),
- vbr_name, strlen(vbr_name)+1);
- strncpy(reinterpret_cast<char *>(kst->if_name),
- if_name, strlen(if_name)+1);
+ GetKeyStruct(kst);
+
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, vst);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf, kst, config_val);
- DalDmlIntf *dmi=new DalOdbcMgr();
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
+ DalDmlIntf *dmi(getDalDmlIntf());
+ IPC_REQ_RESP_HEADER_DECL(req);
req->datatype = UPLL_DT_CANDIDATE;
req->operation = UNC_OP_CREATE;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NONE;
EXPECT_EQ(UPLL_RC_SUCCESS, vbr.ValidateAttribute(ikey,dmi,req));
+
delete ikey;
- }
+}
-TEST(CopyToConfigkey, CopyToConfigkey_01) {
+TEST_F(VbrIfMoMgrTest, CopyToConfigkey_01) {
VbrIfMoMgr vbr;
ConfigKeyVal *okey = NULL;
ConfigKeyVal *ikey = NULL;
EXPECT_EQ(UPLL_RC_ERR_GENERIC,vbr.CopyToConfigKey(okey,ikey));
-
}
-TEST(CopyToConfigkey, CopyToConfigkey_02) {
+
+TEST_F(VbrIfMoMgrTest, CopyToConfigkey_02) {
VbrIfMoMgr vbr;
ConfigKeyVal *okey = NULL;
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf, NULL, NULL);
EXPECT_EQ(UPLL_RC_ERR_GENERIC,vbr.CopyToConfigKey(okey,ikey));
+
+ delete ikey;
+ delete okey;
}
-TEST(CopyToConfigkey, CopyToConfigkey_03) {
+TEST_F(VbrIfMoMgrTest, CopyToConfigkey_03) {
VbrIfMoMgr vbr;
ConfigKeyVal *okey=NULL;
key_vbr_if *key;
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf, key, config_val);
EXPECT_EQ(UPLL_RC_SUCCESS,vbr.CopyToConfigKey(okey,ikey));
+
+ delete ikey;
+ delete okey;
}
-TEST(CopyToConfigkey, CopyToConfigkey_04) {
+
+TEST_F(VbrIfMoMgrTest, CopyToConfigkey_04) {
VbrIfMoMgr vbr;
ConfigKeyVal *okey=NULL;
key_vbr_if *key;
GetKeyValStruct(key, val);
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf, key, config_val);
- key_rename_vnode_info *key_rename = reinterpret_cast<key_rename_vnode_info *>(ikey->get_key());
- uuu::upll_strncpy(key->vbr_key.vtn_key.vtn_name, key_rename->old_unc_vtn_name,(kMaxLenVtnName + 1));
-
-
EXPECT_EQ(UPLL_RC_SUCCESS,vbr.CopyToConfigKey(okey,ikey));
+
+ delete ikey;
+ delete okey;
}
-TEST(CopyToConfigkey, CopyToConfigkey_05) {
+
+TEST_F(VbrIfMoMgrTest, CopyToConfigkey_05) {
VbrIfMoMgr vbr;
ConfigKeyVal *okey=NULL;
key_vbr_if *key;
val_vbr_if *val;
GetKeyValStruct(key, val);
+ key_rename_vnode_info *key_rename(ZALLOC_TYPE(key_rename_vnode_info));
+ pfc_strlcpy(reinterpret_cast<char *>(key_rename->old_unc_vtn_name),
+ reinterpret_cast<const char *>(key->vbr_key.vtn_key.vtn_name),
+ sizeof(key_rename->old_unc_vtn_name));
+ pfc_strlcpy(reinterpret_cast<char *>(key_rename->old_unc_vnode_name),
+ reinterpret_cast<const char *>(key->vbr_key.vbridge_name),
+ sizeof(key_rename->old_unc_vnode_name));
+ free(key);
+
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, val);
- ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVbrIf, key, config_val);
+ ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVbrIf, key_rename, config_val);
+
EXPECT_EQ(UPLL_RC_SUCCESS,vbr.CopyToConfigKey(okey,ikey));
+
+ delete ikey;
+ delete okey;
}
-TEST(UpdateConfigVal, UpdateConfigVal_01) {
+TEST_F(VbrIfMoMgrTest, UpdateConfigVal_01) {
VbrIfMoMgr vbr;
upll_keytype_datatype_t datatype=UPLL_DT_CANDIDATE;
key_vbr_if *key;
- val_vbr_if *val;
- DalDmlIntf *dmi=new DalOdbcMgr();
- GetKeyValStruct(key, val);
+ val_drv_vbr_if *val;
+ DalDmlIntf *dmi(getDalDmlIntf());
+ GetKeyValDrvStruct(key, val);
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf, key, config_val);
EXPECT_EQ(UPLL_RC_ERR_GENERIC,vbr.UpdateConfigVal(ikey,datatype,dmi));
+
delete ikey;
}
-TEST(UpdateConfigVal, UpdateConfigVal_03) {
+
+TEST_F(VbrIfMoMgrTest, UpdateConfigVal_03) {
VbrIfMoMgr vbr;
upll_keytype_datatype_t datatype=UPLL_DT_CANDIDATE;
key_vbr_if *key;
- val_vbr_if *val;
- DalDmlIntf *dmi=new DalOdbcMgr();
- GetKeyValStruct(key, val);
+ val_drv_vbr_if *val;
+ DalDmlIntf *dmi(getDalDmlIntf());
+ GetKeyValDrvStruct(key, val);
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VRT_IF, IpctSt::kIpcStKeyVbrIf, key, config_val);
EXPECT_EQ(UPLL_RC_ERR_GENERIC,vbr.UpdateConfigVal(ikey,datatype,dmi));
+
+ delete ikey;
}
-TEST(ValidateVbrifKey, ValidateVbrifKey_01) {
+TEST_F(VbrIfMoMgrTest, ValidateVbrifKey_01) {
VbrIfMoMgr vbr;
unc_keytype_operation_t operation=UNC_OP_CREATE;
- key_vbr_if_t *key = reinterpret_cast<key_vbr_if_t*>
- (malloc(sizeof(key_vbr_if_t)));
- memset(key, 0 ,sizeof(key_vbr_if_t));
-
+ key_vbr_if_t *key(ZALLOC_TYPE(key_vbr_if_t));
strncpy((char*) key->if_name,"IF_1",32);
strncpy((char*) key->vbr_key.vbridge_name," ",32);
strncpy((char*) key->vbr_key.vtn_key.vtn_name,"VTN1",32);
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX,vbr.ValidateVbrifKey(key,operation));
+
+ free(key);
}
-TEST(ValidateVbrifKey, ValidateVbrifKey_02) {
+
+TEST_F(VbrIfMoMgrTest, ValidateVbrifKey_02) {
VbrIfMoMgr vbr;
unc_keytype_operation_t operation=UNC_OP_CREATE;
- key_vbr_if_t *key = reinterpret_cast<key_vbr_if_t*>
- (malloc(sizeof(key_vbr_if_t)));
- memset(key, 0 ,sizeof(key_vbr_if_t));
+ key_vbr_if_t *key(ZALLOC_TYPE(key_vbr_if_t));
strncpy((char*) key->if_name," ",32);
strncpy((char*) key->vbr_key.vbridge_name,"vbr ",32);
strncpy((char*) key->vbr_key.vtn_key.vtn_name,"VTN1",32);
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX,vbr.ValidateVbrifKey(key,operation));
+
+ free(key);
}
-TEST(ValidateVbrIfValue, ValidateVbrIfValue_011) {
+
+TEST_F(VbrIfMoMgrTest, ValidateVbrIfValue_01) {
VbrIfMoMgr vbr;
val_vbr_if *val;
- key_vbr_if *key;
- GetKeyValStruct(key, val);
- strncpy((char*) val->description," ",32);
- val = reinterpret_cast<val_vbr_if *>(malloc
- (sizeof(val_vbr_if)));
+ GetValStruct(val);
+
+ val->description[0] = '\0';
val->valid[UPLL_IDX_DESC_VBRI] = UNC_VF_VALID;
unc_keytype_operation_t op = UNC_OP_CREATE;
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, vbr.ValidateVbrIfValue(val, op));
+
+ free(val);
}
-TEST(ValidateVbrIfValue, ValidateVbrIfValue_02) {
+
+TEST_F(VbrIfMoMgrTest, ValidateVbrIfValue_02) {
VbrIfMoMgr vbr;
val_vbr_if *val;
- key_vbr_if *key;
- GetKeyValStruct(key, val);
- val = reinterpret_cast<val_vbr_if *>(malloc
- (sizeof(val_vbr_if)));
+ GetValStruct(val);
+
val->valid[UPLL_IDX_DESC_VBRI] = UNC_VF_VALID_NO_VALUE;
unc_keytype_operation_t op = UNC_OP_CREATE;
EXPECT_EQ(UPLL_RC_SUCCESS, vbr.ValidateVbrIfValue(val, op));
+
+ free(val);
}
-TEST(ValidateVbrIfValue, ValidateVbrIfValue_03) {
+
+TEST_F(VbrIfMoMgrTest, ValidateVbrIfValue_03) {
VbrIfMoMgr vbr;
val_vbr_if *val;
- key_vbr_if *key;
- GetKeyValStruct(key, val);
- val = reinterpret_cast<val_vbr_if *>(malloc
- (sizeof(val_vbr_if)));
+ GetValStruct(val);
+
val->valid[UPLL_IDX_ADMIN_STATUS_VBRI] = UNC_VF_VALID_NO_VALUE;
unc_keytype_operation_t op = UNC_OP_CREATE;
EXPECT_EQ(UPLL_RC_SUCCESS, vbr.ValidateVbrIfValue(val, op));
+
+ free(val);
}
-TEST(ValidateVbrIfValue, ValidateVbrIfValue_04) {
+
+TEST_F(VbrIfMoMgrTest, ValidateVbrIfValue_04) {
VbrIfMoMgr vbr;
val_vbr_if *val;
- key_vbr_if *key;
- GetKeyValStruct(key, val);
- val = reinterpret_cast<val_vbr_if *>(malloc
- (sizeof(val_vbr_if)));
+ GetValStruct(val);
+
val->valid[UPLL_IDX_ADMIN_STATUS_VBRI] = UNC_VF_INVALID;
unc_keytype_operation_t op = UNC_OP_CREATE;
EXPECT_EQ(UPLL_RC_SUCCESS, vbr.ValidateVbrIfValue(val, op));
+
+ free(val);
}
-TEST(ValidateVbrIfValue, ValidateVbrIfValue_05) {
+
+TEST_F(VbrIfMoMgrTest, ValidateVbrIfValue_05) {
VbrIfMoMgr vbr;
val_vbr_if *val;
- key_vbr_if *key;
- GetKeyValStruct(key, val);
- val = reinterpret_cast<val_vbr_if *>(malloc
- (sizeof(val_vbr_if)));
+ GetValStruct(val);
+
val->valid[UPLL_IDX_PM_VBRI] = UNC_VF_VALID;
val->portmap.valid[UPLL_IDX_LOGICAL_PORT_ID_PM] = UNC_VF_VALID;
+ val->portmap.logical_port_id[0] = '\0';
unc_keytype_operation_t op = UNC_OP_CREATE;
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, vbr.ValidateVbrIfValue(val, op));
+
+ free(val);
}
-TEST(ValidateVbrIfValue, ValidateVbrIfValue_06) {
+
+TEST_F(VbrIfMoMgrTest, ValidateVbrIfValue_06) {
VbrIfMoMgr vbr;
val_vbr_if *val;
- key_vbr_if *key;
- GetKeyValStruct(key, val);
- val = reinterpret_cast<val_vbr_if *>(malloc
- (sizeof(val_vbr_if)));
+ GetValStruct(val);
+
val->valid[UPLL_IDX_PM_VBRI] = UNC_VF_VALID;
val->portmap.valid[UPLL_IDX_LOGICAL_PORT_ID_PM] = UNC_VF_VALID_NO_VALUE;
unc_keytype_operation_t op = UNC_OP_CREATE;
EXPECT_EQ(UPLL_RC_SUCCESS, vbr.ValidateVbrIfValue(val, op));
+
+ free(val);
}
-TEST(ValidateVbrIfValue, ValidateVbrIfValue_07) {
+
+TEST_F(VbrIfMoMgrTest, ValidateVbrIfValue_07) {
VbrIfMoMgr vbr;
val_vbr_if *val;
- key_vbr_if *key;
- GetKeyValStruct(key, val);
- val = reinterpret_cast<val_vbr_if *>(malloc
- (sizeof(val_vbr_if)));
+ GetValStruct(val);
+
val->valid[UPLL_IDX_PM_VBRI] = UNC_VF_VALID;
val->portmap.valid[UPLL_IDX_VLAN_ID_PM] = UNC_VF_VALID;
+ val->portmap.vlan_id = 0;
unc_keytype_operation_t op = UNC_OP_CREATE;
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, vbr.ValidateVbrIfValue(val, op));
+
+ free(val);
}
-TEST(ValidateVbrIfValue, ValidateVbrIfValue_08) {
+
+TEST_F(VbrIfMoMgrTest, ValidateVbrIfValue_08) {
VbrIfMoMgr vbr;
val_vbr_if *val;
- key_vbr_if *key;
- GetKeyValStruct(key, val);
- val = reinterpret_cast<val_vbr_if *>(malloc
- (sizeof(val_vbr_if)));
+ GetValStruct(val);
+
val->valid[UPLL_IDX_PM_VBRI] = UNC_VF_VALID;
val->portmap.valid[UPLL_IDX_VLAN_ID_PM] = UNC_VF_VALID_NO_VALUE;
unc_keytype_operation_t op = UNC_OP_CREATE;
EXPECT_EQ(UPLL_RC_SUCCESS, vbr.ValidateVbrIfValue(val, op));
+
+ free(val);
}
-TEST(ValidateVbrIfValue, ValidateVbrIfValue_09) {
+
+TEST_F(VbrIfMoMgrTest, ValidateVbrIfValue_09) {
VbrIfMoMgr vbr;
val_vbr_if *val;
- key_vbr_if *key;
- GetKeyValStruct(key, val);
- val = reinterpret_cast<val_vbr_if *>(malloc
- (sizeof(val_vbr_if)));
+ GetValStruct(val);
+
val->valid[UPLL_IDX_PM_VBRI] = UNC_VF_VALID_NO_VALUE;
unc_keytype_operation_t op = UNC_OP_CREATE;
EXPECT_EQ(UPLL_RC_SUCCESS, vbr.ValidateVbrIfValue(val, op));
+
+ free(val);
}
-TEST(ValidateVbrIfValue, ValidateVbrIfValue_10) {
+
+TEST_F(VbrIfMoMgrTest, ValidateVbrIfValue_10) {
VbrIfMoMgr vbr;
val_vbr_if *val;
- key_vbr_if *key;
- GetKeyValStruct(key, val);
- val = reinterpret_cast<val_vbr_if *>(malloc
- (sizeof(val_vbr_if)));
+ GetValStruct(val);
+
val->valid[UPLL_IDX_PM_VBRI] = UNC_VF_VALID;
val->portmap.valid[UPLL_IDX_VLAN_ID_PM] = UNC_VF_VALID_NO_VALUE;
unc_keytype_operation_t op = UNC_OP_CREATE;
EXPECT_EQ(UPLL_RC_SUCCESS, vbr.ValidateVbrIfValue(val, op));
+
+ free(val);
}
-TEST(ValidateVbrIfValue, ValidateVbrIfValue_11) {
+
+TEST_F(VbrIfMoMgrTest, ValidateVbrIfValue_11) {
VbrIfMoMgr vbr;
val_vbr_if *val;
- key_vbr_if *key;
- GetKeyValStruct(key, val);
- val = reinterpret_cast<val_vbr_if *>(malloc
- (sizeof(val_vbr_if)));
+ GetValStruct(val);
+
val->valid[UPLL_IDX_ADMIN_STATUS_VBRI] = UNC_VF_VALID;
+ val->admin_status = 0;
unc_keytype_operation_t op = UNC_OP_CREATE;
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, vbr.ValidateVbrIfValue(val, op));
+
+ free(val);
}
-TEST(ValidateVbrIfValue, ValidateVbrIfValue_12) {
+
+TEST_F(VbrIfMoMgrTest, ValidateVbrIfValue_12) {
VbrIfMoMgr vbr;
val_vbr_if *val;
- key_vbr_if *key;
- GetKeyValStruct(key, val);
- val = reinterpret_cast<val_vbr_if *>(malloc
- (sizeof(val_vbr_if)));
+ GetValStruct(val);
+
val->valid[UPLL_IDX_PM_VBRI] = UNC_VF_VALID;
val->portmap.valid[UPLL_IDX_LOGICAL_PORT_ID_PM] = UNC_VF_VALID;
unc_keytype_operation_t op = UNC_OP_CREATE;
val->portmap.logical_port_id[0] = 'S';
val->portmap.logical_port_id[1] = 'W';
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, vbr.ValidateVbrIfValue(val, op));
+
+ free(val);
}
-TEST(ValidateVbrIfValue, ValidateVbrIfValue_13) {
+
+TEST_F(VbrIfMoMgrTest, ValidateVbrIfValue_13) {
VbrIfMoMgr vbr;
val_vbr_if *val;
- key_vbr_if *key;
- GetKeyValStruct(key, val);
- val = reinterpret_cast<val_vbr_if *>(malloc
- (sizeof(val_vbr_if)));
- val->valid[UPLL_IDX_PM_VBRI] = UNC_VF_VALID;
- val->portmap.valid[UPLL_IDX_TAGGED_PM] = UNC_VF_VALID_NO_VALUE;
- val->portmap.valid[UPLL_IDX_VLAN_ID_PM] = UNC_VF_VALID;
+ GetValStruct(val);
+
+ val->portmap.valid[UPLL_IDX_TAGGED_PM] = UNC_VF_VALID;
+ val->portmap.tagged = 10;
unc_keytype_operation_t op = UNC_OP_CREATE;
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, vbr.ValidateVbrIfValue(val, op));
+
+ free(val);
}
-TEST(ValidateVbrIfValue, ValidateVbrIfValue_14) {
+
+TEST_F(VbrIfMoMgrTest, ValidateVbrIfValue_14) {
VbrIfMoMgr vbr;
val_vbr_if *val;
- key_vbr_if *key;
- GetKeyValStruct(key, val);
- val = reinterpret_cast<val_vbr_if *>(malloc
- (sizeof(val_vbr_if)));
+ GetValStruct(val);
+
val->valid[UPLL_IDX_PM_VBRI] = UNC_VF_VALID;
val->portmap.valid[UPLL_IDX_TAGGED_PM] = UNC_VF_VALID;
unc_keytype_operation_t op = UNC_OP_CREATE;
EXPECT_EQ(UPLL_RC_SUCCESS, vbr.ValidateVbrIfValue(val, op));
+
+ free(val);
}
-TEST(ValidateVtnNeighborValue, ValidateVtnNeighborValue_01) {
+
+TEST_F(VbrIfMoMgrTest, ValidateVtnNeighborValue_01) {
VbrIfMoMgr vbr;
const char *connected_vnode_name = "VTN_1";
const char *connected_if_name = "IF_1";
const char *connected_vlink_name = "VBR_1";
- val_vtn_neighbor *vtn_neighbor= reinterpret_cast<val_vtn_neighbor *>(malloc
- (sizeof(val_vtn_neighbor)));
- memset(vtn_neighbor,0,sizeof(val_vtn_neighbor));
+ val_vtn_neighbor *vtn_neighbor(ZALLOC_TYPE(val_vtn_neighbor));
strncpy(reinterpret_cast<char *>(vtn_neighbor->connected_vnode_name),
- connected_vnode_name, strlen(connected_vnode_name)+1);
+ connected_vnode_name, strlen(connected_vnode_name)+1);
strncpy(reinterpret_cast<char *>(vtn_neighbor->connected_if_name),
- connected_if_name, strlen(connected_if_name)+1);
+ connected_if_name, strlen(connected_if_name)+1);
strncpy(reinterpret_cast<char *>(vtn_neighbor->connected_vlink_name),
- connected_vlink_name, strlen(connected_vlink_name)+1);
+ connected_vlink_name, strlen(connected_vlink_name)+1);
for(unsigned int loop = 0; loop < sizeof(vtn_neighbor->valid)/
sizeof(vtn_neighbor->valid[0]); ++loop) {
vtn_neighbor->valid[loop] = UNC_VF_VALID;
}
- unc_keytype_operation_t operation = UNC_OP_CREATE;
vtn_neighbor->valid[UPLL_IDX_CONN_VNODE_NAME_VN] = UNC_VF_VALID;
unc_keytype_operation_t op = UNC_OP_CREATE;
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, vbr.ValidateVtnNeighborValue(vtn_neighbor, op));
+
+ free(vtn_neighbor);
}
-TEST(ValidateVtnNeighborValue, ValidateVtnNeighborValue_01_) {
+
+TEST_F(VbrIfMoMgrTest, ValidateVtnNeighborValue_02) {
VbrIfMoMgr vbr;
const char *connected_vnode_name = " ";
const char *connected_if_name = "IF_1";
const char *connected_vlink_name = "VBR_1";
- val_vtn_neighbor *vtn_neighbor= reinterpret_cast<val_vtn_neighbor *>(malloc
- (sizeof(val_vtn_neighbor)));
- memset(vtn_neighbor,0,sizeof(val_vtn_neighbor));
+ val_vtn_neighbor *vtn_neighbor(ZALLOC_TYPE(val_vtn_neighbor));
strncpy(reinterpret_cast<char *>(vtn_neighbor->connected_vnode_name),
- connected_vnode_name, strlen(connected_vnode_name)+1);
+ connected_vnode_name, strlen(connected_vnode_name)+1);
strncpy(reinterpret_cast<char *>(vtn_neighbor->connected_if_name),
- connected_if_name, strlen(connected_if_name)+1);
+ connected_if_name, strlen(connected_if_name)+1);
strncpy(reinterpret_cast<char *>(vtn_neighbor->connected_vlink_name),
- connected_vlink_name, strlen(connected_vlink_name)+1);
+ connected_vlink_name, strlen(connected_vlink_name)+1);
for(unsigned int loop = 0; loop < sizeof(vtn_neighbor->valid)/
- sizeof(vtn_neighbor->valid[0]); ++loop) {
+ sizeof(vtn_neighbor->valid[0]); ++loop) {
vtn_neighbor->valid[loop] = UNC_VF_VALID;
}
- unc_keytype_operation_t operation = UNC_OP_CREATE;
vtn_neighbor->valid[UPLL_IDX_CONN_VNODE_NAME_VN] = UNC_VF_VALID;
unc_keytype_operation_t op = UNC_OP_CREATE;
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, vbr.ValidateVtnNeighborValue(vtn_neighbor, op));
+
+ free(vtn_neighbor);
}
-TEST(ValidateVtnNeighborValue, ValidateVtnNeighborValue_02) {
+TEST_F(VbrIfMoMgrTest, ValidateVtnNeighborValue_03) {
VbrIfMoMgr vbr;
const char *connected_vnode_name = "VTN_1";
const char *connected_if_name = "IF_1";
const char *connected_vlink_name = "VBR_1";
- val_vtn_neighbor *vtn_neighbor= reinterpret_cast<val_vtn_neighbor *>(malloc
- (sizeof(val_vtn_neighbor)));
- memset(vtn_neighbor,0,sizeof(val_vtn_neighbor));
+ val_vtn_neighbor *vtn_neighbor(ZALLOC_TYPE(val_vtn_neighbor));
strncpy(reinterpret_cast<char *>(vtn_neighbor->connected_vnode_name),
- connected_vnode_name, strlen(connected_vnode_name)+1);
+ connected_vnode_name, strlen(connected_vnode_name)+1);
strncpy(reinterpret_cast<char *>(vtn_neighbor->connected_if_name),
- connected_if_name, strlen(connected_if_name)+1);
+ connected_if_name, strlen(connected_if_name)+1);
strncpy(reinterpret_cast<char *>(vtn_neighbor->connected_vlink_name),
- connected_vlink_name, strlen(connected_vlink_name)+1);
+ connected_vlink_name, strlen(connected_vlink_name)+1);
for(unsigned int loop = 0; loop < sizeof(vtn_neighbor->valid)/
- sizeof(vtn_neighbor->valid[0]); ++loop) {
+ sizeof(vtn_neighbor->valid[0]); ++loop) {
vtn_neighbor->valid[loop] = UNC_VF_VALID;
}
- unc_keytype_operation_t operation = UNC_OP_CREATE;
vtn_neighbor->valid[UPLL_IDX_CONN_VNODE_NAME_VN] = UNC_VF_VALID_NO_VALUE;
unc_keytype_operation_t op = UNC_OP_CREATE;
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, vbr.ValidateVtnNeighborValue(vtn_neighbor, op));
+
+ free(vtn_neighbor);
}
-TEST(ValidateVtnNeighborValue, ValidateVtnNeighborValue_03) {
+
+TEST_F(VbrIfMoMgrTest, ValidateVtnNeighborValue_04) {
VbrIfMoMgr vbr;
const char *connected_vnode_name = "VTN_1";
const char *connected_if_name = "IF_1";
const char *connected_vlink_name = "VBR_1";
- val_vtn_neighbor *vtn_neighbor= reinterpret_cast<val_vtn_neighbor *>(malloc
- (sizeof(val_vtn_neighbor)));
- memset(vtn_neighbor,0,sizeof(val_vtn_neighbor));
+ val_vtn_neighbor *vtn_neighbor(ZALLOC_TYPE(val_vtn_neighbor));
strncpy(reinterpret_cast<char *>(vtn_neighbor->connected_vnode_name),
- connected_vnode_name, strlen(connected_vnode_name)+1);
+ connected_vnode_name, strlen(connected_vnode_name)+1);
strncpy(reinterpret_cast<char *>(vtn_neighbor->connected_if_name),
- connected_if_name, strlen(connected_if_name)+1);
+ connected_if_name, strlen(connected_if_name)+1);
strncpy(reinterpret_cast<char *>(vtn_neighbor->connected_vlink_name),
- connected_vlink_name, strlen(connected_vlink_name)+1);
+ connected_vlink_name, strlen(connected_vlink_name)+1);
for(unsigned int loop = 0; loop < sizeof(vtn_neighbor->valid)/
- sizeof(vtn_neighbor->valid[0]); ++loop) {
+ sizeof(vtn_neighbor->valid[0]); ++loop) {
vtn_neighbor->valid[loop] = UNC_VF_VALID;
}
- unc_keytype_operation_t operation = UNC_OP_CREATE;
vtn_neighbor->valid[UPLL_IDX_CONN_VNODE_IF_NAME_VN] = UNC_VF_VALID_NO_VALUE;
unc_keytype_operation_t op = UNC_OP_CREATE;
EXPECT_EQ(UPLL_RC_SUCCESS, vbr.ValidateVtnNeighborValue(vtn_neighbor, op));
+
+ free(vtn_neighbor);
}
-TEST(ValidateVtnNeighborValue, ValidateVtnNeighborValue_04) {
+
+TEST_F(VbrIfMoMgrTest, ValidateVtnNeighborValue_05) {
VbrIfMoMgr vbr;
const char *connected_vnode_name = "VTN_1";
const char *connected_if_name = "IF_1";
const char *connected_vlink_name = "VBR_1";
- val_vtn_neighbor *vtn_neighbor= reinterpret_cast<val_vtn_neighbor *>(malloc
- (sizeof(val_vtn_neighbor)));
- memset(vtn_neighbor,0,sizeof(val_vtn_neighbor));
+ val_vtn_neighbor *vtn_neighbor(ZALLOC_TYPE(val_vtn_neighbor));
strncpy(reinterpret_cast<char *>(vtn_neighbor->connected_vnode_name),
- connected_vnode_name, strlen(connected_vnode_name)+1);
+ connected_vnode_name, strlen(connected_vnode_name)+1);
strncpy(reinterpret_cast<char *>(vtn_neighbor->connected_if_name),
- connected_if_name, strlen(connected_if_name)+1);
+ connected_if_name, strlen(connected_if_name)+1);
strncpy(reinterpret_cast<char *>(vtn_neighbor->connected_vlink_name),
- connected_vlink_name, strlen(connected_vlink_name)+1);
+ connected_vlink_name, strlen(connected_vlink_name)+1);
for(unsigned int loop = 0; loop < sizeof(vtn_neighbor->valid)/
- sizeof(vtn_neighbor->valid[0]); ++loop) {
+ sizeof(vtn_neighbor->valid[0]); ++loop) {
vtn_neighbor->valid[loop] = UNC_VF_VALID;
}
- unc_keytype_operation_t operation = UNC_OP_CREATE;
vtn_neighbor->valid[UPLL_IDX_CONN_VLINK_NAME_VN] = UNC_VF_VALID_NO_VALUE;
unc_keytype_operation_t op = UNC_OP_CREATE;
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, vbr.ValidateVtnNeighborValue(vtn_neighbor, op));
+
+ free(vtn_neighbor);
}
-TEST(ValidateVtnNeighborValue, ValidateVtnNeighborValue_05) {
+
+TEST_F(VbrIfMoMgrTest, ValidateVtnNeighborValue_06) {
VbrIfMoMgr vbr;
const char *connected_vnode_name = "VTN_1";
const char *connected_if_name = "IF_1";
const char *connected_vlink_name = " ";
- val_vtn_neighbor *vtn_neighbor= reinterpret_cast<val_vtn_neighbor *>(malloc
- (sizeof(val_vtn_neighbor)));
-
- memset(vtn_neighbor,0,sizeof(val_vtn_neighbor));
+ val_vtn_neighbor *vtn_neighbor(ZALLOC_TYPE(val_vtn_neighbor));
strncpy(reinterpret_cast<char *>(vtn_neighbor->connected_vnode_name),
- connected_vnode_name, strlen(connected_vnode_name)+1);
+ connected_vnode_name, strlen(connected_vnode_name)+1);
strncpy(reinterpret_cast<char *>(vtn_neighbor->connected_if_name),
- connected_if_name, strlen(connected_if_name)+1);
+ connected_if_name, strlen(connected_if_name)+1);
strncpy(reinterpret_cast<char *>(vtn_neighbor->connected_vlink_name),
- connected_vlink_name, strlen(connected_vlink_name)+1);
+ connected_vlink_name, strlen(connected_vlink_name)+1);
for(unsigned int loop = 0; loop < sizeof(vtn_neighbor->valid)/
- sizeof(vtn_neighbor->valid[0]); ++loop) {
+ sizeof(vtn_neighbor->valid[0]); ++loop) {
vtn_neighbor->valid[loop] = UNC_VF_VALID;
}
- unc_keytype_operation_t operation = UNC_OP_CREATE;
vtn_neighbor->valid[UPLL_IDX_CONN_VLINK_NAME_VN] = UNC_VF_VALID;
unc_keytype_operation_t op = UNC_OP_CREATE;
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, vbr.ValidateVtnNeighborValue(vtn_neighbor, op));
+
+ free(vtn_neighbor);
}
-TEST(IsLogicalPortAndVlanIdInUse, IsLogicalPortAndVlanIdInUse_01) {
+TEST_F(VbrIfMoMgrTest, IsLogicalPortAndVlanIdInUse_01) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
GetKeyValStruct(key, val);
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf, key, config_val);
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
+ IPC_REQ_RESP_HEADER_DECL(req);
req->datatype = UPLL_DT_IMPORT;
req->operation = UNC_OP_UPDATE;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NONE;
EXPECT_EQ(UPLL_RC_ERR_GENERIC,vbr.IsLogicalPortAndVlanIdInUse(ikey,dmi,req));
+
delete ikey;
}
-TEST(IsLogicalPortAndVlanIdInUse, IsLogicalPortAndVlanIdInUse_02) {
+
+TEST_F(VbrIfMoMgrTest, IsLogicalPortAndVlanIdInUse_02) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
+ IPC_REQ_RESP_HEADER_DECL(req);
GetKeyValStruct(key, val);
- DalDmlIntf *dmi= new DalOdbcMgr();
- ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, val);
+ DalDmlIntf *dmi(getDalDmlIntf());
ConfigKeyVal *ikey = NULL;
EXPECT_EQ(UPLL_RC_ERR_GENERIC,vbr.IsLogicalPortAndVlanIdInUse(ikey,dmi,req));
+
delete ikey;
}
-TEST(IsLogicalPortAndVlanIdInUse, IsLogicalPortAndVlanIdInUse_03) {
+
+TEST_F(VbrIfMoMgrTest, IsLogicalPortAndVlanIdInUse_03) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
+ IPC_REQ_RESP_HEADER_DECL(req);
GetKeyValStruct(key, val);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::MULTIPLE,kDalRcSuccess);
map.insert(std::make_pair(0,kDalRcSuccess));
DalOdbcMgr::stub_setNextRecordResultCodes(map);
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf, key, config_val);
EXPECT_EQ(UPLL_RC_SUCCESS,vbr.IsLogicalPortAndVlanIdInUse(ikey,dmi,req));
+
delete ikey;
- DalOdbcMgr::clearStubData();
}
-TEST(IsLogicalPortAndVlanIdInUse, IsLogicalPortAndVlanIdInUse_04) {
+
+TEST_F(VbrIfMoMgrTest, IsLogicalPortAndVlanIdInUse_04) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
+ IPC_REQ_RESP_HEADER_DECL(req);
req->datatype = UPLL_DT_IMPORT;
req->operation = UNC_OP_UPDATE;
req->option1 = UNC_OPT1_NORMAL;
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::EXECUTE_QUERY,kDalRcSuccess);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::MULTIPLE,kDalRcRecordNoMore);
-
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf, key, config_val);
EXPECT_EQ(UPLL_RC_SUCCESS,vbr.IsLogicalPortAndVlanIdInUse(ikey,dmi,req));
- DalOdbcMgr::clearStubData();
+
+ delete ikey;
}
-TEST(IsLogicalPortAndVlanIdInUse, IsLogicalPortAndVlanIdInUse_05) {
+TEST_F(VbrIfMoMgrTest, IsLogicalPortAndVlanIdInUse_05) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
+ IPC_REQ_RESP_HEADER_DECL(req);
req->datatype = UPLL_DT_IMPORT;
req->operation = UNC_OP_UPDATE;
req->option1 = UNC_OPT1_NORMAL;
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::MULTIPLE,kDalRcRecordNoMore);
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf, key, config_val);
val->portmap.valid[UPLL_IDX_VLAN_ID_PM]=UNC_VF_VALID;
EXPECT_EQ(UPLL_RC_SUCCESS,vbr.IsLogicalPortAndVlanIdInUse(ikey,dmi,req));
- DalOdbcMgr::clearStubData();
+
+ delete ikey;
}
-TEST(GetBoundaryInterfaces, 01) {
+TEST_F(VbrIfMoMgrTest, GetBoundaryInterfaces_01) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
-
GetKeyValStruct(key, val);
+
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf, key, config_val);
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
key_vnode_if_t boundary_if;
+ memset(&boundary_if, 0, sizeof(boundary_if));
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::MULTIPLE,kDalRcRecordNoMore);
EXPECT_EQ(UPLL_RC_ERR_NO_SUCH_INSTANCE, vbr.GetBoundaryInterfaces(boundary_if,dmi,ikey));
+
delete ikey;
- DalOdbcMgr::clearStubData();
}
-TEST(SetBoundaryIfOperStatusforPathFault, 01) {
+TEST_F(VbrIfMoMgrTest, SetBoundaryIfOperStatusforPathFault_01) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
-
GetKeyValStruct(key, val);
+
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf, key, config_val);
- DalDmlIntf *dmi= new DalOdbcMgr();
- state_notification notification;
+ DalDmlIntf *dmi(getDalDmlIntf());
const set<key_vnode_if_t, key_vnode_if_compare> boundary_if_set;
- EXPECT_EQ(UPLL_RC_SUCCESS, vbr.SetBoundaryIfOperStatusforPathFault(boundary_if_set,notification,dmi));
+ EXPECT_EQ(UPLL_RC_SUCCESS, vbr.SetBoundaryIfOperStatusforPathFault(boundary_if_set,kPathFault, dmi));
+
delete ikey;
- DalOdbcMgr::clearStubData();
}
-TEST(SetBoundaryIfOperStatusforPathFault, 02) {
+TEST_F(VbrIfMoMgrTest, SetBoundaryIfOperStatusforPathFault_02) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
-
GetKeyValStruct(key, val);
+
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf, key, config_val);
- DalDmlIntf *dmi= new DalOdbcMgr();
- state_notification notification;
+ DalDmlIntf *dmi(getDalDmlIntf());
const set<key_vnode_if_t, key_vnode_if_compare> boundary_if_set;
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::MULTIPLE,kDalRcSuccess);
map.insert(std::make_pair(1,kDalRcRecordNoMore));
map.insert(std::make_pair(0,kDalRcSuccess));
DalOdbcMgr::stub_setNextRecordResultCodes(map);
- EXPECT_EQ(UPLL_RC_SUCCESS, vbr.SetBoundaryIfOperStatusforPathFault(boundary_if_set,notification,dmi));
+ EXPECT_EQ(UPLL_RC_SUCCESS, vbr.SetBoundaryIfOperStatusforPathFault(boundary_if_set,kPathFault,dmi));
+
delete ikey;
- DalOdbcMgr::clearStubData();
}
-TEST(CreateAuditMoImpl, 01) {
+TEST_F(VbrIfMoMgrTest, CreateAuditMoImpl_01) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
const char *ctrlr_name="ctr1";
GetKeyValStruct(key, val);
+
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf, key, config_val);
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.CreateAuditMoImpl(ikey,dmi,ctrlr_name));
+
+ delete ikey;
}
-TEST(vbrif_momgr_test, CreateAuditMoImplSuccess ) {
+TEST_F(VbrIfMoMgrTest, CreateAuditMoImpl_02) {
VbrIfMoMgr obj;
- DalDmlIntf *dmi = new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
const char *ctrlr_id ="pfc001";
- IpcReqRespHeader *req;
- req = reinterpret_cast<IpcReqRespHeader *>(malloc
- (sizeof(IpcReqRespHeader)));
- memset(req,0,sizeof(IpcReqRespHeader));
+ IPC_REQ_RESP_HEADER_DECL(req);
req->clnt_sess_id = 5;
req->config_id = 14;
req->operation = UNC_OP_CREATE;
key, cfgval);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::SINGLE,kDalRcSuccess);
EXPECT_EQ(UPLL_RC_ERR_GENERIC,obj.CreateAuditMoImpl(ikey, dmi, ctrlr_id));
-}
-TEST(CreateAuditMoImpl, 02) {
+ delete ikey;
+}
+TEST_F(VbrIfMoMgrTest, CreateAuditMoImpl_03) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
const char *ctrlr_name="ctr1";
GetKeyValStruct(key, val);
+
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,
IpctSt::kIpcStKeyVbrIf,
key, config_val);
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.CreateAuditMoImpl(ikey,dmi,ctrlr_name));
+
+ delete ikey;
}
-TEST(vbrif_momgr_test, 03 ) {
+TEST_F(VbrIfMoMgrTest, CreateAuditMoImpl_04) {
VbrIfMoMgr obj;
- DalDmlIntf *dmi = new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
const char *ctrlr_id ="pfc001";
- IpcReqRespHeader *req;
- req = reinterpret_cast<IpcReqRespHeader *>(malloc
- (sizeof(IpcReqRespHeader)));
- memset(req,0,sizeof(IpcReqRespHeader));
+ IPC_REQ_RESP_HEADER_DECL(req);
req->clnt_sess_id = 5;
req->config_id = 14;
req->operation = UNC_OP_CREATE;
key, cfgval);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::SINGLE,kDalRcRecordNoMore);
EXPECT_EQ(UPLL_RC_ERR_GENERIC,obj.CreateAuditMoImpl(ikey, dmi, ctrlr_id));
-}
-TEST(GetMappedVbridges, 01) {
+ delete ikey;
+}
+TEST_F(VbrIfMoMgrTest, GetMappedVbridges_01) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
std::string logportid;
set<key_vnode_type_t, key_vnode_type_compare> sw_vbridge_set;
GetKeyValStruct(key, val);
- ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, val);
- ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf, key, config_val);
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.GetMappedVbridges(ctrlr_name,domain_id,logportid,dmi,&sw_vbridge_set));
- DalOdbcMgr::clearStubData();
}
-TEST(GetMappedVbridges, 02) {
+TEST_F(VbrIfMoMgrTest, GetMappedVbridges_02) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
GetKeyValStruct(key, val);
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf, key, config_val);
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::MULTIPLE,kDalRcRecordNoMore);
EXPECT_EQ(UPLL_RC_SUCCESS, vbr.GetMappedVbridges(ctrlr_name,domain_id,logportid,dmi,&sw_vbridge_set));
+
delete ikey;
- DalOdbcMgr::clearStubData();
}
-TEST(GetMappedVbridges, 03) {
+TEST_F(VbrIfMoMgrTest, GetMappedVbridges_03) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
GetKeyValStruct(key, val);
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf, key, config_val);
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::MULTIPLE,kDalRcSuccess);
std::map<uint8_t,DalResultCode> map;
map.insert(std::make_pair(0,kDalRcSuccess));
DalOdbcMgr::stub_setNextRecordResultCodes(map);
EXPECT_EQ(UPLL_RC_SUCCESS, vbr.GetMappedVbridges(ctrlr_name,domain_id,logportid,dmi,&sw_vbridge_set));
+
delete ikey;
- DalOdbcMgr::clearStubData();
}
-TEST(GetMappedVbridges, 04) {
+TEST_F(VbrIfMoMgrTest, GetMappedVbridges_04) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
std::string logportid;
set<key_vnode_type_t, key_vnode_type_compare> sw_vbridge_set;
GetKeyValStruct(key, val);
- ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, val);
- ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf, key, NULL);
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.GetMappedVbridges(ctrlr_name,domain_id,logportid,dmi,&sw_vbridge_set));
- delete ikey;
- DalOdbcMgr::clearStubData();
}
-TEST(PathFaultHandler, 03) {
+TEST_F(VbrIfMoMgrTest, PathFaultHandler_03) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
GetKeyValStruct(key, val);
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf, key, config_val);
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::MULTIPLE,kDalRcSuccess);
map.insert(std::make_pair(0,kDalRcSuccess));
DalOdbcMgr::stub_setNextRecordResultCodes(map);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.PathFaultHandler(ctrlr_name,domain_id,ingress_ports,egress_ports,alarm_asserted,dmi));
+
delete ikey;
- DalOdbcMgr::clearStubData();
}
-TEST(PathFaultHandler, 04) {
+TEST_F(VbrIfMoMgrTest, PathFaultHandler_04) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
const char *domain_id="dom1";
std::vector<std::string> ingress_ports;
std::vector<std::string> egress_ports;
- bool alarm_asserted;
GetKeyValStruct(key, val);
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf, key, config_val);
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::MULTIPLE,kDalRcSuccess);
std::map<uint8_t,DalResultCode> map;
map.insert(std::make_pair(0,kDalRcSuccess));
DalOdbcMgr::stub_setNextRecordResultCodes(map);
- EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.PathFaultHandler(ctrlr_name,domain_id,ingress_ports,egress_ports,alarm_asserted,dmi));
+ EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.PathFaultHandler(ctrlr_name,domain_id,ingress_ports,egress_ports,false,dmi));
+
delete ikey;
- DalOdbcMgr::clearStubData();
}
-TEST(TxUpdateController,NULL ) {
+TEST_F(VbrIfMoMgrTest, TxUpdateController_NULL) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
uint32_t session_id=1;
uint32_t config_id=2;
uuc::UpdateCtrlrPhase phase=uuc::kUpllUcpCreate;
- uint8_t *ctr_id1 = (uint8_t *)malloc(32);
- memset(ctr_id1, '\0', 32);
- memcpy(ctr_id1, "Controller1", 11);
- uint8_t *dom_id1 = (uint8_t *)malloc(32);
- memset(dom_id1, '\0', 32);
- memcpy(dom_id1, "Domain1", 7);
- controller_domain *ctrlr_dom = reinterpret_cast<controller_domain_t *>(malloc(sizeof(controller_domain_t)));
- ctrlr_dom->ctrlr = ctr_id1;
- ctrlr_dom->domain = dom_id1;
set<std::string> affected_ctrlr_set;
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
GetKeyValStruct(key, val);
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf, key, config_val);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::SINGLE,kDalRcSuccess);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::UPDATE_RECORD,kDalRcRecordNoMore);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.TxUpdateController(UNC_KT_VBR_IF,session_id,config_id,phase,&affected_ctrlr_set ,dmi,&ikey));
- DalOdbcMgr::clearStubData();
+
+ delete ikey;
}
-TEST(TxUpdateController,default ) {
+TEST_F(VbrIfMoMgrTest, TxUpdateController_default) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
uint32_t session_id=1;
uint32_t config_id=2;
uuc::UpdateCtrlrPhase phase=uuc::kUpllUcpCreate;
- uint8_t *ctr_id1 = (uint8_t *)malloc(32);
- memset(ctr_id1, '\0', 32);
+ uint8_t *ctr_id1(ZALLOC_ARRAY(uint8_t, 32));
memcpy(ctr_id1, "Controller1", 11);
- uint8_t *dom_id1 = (uint8_t *)malloc(32);
- memset(dom_id1, '\0', 32);
+ uint8_t *dom_id1(ZALLOC_ARRAY(uint8_t, 32));
memcpy(dom_id1, "Domain1", 7);
- controller_domain *ctrlr_dom = reinterpret_cast<controller_domain_t *>(malloc(sizeof(controller_domain_t)));
+ controller_domain *ctrlr_dom(ZALLOC_TYPE(controller_domain_t));
ctrlr_dom->ctrlr = ctr_id1;
ctrlr_dom->domain = dom_id1;
set<std::string> affected_ctrlr_set;
affected_ctrlr_set.insert
(string(reinterpret_cast<char *>(ctrlr_dom->ctrlr)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
GetKeyValStruct(key, val);
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf, key, config_val);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::SINGLE,kDalRcSuccess);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::UPDATE_RECORD,kDalRcSuccess);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.TxUpdateController(UNC_KT_VBR_IF,session_id,config_id,phase,&affected_ctrlr_set ,dmi,&ikey));
- DalOdbcMgr::clearStubData();
-}
-TEST(TxUpdateController, 01 ) {
+ free(ctr_id1);
+ free(dom_id1);
+ free(ctrlr_dom);
+ delete ikey;
+}
+TEST_F(VbrIfMoMgrTest, TxUpdateController_01) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
uint32_t session_id=1;
uint32_t config_id=2;
uuc::UpdateCtrlrPhase phase=uuc::kUpllUcpUpdate;
- uint8_t *ctr_id1 = (uint8_t *)malloc(32);
- memset(ctr_id1, '\0', 32);
+ uint8_t *ctr_id1(ZALLOC_ARRAY(uint8_t, 32));
memcpy(ctr_id1, "Controller1", 11);
- uint8_t *dom_id1 = (uint8_t *)malloc(32);
- memset(dom_id1, '\0', 32);
+ uint8_t *dom_id1(ZALLOC_ARRAY(uint8_t, 32));
memcpy(dom_id1, "Domain1", 7);
- controller_domain *ctrlr_dom = reinterpret_cast<controller_domain_t *>(malloc(sizeof(controller_domain_t)));
+ controller_domain *ctrlr_dom(ZALLOC_TYPE(controller_domain_t));
ctrlr_dom->ctrlr = ctr_id1;
ctrlr_dom->domain = dom_id1;
set<std::string> affected_ctrlr_set;
affected_ctrlr_set.insert
(string(reinterpret_cast<char *>(ctrlr_dom->ctrlr)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
GetKeyValStruct(key, val);
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf, key, config_val);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::GET_UPDATED_RECORDS,kDalRcSuccess);
CapaModuleStub::stub_setResultcode(CapaModuleStub::GET_UPDATE_CAPABILITY, true);
- key_user_data_t *user_data = reinterpret_cast<key_user_data_t *>(malloc(sizeof(key_user_data_t)));
+ key_user_data_t *user_data(ZALLOC_TYPE(key_user_data_t));
uuu::upll_strncpy(user_data->ctrlr_id,"ctr_id", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(user_data->domain_id,"dom_id", (kMaxLenCtrlrId + 1));
ikey->set_user_data((void*)user_data);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.TxUpdateController(UNC_KT_VBR_IF,session_id,config_id,phase,&affected_ctrlr_set ,dmi,&ikey));
- DalOdbcMgr::clearStubData();
+
+ free(ctr_id1);
+ free(dom_id1);
+ free(ctrlr_dom);
+ delete ikey;
}
-TEST(TxUpdateController, 02 ) {
+TEST_F(VbrIfMoMgrTest, TxUpdateController_02) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
uint32_t session_id=1;
uint32_t config_id=2;
uuc::UpdateCtrlrPhase phase=uuc::kUpllUcpDelete;
- uint8_t *ctr_id1 = (uint8_t *)malloc(32);
- memset(ctr_id1, '\0', 32);
+ uint8_t *ctr_id1(ZALLOC_ARRAY(uint8_t, 32));
memcpy(ctr_id1, "Controller1", 11);
- uint8_t *dom_id1 = (uint8_t *)malloc(32);
- memset(dom_id1, '\0', 32);
+ uint8_t *dom_id1(ZALLOC_ARRAY(uint8_t, 32));
memcpy(dom_id1, "Domain1", 7);
- controller_domain *ctrlr_dom = reinterpret_cast<controller_domain_t *>(malloc(sizeof(controller_domain_t)));
+ controller_domain *ctrlr_dom(ZALLOC_TYPE(controller_domain_t));
ctrlr_dom->ctrlr = ctr_id1;
ctrlr_dom->domain = dom_id1;
set<std::string> affected_ctrlr_set;
affected_ctrlr_set.insert
(string(reinterpret_cast<char *>(ctrlr_dom->ctrlr)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
GetKeyValStruct(key, val);
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf, key, config_val);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::SINGLE,kDalRcSuccess);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::GET_DELETED_RECORDS,kDalRcSuccess);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.TxUpdateController(UNC_KT_VBR_IF,session_id,config_id,phase,&affected_ctrlr_set ,dmi,&ikey));
- DalOdbcMgr::clearStubData();
-}
- TEST(TxUpdateController, 03 ) {
- VbrIfMoMgr vbr;
- key_vbr_if *key;
- val_vbr_if *val;
-
- GetKeyValStruct(key, val);
- uint32_t session_id=1;
- uint32_t config_id=2;
- uuc::UpdateCtrlrPhase phase=uuc::kUpllUcpDelete;
- uint8_t *ctr_id1 = (uint8_t *)malloc(32);
- memset(ctr_id1, '\0', 32);
- memcpy(ctr_id1, "Controller1", 11);
- uint8_t *dom_id1 = (uint8_t *)malloc(32);
- memset(dom_id1, '\0', 32);
- memcpy(dom_id1, "Domain1", 7);
- controller_domain *ctrlr_dom = reinterpret_cast<controller_domain_t *>(malloc(sizeof(controller_domain_t)));
- ctrlr_dom->ctrlr = ctr_id1;
- ctrlr_dom->domain = dom_id1;
-
- set<std::string> affected_ctrlr_set ;
- DalDmlIntf *dmi= new DalOdbcMgr();
- GetKeyValStruct(key, val);
- ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, val);
- ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf, key, config_val);
- DalOdbcMgr::stub_setResultcode(DalOdbcMgr::SINGLE,kDalRcSuccess);
- DalOdbcMgr::stub_setResultcode(DalOdbcMgr::GET_DELETED_RECORDS,kDalRcSuccess);
- EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.TxUpdateController(UNC_KT_VBR_IF,session_id,config_id,phase,&affected_ctrlr_set ,dmi,&ikey));
- DalOdbcMgr::clearStubData();
- }
-
-TEST(AuditUpdateController, 01 ) {
+ free(ctr_id1);
+ free(dom_id1);
+ free(ctrlr_dom);
+ delete ikey;
+}
+TEST_F(VbrIfMoMgrTest, TxUpdateController_03) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
GetKeyValStruct(key, val);
uint32_t session_id=1;
uint32_t config_id=2;
- uuc::UpdateCtrlrPhase phase=uuc::kUpllUcpCreate;
- const char *ctrlr_id="Controller1";
- uint8_t *ctr_id1 = (uint8_t *)malloc(32);
- memset(ctr_id1, '\0', 32);
- memcpy(ctr_id1, "Controller1", 11);
- uint8_t *dom_id1 = (uint8_t *)malloc(32);
- memset(dom_id1, '\0', 32);
- memcpy(dom_id1, "Domain1", 7);
- controller_domain *ctrlr_dom = reinterpret_cast<controller_domain_t *>(malloc(sizeof(controller_domain_t)));
- ctrlr_dom->ctrlr = ctr_id1;
- ctrlr_dom->domain = dom_id1;
+ uuc::UpdateCtrlrPhase phase=uuc::kUpllUcpDelete;
- DalDmlIntf *dmi= new DalOdbcMgr();
+ set<std::string> affected_ctrlr_set;
+ DalDmlIntf *dmi(getDalDmlIntf());
GetKeyValStruct(key, val);
- bool ctrlr_affected=true;
- DalCursor *cursor = new DalCursor();
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf, key, config_val);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::SINGLE,kDalRcSuccess);
+ DalOdbcMgr::stub_setResultcode(DalOdbcMgr::GET_DELETED_RECORDS,kDalRcSuccess);
+ EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.TxUpdateController(UNC_KT_VBR_IF,session_id,config_id,phase,&affected_ctrlr_set ,dmi,&ikey));
+
+ delete ikey;
+}
+
+TEST_F(VbrIfMoMgrTest, AuditUpdateController_01) {
+ VbrIfMoMgr vbr;
+ uint32_t session_id=1;
+ uint32_t config_id=2;
+ uuc::UpdateCtrlrPhase phase=uuc::kUpllUcpCreate;
+ const char *ctrlr_id="Controller1";
+
+ DalDmlIntf *dmi(getDalDmlIntf());
+ bool ctrlr_affected=true;
+ DalOdbcMgr::stub_setResultcode(DalOdbcMgr::SINGLE,kDalRcSuccess);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::GET_UPDATED_RECORDS,kDalRcSuccess);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.AuditUpdateController(UNC_KT_VBR_IF,ctrlr_id,session_id,config_id,phase, &ctrlr_affected ,dmi));
- DalOdbcMgr::clearStubData();
}
-TEST(AuditUpdateController, 02 ) {
+TEST_F(VbrIfMoMgrTest, AuditUpdateController_02) {
VbrIfMoMgr vbr;
- key_vbr_if *key;
- val_vbr_if *val;
-
- GetKeyValStruct(key, val);
uint32_t session_id=1;
uint32_t config_id=2;
uuc::UpdateCtrlrPhase phase=uuc::kUpllUcpCreate;
const char *ctrlr_id="Controller1";
- uint8_t *ctr_id1 = (uint8_t *)malloc(32);
- memset(ctr_id1, '\0', 32);
- memcpy(ctr_id1, "Controller1", 11);
- uint8_t *dom_id1 = (uint8_t *)malloc(32);
- memset(dom_id1, '\0', 32);
- memcpy(dom_id1, "Domain1", 7);
- controller_domain *ctrlr_dom = reinterpret_cast<controller_domain_t *>(malloc(sizeof(controller_domain_t)));
- ctrlr_dom->ctrlr = ctr_id1;
- ctrlr_dom->domain = dom_id1;
- DalDmlIntf *dmi= new DalOdbcMgr();
- GetKeyValStruct(key, val);
+ std::map<uint8_t,DalResultCode> map;
+ map.insert(std::make_pair(1,kDalRcGeneralError));
+ map.insert(std::make_pair(0,kDalRcSuccess));
+ DalOdbcMgr::stub_setNextRecordResultCodes(map);
+
+ DalDmlIntf *dmi(getDalDmlIntf());
bool ctrlr_affected=true;
- ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, val);
- ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf, key, config_val);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::SINGLE,kDalRcSuccess);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::GET_CREATED_RECORDS,kDalRcSuccess);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.AuditUpdateController(UNC_KT_VBR_IF,ctrlr_id,session_id,config_id,phase, &ctrlr_affected ,dmi));
- DalOdbcMgr::clearStubData();
-}
-
-TEST(AuditUpdateController, 03 ) {
-
- VbrIfMoMgr vbr;
- key_vbr_if *key;
- val_vbr_if *val;
-
- GetKeyValStruct(key, val);
- uint32_t session_id=1;
- uint32_t config_id=2;
- uuc::UpdateCtrlrPhase phase=uuc::kUpllUcpCreate;
- const char *ctrlr_id="Controller1";
- uint8_t *ctr_id1 = (uint8_t *)malloc(32);
- memset(ctr_id1, '\0', 32);
- memcpy(ctr_id1, "Controller1", 11);
- uint8_t *dom_id1 = (uint8_t *)malloc(32);
- memset(dom_id1, '\0', 32);
- memcpy(dom_id1, "Domain1", 7);
- controller_domain *ctrlr_dom = reinterpret_cast<controller_domain_t *>(malloc(sizeof(controller_domain_t)));
- ctrlr_dom->ctrlr = ctr_id1;
- ctrlr_dom->domain = dom_id1;
-
- DalDmlIntf *dmi= new DalOdbcMgr();
- GetKeyValStruct(key, val);
- bool ctrlr_affected=true;
- EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.AuditUpdateController(UNC_KT_VBR_IF,ctrlr_id,session_id,config_id,phase, &ctrlr_affected ,dmi));
- }
-
- TEST(AuditUpdateController, 04 ) {
- VbrIfMoMgr vbr;
- key_vbr_if *key;
- val_vbr_if *val;
- GetKeyValStruct(key, val);
- uint32_t session_id=1;
- uint32_t config_id=2;
- uuc::UpdateCtrlrPhase phase=uuc::kUpllUcpCreate;
- const char *ctrlr_id="Controller1";
- uint8_t *ctr_id1 = (uint8_t *)malloc(32);
- memset(ctr_id1, '\0', 32);
- memcpy(ctr_id1, "Controller1", 11);
- uint8_t *dom_id1 = (uint8_t *)malloc(32);
- memset(dom_id1, '\0', 32);
- memcpy(dom_id1, "Domain1", 7);
- controller_domain *ctrlr_dom = reinterpret_cast<controller_domain_t *>(malloc(sizeof(controller_domain_t)));
- ctrlr_dom->ctrlr = ctr_id1;
- ctrlr_dom->domain = dom_id1;
-
- DalDmlIntf *dmi= new DalOdbcMgr();
- bool ctrlr_affected=true;
- EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.AuditUpdateController(UNC_KT_VBR_IF,ctrlr_id,session_id,config_id,phase, &ctrlr_affected ,dmi));
-}
-
-
- TEST(AuditUpdateController, 05 ) {
- VbrIfMoMgr vbr;
- key_vbr_if *key;
- val_vbr_if *val;
- GetKeyValStruct(key, val);
- uint32_t session_id=1;
- uint32_t config_id=2;
- uuc::UpdateCtrlrPhase phase=uuc::kUpllUcpDelete;
- const char *ctrlr_id="Controller1";
- uint8_t *ctr_id1 = (uint8_t *)malloc(32);
- memset(ctr_id1, '\0', 32);
- memcpy(ctr_id1, "Controller1", 11);
- uint8_t *dom_id1 = (uint8_t *)malloc(32);
- memset(dom_id1, '\0', 32);
- memcpy(dom_id1, "Domain1", 7);
- controller_domain *ctrlr_dom = reinterpret_cast<controller_domain_t *>(malloc(sizeof(controller_domain_t)));
- ctrlr_dom->ctrlr = ctr_id1;
- ctrlr_dom->domain = dom_id1;
-
- DalDmlIntf *dmi= new DalOdbcMgr();
- GetKeyValStruct(key, val);
- bool ctrlr_affected=true;
- EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.AuditUpdateController(UNC_KT_VBR_IF,ctrlr_id,session_id,config_id,phase, &ctrlr_affected ,dmi));
- }
-
- TEST(AuditUpdateController, 06 ) {
- VbrIfMoMgr vbr;
- key_vbr_if *key;
- val_vbr_if *val;
- GetKeyValStruct(key, val);
- uint32_t session_id=1;
- uint32_t config_id=2;
- uuc::UpdateCtrlrPhase phase=uuc::kUpllUcpUpdate;
- const char *ctrlr_id="Controller1";
- uint8_t *ctr_id1 = (uint8_t *)malloc(32);
- memset(ctr_id1, '\0', 32);
- memcpy(ctr_id1, "Controller1", 11);
- uint8_t *dom_id1 = (uint8_t *)malloc(32);
- memset(dom_id1, '\0', 32);
- memcpy(dom_id1, "Domain1", 7);
- controller_domain *ctrlr_dom = reinterpret_cast<controller_domain_t *>(malloc(sizeof(controller_domain_t)));
- ctrlr_dom->ctrlr = ctr_id1;
- ctrlr_dom->domain = dom_id1;
-
- DalDmlIntf *dmi= new DalOdbcMgr();
- GetKeyValStruct(key, val);
- bool ctrlr_affected=true;
- EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.AuditUpdateController(UNC_KT_VBR_IF,ctrlr_id,session_id,config_id,phase, &ctrlr_affected ,dmi));
- }
+}
+TEST_F(VbrIfMoMgrTest, AuditUpdateController_03) {
+ VbrIfMoMgr vbr;
+ uint32_t session_id=1;
+ uint32_t config_id=2;
+ uuc::UpdateCtrlrPhase phase=uuc::kUpllUcpCreate;
+ const char *ctrlr_id="Controller1";
+
+ DalDmlIntf *dmi(getDalDmlIntf());
+ bool ctrlr_affected=true;
+ EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.AuditUpdateController(UNC_KT_VBR_IF,ctrlr_id,session_id,config_id,phase, &ctrlr_affected ,dmi));
+}
+TEST_F(VbrIfMoMgrTest, AuditUpdateController_04) {
+ VbrIfMoMgr vbr;
+ uint32_t session_id=1;
+ uint32_t config_id=2;
+ uuc::UpdateCtrlrPhase phase=uuc::kUpllUcpCreate;
+ const char *ctrlr_id="Controller1";
-TEST(vbr_if_test,UpdatePortMap_01){
+ DalDmlIntf *dmi(getDalDmlIntf());
+ bool ctrlr_affected=true;
+ EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.AuditUpdateController(UNC_KT_VBR_IF,ctrlr_id,session_id,config_id,phase, &ctrlr_affected ,dmi));
+}
+
+TEST_F(VbrIfMoMgrTest, AuditUpdateController_05) {
+ VbrIfMoMgr vbr;
+ uint32_t session_id=1;
+ uint32_t config_id=2;
+ uuc::UpdateCtrlrPhase phase=uuc::kUpllUcpDelete;
+ const char *ctrlr_id="Controller1";
+
+ DalDmlIntf *dmi(getDalDmlIntf());
+ bool ctrlr_affected=true;
+ EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.AuditUpdateController(UNC_KT_VBR_IF,ctrlr_id,session_id,config_id,phase, &ctrlr_affected ,dmi));
+}
+
+TEST_F(VbrIfMoMgrTest, AuditUpdateController_06) {
+ VbrIfMoMgr vbr;
+ uint32_t session_id=1;
+ uint32_t config_id=2;
+ uuc::UpdateCtrlrPhase phase=uuc::kUpllUcpUpdate;
+ const char *ctrlr_id="Controller1";
+
+ DalDmlIntf *dmi(getDalDmlIntf());
+ bool ctrlr_affected=true;
+ EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.AuditUpdateController(UNC_KT_VBR_IF,ctrlr_id,session_id,config_id,phase, &ctrlr_affected ,dmi));
+}
+
+TEST_F(VbrIfMoMgrTest, UpdatePortMap_01){
VbrIfMoMgr obj;
key_vbr_if *key;
val_drv_vbr_if *val;
GetKeyValDrvStruct(key,val);
- ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVbrIf, val);
- ConfigKeyVal *okey = new ConfigKeyVal(UNC_KT_VBR_IF,IpctSt::kIpcStKeyVbrIf,key, cfgval);
- ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF,IpctSt::kIpcStKeyVbrIf,key,cfgval );
+
+ key_vbr_if *key1(UT_CLONE(key_vbr_if, key));
+ val_drv_vbr_if *val1(UT_CLONE(val_drv_vbr_if, val));
+ ConfigVal *cfgval(new ConfigVal(IpctSt::kIpcStValVbrIf, val));
+ ConfigVal *cfgval1(new ConfigVal(IpctSt::kIpcStValVbrIf, val1));
+ ConfigKeyVal *okey(new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf,
+ key, cfgval));
+ ConfigKeyVal *ikey(new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf,
+ key1, cfgval1));
upll_keytype_datatype_t dt_type = UPLL_DT_RUNNING ;
- DalDmlIntf * dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
EXPECT_EQ(UPLL_RC_ERR_GENERIC, obj.UpdatePortMap(okey,dt_type,dmi,ikey));
+
+ delete ikey;
+ delete okey;
}
-TEST(vbr_if_test,UpdatePortMap_02){
+
+TEST_F(VbrIfMoMgrTest, UpdatePortMap_02){
VbrIfMoMgr obj;
key_vbr_if *key;
val_drv_vbr_if *val;
GetKeyValDrvStruct(key,val);
- ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVbrIf, val);
- ConfigKeyVal *okey = new ConfigKeyVal(UNC_KT_VBR_IF,IpctSt::kIpcStKeyVbrIf,key, cfgval);
- ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF,IpctSt::kIpcStKeyVbrIf,key,cfgval );
+
+ key_vbr_if *key1(UT_CLONE(key_vbr_if, key));
+ val_drv_vbr_if *val1(UT_CLONE(val_drv_vbr_if, val));
+ ConfigVal *cfgval(new ConfigVal(IpctSt::kIpcStValVbrIf, val));
+ ConfigVal *cfgval1(new ConfigVal(IpctSt::kIpcStValVbrIf, val1));
+ ConfigKeyVal *okey(new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf,
+ key, cfgval));
+ ConfigKeyVal *ikey(new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf,
+ key1, cfgval1));
upll_keytype_datatype_t dt_type = UPLL_DT_RUNNING ;
- DalDmlIntf * dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
val->vbr_if_val.valid[UPLL_IDX_PM_VBRI] = UNC_VF_VALID;
val->vbr_if_val.valid[UPLL_IDX_PM_VBRI] = UNC_VF_INVALID;
EXPECT_EQ(UPLL_RC_ERR_GENERIC, obj.UpdatePortMap(okey,dt_type,dmi,ikey));
+
+ delete ikey;
+ delete okey;
}
-TEST(vbr_if_test,UpdatePortMap_03){
+
+TEST_F(VbrIfMoMgrTest, UpdatePortMap_03){
VbrIfMoMgr obj;
key_vbr_if *key;
val_drv_vbr_if *val;
GetKeyValDrvStruct(key,val);
- ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVbrIf, val);
- ConfigKeyVal *okey = new ConfigKeyVal(UNC_KT_VBR_IF,IpctSt::kIpcStKeyVbrIf,key, cfgval);
- ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF,IpctSt::kIpcStKeyVbrIf,key,cfgval );
+
+ key_vbr_if *key1(UT_CLONE(key_vbr_if, key));
+ val_drv_vbr_if *val1(UT_CLONE(val_drv_vbr_if, val));
+ ConfigVal *cfgval(new ConfigVal(IpctSt::kIpcStValVbrIf, val));
+ ConfigVal *cfgval1(new ConfigVal(IpctSt::kIpcStValVbrIf, val1));
+ ConfigKeyVal *okey(new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf,
+ key, cfgval));
+ ConfigKeyVal *ikey(new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf,
+ key1, cfgval1));
upll_keytype_datatype_t dt_type = UPLL_DT_RUNNING ;
- DalDmlIntf * dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
val->vbr_if_val.valid[UPLL_IDX_PM_VBRI] = UNC_VF_VALID;
EXPECT_EQ(UPLL_RC_ERR_GENERIC, obj.UpdatePortMap(okey,dt_type,dmi,ikey));
+
+ delete ikey;
+ delete okey;
}
-TEST(vbr_if_test,UpdatePortMap_04){
+
+TEST_F(VbrIfMoMgrTest, UpdatePortMap_04){
VbrIfMoMgr obj;
key_vbr_if *key;
val_drv_vbr_if *val;
GetKeyValDrvStruct(key,val);
- ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVbrIf, val);
- ConfigKeyVal *okey = new ConfigKeyVal(UNC_KT_VBR_IF,IpctSt::kIpcStKeyVbrIf,key, cfgval);
- ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF,IpctSt::kIpcStKeyVbrIf,key,cfgval );
+
+ key_vbr_if *key1(UT_CLONE(key_vbr_if, key));
+ val_drv_vbr_if *val1(UT_CLONE(val_drv_vbr_if, val));
+ ConfigVal *cfgval(new ConfigVal(IpctSt::kIpcStValVbrIf, val));
+ ConfigVal *cfgval1(new ConfigVal(IpctSt::kIpcStValVbrIf, val1));
+ ConfigKeyVal *okey(new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf,
+ key, cfgval));
+ ConfigKeyVal *ikey(new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf,
+ key1, cfgval1));
upll_keytype_datatype_t dt_type = UPLL_DT_RUNNING ;
- DalDmlIntf * dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
val->vbr_if_val.valid[UPLL_IDX_PM_VBRI] = UNC_VF_INVALID;
EXPECT_EQ(UPLL_RC_ERR_GENERIC, obj.UpdatePortMap(okey,dt_type,dmi,ikey));
+
+ delete ikey;
+ delete okey;
}
-TEST (GetRenameKeyBindInfo, PMainTbl)
+
+TEST_F(VbrIfMoMgrTest, GetRenameKeyBindInfo_PMainTbl)
{
VbrIfMoMgr obj;
unc_key_type_t key_type = UNC_KT_VBR_IF;
EXPECT_EQ(PFC_TRUE, obj.GetRenameKeyBindInfo(key_type, bin, nattr, tbl));
}
-TEST (GetRenameKeyBindInfo, FRenameTBL)
+TEST_F(VbrIfMoMgrTest, GetRenameKeyBindInfo_FRenameTBL)
{
VbrIfMoMgr obj;
unc_key_type_t key_type = UNC_KT_VBR_IF;
EXPECT_EQ(PFC_FALSE, obj.GetRenameKeyBindInfo(key_type, bin, nattr, tbl));
}
-TEST (GetRenameKeyBindInfo, FRename)
+TEST_F(VbrIfMoMgrTest, GetRenameKeyBindInfo_FRename)
{
VbrIfMoMgr obj;
unc_key_type_t key_type = UNC_KT_VBR_IF;
EXPECT_EQ(PFC_FALSE, obj.GetRenameKeyBindInfo(key_type, bin, nattr, tbl));
}
-TEST (GetRenameKeyBindInfo, FNoTBL)
+TEST_F(VbrIfMoMgrTest, GetRenameKeyBindInfo_FNoTBL)
{
VbrIfMoMgr obj;
unc_key_type_t key_type = UNC_KT_VBR_IF;
EXPECT_EQ(PFC_FALSE, obj.GetRenameKeyBindInfo(key_type, bin, nattr, tbl));
}
-TEST(vbr_if_test,GetVbrIfValfromDBTrue){
+TEST_F(VbrIfMoMgrTest, GetVbrIfValfromDBTrue){
VbrIfMoMgr obj;
key_vbr_if *key;
val_vbr_if *val;
ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF,IpctSt::kIpcStKeyVbrIf,key, cfgval);
- ConfigKeyVal *ck_drv_vbr_if = new ConfigKeyVal(UNC_KT_VBR_IF,IpctSt::kIpcStKeyVbrIf,key, cfgval);
+ ConfigKeyVal *ck_drv_vbr_if(NULL);
upll_keytype_datatype_t dt_type = UPLL_DT_CANDIDATE ;
- DalDmlIntf * dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::SINGLE,kDalRcSuccess);
EXPECT_EQ(UPLL_RC_SUCCESS, obj.GetVbrIfValfromDB(ikey,ck_drv_vbr_if,dt_type,dmi));
- DalOdbcMgr::clearStubData();
+ ASSERT_TRUE(ck_drv_vbr_if != NULL);
+
+ delete ck_drv_vbr_if;
+ delete ikey;
}
-TEST(vbr_if_test,GetVbrIfValfromDBFalse){
+TEST_F(VbrIfMoMgrTest, GetVbrIfValfromDBFalse){
VbrIfMoMgr obj;
key_vbr_if *key;
val_vbr_if *val;
GetKeyValStruct(key,val);
ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF,IpctSt::kIpcStKeyVbrIf,key, cfgval);
- ConfigKeyVal *ck_drv_vbr_if = new ConfigKeyVal(UNC_KT_VBR_IF,IpctSt::kIpcStKeyVbr,key,NULL );
+ ConfigKeyVal *ck_drv_vbr_if(NULL);
upll_keytype_datatype_t dt_type = UPLL_DT_RUNNING ;
- DalDmlIntf * dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
EXPECT_EQ(UPLL_RC_ERR_GENERIC, obj.GetVbrIfValfromDB(ikey,ck_drv_vbr_if,dt_type,dmi));
+
+ delete ikey;
}
-TEST(vbr_if_test,GetVbrIfValfromDBParentKeyNull){
+TEST_F(VbrIfMoMgrTest, GetVbrIfValfromDBParentKeyNull){
VbrIfMoMgr obj;
key_vbr_if *key;
val_vbr_if *val;
GetKeyValStruct(key,val);
ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVbr, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,IpctSt::kIpcStKeyVbr,key, cfgval);
- ConfigVal *cfgval1 = new ConfigVal(IpctSt::kIpcStValVbrIf, val);
- ConfigKeyVal *ck_drv_vbr_if = new ConfigKeyVal(UNC_KT_VBR_IF,IpctSt::kIpcStKeyVbrIf,key,cfgval1);
+ ConfigKeyVal *ck_drv_vbr_if(NULL);
upll_keytype_datatype_t dt_type = UPLL_DT_CANDIDATE ;
- DalDmlIntf * dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
EXPECT_EQ(UPLL_RC_ERR_GENERIC, obj.GetVbrIfValfromDB(ck_drv_vbr_if,ikey,dt_type,dmi));
+
delete ikey;
}
-TEST(vbr_if_test, UpdateVbrIf_1) {
+
+TEST_F(VbrIfMoMgrTest, UpdateVbrIf_1) {
VbrIfMoMgr obj;
key_vbr_if *key;
val_vbr_if *val;
GetKeyValStruct(key,val);
ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF,IpctSt::kIpcStKeyVbrIf,key, cfgval);
- DalDmlIntf * dmi= new DalOdbcMgr();
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
+ DalDmlIntf *dmi(getDalDmlIntf());
+ IPC_REQ_RESP_HEADER_DECL(req);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::SINGLE,kDalRcSuccess);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::UPDATE_RECORD,kDalRcSuccess);
EXPECT_EQ(UPLL_RC_SUCCESS,obj.updateVbrIf(req,ikey,dmi));
- DalOdbcMgr::clearStubData();
+
+ delete ikey;
}
-TEST(vbr_if_test, UpdateVbrIf_2) {
+TEST_F(VbrIfMoMgrTest, UpdateVbrIf_2) {
VbrIfMoMgr obj;
- IpcReqRespHeader *req;
- req = reinterpret_cast<IpcReqRespHeader *>(malloc
- (sizeof(IpcReqRespHeader)));
+ IPC_REQ_RESP_HEADER_DECL(req);
req->operation = UNC_OP_UPDATE;
req->rep_count = 1;
req->option1 = UNC_OPT1_NORMAL;
GetKeyValStruct(key,val);
ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF,IpctSt::kIpcStKeyVbrIf,key, cfgval);
- DalDmlIntf * dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
EXPECT_EQ(UPLL_RC_ERR_GENERIC,obj.updateVbrIf(req,ikey,dmi));
- DalOdbcMgr::clearStubData();
+
+ delete ikey;
}
-TEST(vbr_if_test, UpdateVbrIf_3) {
+
+TEST_F(VbrIfMoMgrTest, UpdateVbrIf_3) {
VbrIfMoMgr obj;
- IpcReqRespHeader *req;
- req = reinterpret_cast<IpcReqRespHeader *>(malloc
- (sizeof(IpcReqRespHeader)));
+ IPC_REQ_RESP_HEADER_DECL(req);
req->operation = UNC_OP_UPDATE;
req->rep_count = 1;
req->option1 = UNC_OPT1_NORMAL;
GetKeyValStruct(key,val);
ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF,IpctSt::kIpcStKeyVbrIf,key, cfgval);
- DalDmlIntf * dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
EXPECT_EQ(UPLL_RC_ERR_GENERIC,obj.updateVbrIf(req,ikey,dmi));
- DalOdbcMgr::clearStubData();
+
+ delete ikey;
}
-TEST(vbr_if_test, UpdateVbrIf_4) {
+
+TEST_F(VbrIfMoMgrTest, UpdateVbrIf_4) {
VbrIfMoMgr obj;
key_vbr_if *key;
val_vbr_if *val;
GetKeyValStruct(key,val);
ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF,IpctSt::kIpcStKeyVbrIf,key, cfgval);
- DalDmlIntf * dmi= new DalOdbcMgr();
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
+ DalDmlIntf *dmi(getDalDmlIntf());
+ IPC_REQ_RESP_HEADER_DECL(req);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::SINGLE,kDalRcSuccess);
EXPECT_EQ(UPLL_RC_ERR_GENERIC,obj.updateVbrIf(req,ikey,dmi));
- DalOdbcMgr::clearStubData();
+
+ delete ikey;
}
-TEST(GetChildConfigKey, PkeyVlinkSuccess) {
- VbrIfMoMgr vbr;
- key_vbr_if_t *key = reinterpret_cast<key_vbr_if_t*>
- (malloc(sizeof(key_vbr_if_t)));
- val_vbr_if *val = reinterpret_cast<val_vbr_if *>
- (malloc(sizeof(val_vbr_if)));
- memset(key, 0 ,sizeof(key_vbr_if_t));
+TEST_F(VbrIfMoMgrTest, GetChildConfigKey_PkeyVlinkSuccess) {
+ VbrIfMoMgr vbr;
+ key_vbr_if_t *key(ZALLOC_TYPE(key_vbr_if_t));
+ val_vbr_if *val(ZALLOC_TYPE(val_vbr_if));
strncpy((char*) key->if_name,"IF_1",32);
strncpy((char*) key->vbr_key.vbridge_name,"VLINK1",32);
strncpy((char*) key->vbr_key.vtn_key.vtn_name,"VTN1",32);
ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVbrIf, val);
-
ConfigKeyVal *pkey = new ConfigKeyVal(UNC_KT_VLINK,
IpctSt::kIpcStKeyVbrIf,
key,cfgval);
- ConfigKeyVal *okey = new ConfigKeyVal(UNC_KT_VBR_IF,IpctSt::kIpcStKeyVbrIf,key,cfgval) ;
+
+ key_vbr_if *key1(UT_CLONE(key_vbr_if, key));
+ val_vbr_if *val1(UT_CLONE(val_vbr_if, val));
+ ConfigVal *cfgval1(new ConfigVal(IpctSt::kIpcStValVbrIf, val1));
+ ConfigKeyVal *okey(new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf,
+ key1, cfgval1));
EXPECT_EQ(UPLL_RC_SUCCESS,vbr.GetChildConfigKey(okey, pkey));
+
delete okey;
+ delete pkey;
}
-TEST(GetChildConfigKey, PkeyVtnSuccess) {
+
+TEST_F(VbrIfMoMgrTest, GetChildConfigKey_PkeyVtnSuccess) {
VbrIfMoMgr vbr;
- key_vbr_if_t *key = reinterpret_cast<key_vbr_if_t*>
- (malloc(sizeof(key_vbr_if_t)));
- val_vbr_if *val = reinterpret_cast<val_vbr_if *>
- (malloc(sizeof(val_vbr_if)));
- memset(key, 0 ,sizeof(key_vbr_if_t));
+ key_vbr_if_t *key(ZALLOC_TYPE(key_vbr_if_t));
+ val_vbr_if *val(ZALLOC_TYPE(val_vbr_if));
strncpy((char*) key->if_name,"IF_1",32);
strncpy((char*) key->vbr_key.vbridge_name,"VLINK1",32);
strncpy((char*) key->vbr_key.vtn_key.vtn_name,"VTN1",32);
ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVbrIf, val);
-
ConfigKeyVal *pkey = new ConfigKeyVal(UNC_KT_VTN,
IpctSt::kIpcStKeyVbrIf,
key,cfgval);
- ConfigKeyVal *okey = new ConfigKeyVal(UNC_KT_VBR_IF,IpctSt::kIpcStKeyVbrIf,key,cfgval) ;
+
+ key_vbr_if *key1(UT_CLONE(key_vbr_if, key));
+ val_vbr_if *val1(UT_CLONE(val_vbr_if, val));
+ ConfigVal *cfgval1(new ConfigVal(IpctSt::kIpcStValVbrIf, val1));
+ ConfigKeyVal *okey(new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf,
+ key1, cfgval1));
EXPECT_EQ(UPLL_RC_SUCCESS,vbr.GetChildConfigKey(okey, pkey));
+
delete okey;
+ delete pkey;
}
-TEST(GetChildConfigKey, PkeyVbridgeSuccess) {
- VbrIfMoMgr vbr;
- key_vbr_if_t *key = reinterpret_cast<key_vbr_if_t*>
- (malloc(sizeof(key_vbr_if_t)));
- val_vbr_if *val = reinterpret_cast<val_vbr_if *>
- (malloc(sizeof(val_vbr_if)));
- memset(key, 0 ,sizeof(key_vbr_if_t));
+TEST_F(VbrIfMoMgrTest, GetChildConfigKey_PkeyVbridgeSuccess) {
+ VbrIfMoMgr vbr;
+ key_vbr_if_t *key(ZALLOC_TYPE(key_vbr_if_t));
+ val_vbr_if *val(ZALLOC_TYPE(val_vbr_if));
strncpy((char*) key->if_name,"IF_1",32);
strncpy((char*) key->vbr_key.vbridge_name,"VLINK1",32);
strncpy((char*) key->vbr_key.vtn_key.vtn_name,"VTN1",32);
ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVbrIf, val);
-
ConfigKeyVal *pkey = new ConfigKeyVal(UNC_KT_VBRIDGE,
IpctSt::kIpcStKeyVbrIf,
key,cfgval);
- ConfigKeyVal *okey = new ConfigKeyVal(UNC_KT_VBR_IF,IpctSt::kIpcStKeyVbrIf,key,cfgval) ;
+ key_vbr_if *key1(UT_CLONE(key_vbr_if, key));
+ val_vbr_if *val1(UT_CLONE(val_vbr_if, val));
+ ConfigVal *cfgval1(new ConfigVal(IpctSt::kIpcStValVbrIf, val1));
+ ConfigKeyVal *okey(new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf,
+ key1, cfgval1));
EXPECT_EQ(UPLL_RC_SUCCESS,vbr.GetChildConfigKey(okey, pkey));
+
delete okey;
+ delete pkey;
}
-TEST(GetParentConfigKey, GetParentConfigKey_02) {
+
+TEST_F(VbrIfMoMgrTest, GetParentConfigKey_02) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
GetKeyValStruct(key, val);
ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVbrIf, val);
-
ConfigKeyVal *okey = new ConfigKeyVal(UNC_KT_VBR_IF,IpctSt::kIpcStKeyVbrIf,key,cfgval) ;
- ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,IpctSt::kIpcStKeyVbrIf,key,cfgval) ;
+
+ key_vbr_if *key1(UT_CLONE(key_vbr_if, key));
+ val_vbr_if *val1(UT_CLONE(val_vbr_if, val));
+ ConfigVal *cfgval1(new ConfigVal(IpctSt::kIpcStValVbrIf, val1));
+ ConfigKeyVal *ikey(new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVbrIf,
+ key1, cfgval1));
EXPECT_EQ(UPLL_RC_ERR_GENERIC,vbr.GetParentConfigKey(okey, ikey));
+
+ delete okey;
+ delete ikey;
}
-TEST(GetParentConfigKey, GetParentConfigKey_03) {
+
+TEST_F(VbrIfMoMgrTest, GetParentConfigKey_03) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
GetKeyValStruct(key, val);
ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVbrIf, val);
-
ConfigKeyVal *okey = new ConfigKeyVal(UNC_KT_VBR_IF,IpctSt::kIpcStKeyVbrIf,key,cfgval) ;
- ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF,IpctSt::kIpcStKeyVbrIf,key,cfgval) ;
+
+ key_vbr_if *key1(UT_CLONE(key_vbr_if, key));
+ val_vbr_if *val1(UT_CLONE(val_vbr_if, val));
+ ConfigVal *cfgval1(new ConfigVal(IpctSt::kIpcStValVbrIf, val1));
+ ConfigKeyVal *ikey(new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf,
+ key1, cfgval1));
EXPECT_EQ(UPLL_RC_SUCCESS,vbr.GetParentConfigKey(okey, ikey));
+
delete okey;
+ delete ikey;
}
-TEST(GetParentConfigKey, GetParentConfigKey_01) {
- VbrIfMoMgr vbr;
- key_vbr_if *key;
- val_vbr_if *val;
-
- GetKeyValStruct(key, val);
- ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVbrIf, val);
+TEST_F(VbrIfMoMgrTest, GetParentConfigKey_01) {
+ VbrIfMoMgr vbr;
ConfigKeyVal *okey = NULL;
ConfigKeyVal *ikey = NULL;
EXPECT_EQ(UPLL_RC_ERR_GENERIC,vbr.GetParentConfigKey(okey, ikey));
}
-TEST(GetParentConfigKey, GetParentConfigKey_09) {
+
+TEST_F(VbrIfMoMgrTest, GetParentConfigKey_09) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
ConfigKeyVal *okey = NULL;
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF,IpctSt::kIpcStKeyVbrIf,key,cfgval) ;
EXPECT_EQ(UPLL_RC_SUCCESS,vbr.GetParentConfigKey(okey, ikey));
+
+ delete okey;
+ delete ikey;
}
+
TEST_F(VbrIfMoMgrTest, AllocVal_Error) {
VbrIfMoMgr obj;
- key_vbr_if *key;
- val_vbr_if *val;
ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVbrIf, NULL);
EXPECT_EQ(UPLL_RC_ERR_GENERIC,obj.AllocVal(cfgval, UPLL_DT_CANDIDATE,RENAMETBL));
+
+ delete cfgval;
}
-TEST_F(VbrIfMoMgrTest, ConverttoDriverPortMap_01) {
+TEST_F(VbrIfMoMgrTest, ConverttoDriverPortMap_01) {
VbrIfMoMgr obj;
- DalDmlIntf * dmi= new DalOdbcMgr();
key_vbr_if *key;
- val_vbr_if *val;
- GetKeyValStruct(key, val);
+ val_drv_vbr_if *val;
+ GetKeyValDrvStruct(key, val);
ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF,
IpctSt::kIpcStKeyVbrIf,
key, cfgval);
EXPECT_EQ(UPLL_RC_SUCCESS,obj.ConverttoDriverPortMap(ikey));
+
+ delete ikey;
}
-TEST_F(VbrIfMoMgrTest, ConverttoDriverPortMap_02) {
+TEST_F(VbrIfMoMgrTest, ConverttoDriverPortMap_02) {
VbrIfMoMgr obj;
- DalDmlIntf * dmi= new DalOdbcMgr();
key_vbr_if *key;
- val_vbr_if *val;
- GetKeyValStruct(key, val);
+ val_drv_vbr_if *val;
+ GetKeyValDrvStruct(key, val);
const char *if_name = "IF_1";
strncpy(reinterpret_cast<char *>(key->if_name),
IpctSt::kIpcStKeyVbrIf,
key, cfgval);
EXPECT_EQ(UPLL_RC_SUCCESS,obj.ConverttoDriverPortMap(ikey));
+
+ delete ikey;
}
-TEST_F(VbrIfMoMgrTest, UpdateConfigStatus_Success) {
+TEST_F(VbrIfMoMgrTest, UpdateConfigStatus_Success) {
VbrIfMoMgr obj;
- DalDmlIntf * dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
key_vbr_if *key;
val_vbr_if *val;
GetKeyValStruct(key, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF,
IpctSt::kIpcStKeyVbrIf,
key, cfgval);
- ConfigKeyVal *upd_key = new ConfigKeyVal(UNC_KT_VBR_IF,
- IpctSt::kIpcStKeyVbrIf,
- key, cfgval);
+
+ key_vbr_if *key1(UT_CLONE(key_vbr_if, key));
+ val_vbr_if *val1(UT_CLONE(val_vbr_if, val));
+ ConfigVal *cfgval1(new ConfigVal(IpctSt::kIpcStValVbrIf, val1));
+ ConfigKeyVal *upd_key(new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf,
+ key1, cfgval1));
EXPECT_EQ(UPLL_RC_SUCCESS,obj.UpdateConfigStatus(ikey, UNC_OP_CREATE,
UPLL_RC_SUCCESS,
- upd_key,dmi,ikey));
+ upd_key, dmi, ikey));
delete ikey;
+ delete upd_key;
}
-TEST_F(VbrIfMoMgrTest,UpdateConfigStatus_SuccessUPDATE) {
+TEST_F(VbrIfMoMgrTest, UpdateConfigStatus_SuccessUPDATE) {
VbrIfMoMgr obj;
- DalDmlIntf * dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
key_vbr_if *key;
- val_vbr_if *val;
- GetKeyValStruct(key, val);
+ val_drv_vbr_if *val;
+ GetKeyValDrvStruct(key, val);
ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF,
IpctSt::kIpcStKeyVbrIf,
key, cfgval);
- ConfigKeyVal *upd_key = new ConfigKeyVal(UNC_KT_VBR_IF,
- IpctSt::kIpcStKeyVbrIf,
- key, cfgval);
+
+ key_vbr_if *key1(UT_CLONE(key_vbr_if, key));
+ val_drv_vbr_if *val1(UT_CLONE(val_drv_vbr_if, val));
+ ConfigVal *cfgval1(new ConfigVal(IpctSt::kIpcStValVbrIf, val1));
+ ConfigKeyVal *upd_key(new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf,
+ key1, cfgval1));
EXPECT_EQ(UPLL_RC_SUCCESS,obj.UpdateConfigStatus(ikey, UNC_OP_UPDATE,
UPLL_RC_SUCCESS,
- upd_key,dmi,ikey));
+ upd_key, dmi, ikey));
delete ikey;
+ delete upd_key;
}
-TEST_F(VbrIfMoMgrTest,UpdateConfigStatus_SuccessUPDATE_01) {
+TEST_F(VbrIfMoMgrTest, UpdateConfigStatus_SuccessUPDATE_01) {
VbrIfMoMgr obj;
- DalDmlIntf * dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
key_vbr_if *key;
- val_vbr_if *val;
- GetKeyValStruct(key, val);
+ val_drv_vbr_if *val;
+ GetKeyValDrvStruct(key, val);
ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF,
IpctSt::kIpcStKeyVbrIf,
key, cfgval);
- ConfigKeyVal *upd_key = new ConfigKeyVal(UNC_KT_VBR_IF,
- IpctSt::kIpcStKeyVbrIf,
- key, cfgval);
+
+ key_vbr_if *key1(UT_CLONE(key_vbr_if, key));
+ val_drv_vbr_if *val1(UT_CLONE(val_drv_vbr_if, val));
+ ConfigVal *cfgval1(new ConfigVal(IpctSt::kIpcStValVbrIf, val1));
+ ConfigKeyVal *upd_key(new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf,
+ key1, cfgval1));
val->valid[UPLL_IDX_ADMIN_STATUS_VBRI] = UNC_VF_VALID;
EXPECT_EQ(UPLL_RC_SUCCESS,obj.UpdateConfigStatus(ikey, UNC_OP_UPDATE,
UPLL_RC_SUCCESS,
upd_key,dmi,ikey));
+
delete ikey;
+ delete upd_key;
}
-TEST_F(VbrIfMoMgrTest,UpdateConfigStatus_SuccessUPDATE_02) {
-
+TEST_F(VbrIfMoMgrTest, UpdateConfigStatus_SuccessUPDATE_02) {
VbrIfMoMgr obj;
- DalDmlIntf * dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
key_vbr_if *key;
- val_vbr_if *val;
- GetKeyValStruct(key, val);
+ val_drv_vbr_if *val;
+ GetKeyValDrvStruct(key, val);
ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF,
IpctSt::kIpcStKeyVbrIf,
key, cfgval);
- ConfigKeyVal *upd_key = new ConfigKeyVal(UNC_KT_VBR_IF,
- IpctSt::kIpcStKeyVbrIf,
- key, cfgval);
+
+ key_vbr_if *key1(UT_CLONE(key_vbr_if, key));
+ val_drv_vbr_if *val1(UT_CLONE(val_drv_vbr_if, val));
+ ConfigVal *cfgval1(new ConfigVal(IpctSt::kIpcStValVbrIf, val1));
+ ConfigKeyVal *upd_key(new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf,
+ key1, cfgval1));
val->valid[UPLL_IDX_ADMIN_STATUS_VBRI] = UNC_VF_VALID_NO_VALUE;
EXPECT_EQ(UPLL_RC_SUCCESS,obj.UpdateConfigStatus(ikey, UNC_OP_UPDATE,
UPLL_RC_SUCCESS,
- upd_key,dmi,ikey));
+ upd_key, dmi, ikey));
+
delete ikey;
+ delete upd_key;
}
TEST_F(VbrIfMoMgrTest, UpdateConfigStatus_InvalidOP) {
-
VbrIfMoMgr obj;
- DalDmlIntf * dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
key_vbr_if *key;
- val_vbr_if *val;
- GetKeyValStruct(key, val);
+ val_drv_vbr_if *val;
+ GetKeyValDrvStruct(key, val);
ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF,
IpctSt::kIpcStKeyVbrIf,
key, cfgval);
- ConfigKeyVal *upd_key = new ConfigKeyVal(UNC_KT_VBR_IF,
- IpctSt::kIpcStKeyVbrIf,
- key, cfgval);
+
+ key_vbr_if *key1(UT_CLONE(key_vbr_if, key));
+ val_drv_vbr_if *val1(UT_CLONE(val_drv_vbr_if, val));
+ ConfigVal *cfgval1(new ConfigVal(IpctSt::kIpcStValVbrIf, val1));
+ ConfigKeyVal *upd_key(new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf,
+ key1, cfgval1));
EXPECT_EQ(UPLL_RC_ERR_GENERIC,obj.UpdateConfigStatus(ikey, UNC_OP_READ,
- UPLL_RC_SUCCESS,
- upd_key,dmi,ikey));
+ UPLL_RC_SUCCESS,
+ upd_key, dmi, ikey));
+
delete ikey;
+ delete upd_key;
}
+
TEST_F(VbrIfMoMgrTest, UpdateAuditConfigStatus_ValidCsStatus) {
VbrIfMoMgr vbrmomgr;
key_vbr_if *key;
EXPECT_EQ(UPLL_RC_SUCCESS, vbrmomgr.UpdateAuditConfigStatus(cs_status, phase, ckv_running));
delete ckv_running;
}
+
TEST_F(VbrIfMoMgrTest, UpdateAuditConfigStatus_InvalidCsStatus) {
VbrIfMoMgr vbrmomgr;
key_vbr_if *key;
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbrmomgr.UpdateAuditConfigStatus(cs_status, phase, ckv_running));
delete ckv_running;
}
-TEST(VbrIfMoMgr, UpdateAuditConfigStatus1) {
+
+TEST_F(VbrIfMoMgrTest, VbrIfMoMgr_UpdateAuditConfigStatus1) {
VbrIfMoMgr vbr;
ConfigKeyVal *ikey =NULL;
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.UpdateAuditConfigStatus(UNC_CS_APPLIED,uuc::kUpllUcpCreate, ikey));
delete ikey;
}
-TEST(VbrIfMoMgr, UpdateAuditConfigStatus2) {
- VbrIfMoMgr vbr;
- val_vbr_if_t *val = reinterpret_cast<val_vbr_if_t *>
- (malloc(sizeof(val_vbr_if_t)));
- memset(val, 0, sizeof(val_vbr_if_t));
+TEST_F(VbrIfMoMgrTest, VbrIfMoMgr_UpdateAuditConfigStatus2) {
+ VbrIfMoMgr vbr;
+ val_vbr_if *val(ZALLOC_TYPE(val_vbr_if));
ConfigVal *tmp = new ConfigVal(IpctSt::kIpcStValVbrIf,
val);
EXPECT_EQ(UPLL_RC_SUCCESS, vbr.UpdateAuditConfigStatus(UNC_CS_INVALID,uuc::kUpllUcpCreate, ikey));
delete ikey;
}
-TEST(ValidateMessage, UNC_KT_VBRIDGE) {
+TEST_F(VbrIfMoMgrTest, ValidateMessage_UNC_KT_VBRIDGE) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
IpctSt::kIpcStKeyVbrIf,
key, cfgval);
- IpcReqRespHeader *req;
- req = reinterpret_cast<IpcReqRespHeader *>(malloc
- (sizeof(IpcReqRespHeader)));
- memset(req,0,sizeof(IpcReqRespHeader));
+ IPC_REQ_RESP_HEADER_DECL(req);
req->clnt_sess_id = 5;
req->config_id = 14;
req->operation = UNC_OP_CREATE;
req->option2 = UNC_OPT2_NONE;
req->datatype = UPLL_DT_CANDIDATE;
EXPECT_EQ(UPLL_RC_ERR_BAD_REQUEST, vbr.ValidateMessage(req, ikey));
- free(req);
+
+ delete ikey;
}
-TEST(ValidateMessage, req_NULL) {
+TEST_F(VbrIfMoMgrTest, ValidateMessage_req_NULL) {
VbrIfMoMgr vbr;
- key_vbr_if *key;
- val_vbr_if *val;
- GetKeyValStruct(key, val);
-
- ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = NULL;
-
- IpcReqRespHeader *req;
- req = reinterpret_cast<IpcReqRespHeader *>(malloc
- (sizeof(IpcReqRespHeader)));
+ IPC_REQ_RESP_HEADER_DECL(req);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.ValidateMessage(req, ikey));
- free(req);
}
-TEST(ValidateMessage, kIpcStValVtnNeighbor) {
+TEST_F(VbrIfMoMgrTest, ValidateMessage_kIpcStValVtnNeighbor) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
IpctSt::kIpcStKeyVbrIf,
key, cfgval);
- IpcReqRespHeader *req;
- req = reinterpret_cast<IpcReqRespHeader *>(malloc
- (sizeof(IpcReqRespHeader)));
- memset(req,0,sizeof(IpcReqRespHeader));
+ IPC_REQ_RESP_HEADER_DECL(req);
req->clnt_sess_id = 5;
req->config_id = 14;
req->operation = UNC_OP_CREATE;
req->option2 = UNC_OPT2_NONE;
req->datatype = UPLL_DT_CANDIDATE;
EXPECT_EQ(UPLL_RC_SUCCESS, vbr.ValidateMessage(req, ikey));
+
+ delete ikey;
}
-TEST(ValidateMessage, kIpcStPfcdrvValVbrIf) {
+TEST_F(VbrIfMoMgrTest, ValidateMessage_kIpcStPfcdrvValVbrIf) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
IpctSt::kIpcStKeyVbrIf,
key, cfgval);
- IpcReqRespHeader *req;
- req = reinterpret_cast<IpcReqRespHeader *>(malloc
- (sizeof(IpcReqRespHeader)));
- memset(req,0,sizeof(IpcReqRespHeader));
+ IPC_REQ_RESP_HEADER_DECL(req);
req->clnt_sess_id = 5;
req->config_id = 14;
req->operation = UNC_OP_CREATE;
req->option2 = UNC_OPT2_NONE;
req->datatype = UPLL_DT_CANDIDATE;
EXPECT_EQ(UPLL_RC_SUCCESS, vbr.ValidateMessage(req, ikey));
+
+ delete ikey;
}
-TEST(ValidateMessage, kIpcStKeyVbr) {
+TEST_F(VbrIfMoMgrTest, ValidateMessage_kIpcStKeyVbr) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
IpctSt::kIpcStKeyVbr,
key, cfgval);
- IpcReqRespHeader *req;
- req = reinterpret_cast<IpcReqRespHeader *>(malloc
- (sizeof(IpcReqRespHeader)));
- memset(req,0,sizeof(IpcReqRespHeader));
+ IPC_REQ_RESP_HEADER_DECL(req);
req->clnt_sess_id = 5;
req->config_id = 14;
req->operation = UNC_OP_CREATE;
req->option2 = UNC_OPT2_NONE;
req->datatype = UPLL_DT_CANDIDATE;
EXPECT_EQ(UPLL_RC_ERR_BAD_REQUEST, vbr.ValidateMessage(req, ikey));
-}
-TEST(ValidateMessage, ValidateMessage_01) {
+ delete ikey;
+}
+TEST_F(VbrIfMoMgrTest, ValidateMessage_01) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
IpctSt::kIpcStKeyVbrIf,
key, cfgval);
- IpcReqRespHeader *req;
- req = reinterpret_cast<IpcReqRespHeader *>(malloc
- (sizeof(IpcReqRespHeader)));
- memset(req,0,sizeof(IpcReqRespHeader));
+ IPC_REQ_RESP_HEADER_DECL(req);
req->clnt_sess_id = 5;
req->config_id = 14;
req->operation = UNC_OP_CREATE;
req->datatype = UPLL_DT_CANDIDATE;
EXPECT_EQ(UPLL_RC_SUCCESS, vbr.ValidateMessage(req, ikey));
-
- ConfigVal *cfgval2 = NULL;
- ConfigKeyVal *ikey2 = new ConfigKeyVal(UNC_KT_VBR_IF,
+ key_vbr_if *key1(UT_CLONE(key_vbr_if, key));
+ ConfigVal *cfgval1 = NULL;
+ ConfigKeyVal *ikey1 = new ConfigKeyVal(UNC_KT_VBR_IF,
IpctSt::kIpcStKeyVbrIf,
- key, cfgval2);
- EXPECT_EQ(UPLL_RC_SUCCESS, vbr.ValidateMessage(req, ikey2));
+ key1, cfgval1);
+ EXPECT_EQ(UPLL_RC_SUCCESS, vbr.ValidateMessage(req, ikey1));
const char *if_name = " ";
- key_vbr_if *key5;
- val_vbr_if *val5;
- key5 = reinterpret_cast<key_vbr_if *>(malloc
- (sizeof(key_vbr_if)));
- memset(key5,0,sizeof(key_vbr_if));
- strncpy(reinterpret_cast<char *>(key5->if_name),
- if_name, strlen(if_name)+1);
- val5 = reinterpret_cast<val_vbr_if *>(malloc
- (sizeof(val_vbr_if)));
- memset(val5,0,sizeof(val_vbr_if));
- ConfigVal *cfgval5 = new ConfigVal(IpctSt::kIpcStValVbrIf, val5);
- ConfigKeyVal *ikey5 = new ConfigKeyVal(UNC_KT_VBR_IF,
+ key_vbr_if *key2(ZALLOC_TYPE(key_vbr_if));
+ val_vbr_if *val2(ZALLOC_TYPE(val_vbr_if));
+ strncpy(reinterpret_cast<char *>(key2->if_name),
+ if_name, strlen(if_name)+1);
+ ConfigVal *cfgval2 = new ConfigVal(IpctSt::kIpcStValVbrIf, val2);
+ ConfigKeyVal *ikey2 = new ConfigKeyVal(UNC_KT_VBR_IF,
IpctSt::kIpcStKeyVbrIf,
- key5, cfgval5);
- EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, vbr.ValidateMessage(req, ikey5));
+ key2, cfgval2);
+ EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, vbr.ValidateMessage(req, ikey2));
- ikey=NULL;
- EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.ValidateMessage(req, ikey));
+ ConfigKeyVal *nullkey(NULL);
+ EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.ValidateMessage(req, nullkey));
+ key_vbr_if *key3(UT_CLONE(key_vbr_if, key));
+ val_vbr_if *val3(UT_CLONE(val_vbr_if, val));
+ ConfigVal *cfgval3(new ConfigVal(IpctSt::kIpcStValVbrIf, val3));
+ ConfigKeyVal *ikey3(new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVbr,
+ key3, cfgval3));
+ EXPECT_EQ(UPLL_RC_ERR_BAD_REQUEST, vbr.ValidateMessage(req, ikey3));
- ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,
- IpctSt::kIpcStKeyVbr,
- key, cfgval);
- EXPECT_EQ(UPLL_RC_ERR_BAD_REQUEST, vbr.ValidateMessage(req, ikey));
delete ikey;
+ delete ikey1;
+ delete ikey2;
+ delete ikey3;
}
-TEST(ValidateMessage, ValidateMessage_02) {
-
+TEST_F(VbrIfMoMgrTest, ValidateMessage_02) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
IpctSt::kIpcStKeyVbrIf,
key, cfgval);
- IpcReqRespHeader *req;
- req = reinterpret_cast<IpcReqRespHeader *>(malloc
- (sizeof(IpcReqRespHeader)));
- memset(req,0,sizeof(IpcReqRespHeader));
+ IPC_REQ_RESP_HEADER_DECL(req);
req->clnt_sess_id = 5;
req->config_id = 14;
req->operation = UNC_OP_UPDATE;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NONE;
req->datatype = UPLL_DT_CANDIDATE;
-
EXPECT_EQ(UPLL_RC_SUCCESS, vbr.ValidateMessage(req, ikey));
+
req->operation = UNC_OP_CONTROL;
- ConfigKeyVal *ikey4 = new ConfigKeyVal(UNC_KT_VBR_IF,
- IpctSt::kIpcStKeyVbrIf,
- key, cfgval);
- EXPECT_EQ(UPLL_RC_ERR_NOT_ALLOWED_FOR_THIS_DT, vbr.ValidateMessage(req, ikey));
+ key_vbr_if *key1(UT_CLONE(key_vbr_if, key));
+ val_vbr_if *val1(UT_CLONE(val_vbr_if, val));
+ ConfigVal *cfgval1(new ConfigVal(IpctSt::kIpcStValVbrIf, val1));
+ ConfigKeyVal *ikey1(new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf,
+ key1, cfgval1));
+ EXPECT_EQ(UPLL_RC_ERR_NOT_ALLOWED_FOR_THIS_DT,
+ vbr.ValidateMessage(req, ikey1));
req->operation = UNC_OP_UPDATE;
- ConfigVal *cfgval1 = new ConfigVal(IpctSt::kIpcStValVbr, val);
- ConfigKeyVal *ikey1 = new ConfigKeyVal(UNC_KT_VBR_IF,
- IpctSt::kIpcStKeyVbrIf,
- key, cfgval1);
- EXPECT_EQ(UPLL_RC_ERR_BAD_REQUEST, vbr.ValidateMessage(req, ikey1));
-
- ConfigVal *cfgval2 = NULL;
- ConfigKeyVal *ikey2 = new ConfigKeyVal(UNC_KT_VBR_IF,
- IpctSt::kIpcStKeyVbrIf,
- key, cfgval2);
+ key_vbr_if *key2(UT_CLONE(key_vbr_if, key));
+ val_vbr_if *val2(UT_CLONE(val_vbr_if, val));
+ ConfigVal *cfgval2(new ConfigVal(IpctSt::kIpcStValVbr, val2));
+ ConfigKeyVal *ikey2(new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf,
+ key2, cfgval2));
EXPECT_EQ(UPLL_RC_ERR_BAD_REQUEST, vbr.ValidateMessage(req, ikey2));
- val = NULL;
- ConfigVal *cfgval3 = new ConfigVal(IpctSt::kIpcStValVtn, val);
- ConfigKeyVal *ikey3 = new ConfigKeyVal(UNC_KT_VBR_IF,
- IpctSt::kIpcStKeyVbrIf,
- key, cfgval3);
+ key_vbr_if *key3(UT_CLONE(key_vbr_if, key));
+ ConfigVal *cfgval3(NULL);
+ ConfigKeyVal *ikey3(new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf,
+ key3, cfgval3));
EXPECT_EQ(UPLL_RC_ERR_BAD_REQUEST, vbr.ValidateMessage(req, ikey3));
+
+ key_vbr_if *key4(UT_CLONE(key_vbr_if, key));
+ ConfigVal *cfgval4(new ConfigVal(IpctSt::kIpcStValVtn, NULL));
+ ConfigKeyVal *ikey4(new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf,
+ key4, cfgval4));
+ EXPECT_EQ(UPLL_RC_ERR_BAD_REQUEST, vbr.ValidateMessage(req, ikey4));
+
delete ikey;
+ delete ikey1;
+ delete ikey2;
+ delete ikey3;
+ delete ikey4;
}
-TEST(ValidateMessage, ValidateMessage_03) {
+TEST_F(VbrIfMoMgrTest, ValidateMessage_03) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
IpctSt::kIpcStKeyVbrIf,
key, cfgval);
- IpcReqRespHeader *req;
- req = reinterpret_cast<IpcReqRespHeader *>(malloc
- (sizeof(IpcReqRespHeader)));
- memset(req,0,sizeof(IpcReqRespHeader));
+ IPC_REQ_RESP_HEADER_DECL(req);
req->clnt_sess_id = 5;
req->config_id = 14;
req->rep_count = 100;
req->option2 = UNC_OPT2_NONE;
req->option1 = UNC_OPT1_NORMAL;
- ConfigVal *cfgval1 = new ConfigVal(IpctSt::kIpcStValVbrIf, val);
- ConfigKeyVal *ikey1 = new ConfigKeyVal(UNC_KT_VBR_IF,
- IpctSt::kIpcStKeyVbrIf,
- key, cfgval1);
+ key_vbr_if *key1(UT_CLONE(key_vbr_if, key));
+ val_vbr_if *val1(UT_CLONE(val_vbr_if, val));
+ ConfigVal *cfgval1(new ConfigVal(IpctSt::kIpcStValVbrIf, val1));
+ ConfigKeyVal *ikey1(new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf,
+ key1, cfgval1));
EXPECT_EQ(UPLL_RC_SUCCESS, vbr.ValidateMessage(req, ikey1));
- ConfigVal *cfgval2 = NULL;
- ConfigKeyVal *ikey2 = new ConfigKeyVal(UNC_KT_VBR_IF,
- IpctSt::kIpcStKeyVbrIf,
- key, cfgval1);
+ key_vbr_if *key2(UT_CLONE(key_vbr_if, key));
+ ConfigVal *cfgval2(NULL);
+ ConfigKeyVal *ikey2(new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf,
+ key2, cfgval2));
EXPECT_EQ(UPLL_RC_SUCCESS, vbr.ValidateMessage(req, ikey2));
- val_vbr_if *val1=NULL;
- ConfigVal *cfgval3 = new ConfigVal(IpctSt::kIpcStValVbrIf, val1);
- ConfigKeyVal *ikey3 = new ConfigKeyVal(UNC_KT_VBR_IF,
- IpctSt::kIpcStKeyVbrIf,
- key, cfgval3);
+ key_vbr_if *key3(UT_CLONE(key_vbr_if, key));
+ val_vbr_if *val3(NULL);
+ ConfigVal *cfgval3(new ConfigVal(IpctSt::kIpcStValVbrIf, val3));
+ ConfigKeyVal *ikey3(new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf,
+ key3, cfgval3));
EXPECT_EQ(UPLL_RC_SUCCESS, vbr.ValidateMessage(req, ikey3));
+
+ delete ikey;
+ delete ikey1;
+ delete ikey2;
+ delete ikey3;
}
-TEST(ValidateMessage, ValidateMessage_04) {
+TEST_F(VbrIfMoMgrTest, ValidateMessage_04) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
IpctSt::kIpcStKeyVbrIf,
key, cfgval);
- IpcReqRespHeader *req;
- req = reinterpret_cast<IpcReqRespHeader *>(malloc
- (sizeof(IpcReqRespHeader)));
- memset(req,0,sizeof(IpcReqRespHeader));
+ IPC_REQ_RESP_HEADER_DECL(req);
req->clnt_sess_id = 5;
req->config_id = 14;
req->rep_count = 100;
req->option2 = UNC_OPT2_NONE;
req->option1 = UNC_OPT1_NORMAL;
- ConfigVal *cfgval1 = new ConfigVal(IpctSt::kIpcStValVbrIf, val);
- ConfigKeyVal *ikey1 = new ConfigKeyVal(UNC_KT_VBR_IF,
- IpctSt::kIpcStKeyVbrIf,
- key, cfgval1);
+ key_vbr_if *key1(UT_CLONE(key_vbr_if, key));
+ val_vbr_if *val1(UT_CLONE(val_vbr_if, val));
+ ConfigVal *cfgval1(new ConfigVal(IpctSt::kIpcStValVbrIf, val1));
+ ConfigKeyVal *ikey1(new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf,
+ key1, cfgval1));
EXPECT_EQ(UPLL_RC_SUCCESS, vbr.ValidateMessage(req, ikey1));
- ConfigVal *cfgval2 = NULL;
- ConfigKeyVal *ikey2 = new ConfigKeyVal(UNC_KT_VBR_IF,
- IpctSt::kIpcStKeyVbrIf,
- key, cfgval1);
+ key_vbr_if *key2(UT_CLONE(key_vbr_if, key));
+ ConfigVal *cfgval2(NULL);
+ ConfigKeyVal *ikey2(new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf,
+ key2, cfgval2));
EXPECT_EQ(UPLL_RC_SUCCESS, vbr.ValidateMessage(req, ikey2));
- val_vbr_if *val1=NULL;
- ConfigVal *cfgval3 = new ConfigVal(IpctSt::kIpcStValVbrIf, val1);
- ConfigKeyVal *ikey3 = new ConfigKeyVal(UNC_KT_VBR_IF,
- IpctSt::kIpcStKeyVbrIf,
- key, cfgval3);
+ key_vbr_if *key3(UT_CLONE(key_vbr_if, key));
+ val_vbr_if *val3(NULL);
+ ConfigVal *cfgval3(new ConfigVal(IpctSt::kIpcStValVbrIf, val3));
+ ConfigKeyVal *ikey3(new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf,
+ key3, cfgval3));
EXPECT_EQ(UPLL_RC_SUCCESS, vbr.ValidateMessage(req, ikey3));
-}
-TEST(ValidateMessage, ValidateMessage_06) {
+ delete ikey;
+ delete ikey1;
+ delete ikey2;
+ delete ikey3;
+}
+TEST_F(VbrIfMoMgrTest, ValidateMessage_06) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
IpctSt::kIpcStKeyVbrIf,
key, cfgval);
- IpcReqRespHeader *req;
- req = reinterpret_cast<IpcReqRespHeader *>(malloc
- (sizeof(IpcReqRespHeader)));
- memset(req,0,sizeof(IpcReqRespHeader));
+ IPC_REQ_RESP_HEADER_DECL(req);
req->clnt_sess_id = 5;
req->config_id = 14;
req->rep_count = 100;
req->option2 = UNC_OPT2_NONE;
req->option1 = UNC_OPT1_NORMAL;
- ConfigVal *cfgval1 = new ConfigVal(IpctSt::kIpcStValVbrIf, val);
- ConfigKeyVal *ikey1 = new ConfigKeyVal(UNC_KT_VBR_IF,
- IpctSt::kIpcStKeyVbrIf,
- key, cfgval1);
+ key_vbr_if *key1(UT_CLONE(key_vbr_if, key));
+ val_vbr_if *val1(UT_CLONE(val_vbr_if, val));
+ ConfigVal *cfgval1(new ConfigVal(IpctSt::kIpcStValVbrIf, val1));
+ ConfigKeyVal *ikey1(new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf,
+ key1, cfgval1));
EXPECT_EQ(UPLL_RC_SUCCESS, vbr.ValidateMessage(req, ikey1));
- ConfigVal *cfgval2 = NULL;
- ConfigKeyVal *ikey2 = new ConfigKeyVal(UNC_KT_VBR_IF,
- IpctSt::kIpcStKeyVbrIf,
- key, cfgval1);
+ key_vbr_if *key2(UT_CLONE(key_vbr_if, key));
+ ConfigVal *cfgval2(NULL);
+ ConfigKeyVal *ikey2(new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf,
+ key2, cfgval2));
EXPECT_EQ(UPLL_RC_SUCCESS, vbr.ValidateMessage(req, ikey2));
- val_vbr_if *val1=NULL;
- ConfigVal *cfgval3 = new ConfigVal(IpctSt::kIpcStValVbrIf, val1);
- ConfigKeyVal *ikey3 = new ConfigKeyVal(UNC_KT_VBR_IF,
- IpctSt::kIpcStKeyVbrIf,
- key, cfgval3);
+ key_vbr_if *key3(UT_CLONE(key_vbr_if, key));
+ val_vbr_if *val3(NULL);
+ ConfigVal *cfgval3(new ConfigVal(IpctSt::kIpcStValVbrIf, val3));
+ ConfigKeyVal *ikey3(new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf,
+ key3, cfgval3));
EXPECT_EQ(UPLL_RC_SUCCESS, vbr.ValidateMessage(req, ikey3));
+
req->operation = UNC_OP_DELETE;
- ConfigVal *cfgval4 = new ConfigVal(IpctSt::kIpcStValVbrIf, val);
- ConfigKeyVal *ikey4 = new ConfigKeyVal(UNC_KT_VBR_IF,
- IpctSt::kIpcStKeyVbrIf,
- key, cfgval4);
+ key_vbr_if *key4(UT_CLONE(key_vbr_if, key));
+ val_vbr_if *val4(UT_CLONE(val_vbr_if, val));
+ pfc_strlcpy(reinterpret_cast<char *>(key4->if_name), "IF_1",
+ sizeof(key4->if_name));
+
+ ConfigVal *cfgval4(new ConfigVal(IpctSt::kIpcStValVbrIf, val4));
+ ConfigKeyVal *ikey4(new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf,
+ key4, cfgval4));
+ EXPECT_EQ(UPLL_RC_SUCCESS, vbr.ValidateMessage(req, ikey4));
+
+ delete ikey;
+ delete ikey1;
+ delete ikey2;
+ delete ikey3;
+ delete ikey4;
}
-TEST(ValidateMessage, ValidateMessage_05) {
+TEST_F(VbrIfMoMgrTest, ValidateMessage_05) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
IpctSt::kIpcStKeyVbrIf,
key, cfgval);
- IpcReqRespHeader *req;
- req = reinterpret_cast<IpcReqRespHeader *>(malloc
- (sizeof(IpcReqRespHeader)));
- memset(req,0,sizeof(IpcReqRespHeader));
+ IPC_REQ_RESP_HEADER_DECL(req);
req->clnt_sess_id = 5;
req->config_id = 14;
req->rep_count = 100;
req->option2 = UNC_OPT2_NONE;
req->option1 = UNC_OPT1_NORMAL;
- ConfigVal *cfgval1 = new ConfigVal(IpctSt::kIpcStValVbrIf, val);
- ConfigKeyVal *ikey1 = new ConfigKeyVal(UNC_KT_VBR_IF,
- IpctSt::kIpcStKeyVbrIf,
- key, cfgval1);
+ key_vbr_if *key1(UT_CLONE(key_vbr_if, key));
+ val_vbr_if *val1(UT_CLONE(val_vbr_if, val));
+ ConfigVal *cfgval1(new ConfigVal(IpctSt::kIpcStValVbrIf, val1));
+ ConfigKeyVal *ikey1(new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf,
+ key1, cfgval1));
EXPECT_EQ(UPLL_RC_SUCCESS, vbr.ValidateMessage(req, ikey1));
- ConfigVal *cfgval2 = NULL;
- ConfigKeyVal *ikey2 = new ConfigKeyVal(UNC_KT_VBR_IF,
- IpctSt::kIpcStKeyVbrIf,
- key, cfgval1);
+ key_vbr_if *key2(UT_CLONE(key_vbr_if, key));
+ ConfigVal *cfgval2(NULL);
+ ConfigKeyVal *ikey2(new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf,
+ key2, cfgval2));
EXPECT_EQ(UPLL_RC_SUCCESS, vbr.ValidateMessage(req, ikey2));
- val_vbr_if *val1=NULL;
- ConfigVal *cfgval3 = new ConfigVal(IpctSt::kIpcStValVbrIf, val1);
- ConfigKeyVal *ikey3 = new ConfigKeyVal(UNC_KT_VBR_IF,
- IpctSt::kIpcStKeyVbrIf,
- key, cfgval3);
+ key_vbr_if *key3(UT_CLONE(key_vbr_if, key));
+ val_vbr_if *val3(NULL);
+ ConfigVal *cfgval3(new ConfigVal(IpctSt::kIpcStValVbrIf, val3));
+ ConfigKeyVal *ikey3(new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf,
+ key3, cfgval3));
EXPECT_EQ(UPLL_RC_SUCCESS, vbr.ValidateMessage(req, ikey3));
req->option2 = UNC_OPT2_L2DOMAIN;
EXPECT_EQ(UPLL_RC_ERR_INVALID_OPTION2, vbr.ValidateMessage(req, ikey3));
+ delete ikey;
+ delete ikey1;
+ delete ikey2;
+ delete ikey3;
}
-TEST(ValidateMessage, ValidateMessage_07) {
+TEST_F(VbrIfMoMgrTest, ValidateMessage_07) {
VbrIfMoMgr vbr;
key_vbr_if *key;
val_vbr_if *val;
GetKeyValStruct(key, val);
- ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVbrIf, val);
- ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF,
- IpctSt::kIpcStKeyVbrIf,
- key, cfgval);
-
- IpcReqRespHeader *req;
- req = reinterpret_cast<IpcReqRespHeader *>(malloc
- (sizeof(IpcReqRespHeader)));
- memset(req,0,sizeof(IpcReqRespHeader));
+ IPC_REQ_RESP_HEADER_DECL(req);
req->clnt_sess_id = 5;
req->config_id = 14;
req->rep_count = 100;
req->datatype = UPLL_DT_CANDIDATE;
req->operation = UNC_OP_DELETE;
- ConfigVal *cfgval1 = new ConfigVal(IpctSt::kIpcStValVbrIf, val);
- ConfigKeyVal *ikey1 = new ConfigKeyVal(UNC_KT_VBR_IF,
- IpctSt::kIpcStKeyVbrIf,
- key, cfgval1);
- EXPECT_EQ(UPLL_RC_SUCCESS, vbr.ValidateMessage(req, ikey1));
+ ConfigVal *cfgval(new ConfigVal(IpctSt::kIpcStValVbrIf, val));
+ ConfigKeyVal *ikey(new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf,
+ key, cfgval));
+ EXPECT_EQ(UPLL_RC_SUCCESS, vbr.ValidateMessage(req, ikey));
+
+ delete ikey;
}
-TEST(GetVbrIfFromVexternal,TmpckvNonNull){
+
+TEST_F(VbrIfMoMgrTest, GetVbrIfFromVexternal_TmpckvNonNull){
VbrIfMoMgr obj;
- DalDmlIntf * dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
key_vbr_if *key;
val_vbr_if *val;
uint8_t vtnname=1;
uint8_t *vexternal=&vexternal1;
uint8_t *vtn1=&vtnname;
GetKeyValStruct(key, val);
- ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVbrIf, val);
- ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF,
- IpctSt::kIpcStKeyVbrIf,key,cfgval);
+
+ ConfigVal *cfgval(new ConfigVal(IpctSt::kIpcStValVbrIf, val));
+ ConfigKeyVal *ikey(new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf,
+ key ,cfgval));
EXPECT_EQ(UPLL_RC_ERR_GENERIC,obj.GetVbrIfFromVExternal(vtn1,vexternal,ikey,dmi));
-delete ikey;
+ delete ikey;
}
-TEST(GetVbrIfFromVexternal,TmpckvNull){
+TEST_F(VbrIfMoMgrTest, GetVbrIfFromVexternal_TmpckvNull){
VbrIfMoMgr obj;
- DalDmlIntf * dmi= new DalOdbcMgr();
- key_vbr_if *key;
- val_vbr_if *val;
- uint8_t vtnname=1;
- uint8_t vexternal1=1;
- uint8_t *vexternal=&vexternal1;
- uint8_t *vtn1=&vtnname;
- GetKeyValStruct(key, val);
+ DalDmlIntf *dmi(getDalDmlIntf());
+ uint8_t vtnname[2] = {1, 0};
+ uint8_t vexternal[2] = {1, 0};
ConfigKeyVal *ikey =NULL;
- EXPECT_EQ(UPLL_RC_ERR_GENERIC,obj.GetVbrIfFromVExternal(vtn1,vexternal,ikey,dmi));
+ EXPECT_EQ(UPLL_RC_ERR_GENERIC,
+ obj.GetVbrIfFromVExternal(vtnname, vexternal, ikey, dmi));
}
-TEST(PortStatusHandler,TrueOperStatus){
+
+TEST_F(VbrIfMoMgrTest, PortStatusHandler_TrueOperStatus){
VbrIfMoMgr obj;
- DalDmlIntf * dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
const char *ctrlr_name="PFC_1";
const char * domain_name="DOMAIN_1";
const char *port_id="VLAN";
EXPECT_EQ(UPLL_RC_ERR_GENERIC,obj.PortStatusHandler(ctrlr_name,domain_name,port_id,oper_status,dmi));
}
-TEST(PortStatusHandler,FalseOperStatus){
+TEST_F(VbrIfMoMgrTest, PortStatusHandler_FalseOperStatus){
VbrIfMoMgr obj;
- val_vbr_if * val;
- DalDmlIntf * dmi= new DalOdbcMgr();
- key_vbr_if * key;
- GetKeyValStruct(key,val);
+ DalDmlIntf *dmi(getDalDmlIntf());
+
const char *ctrlr_name="PFC_1";
const char * domain_name="DOMAIN_1";
const char *port_id="VLAN";
map.insert(std::make_pair(0,kDalRcSuccess));
DalOdbcMgr::stub_setNextRecordResultCodes(map);
EXPECT_EQ(UPLL_RC_ERR_GENERIC,obj.PortStatusHandler(ctrlr_name,domain_name,port_id,oper_status,dmi));
- DalOdbcMgr::clearStubData();
}
-TEST(PortStatusHandler,FalseOperStatus_02){
+
+TEST_F(VbrIfMoMgrTest, PortStatusHandler_FalseOperStatus_02){
VbrIfMoMgr obj;
- val_vbr_if * val;
- DalDmlIntf * dmi= new DalOdbcMgr();
- key_vbr_if * key;
- GetKeyValStruct(key,val);
+ DalDmlIntf *dmi(getDalDmlIntf());
+
const char *ctrlr_name="PFC_1";
const char * domain_name="DOMAIN_1";
const char *port_id="VLAN";
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::SINGLE,kDalRcSuccess);
EXPECT_EQ(UPLL_RC_ERR_GENERIC,obj.PortStatusHandler(ctrlr_name,domain_name,port_id,oper_status,dmi));
- DalOdbcMgr::clearStubData();
}
-TEST(UpdateConfigVal, UpdateConfigVal_07) {
+
+TEST_F(VbrIfMoMgrTest, UpdateConfigVal_UpdateConfigVal_07) {
VbrIfMoMgr vbr;
upll_keytype_datatype_t datatype=UPLL_DT_CANDIDATE;
key_vbr_if *key;
- val_vbr_if *val;
+ val_drv_vbr_if *val;
- DalDmlIntf * dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::SINGLE,kDalRcSuccess);
- GetKeyValStruct(key, val);
+ GetKeyValDrvStruct(key, val);
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIf, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VRT_IF, IpctSt::kIpcStKeyVbrIf, key, config_val);
EXPECT_EQ(UPLL_RC_ERR_GENERIC,vbr.UpdateConfigVal(ikey,datatype,dmi));
+
+ delete ikey;
}
-TEST(vbrif_momgr_test,CompareValidValue_auditTrue) {
+
+TEST_F(VbrIfMoMgrTest, CompareValidValue_auditTrue) {
VbrIfMoMgr obj;
- val_vbr_if *val1 =
- reinterpret_cast<val_vbr_if *>(malloc(sizeof(val_vbr_if)));
- val_vbr_if *val2 =
- reinterpret_cast<val_vbr_if *>(malloc(sizeof(val_vbr_if)));
-
- for ( unsigned int loop = 0; loop < sizeof(val1->valid);
- ++loop ) {
- val1->valid[loop] = UNC_VF_INVALID;
- val2->valid[loop] = UNC_VF_VALID;
+ val_drv_vbr_if *val1(ZALLOC_TYPE(val_drv_vbr_if));
+ val_drv_vbr_if *val2(ZALLOC_TYPE(val_drv_vbr_if));
+ void *v1(val1);
+ void *v2(val2);
+
+ for (unsigned int loop = 0; loop < sizeof(val1->valid); ++loop) {
+ val1->valid[loop] = UNC_VF_INVALID;
+ val2->valid[loop] = UNC_VF_VALID;
}
- obj.CompareValidValue((void*&)val1, (void*)val2, true);
- for ( unsigned int loop = 0; loop < sizeof(val1->valid);
- ++loop ) {
- EXPECT_EQ(UNC_VF_VALID_NO_VALUE, val1->valid[loop]);
-}
-free(val1); free(val2);
+ ASSERT_FALSE(obj.CompareValidValue(v1, v2, true));
+
+ ASSERT_EQ(UNC_VF_INVALID, val1->valid[0]);
+ for (unsigned int loop = 1; loop < sizeof(val1->valid); ++loop) {
+ EXPECT_EQ(UNC_VF_VALID_NO_VALUE, val1->valid[loop]);
+ }
+ free(val1);
+ free(val2);
}
-TEST(vbrif_momgr_test,CompareValidValue_auditfalse) {
+
+TEST_F(VbrIfMoMgrTest, CompareValidValue_auditfalse) {
VbrIfMoMgr obj;
- val_vbr_if *val1 =
- reinterpret_cast<val_vbr_if *>(malloc(sizeof(val_vbr_if)));
- val_vbr_if *val2 =
- reinterpret_cast<val_vbr_if *>(malloc(sizeof(val_vbr_if)));
+ val_drv_vbr_if *val1(ZALLOC_TYPE(val_drv_vbr_if));
+ val_drv_vbr_if *val2(ZALLOC_TYPE(val_drv_vbr_if));
+ void *v1(val1);
+ void *v2(val2);
+
val1->valid[1] = UNC_VF_VALID;
val2->valid[1] = UNC_VF_VALID;
- val1->admin_status = 1;
- val2->admin_status = 1;
- obj.CompareValidValue((void*&)val1, (void*)val2, false);
+ val1->vbr_if_val.admin_status = 1;
+ val2->vbr_if_val.admin_status = 1;
+ ASSERT_TRUE(obj.CompareValidValue(v1, v2, false));
+
+ free(val1);
+ free(val2);
}
-TEST(vbrif_momgr_test,CompareValidValue_Invalid_case1) {
+TEST_F(VbrIfMoMgrTest, CompareValidValue_Invalid_case1) {
VbrIfMoMgr obj;
- val_vbr_if *val1 =
- reinterpret_cast<val_vbr_if *>(malloc(sizeof(val_vbr_if)));
- memset(val1,0 ,sizeof(val_vbr_if));
- val_vbr_if *val2 =
- reinterpret_cast<val_vbr_if *>(malloc(sizeof(val_vbr_if)));
- memset(val2,0 ,sizeof(val_vbr_if));
- for (unsigned int loop = 0;loop < sizeof(val1->valid) / sizeof(uint8_t); ++loop) {
+ val_drv_vbr_if *val1(ZALLOC_TYPE(val_drv_vbr_if));
+ val_drv_vbr_if *val2(ZALLOC_TYPE(val_drv_vbr_if));
+ void *v1(val1);
+ void *v2(val2);
+
+ for (unsigned int loop = 0;loop < sizeof(val1->valid) / sizeof(uint8_t);
+ ++loop) {
val1->valid[loop] = UNC_VF_VALID;
val2->valid[loop] = UNC_VF_VALID;
}
- obj.CompareValidValue((void*&)val1, (void*)val2, false);
-}
+ ASSERT_TRUE(obj.CompareValidValue(v1, v2, false));
+
+ free(val1);
+ free(val2);
}
#include <gtest/gtest.h>
#include <pfc/ipc.h>
#include <pfc/ipc_struct.h>
+#include <pfc/util.h>
#include <unc/keytype.h>
#include <pfcxx/synch.hh>
-#include "vbr_momgr.hh"
-#include "unc/keytype.h"
-#include "config_mgr.hh"
-#include "dal_odbc_mgr.hh"
-#include "dal_dml_intf.hh"
-#include "capa_intf.hh"
-#include "capa_module_stub.hh"
-#include "tclib_module.hh"
-#include "ctrlr_mgr.hh"
-#include "momgr_intf_stub.hh"
-#include "alarm.hh"
+#include <vbr_momgr.hh>
+#include <unc/keytype.h>
+#include <config_mgr.hh>
+#include <dal_odbc_mgr.hh>
+#include <dal_dml_intf.hh>
+#include <capa_intf.hh>
+#include <capa_module_stub.hh>
+#include <tclib_module.hh>
+#include <ctrlr_mgr.hh>
+#include <momgr_intf_stub.hh>
+#include <alarm.hh>
+#include "ut_util.hh"
using ::testing::TestWithParam;
using ::testing::Values;
using namespace unc::upll::dal;
using namespace unc::upll::kt_momgr;
using namespace unc::upll::config_momgr;
+using namespace unc::upll::test;
using namespace unc::capa;
using namespace pfc::core;
using namespace unc::upll::dal::schema::table;
-namespace {
-
-class VbrMoMgrTest: public VbrMoMgr, public ::testing::Test {
- public:
- protected:
- virtual void SetUp() {}
-
- virtual void TearDown() {}
-
+class VbrMoMgrTest
+ : public UpllTestEnv
+{
};
+static void GetKeyStruct(key_vbr *&kst) {
+ const char *vtn_name = "VTN_1";
+ const char *vbr_name = "VBR_1";
-uint32_t parseIPV4string(const char* ipAddress) {
- char ipbytes[4];
- sscanf(ipAddress, "%d.%d.%d.%d", &ipbytes[3], &ipbytes[2], &ipbytes[1], &ipbytes[0]);
- return ipbytes[0] & ipbytes[1] << 8 & ipbytes[2] << 16 & ipbytes[3] << 24;
+ kst = ZALLOC_TYPE(key_vbr);
+ strncpy(reinterpret_cast<char *>(kst->vtn_key.vtn_name),
+ vtn_name, strlen(vtn_name)+1);
+ strncpy(reinterpret_cast<char *>(kst->vbridge_name),
+ vbr_name, strlen(vbr_name)+1);
}
-void GetKeyValStruct(key_vbr *&kst, val_vbr *&vst) {
-
- const char *vtn_name = "VTN_1";
- const char *vbr_name = "VBR_1";
+static void GetValStruct(val_vbr *&vst) {
const char *desc = "thisisvbridge";
const char *ctrlr_id = "Controller1";
- kst = reinterpret_cast<key_vbr *>(malloc
- (sizeof(key_vbr)));
- memset(kst,0,sizeof(key_vbr));
- strncpy(reinterpret_cast<char *>(kst->vtn_key.vtn_name),
- vtn_name, strlen(vtn_name)+1);
- strncpy(reinterpret_cast<char *>(kst->vbridge_name),
- vbr_name, strlen(vbr_name)+1);
- vst = reinterpret_cast<val_vbr *>(malloc
- (sizeof(val_vbr)));
- memset(vst,0,sizeof(val_vbr));
- memset(vst->controller_id,'\0',
- (sizeof(vst->controller_id)/sizeof(vst->controller_id[0])));
- for(unsigned int loop = 0; loop < sizeof(vst->valid)/
- sizeof(vst->valid[0]); ++loop) {
+
+ vst = ZALLOC_TYPE(val_vbr);
+ for(unsigned int loop = 0; loop < PFC_ARRAY_CAPACITY(vst->valid); ++loop) {
vst->valid[loop] = UNC_VF_VALID;
}
+
vst->cs_row_status = UNC_VF_VALID;
- for(unsigned int loop = 0; loop < sizeof(vst->valid)/
- sizeof(vst->valid[0]); ++loop) {
+
+ for(unsigned int loop = 0; loop < PFC_ARRAY_CAPACITY(vst->cs_attr); ++loop) {
vst->cs_attr[loop] = UNC_CS_APPLIED;
}
+
strncpy(reinterpret_cast<char *>(vst->vbr_description), desc,
- strlen(desc)+1);
+ strlen(desc)+1);
strncpy(reinterpret_cast<char *>(vst->controller_id), ctrlr_id,
- strlen(ctrlr_id)+1);
+ strlen(ctrlr_id)+1);
+
vst->host_addr_prefixlen = (uint8_t)1;
struct sockaddr_in sa;
inet_pton(AF_INET, "192.168.1.2", &(sa.sin_addr));
vst->host_addr.s_addr = sa.sin_addr.s_addr;
-
}
-TEST_F(VbrMoMgrTest, ValidateVbrKeySuccess) {
+static void GetKeyValStruct(key_vbr *&kst, val_vbr *&vst)
+{
+ GetKeyStruct(kst);
+ GetValStruct(vst);
+}
+TEST_F(VbrMoMgrTest, ValidateVbrKey_Success) {
VbrMoMgr vbrmomgr;
- key_vbr *key;
+ key_vbr *key(ZALLOC_TYPE(key_vbr));
const char *vtn_name = "VTN_1";
const char *vbr_name = "VBR_1";
- key = reinterpret_cast<key_vbr *>(malloc
- (sizeof(key_vbr)));
- memset(key,0,sizeof(key_vbr));
strncpy(reinterpret_cast<char *>(key->vtn_key.vtn_name),
- vtn_name, strlen(vtn_name)+1);
+ vtn_name, strlen(vtn_name)+1);
strncpy(reinterpret_cast<char *>(key->vbridge_name),
- vbr_name, strlen(vbr_name)+1);
+ vbr_name, strlen(vbr_name)+1);
EXPECT_EQ(UPLL_RC_SUCCESS, vbrmomgr.ValidateVbrKey(key));
-}
-
-
-TEST_F(VbrMoMgrTest, ValidateVbrKeyInvalidVtnName) {
+ free(key);
+}
+TEST_F(VbrMoMgrTest, ValidateVbrKey_InvalidVtnName) {
VbrMoMgr vbrmomgr;
- key_vbr *key;
+ key_vbr *key(ZALLOC_TYPE(key_vbr));
const char *vtn_name = "";
const char *vbr_name = "VBR_1";
- key = reinterpret_cast<key_vbr *>(malloc
- (sizeof(key_vbr)));
- memset(key,0,sizeof(key_vbr));
strncpy(reinterpret_cast<char *>(key->vtn_key.vtn_name),
- vtn_name, strlen(vtn_name)+1);
+ vtn_name, strlen(vtn_name)+1);
strncpy(reinterpret_cast<char *>(key->vbridge_name),
- vbr_name, strlen(vbr_name)+1);
+ vbr_name, strlen(vbr_name)+1);
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, vbrmomgr.ValidateVbrKey(key));
-}
-TEST_F(VbrMoMgrTest, ValidateVbrKeyInvalidVbrName) {
+ free(key);
+}
+TEST_F(VbrMoMgrTest, ValidateVbrKey_InvalidVbrName) {
VbrMoMgr vbrmomgr;
- key_vbr *key;
+ key_vbr *key(ZALLOC_TYPE(key_vbr));
const char *vtn_name = "VTN_1";
const char *vbr_name = "";
- key = reinterpret_cast<key_vbr *>(malloc
- (sizeof(key_vbr)));
- memset(key,0,sizeof(key_vbr));
strncpy(reinterpret_cast<char *>(key->vtn_key.vtn_name),
- vtn_name, strlen(vtn_name)+1);
+ vtn_name, strlen(vtn_name)+1);
strncpy(reinterpret_cast<char *>(key->vbridge_name),
- vbr_name, strlen(vbr_name)+1);
+ vbr_name, strlen(vbr_name)+1);
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, vbrmomgr.ValidateVbrKey(key));
-}
-TEST_F(VbrMoMgrTest, ValidateVbrKeyInvalidKeyStruct) {
+ free(key);
+}
+TEST_F(VbrMoMgrTest, ValidateVbrKey_InvalidKeyStruct) {
VbrMoMgr vbrmomgr;
key_vbr *key = NULL;
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, vbrmomgr.ValidateVbrKey(key));
-
}
-TEST_F(VbrMoMgrTest, ValidateVbrValueInvalidCtrlrID) {
-
+TEST_F(VbrMoMgrTest, ValidateVbrValue_InvalidCtrlrID) {
VbrMoMgr vbrmomgr;
uint32_t oper = UNC_OP_CREATE;
- key_vbr *key;
val_vbr *val;
- GetKeyValStruct(key, val);
+ GetValStruct(val);
string ctrlr_id = "Controller 1";
strncpy(reinterpret_cast<char *>(val->controller_id), ctrlr_id.c_str(),
strlen(ctrlr_id.c_str())+1);
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, vbrmomgr.ValidateVbrValue(val, oper));
+ free(val);
}
-TEST_F(VbrMoMgrTest, ValidateVbrValueInvalidDesc) {
-
+TEST_F(VbrMoMgrTest, ValidateVbrValue_InvalidDesc) {
VbrMoMgr vbrmomgr;
uint32_t oper = UNC_OP_CREATE;
- key_vbr *key;
val_vbr *val;
- GetKeyValStruct(key, val);
+ GetValStruct(val);
string desc = "vbr_description 1";
strncpy(reinterpret_cast<char *>(val->vbr_description), desc.c_str(),
strlen(desc.c_str())+1);
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, vbrmomgr.ValidateVbrValue(val, oper));
+ free(val);
}
-TEST_F(VbrMoMgrTest, ValidateVbrValueDescValidAttrInvalid) {
-
+TEST_F(VbrMoMgrTest, ValidateVbrValue_DescValidAttrInvalid) {
VbrMoMgr vbrmomgr;
uint32_t oper = UNC_OP_UPDATE;
- key_vbr *key;
val_vbr *val;
- GetKeyValStruct(key, val);
+ GetValStruct(val);
val->valid[UPLL_IDX_DESC_VBR] = UNC_VF_VALID_NO_VALUE;
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX , vbrmomgr.ValidateVbrValue(val, oper));
+ free(val);
}
-TEST_F(VbrMoMgrTest, ValidateVbrValuePrefLenValidAttrInvalid) {
-
+TEST_F(VbrMoMgrTest, ValidateVbrValue_PrefLenValidAttrInvalid) {
VbrMoMgr vbrmomgr;
uint32_t oper = UNC_OP_UPDATE;
- key_vbr *key;
val_vbr *val;
- GetKeyValStruct(key, val);
+ GetValStruct(val);
val->host_addr_prefixlen = 0;
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, vbrmomgr.ValidateVbrValue(val, oper));
val->valid[UPLL_IDX_HOST_ADDR_PREFIXLEN_VBR] = UNC_VF_VALID_NO_VALUE;
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, vbrmomgr.ValidateVbrValue(val, oper));
+ free(val);
}
-TEST_F(VbrMoMgrTest, ValidateVbrValueInvalidIP) {
-
+TEST_F(VbrMoMgrTest, ValidateVbrValue_InvalidIP) {
VbrMoMgr vbrmomgr;
uint32_t oper = UNC_OP_CREATE;
- key_vbr *key;
val_vbr *val;
- GetKeyValStruct(key, val);
- val->host_addr.s_addr = parseIPV4string("255.255.255.255");
+ GetValStruct(val);
+ val->host_addr.s_addr = 0xffffffffU;
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, vbrmomgr.ValidateVbrValue(val, oper));
+ free(val);
}
-TEST(ValidateVbrValue, invalidFlagNew) {
+TEST_F(VbrMoMgrTest, ValidateVbrValue_invalidFlagNew) {
VbrMoMgr vbr;
- val_vbr_t *valvbr = (val_vbr_t *)malloc(sizeof(val_vbr_t));
+ val_vbr_t *valvbr(ZALLOC_TYPE(val_vbr_t));
uint32_t op = UNC_OP_CREATE;
valvbr->valid[UPLL_IDX_DESC_VBR] = UNC_VF_INVALID;
strcpy((char*)valvbr->vbr_description,(const char *)"vbr1");
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX,vbr.ValidateVbrValue(valvbr,op));
+
+ free(valvbr);
}
-TEST(ValidateVbrValue, invalidFlag1) {
+TEST_F(VbrMoMgrTest, ValidateVbrValue_invalidFlag1) {
VbrMoMgr vbr;
- val_vbr_t *valvbr = (val_vbr_t *)malloc(sizeof(val_vbr_t));
+ val_vbr_t *valvbr(ZALLOC_TYPE(val_vbr_t));
uint32_t op = UNC_OP_UPDATE;
valvbr->valid[UPLL_IDX_DESC_VBR] = UNC_VF_INVALID;
strcpy((char*)valvbr->vbr_description,(const char *)"vbr1");
EXPECT_EQ(UPLL_RC_SUCCESS, vbr.ValidateVbrValue(valvbr,op));
+
+ free(valvbr);
}
-TEST(ValidateVbrValue, validFlag2) {
+TEST_F(VbrMoMgrTest, ValidateVbrValue_validFlag2) {
VbrMoMgr vbr;
- val_vbr_t *valvbr = (val_vbr_t *)malloc(sizeof(val_vbr_t));
+ val_vbr_t *valvbr(ZALLOC_TYPE(val_vbr_t));
uint32_t op = UNC_OP_UPDATE;
valvbr->valid[UPLL_IDX_HOST_ADDR_VBR] = UNC_VF_INVALID;
strcpy((char*)valvbr->vbr_description,(const char *)"vbr1");
EXPECT_EQ(UPLL_RC_SUCCESS, vbr.ValidateVbrValue(valvbr,op));
+
+ free(valvbr);
}
-TEST(ValidateVbrValue, validFlag3) {
+TEST_F(VbrMoMgrTest, ValidateVbrValue_validFlag3) {
VbrMoMgr vbr;
- val_vbr_t *valvbr = (val_vbr_t *)malloc(sizeof(val_vbr_t));
+ val_vbr_t *valvbr(ZALLOC_TYPE(val_vbr_t));
uint32_t op = UNC_OP_UPDATE;
valvbr->valid[UPLL_IDX_HOST_ADDR_PREFIXLEN_VBR] = UNC_VF_INVALID;
strcpy((char*)valvbr->vbr_description,(const char *)"vbr1");
EXPECT_EQ(UPLL_RC_SUCCESS, vbr.ValidateVbrValue(valvbr,op));
+
+ free(valvbr);
}
-TEST(ValidateVbrValue, validFlag4) {
+TEST_F(VbrMoMgrTest, ValidateVbrValue_validFlag4) {
VbrMoMgr vbr;
- val_vbr_t *valvbr = (val_vbr_t *)malloc(sizeof(val_vbr_t));
+ val_vbr_t *valvbr(ZALLOC_TYPE(val_vbr_t));
uint32_t op = UNC_OP_UPDATE;
valvbr->valid[UPLL_IDX_CONTROLLER_ID_VBR] = UNC_VF_INVALID;
strcpy((char*)valvbr->vbr_description,(const char *)"vbr1");
EXPECT_EQ(UPLL_RC_SUCCESS, vbr.ValidateVbrValue(valvbr,op));
+
+ free(valvbr);
}
-TEST(ValidateVbrValue, validFlag5) {
+
+TEST_F(VbrMoMgrTest, ValidateVbrValue_validFlag5) {
VbrMoMgr vbr;
- val_vbr_t *valvbr = (val_vbr_t *)malloc(sizeof(val_vbr_t));
+ val_vbr_t *valvbr(ZALLOC_TYPE(val_vbr_t));
uint32_t op = UNC_OP_UPDATE;
valvbr->valid[UPLL_IDX_DOMAIN_ID_VBR] = UNC_VF_INVALID;
strcpy((char*)valvbr->vbr_description,(const char *)"vbr1");
EXPECT_EQ(UPLL_RC_SUCCESS, vbr.ValidateVbrValue(valvbr,op));
+
+ free(valvbr);
}
-TEST(ValidateVbrValue, validFlag6) {
+
+TEST_F(VbrMoMgrTest, ValidateVbrValue_validFlag6) {
VbrMoMgr vbr;
- val_vbr_t *valvbr = (val_vbr_t *)malloc(sizeof(val_vbr_t));
+ val_vbr_t *valvbr(ZALLOC_TYPE(val_vbr_t));
uint32_t op = UNC_OP_UPDATE;
valvbr->valid[UPLL_IDX_PACKET_SIZE_PING] = UNC_VF_INVALID;
strcpy((char*)valvbr->vbr_description,(const char *)"vbr1");
EXPECT_EQ(UPLL_RC_SUCCESS, vbr.ValidateVbrValue(valvbr,op));
+
+ free(valvbr);
}
-TEST(ValidateVbrValue, validFlag7) {
+
+TEST_F(VbrMoMgrTest, ValidateVbrValue_validFlag7) {
VbrMoMgr vbr;
- val_vbr_t *valvbr = (val_vbr_t *)malloc(sizeof(val_vbr_t));
+ val_vbr_t *valvbr(ZALLOC_TYPE(val_vbr_t));
uint32_t op = UNC_OP_CREATE;
valvbr->valid[UPLL_IDX_CONTROLLER_ID_VBR] = UNC_VF_INVALID;
strcpy((char*)valvbr->vbr_description,(const char *)"vbr1");
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, vbr.ValidateVbrValue(valvbr,op));
+
+ free(valvbr);
}
-TEST(ValidateVbrValue, validFlag8) {
+TEST_F(VbrMoMgrTest, ValidateVbrValue_validFlag8) {
VbrMoMgr vbr;
- val_vbr_t *valvbr = (val_vbr_t *)malloc(sizeof(val_vbr_t));
+ val_vbr_t *valvbr(ZALLOC_TYPE(val_vbr_t));
uint32_t op = UNC_OP_CREATE;
valvbr->valid[UPLL_IDX_DOMAIN_ID_VBR] = UNC_VF_INVALID;
strcpy((char*)valvbr->vbr_description,(const char *)"vbr1");
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, vbr.ValidateVbrValue(valvbr,op));
+
+ free(valvbr);
}
-TEST(ValidateVbrValue, validFlag9) {
+TEST_F(VbrMoMgrTest, ValidateVbrValue_validFlag9) {
VbrMoMgr vbr;
- val_vbr_t *valvbr = (val_vbr_t *)malloc(sizeof(val_vbr_t));
+ val_vbr_t *valvbr(ZALLOC_TYPE(val_vbr_t));
uint32_t op = UNC_OP_CREATE;
valvbr->valid[UPLL_IDX_HOST_ADDR_PREFIXLEN_VBR] = UNC_VF_INVALID;
strcpy((char*)valvbr->vbr_description,(const char *)"vbr1");
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, vbr.ValidateVbrValue(valvbr,op));
+
+ free(valvbr);
}
-TEST(ValidateVbrValue, validFlag10) {
+TEST_F(VbrMoMgrTest, ValidateVbrValue_validFlag10) {
VbrMoMgr vbr;
- val_vbr_t *valvbr = (val_vbr_t *)malloc(sizeof(val_vbr_t));
+ val_vbr_t *valvbr(ZALLOC_TYPE(val_vbr_t));
uint32_t op = UNC_OP_CREATE;
valvbr->valid[UPLL_IDX_DESC_VBR] = UNC_VF_VALID;
strcpy((char*)valvbr->vbr_description,(const char *)"vbr1");
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX,vbr.ValidateVbrValue(valvbr,op));
+
+ free(valvbr);
}
-TEST(ValidateVbrValue, validFlag11) {
+TEST_F(VbrMoMgrTest, ValidateVbrValue_validFlag11) {
VbrMoMgr vbr;
- val_vbr_t *valvbr = (val_vbr_t *)malloc(sizeof(val_vbr_t));
+ val_vbr_t *valvbr(ZALLOC_TYPE(val_vbr_t));
uint32_t op = UNC_OP_CREATE;
valvbr->valid[UPLL_IDX_HOST_ADDR_VBR] = UNC_VF_VALID;
strcpy((char*)valvbr->vbr_description,(const char *)"vbr1");
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX,vbr.ValidateVbrValue(valvbr,op));
+
+ free(valvbr);
}
-TEST(ValidateVbrValue, validFlag12) {
+
+TEST_F(VbrMoMgrTest, ValidateVbrValue_validFlag12) {
VbrMoMgr vbr;
- val_vbr_t *valvbr = (val_vbr_t *)malloc(sizeof(val_vbr_t));
+ val_vbr_t *valvbr(ZALLOC_TYPE(val_vbr_t));
uint32_t op = UNC_OP_CREATE;
valvbr->valid[UPLL_IDX_HOST_ADDR_PREFIXLEN_VBR] = UNC_VF_VALID;
strcpy((char*)valvbr->vbr_description,(const char *)"vbr1");
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX,vbr.ValidateVbrValue(valvbr,op));
-}
-
+ free(valvbr);
+}
TEST_F(VbrMoMgrTest, GetParentConfigKeySuccess) {
-
VbrMoMgr vbrmomgr;
key_vbr *key;
val_vbr *val;
ConfigKeyVal *ockv= NULL;
EXPECT_EQ(UPLL_RC_SUCCESS, vbrmomgr.GetParentConfigKey(ockv, ickv));
+
+ delete ockv;
+ delete ickv;
}
TEST_F(VbrMoMgrTest, GetParentConfigKeyInvalidArg) {
-
VbrMoMgr vbrmomgr;
- key_vbr *key;
- val_vbr *val;
- GetKeyValStruct(key, val);
ConfigKeyVal *ickv = NULL;
ConfigKeyVal *ockv = NULL;
}
TEST_F(VbrMoMgrTest, GetParentConfigKeyInvalidKT) {
-
VbrMoMgr vbrmomgr;
key_vbr *key;
val_vbr *val;
ConfigKeyVal *ockv = NULL;
ConfigKeyVal *ickv = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVbr,key, cfg_val);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbrmomgr.GetParentConfigKey(ockv, ickv));
+
+ delete ockv;
+ delete ickv;
}
-TEST_F(VbrMoMgrTest, GetParentConfigKeyNullKey) {
+TEST_F(VbrMoMgrTest, GetParentConfigKeyNullKey) {
VbrMoMgr vbrmomgr;
- val_vbr *val=(val_vbr *)malloc(sizeof(val_vbr));;
ConfigKeyVal *ickv = new ConfigKeyVal(UNC_KT_VBRIDGE);
ConfigKeyVal *ockv = new ConfigKeyVal(UNC_KT_VBRIDGE);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbrmomgr.GetParentConfigKey(ockv, ickv));
-}
-
+ delete ickv;
+ delete ockv;
+}
TEST_F(VbrMoMgrTest, AllocVal_outputNull) {
VbrMoMgr obj;
- val_vbr *val = new val_vbr_t();
+ val_vbr *val(ZALLOC_TYPE(val_vbr));
ConfigVal* cfgval = new ConfigVal(IpctSt::kIpcStValVbr, val);
EXPECT_EQ(UPLL_RC_ERR_GENERIC,obj.AllocVal(cfgval, UPLL_DT_IMPORT,MAINTBL));
delete cfgval;
TEST_F(VbrMoMgrTest, AllocVal_Error) {
VbrMoMgr obj;
- key_vbr *key;
val_vbr *val;
- GetKeyValStruct(key, val);
+ GetValStruct(val);
ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVbr, val);
EXPECT_EQ(UPLL_RC_ERR_GENERIC,obj.AllocVal(cfgval, UPLL_DT_STATE,RENAMETBL));
+ delete cfgval;
}
TEST_F(VbrMoMgrTest, AllocVal_ErrorDefaultCase) {
}
TEST_F(VbrMoMgrTest, DupConfigKeyVal_ReqNull) {
-
VbrMoMgr obj;
ConfigKeyVal *okey = new ConfigKeyVal(UNC_KT_VBRIDGE,
IpctSt::kIpcStKeyVbr,
NULL, NULL);
ConfigKeyVal *req = NULL;
EXPECT_EQ(UPLL_RC_ERR_GENERIC,obj.DupConfigKeyVal(okey, req, MAINTBL));
+
+ delete okey;
}
TEST_F(VbrMoMgrTest, DupConfigKeyVal_OkeyNotNull) {
NULL, NULL);
EXPECT_EQ(UPLL_RC_ERR_GENERIC,obj.DupConfigKeyVal(okey, req, MAINTBL));
+
+ delete okey;
+ delete req;
}
TEST_F(VbrMoMgrTest, DupConfigKeyVal_ReqInvalidKT) {
key, tmp);
EXPECT_EQ(UPLL_RC_ERR_GENERIC,obj.DupConfigKeyVal(okey,req,MAINTBL));
+
+ delete okey;
+ delete req;
}
TEST_F(VbrMoMgrTest, DupConfigKeyVal_Req_InValid) {
VbrMoMgr obj;
ConfigKeyVal *okey = NULL;
- key_vbr *key;
val_vbr *val;
- GetKeyValStruct(key, val);
+ GetValStruct(val);
ConfigVal *tmp = new ConfigVal(IpctSt::kIpcStValVbr, val);
ConfigKeyVal *req = new ConfigKeyVal(UNC_KT_VBRIDGE,
NULL, tmp);
EXPECT_EQ(UPLL_RC_ERR_GENERIC,obj.DupConfigKeyVal(okey,req,MAINTBL));
+
+ delete req;
}
TEST_F(VbrMoMgrTest, DupConfigKeyVal_SuccessMAINTBL) {
GetKeyValStruct(key, val);
ConfigVal *tmp = new ConfigVal(IpctSt::kIpcStValVbr, val);
- ConfigVal *tmp1 = new ConfigVal(IpctSt::kIpcInvalidStNum, val);
+
+ val_vbr *val1(UT_CLONE(val_vbr, val));
+ ConfigVal *tmp1 = new ConfigVal(IpctSt::kIpcInvalidStNum, val1);
tmp->AppendCfgVal(tmp1);
ConfigKeyVal *req = new ConfigKeyVal(UNC_KT_VBRIDGE,
IpctSt::kIpcStKeyVbr,
key, tmp);
EXPECT_EQ(UPLL_RC_SUCCESS,obj.DupConfigKeyVal(okey,req,MAINTBL));
+
+ delete req;
+ delete okey;
}
TEST_F(VbrMoMgrTest, DupConfigKeyVal_SuccessRENAMETBL) {
key, tmp);
EXPECT_EQ(UPLL_RC_SUCCESS,obj.DupConfigKeyVal(okey,req,RENAMETBL));
+
+ delete req;
+ delete okey;
}
TEST_F(VbrMoMgrTest, DupConfigKeyVal_SuccessRENAMETBLInvalidStNum) {
key, tmp);
EXPECT_EQ(UPLL_RC_SUCCESS,obj.DupConfigKeyVal(okey,req,RENAMETBL));
-}
+ delete req;
+ delete okey;
+}
-TEST_F(VbrMoMgrTest, DupConfigKeyValNullValStuct) {
+TEST_F(VbrMoMgrTest, DupConfigKeyVal_NullValStuct) {
VbrMoMgr obj;
ConfigKeyVal *okey = NULL;
- key_vbr *key=(key_vbr*)malloc(sizeof(key_vbr));
+ key_vbr *key(ZALLOC_TYPE(key_vbr));
ConfigVal *tmp=NULL;
ConfigKeyVal *req = new ConfigKeyVal(UNC_KT_VBRIDGE,
IpctSt::kIpcStKeyVbr,
key, tmp);
EXPECT_EQ(UPLL_RC_SUCCESS,obj.DupConfigKeyVal(okey,req,RENAMETBL));
+
+ delete req;
+ delete okey;
}
-TEST_F(VbrMoMgrTest, DupConfigKeyValNullValStuctMainTbl) {
+TEST_F(VbrMoMgrTest, DupConfigKeyVal_NullValStuctMainTbl) {
VbrMoMgr obj;
ConfigKeyVal *okey = NULL;
- key_vbr *key=(key_vbr*)malloc(sizeof(key_vbr));
+ key_vbr *key(ZALLOC_TYPE(key_vbr));
ConfigVal *tmp=NULL;
ConfigKeyVal *req = new ConfigKeyVal(UNC_KT_VBRIDGE,
IpctSt::kIpcStKeyVbr,
key, tmp);
- EXPECT_EQ(UPLL_RC_SUCCESS,obj.DupConfigKeyVal(okey,req,MAINTBL));
-}
+ EXPECT_EQ(UPLL_RC_SUCCESS,obj.DupConfigKeyVal(okey,req,MAINTBL));
+ delete req;
+ delete okey;
+}
TEST_F(VbrMoMgrTest, IsValidKey_SuccessVTNName) {
VbrMoMgr obj;
uint64_t index = uudst::vbridge::kDbiVtnName;
key_vbr *key;
- val_vbr *val;
- GetKeyValStruct(key, val);
- EXPECT_EQ(true, obj.IsValidKey(reinterpret_cast<void *>(key),
- index));
+ GetKeyStruct(key);
+ EXPECT_EQ(true, obj.IsValidKey(reinterpret_cast<void *>(key), index));
+
+ free(key);
}
TEST_F(VbrMoMgrTest, IsValidKey_SuccessVBRName) {
VbrMoMgr obj;
uint64_t index = uudst::vbridge::kDbiVbrName;
key_vbr *key;
- val_vbr *val;
- GetKeyValStruct(key, val);
- EXPECT_EQ(true, obj.IsValidKey(reinterpret_cast<void *>(key),
- index));
+ GetKeyStruct(key);
+ EXPECT_EQ(true, obj.IsValidKey(reinterpret_cast<void *>(key), index));
+
+ free(key);
}
TEST_F(VbrMoMgrTest, IsValidKey_InvalidIndex) {
VbrMoMgr obj;
uint64_t index = uudst::vbridge::kDbiCtrlrName;
key_vbr *key;
- val_vbr *val;
- GetKeyValStruct(key, val);
- EXPECT_EQ(false, obj.IsValidKey(reinterpret_cast<void *>(key),
- index));
+ GetKeyStruct(key);
+ EXPECT_EQ(false, obj.IsValidKey(reinterpret_cast<void *>(key), index));
+
+ free(key);
}
TEST_F(VbrMoMgrTest, IsValidKey_InvalidVTNName) {
VbrMoMgr obj;
uint64_t index = uudst::vbridge::kDbiVtnName;
- key_vbr *key;
+ key_vbr *key(ZALLOC_TYPE(key_vbr));
const char *vtn_name = "";
const char *vbr_name = "VBR_1";
- key = reinterpret_cast<key_vbr *>(malloc
- (sizeof(key_vbr)));
- memset(key,0,sizeof(key_vbr));
strncpy(reinterpret_cast<char *>(key->vtn_key.vtn_name),
- vtn_name, strlen(vtn_name)+1);
+ vtn_name, strlen(vtn_name)+1);
strncpy(reinterpret_cast<char *>(key->vbridge_name),
- vbr_name, strlen(vbr_name)+1);
- EXPECT_EQ(false, obj.IsValidKey(reinterpret_cast<void *>(key),
- index));
+ vbr_name, strlen(vbr_name)+1);
+ EXPECT_EQ(false, obj.IsValidKey(reinterpret_cast<void *>(key), index));
+
+ free(key);
}
TEST_F(VbrMoMgrTest, IsValidKey_InvalidVBRName) {
VbrMoMgr obj;
uint64_t index = uudst::vbridge::kDbiVbrName;
- key_vbr *key;
+ key_vbr *key(ZALLOC_TYPE(key_vbr));
const char *vtn_name = "VTN";
const char *vbr_name = "";
- key = reinterpret_cast<key_vbr *>(malloc
- (sizeof(key_vbr)));
- memset(key,0,sizeof(key_vbr));
strncpy(reinterpret_cast<char *>(key->vtn_key.vtn_name),
- vtn_name, strlen(vtn_name)+1);
+ vtn_name, strlen(vtn_name)+1);
strncpy(reinterpret_cast<char *>(key->vbridge_name),
- vbr_name, strlen(vbr_name)+1);
+ vbr_name, strlen(vbr_name)+1);
- EXPECT_EQ(false, obj.IsValidKey(reinterpret_cast<void *>(key),
- index));
+ EXPECT_EQ(false, obj.IsValidKey(reinterpret_cast<void *>(key), index));
+
+ free(key);
}
TEST_F(VbrMoMgrTest, GetChildConfigKey_SuccessNullObjs) {
ConfigKeyVal *okey = NULL;
ConfigKeyVal *pkey = NULL;
EXPECT_EQ(UPLL_RC_SUCCESS,obj.GetChildConfigKey(okey, pkey));
+ delete okey;
}
TEST_F(VbrMoMgrTest, GetChildConfigKey_pkeyNull) {
IpctSt::kIpcStKeyVbr,
NULL, NULL);
EXPECT_EQ(UPLL_RC_ERR_GENERIC,obj.GetChildConfigKey(okey, pkey));
+
+ delete pkey;
+ delete okey;
}
TEST_F(VbrMoMgrTest, GetChildConfigKey_SuccesspkeyVBR) {
VbrMoMgr obj;
ConfigKeyVal *okey = NULL;
- key_vbr *key = reinterpret_cast<key_vbr*>
- (malloc(sizeof(key_vbr_t)));
- memset(key, 0 ,sizeof(key_vbr_t));
-
+ key_vbr *key(ZALLOC_TYPE(key_vbr));
strncpy((char*) key->vbridge_name,"VBR1",32);
strncpy((char*) key->vtn_key.vtn_name,"VTN1",32);
EXPECT_STREQ("VTN1",(reinterpret_cast<const char *> (output->vtn_key.vtn_name)));
EXPECT_STREQ("VBR1",(reinterpret_cast<const char *> (output->vbridge_name)));
+
+ delete okey;
+ delete pkey;
}
TEST_F(VbrMoMgrTest, GetChildConfigKey_SuccesspkeyVTN) {
VbrMoMgr obj;
ConfigKeyVal *okey = NULL;
- key_vbr *key = reinterpret_cast<key_vbr*>
- (malloc(sizeof(key_vbr_t)));
- memset(key, 0 ,sizeof(key_vbr_t));
-
+ key_vbr *key(ZALLOC_TYPE(key_vbr));
strncpy((char*) key->vbridge_name,"VBR1",32);
strncpy((char*) key->vtn_key.vtn_name,"VTN1",32);
EXPECT_STREQ("VTN1",(reinterpret_cast<const char *> (output->vtn_key.vtn_name)));
EXPECT_STREQ("",(reinterpret_cast<const char *> (output->vbridge_name)));
+
+ delete okey;
+ delete pkey;
}
+
TEST_F(VbrMoMgrTest, GetChildConfigKey_SuccessOkeyVTN) {
VbrMoMgr obj;
ConfigKeyVal *okey = NULL;
- key_vbr *key = reinterpret_cast<key_vbr*>
- (malloc(sizeof(key_vbr_t)));
- memset(key, 0 ,sizeof(key_vbr_t));
-
+ key_vbr *key(ZALLOC_TYPE(key_vbr));
strncpy((char*) key->vbridge_name,"VBR1",32);
strncpy((char*) key->vtn_key.vtn_name,"VTN1",32);
EXPECT_STREQ("VTN1",(reinterpret_cast<const char *> (output->vtn_key.vtn_name)));
EXPECT_STREQ("",(reinterpret_cast<const char *> (output->vbridge_name)));
-}
+ delete okey;
+ delete pkey;
+}
TEST_F(VbrMoMgrTest, CopyToConfigkey_ikeyokeyNull) {
VbrMoMgr obj;
IpctSt::kIpcStKeyVbr,
NULL, NULL);
EXPECT_EQ(UPLL_RC_ERR_GENERIC,obj.CopyToConfigKey(okey,ikey));
+
+ delete okey;
+ delete ikey;
}
-TEST(GetChildConfigKey, PkeyVbrSuccess) {
+TEST_F(VbrMoMgrTest, GetChildConfigKey_PkeyVbrSuccess) {
VbrMoMgr vbr;
ConfigKeyVal *okey = NULL;
- key_vbr *key = reinterpret_cast<key_vbr*>
- (malloc(sizeof(key_vbr_t)));
- memset(key, 0 ,sizeof(key_vbr_t));
-
+ key_vbr *key(ZALLOC_TYPE(key_vbr));
strncpy((char*) key->vbridge_name,"VBR1",32);
strncpy((char*) key->vtn_key.vtn_name,"VTN1",32);
EXPECT_STREQ("VTN1",(reinterpret_cast<const char *> (output->vtn_key.vtn_name)));
EXPECT_STREQ("VBR1",(reinterpret_cast<const char *> (output->vbridge_name)));
+
+ delete okey;
+ delete pkey;
}
-TEST(GetChildConfigKey, OkeyVtnSuccess) {
+TEST_F(VbrMoMgrTest, GetChildConfigKey_OkeyVtnSuccess) {
VbrMoMgr vbr;
- ConfigKeyVal *okey = new ConfigKeyVal(UNC_KT_VTN);
- key_vbr *key = reinterpret_cast<key_vbr*>
- (malloc(sizeof(key_vbr_t)));
- memset(key, 0 ,sizeof(key_vbr_t));
-
+ ConfigKeyVal *okey = new ConfigKeyVal(UNC_KT_VTN);
+ key_vbr *key(ZALLOC_TYPE(key_vbr));
strncpy((char*) key->vbridge_name,"VBR1",32);
strncpy((char*) key->vtn_key.vtn_name,"VTN1",32);
EXPECT_STREQ("VTN1",(reinterpret_cast<const char *> (output->vtn_key.vtn_name)));
EXPECT_STREQ("",(reinterpret_cast<const char *> (output->vbridge_name)));
+
+ delete okey;
+ delete pkey;
}
-TEST(GetChildConfigKey, PkeyVlinkSuccess) {
+TEST_F(VbrMoMgrTest, GetChildConfigKey_PkeyVlinkSuccess) {
VbrMoMgr vbr;
- ConfigKeyVal *okey = new ConfigKeyVal(UNC_KT_VLINK) ;
- key_vbr *key = reinterpret_cast<key_vbr*>
- (malloc(sizeof(key_vbr_t)));
- memset(key, 0 ,sizeof(key_vbr_t));
-
+ ConfigKeyVal *okey = new ConfigKeyVal(UNC_KT_VLINK) ;
+ key_vbr *key(ZALLOC_TYPE(key_vbr));
strncpy((char*) key->vbridge_name,"VLINK1",32);
strncpy((char*) key->vtn_key.vtn_name,"VTN1",32);
- ConfigKeyVal *pkey = new ConfigKeyVal(UNC_KT_VTN,
- IpctSt::kIpcStKeyVbr,
- key, NULL);
+ ConfigKeyVal *pkey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVbr,
+ key, NULL);
EXPECT_EQ(UPLL_RC_SUCCESS,vbr.GetChildConfigKey(okey, pkey));
key_vbr_t *output = reinterpret_cast<key_vbr_t *> (okey->get_key());
EXPECT_STREQ("VTN1",(reinterpret_cast<const char *> (output->vtn_key.vtn_name)));
EXPECT_STREQ("",(reinterpret_cast<const char *> (output->vbridge_name)));
+
+ delete okey;
+ delete pkey;
}
-TEST(VbrMoMgr, GetChildConfigKey5) {
- key_vbr_t *key_vbr = (key_vbr_t *)(malloc(sizeof(key_vbr_t)));
+TEST_F(VbrMoMgrTest, GetChildConfigKey_05) {
+ key_vbr_t *key_vbr(ZALLOC_TYPE(key_vbr_t));
VbrMoMgr vbr_obj;
strcpy((char *)key_vbr->vtn_key.vtn_name, (char *)"vtn1");
strcpy((char *)key_vbr->vbridge_name, (char *)"vbridge");
ConfigKeyVal *okey = new ConfigKeyVal(UNC_KT_VTN);
ConfigKeyVal *pkey = new ConfigKeyVal(UNC_KT_VLINK,IpctSt::kIpcStKeyVbr,key_vbr);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr_obj.GetChildConfigKey(okey, pkey));
+
+ delete okey;
+ delete pkey;
}
-TEST(VbrMoMgr, GetChildConfigKey6) {
- key_vbr_t *key_vbr = (key_vbr_t *)(malloc(sizeof(key_vbr_t)));
+TEST_F(VbrMoMgrTest, GetChildConfigKey_06) {
+ key_vbr_t *key_vbr(ZALLOC_TYPE(key_vbr_t));
VbrMoMgr vbr_obj;
strcpy((char *)key_vbr->vtn_key.vtn_name, (char *)"vtn1");
strcpy((char *)key_vbr->vbridge_name, (char *)"vbridge");
- val_vlink *vlink_val = reinterpret_cast<val_vlink *>( malloc(sizeof(val_vlink)));
+ val_vlink *vlink_val(ZALLOC_TYPE(val_vlink));
ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVlink, vlink_val);
ConfigKeyVal *okey = new ConfigKeyVal(UNC_KT_VTN);
ConfigKeyVal *pkey = new ConfigKeyVal(UNC_KT_VLINK,IpctSt::kIpcStKeyVbr,key_vbr,cfgval);
EXPECT_EQ(UPLL_RC_SUCCESS, vbr_obj.GetChildConfigKey(okey, pkey));
-}
-
+ delete okey;
+ delete pkey;
+}
TEST_F(VbrMoMgrTest, CopyToConfigkey_InValidName) {
VbrMoMgr obj;
ConfigKeyVal *okey = NULL;
- key_vbr *key;
+ key_vbr *key(ZALLOC_TYPE(key_vbr));
const char *vtn_name = "";
const char *vbr_name = "";
- key = reinterpret_cast<key_vbr *>(malloc
- (sizeof(key_vbr)));
- memset(key,0,sizeof(key_vbr));
strncpy(reinterpret_cast<char *>(key->vtn_key.vtn_name),
- vtn_name, strlen(vtn_name)+1);
+ vtn_name, strlen(vtn_name)+1);
strncpy(reinterpret_cast<char *>(key->vbridge_name),
- vbr_name, strlen(vbr_name)+1);
+ vbr_name, strlen(vbr_name)+1);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,
IpctSt::kIpcStKeyVbr,
strncpy(reinterpret_cast<char *>(key->vtn_key.vtn_name),"VTN_1",32);
EXPECT_EQ(UPLL_RC_ERR_GENERIC,obj.CopyToConfigKey(okey,ikey));
+
+ delete okey;
+ delete ikey;
}
TEST_F(VbrMoMgrTest, CopyToConfigkey_Valid) {
VbrMoMgr obj;
- ConfigKeyVal *okey;
- key_vbr *key;
- val_vbr *val;
- const char *vtn_name = "VTN_1";
- const char *vbr_name = "VBR_1";
- key = reinterpret_cast<key_vbr *>(malloc
- (sizeof(key_vbr)));
- memset(key,0,sizeof(key_vbr));
- strncpy(reinterpret_cast<char *>(key->vtn_key.vtn_name),
- vtn_name, strlen(vtn_name)+1);
- strncpy(reinterpret_cast<char *>(key->vbridge_name),
- vbr_name, strlen(vbr_name)+1);
- ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVbr, val);
- ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,
- IpctSt::kIpcStKeyVbr,
- key, cfgval);
-
- EXPECT_EQ(UPLL_RC_SUCCESS,obj.CopyToConfigKey(okey,ikey));
+ ConfigKeyVal *okey(NULL);
+ key_rename_vnode_info *key_rename(ZALLOC_TYPE(key_rename_vnode_info));
+
+ const char *vtn_name("VTN_1");
+ const char *vbr_name("VBR_1");
+ pfc_strlcpy(reinterpret_cast<char *>(key_rename->old_unc_vtn_name),
+ vtn_name, sizeof(key_rename->old_unc_vtn_name));
+ pfc_strlcpy(reinterpret_cast<char *>(key_rename->old_unc_vnode_name),
+ vbr_name, sizeof(key_rename->old_unc_vnode_name));
+ ConfigVal *cfgval(new ConfigVal(IpctSt::kIpcStValVbr, NULL));
+ ConfigKeyVal *ikey(new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVbr,
+ key_rename, cfgval));
+ EXPECT_EQ(UPLL_RC_SUCCESS, obj.CopyToConfigKey(okey, ikey));
+
+ ASSERT_TRUE(okey != NULL);
+
+ key_vbr_t *key(reinterpret_cast<key_vbr_t *>(okey->get_key()));
+ if (key != NULL) {
+ EXPECT_STREQ(vtn_name, reinterpret_cast<char *>(key->vtn_key.vtn_name));
+ EXPECT_STREQ(vbr_name, reinterpret_cast<char *>(key->vbridge_name));
+ }
+ delete ikey;
+ delete okey;
}
-
TEST_F(VbrMoMgrTest, ValidateVbrPingValue_Success) {
VbrMoMgr obj;
- uint32_t oper = UNC_OP_CREATE;
- val_ping *vst = reinterpret_cast<val_ping *>(malloc
- (sizeof(val_ping)));
- memset(vst,0,sizeof(val_ping));
+ val_ping *vst(ZALLOC_TYPE(val_ping));
for(unsigned int loop = 0; loop < sizeof(vst->valid)/
- sizeof(vst->valid[0]); ++loop) {
+ sizeof(vst->valid[0]); ++loop) {
vst->valid[loop] = UNC_VF_VALID;
}
struct sockaddr_in sa;
EXPECT_EQ(UPLL_RC_SUCCESS,obj.ValidateVbrPingValue(vst));
cout<<"TEST: Positive: Success"<<endl;
+ free(vst);
}
TEST_F(VbrMoMgrTest, ValidateVbrPingValue_InvalidTgtAddr) {
VbrMoMgr obj;
- uint32_t oper = UNC_OP_CREATE;
- val_ping *vst = reinterpret_cast<val_ping *>(malloc
- (sizeof(val_ping)));
- memset(vst,0,sizeof(val_ping));
+ val_ping *vst(ZALLOC_TYPE(val_ping));
for(unsigned int loop = 0; loop < sizeof(vst->valid)/
- sizeof(vst->valid[0]); ++loop) {
+ sizeof(vst->valid[0]); ++loop) {
vst->valid[loop] = UNC_VF_VALID;
}
struct sockaddr_in sa;
inet_pton(AF_INET, "224.1.1.1", &(sa.sin_addr));
vst->target_addr = sa.sin_addr.s_addr;
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX,obj.ValidateVbrPingValue(vst));
+
+ free(vst);
}
TEST_F(VbrMoMgrTest, ValidateVbrPingValue_InvalidSrcAddr) {
VbrMoMgr obj;
- uint32_t oper = UNC_OP_CREATE;
- val_ping *vst = reinterpret_cast<val_ping *>(malloc
- (sizeof(val_ping)));
- memset(vst,0,sizeof(val_ping));
+ val_ping *vst(ZALLOC_TYPE(val_ping));
for(unsigned int loop = 0; loop < sizeof(vst->valid)/
sizeof(vst->valid[0]); ++loop) {
vst->valid[loop] = UNC_VF_VALID;
inet_pton(AF_INET, "224.1.1.1", &(sa.sin_addr));
vst->src_addr = sa.sin_addr.s_addr;
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX,obj.ValidateVbrPingValue(vst));
+
+ free(vst);
}
TEST_F(VbrMoMgrTest, ValidateVbrPingValue_DFbitValidation) {
VbrMoMgr obj;
- uint32_t oper = UNC_OP_CREATE;
- val_ping *vst = reinterpret_cast<val_ping *>(malloc
- (sizeof(val_ping)));
- memset(vst,0,sizeof(val_ping));
+ val_ping *vst(ZALLOC_TYPE(val_ping));
for(unsigned int loop = 0; loop < sizeof(vst->valid)/
sizeof(vst->valid[0]); ++loop) {
vst->valid[loop] = UNC_VF_VALID;
vst->valid[UPLL_IDX_DF_BIT_PING] = UNC_VF_VALID_NO_VALUE;
EXPECT_EQ(UPLL_RC_SUCCESS,obj.ValidateVbrPingValue(vst));
+
+ free(vst);
}
TEST_F(VbrMoMgrTest, ValidateVbrPingValue_PktSzValidation) {
VbrMoMgr obj;
- uint32_t oper = UNC_OP_UPDATE;
- val_ping *vst = reinterpret_cast<val_ping *>(malloc
- (sizeof(val_ping)));
- memset(vst,0,sizeof(val_ping));
+ val_ping *vst(ZALLOC_TYPE(val_ping));
for(unsigned int loop = 0; loop < sizeof(vst->valid)/
sizeof(vst->valid[0]); ++loop) {
vst->valid[loop] = UNC_VF_VALID;
vst->valid[UPLL_IDX_PACKET_SIZE_PING] = UNC_VF_VALID_NO_VALUE;
EXPECT_EQ(UPLL_RC_SUCCESS,obj.ValidateVbrPingValue(vst));
+
+ free(vst);
}
TEST_F(VbrMoMgrTest, ValidateVbrPingValue_CntValidation) {
VbrMoMgr obj;
- uint32_t oper = UNC_OP_UPDATE;
- val_ping *vst = reinterpret_cast<val_ping *>(malloc
- (sizeof(val_ping)));
- memset(vst,0,sizeof(val_ping));
+ val_ping *vst(ZALLOC_TYPE(val_ping));
for(unsigned int loop = 0; loop < sizeof(vst->valid)/
sizeof(vst->valid[0]); ++loop) {
vst->valid[loop] = UNC_VF_VALID;
vst->valid[UPLL_IDX_COUNT_PING] = UNC_VF_VALID_NO_VALUE;
EXPECT_EQ(UPLL_RC_SUCCESS,obj.ValidateVbrPingValue(vst));
+
+ free(vst);
}
TEST_F(VbrMoMgrTest, ValidateVbrPingValue_InterValidation) {
VbrMoMgr obj;
- uint32_t oper = UNC_OP_CREATE;
- val_ping *vst = reinterpret_cast<val_ping *>(malloc
- (sizeof(val_ping)));
- memset(vst,0,sizeof(val_ping));
+ val_ping *vst(ZALLOC_TYPE(val_ping));
for(unsigned int loop = 0; loop < sizeof(vst->valid)/
sizeof(vst->valid[0]); ++loop) {
vst->valid[loop] = UNC_VF_VALID;
vst->valid[UPLL_IDX_INTERVAL_PING] = UNC_VF_VALID_NO_VALUE;
EXPECT_EQ(UPLL_RC_SUCCESS,obj.ValidateVbrPingValue(vst));
+
+ free(vst);
}
TEST_F(VbrMoMgrTest, ValidateVbrPingValue_TimeOutValidation) {
VbrMoMgr obj;
- uint32_t oper = UNC_OP_CREATE;
- val_ping *vst = reinterpret_cast<val_ping *>(malloc
- (sizeof(val_ping)));
- memset(vst,0,sizeof(val_ping));
+ val_ping *vst(ZALLOC_TYPE(val_ping));
for(unsigned int loop = 0; loop < sizeof(vst->valid)/
sizeof(vst->valid[0]); ++loop) {
vst->valid[loop] = UNC_VF_VALID;
vst->valid[UPLL_IDX_TIMEOUT_PING] = UNC_VF_VALID_NO_VALUE;
EXPECT_EQ(UPLL_RC_SUCCESS,obj.ValidateVbrPingValue(vst));
+
+ free(vst);
}
TEST_F(VbrMoMgrTest, UpdateConfigStatus_Success) {
-
VbrMoMgr obj;
DalDmlIntf *dmi= NULL;
key_vbr *key;
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,
IpctSt::kIpcStKeyVbr,
key, cfgval);
- ConfigKeyVal *upd_key = new ConfigKeyVal(UNC_KT_VBRIDGE,
- IpctSt::kIpcStKeyVbr,
- key, cfgval);
+
+ key_vbr *key1(UT_CLONE(key_vbr, key));
+ val_vbr *val1(UT_CLONE(val_vbr, val));
+ ConfigVal *cfgval1(new ConfigVal(IpctSt::kIpcStValVbr, val1));
+ ConfigKeyVal *upd_key(new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVbr,
+ key1, cfgval1));
EXPECT_EQ(UPLL_RC_SUCCESS,obj.UpdateConfigStatus(ikey, UNC_OP_CREATE,
UPLL_RC_SUCCESS,
upd_key,dmi,ikey));
+ delete ikey;
+ delete upd_key;
}
-TEST_F(VbrMoMgrTest,UpdateConfigStatus_SuccessUPDATE) {
-
+TEST_F(VbrMoMgrTest, UpdateConfigStatus_SuccessUPDATE) {
VbrMoMgr obj;
DalDmlIntf *dmi= NULL;
key_vbr *key;
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,
IpctSt::kIpcStKeyVbr,
key, cfgval);
- ConfigKeyVal *upd_key = new ConfigKeyVal(UNC_KT_VBRIDGE,
- IpctSt::kIpcStKeyVbr,
- key, cfgval);
+
+ key_vbr *key1(UT_CLONE(key_vbr, key));
+ val_vbr *val1(UT_CLONE(val_vbr, val));
+ ConfigVal *cfgval1(new ConfigVal(IpctSt::kIpcStValVbr, val1));
+ ConfigKeyVal *upd_key(new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVbr,
+ key1, cfgval1));
EXPECT_EQ(UPLL_RC_SUCCESS,obj.UpdateConfigStatus(ikey, UNC_OP_UPDATE,
UPLL_RC_SUCCESS,
upd_key,dmi,ikey));
+ delete ikey;
+ delete upd_key;
}
-
TEST_F(VbrMoMgrTest, UpdateConfigStatus_InvalidOP) {
-
VbrMoMgr obj;
DalDmlIntf *dmi= NULL;
key_vbr *key;
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,
IpctSt::kIpcStKeyVbr,
key, cfgval);
- ConfigKeyVal *upd_key = new ConfigKeyVal(UNC_KT_VBRIDGE,
- IpctSt::kIpcStKeyVbr,
- key, cfgval);
+
+ key_vbr *key1(UT_CLONE(key_vbr, key));
+ val_vbr *val1(UT_CLONE(val_vbr, val));
+ ConfigVal *cfgval1(new ConfigVal(IpctSt::kIpcStValVbr, val1));
+ ConfigKeyVal *upd_key(new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVbr,
+ key1, cfgval1));
EXPECT_EQ(UPLL_RC_ERR_GENERIC,obj.UpdateConfigStatus(ikey, UNC_OP_READ,
- UPLL_RC_SUCCESS,
- upd_key,dmi,ikey));
+ UPLL_RC_SUCCESS,
+ upd_key, dmi, ikey));
+ delete ikey;
+ delete upd_key;
}
-TEST_F(VbrMoMgrTest,UpdateConfigStatus_InvalidArg) {
-
+TEST_F(VbrMoMgrTest, UpdateConfigStatus_InvalidArg) {
VbrMoMgr obj;
DalDmlIntf *dmi= NULL;
- key_vbr *key;
- val_vbr *val;
- GetKeyValStruct(key, val);
- ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVbr, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,
IpctSt::kIpcStKeyVbr,
NULL, NULL);
- ConfigKeyVal *upd_key = new ConfigKeyVal(UNC_KT_VBRIDGE,
- IpctSt::kIpcStKeyVbr,
- NULL, NULL);
+ ConfigKeyVal *upd_key(new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVbr,
+ NULL, NULL));
EXPECT_EQ(UPLL_RC_ERR_GENERIC,obj.UpdateConfigStatus(ikey, UNC_OP_CREATE,
- UPLL_RC_SUCCESS,
- upd_key,dmi,ikey));
-
- ConfigKeyVal *ikey1 = new ConfigKeyVal(UNC_KT_VBRIDGE,
- IpctSt::kIpcStKeyVbr,
- key, cfgval);
-
+ UPLL_RC_SUCCESS,
+ upd_key, dmi, ikey));
EXPECT_EQ(UPLL_RC_ERR_GENERIC,obj.UpdateConfigStatus(ikey, UNC_OP_UPDATE,
- UPLL_RC_SUCCESS,
- upd_key,dmi,ikey));
+ UPLL_RC_SUCCESS,
+ upd_key, dmi, ikey));
+
+ delete ikey;
+ delete upd_key;
}
TEST_F(VbrMoMgrTest, UpdateConfigStatus_AttrNotSupp_ValNoValue) {
-
VbrMoMgr obj;
DalDmlIntf *dmi= NULL;
key_vbr *key;
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,
IpctSt::kIpcStKeyVbr,
key, cfgval);
- ConfigKeyVal *upd_key = new ConfigKeyVal(UNC_KT_VBRIDGE,
- IpctSt::kIpcStKeyVbr,
- key, cfgval);
+
+ key_vbr *key1(UT_CLONE(key_vbr, key));
+ val_vbr *val1(UT_CLONE(val_vbr, val));
+ ConfigVal *cfgval1(new ConfigVal(IpctSt::kIpcStValVbr, val1));
+ ConfigKeyVal *upd_key(new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVbr,
+ key1, cfgval1));
EXPECT_EQ(UPLL_RC_SUCCESS,obj.UpdateConfigStatus(ikey, UNC_OP_CREATE,
UPLL_RC_SUCCESS,
UPLL_RC_SUCCESS,
upd_key,dmi,ikey));
+ delete ikey;
+ delete upd_key;
}
-
TEST_F(VbrMoMgrTest, CreateVnodeConfigKey_Success) {
-
VbrMoMgr obj;
key_vbr *key;
val_vbr *val;
EXPECT_EQ(UPLL_RC_SUCCESS,obj.CreateVnodeConfigKey(ikey, okey));
+ delete ikey;
+ delete okey;
}
TEST_F(VbrMoMgrTest, CreateVnodeConfigKey_NULLArg) {
-
VbrMoMgr obj;
ConfigKeyVal *okey = NULL;
ConfigKeyVal *ikey = NULL;
}
TEST_F(VbrMoMgrTest, CompareValidValue_AuditTrue) {
-
VbrMoMgr obj;
- key_vbr *key;
- val_vbr *val, *val1;
- GetKeyValStruct(key, val);
- GetKeyValStruct(key, val1);
+ val_vbr val1, val2;
+ memset(&val1, 0, sizeof(val1));
+ memset(&val2, 0, sizeof(val2));
- strncpy(reinterpret_cast<char *>(val1->controller_id), "CTR1",
- strlen("CTR1")+1);
- void *vbrval = reinterpret_cast<void *>(&val);
+ for (uint32_t i(0); i < PFC_ARRAY_CAPACITY(val1.valid); i++) {
+ val1.valid[i] = UNC_VF_INVALID;
+ val2.valid[i] = UNC_VF_VALID;
+ }
+ void *v1(&val1);
+ void *v2(&val2);
- obj.CompareValidValue(vbrval, (void *)val,true);
- obj.CompareValidValue(vbrval, (void *)val1,true);
+ ASSERT_FALSE(obj.CompareValidValue(v1, v2, true));
+ for (uint32_t i(0); i < PFC_ARRAY_CAPACITY(val1.valid); i++) {
+ ASSERT_EQ(UNC_VF_VALID_NO_VALUE, val1.valid[i]);
+ }
}
-TEST(FilterAttributes,CreateOperation) {
+TEST_F(VbrMoMgrTest, FilterAttributes_CreateOperation) {
VbrMoMgr vbr;
void *val1 = NULL;
void *val2 = NULL;
bool audit_status = true;
unc_keytype_operation_t op = UNC_OP_CREATE;
- val_vbr_t *valvbr1 = (val_vbr_t *)malloc(sizeof(val_vbr_t));
+ val_vbr_t *valvbr1(ZALLOC_TYPE(val_vbr_t));
valvbr1->valid[UPLL_IDX_DESC_VBR] = UNC_VF_INVALID;
val1 = reinterpret_cast<void *>(reinterpret_cast<char *>(valvbr1));
val2 = reinterpret_cast<void *>(reinterpret_cast<char *>(valvbr1));
EXPECT_EQ(false, vbr.FilterAttributes(val1,val2,audit_status,op));
+
+ free(valvbr1);
}
-TEST(FilterAttributes,OperationUpdate) {
+TEST_F(VbrMoMgrTest, FilterAttributes_OperationUpdate) {
VbrMoMgr vbr;
void *val1 = NULL;
void *val2 = NULL;
bool audit_status = true;
unc_keytype_operation_t op = UNC_OP_UPDATE;
- val_vbr_t *valvbr1 = (val_vbr_t *)malloc(sizeof(val_vbr_t));
+ val_vbr_t *valvbr1(ZALLOC_TYPE(val_vbr_t));
valvbr1->valid[UPLL_IDX_DESC_VBR] = UNC_VF_INVALID;
val1 = reinterpret_cast<void *>(reinterpret_cast<char *>(valvbr1));
val2 = reinterpret_cast<void *>(reinterpret_cast<char *>(valvbr1));
EXPECT_EQ(true, vbr.FilterAttributes(val1,val2,audit_status,op));
-}
+ free(valvbr1);
+}
TEST_F(VbrMoMgrTest, GetRenameKeyBindInfo) {
-
VbrMoMgr obj;
BindInfo *binfo;
int nattr;
EXPECT_EQ(PFC_TRUE, obj.GetRenameKeyBindInfo(UNC_KT_VBRIDGE, binfo, nattr, MAINTBL));
EXPECT_EQ(5, nattr);
- EXPECT_EQ(VbrMoMgr::key_vbr_maintbl_bind_info, binfo);
+ EXPECT_EQ(&VbrMoMgr::key_vbr_maintbl_bind_info[0], binfo);
EXPECT_EQ(PFC_TRUE, obj.GetRenameKeyBindInfo(UNC_KT_VBRIDGE, binfo, nattr, RENAMETBL));
EXPECT_EQ(4, nattr);
- EXPECT_EQ(VbrMoMgr::key_vbr_renametbl_update_bind_info, binfo);
+ EXPECT_EQ(&VbrMoMgr::key_vbr_renametbl_update_bind_info[0], binfo);
}
-TEST(GetRenameKeyBindInfo, OutputUnknownTbl) {
+TEST_F(VbrMoMgrTest, GetRenameKeyBindInfo_OutputUnknownTbl) {
VbrMoMgr vbr;
unc_key_type_t key_type = UNC_KT_VBRIDGE;
BindInfo *binfo = NULL;
int nattr = 2;
- MoMgrTables tbl;
EXPECT_EQ(false, vbr.GetRenameKeyBindInfo(key_type, binfo, nattr,CTRLRTBL ));
EXPECT_EQ(2,nattr);
}
TEST_F(VbrMoMgrTest, GetVnodeName) {
-
VbrMoMgr obj;
key_vbr *key;
val_vbr *val;
EXPECT_STREQ("VTN_1",(reinterpret_cast<const char *> (vtn_name)));
EXPECT_STREQ("VBR_1",(reinterpret_cast<const char *> (vnode_name)));
- ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,
- IpctSt::kIpcStKeyVbr,
- NULL, cfgval);
- EXPECT_EQ(UPLL_RC_ERR_GENERIC,obj.GetVnodeName(ikey, vtn_name, vnode_name));
+ val_vbr *val1(UT_CLONE(val_vbr, val));
+ ConfigVal *cfgval1(new ConfigVal(IpctSt::kIpcStValVbr, val1));
+ ConfigKeyVal *ikey1(new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVbr,
+ NULL, cfgval1));
+ EXPECT_EQ(UPLL_RC_ERR_GENERIC, obj.GetVnodeName(ikey1, vtn_name, vnode_name));
+ delete ikey;
+ delete ikey1;
}
TEST_F(VbrMoMgrTest, ValidateCapability_ErrorInput) {
-
VbrMoMgrStub obj;
key_vbr *key;
val_vbr *val;
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,
IpctSt::kIpcStKeyVbr,
key, cfgval);
- IpcReqRespHeader *req;
- req = reinterpret_cast<IpcReqRespHeader *>(malloc
- (sizeof(IpcReqRespHeader)));
- memset(req,0,sizeof(IpcReqRespHeader));
- EXPECT_EQ(UPLL_RC_ERR_GENERIC, obj.ValidateCapability(req, ikey,NULL ));
-
+ IPC_REQ_RESP_HEADER_DECL(req);
+ EXPECT_EQ(UPLL_RC_ERR_GENERIC, obj.ValidateCapability(req, ikey, NULL));
+ delete ikey;
}
-TEST(ValidateCapability, ValidateCapability_Success) {
-
+TEST_F(VbrMoMgrTest, ValidateCapability_Success) {
VbrMoMgr vbr;
- DalDmlIntf *dmi= NULL;
key_vbr *key;
val_vbr *val;
GetKeyValStruct(key, val);
IpctSt::kIpcStKeyVbr,
key, cfgval);
-
CtrlrMgr::Ctrlr ctrlrobj("CTR_1", UNC_CT_PFC, "5.0");
CtrlrMgr::GetInstance()->Add(ctrlrobj, UPLL_DT_CANDIDATE);
- uint8_t attrs[3];
- attrs[unc::capa::vbr::kCapDesc] = 1;
- uint32_t max_inst = 5;
- uint32_t num_attrs =5;
-
- IpcReqRespHeader *req;
- req = reinterpret_cast<IpcReqRespHeader *>(malloc
- (sizeof(IpcReqRespHeader)));
- memset(req,0,sizeof(IpcReqRespHeader));
+ IPC_REQ_RESP_HEADER_DECL(req);
req->clnt_sess_id = 5;
req->config_id = 14;
req->operation = UNC_OP_CREATE;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NONE;
req->datatype = UPLL_DT_CANDIDATE;
-
EXPECT_EQ(UPLL_RC_ERR_NOT_SUPPORTED_BY_CTRLR, vbr.ValidateCapability(req, ikey, "CTR_1"));
req->operation = UNC_OP_UPDATE;
-
EXPECT_EQ(UPLL_RC_ERR_NOT_SUPPORTED_BY_CTRLR, vbr.ValidateCapability(req, ikey, "CTR_1"));
req->operation = UNC_OP_READ_SIBLING_BEGIN;
-}
-
+ EXPECT_EQ(UPLL_RC_ERR_NOT_SUPPORTED_BY_CTRLR, vbr.ValidateCapability(req, ikey, "CTR_1"));
-TEST(ValidateCapability, ValidateCapability_Success1) {
+ delete ikey;
+}
+TEST_F(VbrMoMgrTest, ValidateCapability_Success1) {
VbrMoMgr vbr;
- DalDmlIntf *dmi= NULL;
key_vbr *key;
val_vbr *val;
GetKeyValStruct(key, val);
CtrlrMgr::Ctrlr ctrlrobj("CTR_1", UNC_CT_PFC, "5.0");
CtrlrMgr::GetInstance()->Add(ctrlrobj, UPLL_DT_CANDIDATE);
- uint8_t attrs[3];
- attrs[unc::capa::vbr::kCapDesc] = 1;
- uint32_t max_inst = 5;
- uint32_t num_attrs =5;
-
- IpcReqRespHeader *req;
- req = reinterpret_cast<IpcReqRespHeader *>(malloc
- (sizeof(IpcReqRespHeader)));
- memset(req,0,sizeof(IpcReqRespHeader));
+ IPC_REQ_RESP_HEADER_DECL(req);
req->clnt_sess_id = 5;
req->config_id = 14;
req->operation = UNC_OP_CREATE;
EXPECT_EQ(UPLL_RC_ERR_NOT_SUPPORTED_BY_CTRLR, vbr.ValidateCapability(req, ikey, "CTR_1"));
- val_vbr* no_val = NULL;
- cfgval = new ConfigVal(IpctSt::kIpcStValVbr, no_val);
- ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,
- IpctSt::kIpcStKeyVbr,
- key, cfgval);
- EXPECT_EQ(UPLL_RC_ERR_NOT_SUPPORTED_BY_CTRLR, vbr.ValidateCapability(req, ikey, "CTR_1"));
+ key_vbr *key1(UT_CLONE(key_vbr, key));
+ val_vbr* no_val(NULL);
+ ConfigVal *cfgval1(new ConfigVal(IpctSt::kIpcStValVbr, no_val));
+ ConfigKeyVal *ikey1(new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVbr,
+ key1, cfgval1));
+ EXPECT_EQ(UPLL_RC_ERR_NOT_SUPPORTED_BY_CTRLR, vbr.ValidateCapability(req, ikey1, "CTR_1"));
req->operation = UNC_OP_DELETE;
- EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.ValidateCapability(req, ikey, "CTR_1"));
+ EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.ValidateCapability(req, ikey1, "CTR_1"));
CtrlrMgr::GetInstance()->Delete("CTR_1", UPLL_DT_CANDIDATE);
-}
-TEST(ValidateCapability, ValidateCapability_ikey_NULL) {
+ delete ikey;
+ delete ikey1;
+}
+TEST_F(VbrMoMgrTest, ValidateCapability_ikey_NULL) {
VbrMoMgr vbr;
- key_vbr *key;
- val_vbr *val;
- GetKeyValStruct(key, val);
ConfigKeyVal *ikey = NULL;
IpcReqRespHeader *req=NULL;
const char *ctrlr_name="ctr1";
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.ValidateCapability(req, ikey, ctrlr_name));
}
-TEST(ValidateCapability, ValidateCapability_ctrName_NULL) {
+TEST_F(VbrMoMgrTest, ValidateCapability_ctrName_NULL) {
VbrMoMgr vbr;
key_vbr *key;
val_vbr *val;
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,
IpctSt::kIpcStKeyVbr,
key, cfgval);
- IpcReqRespHeader *req;
- req = reinterpret_cast<IpcReqRespHeader *>(malloc
- (sizeof(IpcReqRespHeader)));
-
+ IPC_REQ_RESP_HEADER_DECL(req);
const char *ctrlr_name=NULL;
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.ValidateCapability(req, ikey, ctrlr_name));
-}
-
-TEST(ValidateCapability, ValidateCapability_ctrName) {
+ delete ikey;
+}
+TEST_F(VbrMoMgrTest, ValidateCapability_ctrName) {
VbrMoMgr vbr;
key_vbr *key;
val_vbr *val;
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,
IpctSt::kIpcStKeyVbr,
key, cfgval);
- IpcReqRespHeader *req;
- req = reinterpret_cast<IpcReqRespHeader *>(malloc
- (sizeof(IpcReqRespHeader)));
-
+ IPC_REQ_RESP_HEADER_DECL(req);
const char *ctrlr_name=NULL;
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.ValidateCapability(req, ikey, ctrlr_name));
+
+ delete ikey;
}
TEST_F(VbrMoMgrTest, ValidateMessage_Success) {
-
VbrMoMgr obj;
key_vbr *key;
val_vbr *val;
IpctSt::kIpcStKeyVbr,
key, cfgval);
- IpcReqRespHeader *req;
- req = reinterpret_cast<IpcReqRespHeader *>(malloc
- (sizeof(IpcReqRespHeader)));
- memset(req,0,sizeof(IpcReqRespHeader));
+ IPC_REQ_RESP_HEADER_DECL(req);
req->clnt_sess_id = 5;
req->config_id = 14;
req->operation = UNC_OP_CREATE;
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX,obj.ValidateMessage(req, ikey));
- val_rename_vbr *renameval;
- renameval = reinterpret_cast<val_rename_vbr *>(malloc
- (sizeof(val_rename_vbr)));
- memset(renameval,0,sizeof(val_rename_vbr));
+ val_rename_vbr *renameval(ZALLOC_TYPE(val_rename_vbr));
for(unsigned int loop = 0; loop < sizeof(renameval->valid)/
sizeof(renameval->valid[0]); ++loop) {
renameval->valid[loop] = UNC_VF_VALID;
strncpy(reinterpret_cast<char *>(renameval->new_name),
"renamed", strlen("renamed")+1);
+ key_vbr *key1(UT_CLONE(key_vbr, key));
ConfigVal *rename_cfgval = new ConfigVal(IpctSt::kIpcStValRenameVbr, renameval);
ConfigKeyVal *rename_ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,
IpctSt::kIpcStKeyVbr,
- key, rename_cfgval);
+ key1, rename_cfgval);
req->operation = UNC_OP_RENAME;
req->datatype = UPLL_DT_IMPORT;
EXPECT_EQ(UPLL_RC_SUCCESS, obj.ValidateMessage(req, rename_ikey));
ConfigVal *invrename_cfgval = new ConfigVal(IpctSt::kIpcStValRenameVbr, NULL);
+ key_vbr *key2(UT_CLONE(key_vbr, key));
ConfigKeyVal *invrename_ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,
IpctSt::kIpcStKeyVbr,
- key, invrename_cfgval);
+ key2, invrename_cfgval);
EXPECT_EQ(UPLL_RC_SUCCESS, obj.ValidateMessage(req, invrename_ikey));
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX,obj.ValidateMessage(req, ikey));
req->operation = UNC_OP_CONTROL;
- val_ping *vst = reinterpret_cast<val_ping *>(malloc
- (sizeof(val_ping)));
- memset(vst,0,sizeof(val_ping));
+ val_ping *vst(ZALLOC_TYPE(val_ping));
for(unsigned int loop = 0; loop < sizeof(vst->valid)/
sizeof(vst->valid[0]); ++loop) {
vst->valid[loop] = UNC_VF_VALID;
vst->interval = 23;
vst->timeout = 32;
+ key_vbr *key3(UT_CLONE(key_vbr, key));
ConfigVal *ping_cfgval = new ConfigVal(IpctSt::kIpcStValPing, vst);
ConfigKeyVal *ping_ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,
IpctSt::kIpcStKeyVbr,
- key, ping_cfgval);
+ key3, ping_cfgval);
req->option2 = UNC_OPT2_PING;
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX,obj.ValidateMessage(req, ping_ikey));
+ delete ikey;
+ delete rename_ikey;
+ delete invrename_ikey;
+ delete ping_ikey;
}
TEST_F(VbrMoMgrTest, ValidateMessage_ReadSuccess) {
key_vbr *key;
val_vbr *val ;
GetKeyValStruct(key,val);
- ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVbr,val);
+ ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVbr,val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,
IpctSt::kIpcStKeyVbr,
key, cfgval);
- IpcReqRespHeader *req;
- req = reinterpret_cast<IpcReqRespHeader *>(malloc
- (sizeof(IpcReqRespHeader)));
- memset(req,0,sizeof(IpcReqRespHeader));
+ IPC_REQ_RESP_HEADER_DECL(req);
req->clnt_sess_id = 5;
req->config_id = 14;
req->operation = UNC_OP_READ;
req->option2 = UNC_OPT2_NONE;
req->datatype = UPLL_DT_CANDIDATE;
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX,obj.ValidateMessage(req, ikey));
+
+ delete ikey;
}
TEST_F(VbrMoMgrTest, ValidateMessage_ReadFailure) {
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,
IpctSt::kIpcStKeyVbr,
key, cfgval);
- IpcReqRespHeader *req;
- req = reinterpret_cast<IpcReqRespHeader *>(malloc
- (sizeof(IpcReqRespHeader)));
- memset(req,0,sizeof(IpcReqRespHeader));
+ IPC_REQ_RESP_HEADER_DECL(req);
req->clnt_sess_id = 5;
req->config_id = 14;
req->operation = UNC_OP_READ;
req->option2 = UNC_OPT2_NONE;
req->datatype = UPLL_DT_CANDIDATE;
EXPECT_EQ(UPLL_RC_ERR_INVALID_OPTION1, obj.ValidateMessage(req, ikey));
-}
+ delete ikey;
+}
TEST_F(VbrMoMgrTest, ValidateMessage_ReadOption2Failure) {
VbrMoMgr obj;
key_vbr *key;
val_vbr *val ;
GetKeyValStruct(key,val);
- ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVbr,val);
+ ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVbr,val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,
IpctSt::kIpcStKeyVbr,
key, cfgval);
- IpcReqRespHeader *req;
- req = reinterpret_cast<IpcReqRespHeader *>(malloc
- (sizeof(IpcReqRespHeader)));
- memset(req,0,sizeof(IpcReqRespHeader));
+ IPC_REQ_RESP_HEADER_DECL(req);
req->clnt_sess_id = 5;
req->config_id = 14;
req->operation = UNC_OP_READ;
req->option2 = UNC_OPT2_L2DOMAIN;
req->datatype = UPLL_DT_CANDIDATE;
EXPECT_EQ(UPLL_RC_ERR_INVALID_OPTION2, obj.ValidateMessage(req, ikey));
+
+ delete ikey;
}
TEST_F(VbrMoMgrTest, ValidateMessage_InvalidValVbr) {
key_vbr *key;
val_vbr *val ;
GetKeyValStruct(key,val);
- ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValRenameVbr,val);
+ ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValRenameVbr,val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,
IpctSt::kIpcStKeyVbr,
key, cfgval);
- IpcReqRespHeader *req;
- req = reinterpret_cast<IpcReqRespHeader *>(malloc
- (sizeof(IpcReqRespHeader)));
- memset(req,0,sizeof(IpcReqRespHeader));
+ IPC_REQ_RESP_HEADER_DECL(req);
req->clnt_sess_id = 5;
req->config_id = 14;
req->operation = UNC_OP_READ;
req->option2 = UNC_OPT2_NONE;
req->datatype = UPLL_DT_CANDIDATE;
EXPECT_EQ(UPLL_RC_ERR_BAD_REQUEST, obj.ValidateMessage(req, ikey));
+
+ delete ikey;
}
TEST_F(VbrMoMgrTest, ValidateMessage_NullVal) {
VbrMoMgr obj;
key_vbr *key;
- val_vbr *val ;
- GetKeyValStruct(key,val);
- ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVbr,val);
+ GetKeyStruct(key);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,
IpctSt::kIpcStKeyVbr,
key, NULL);
- IpcReqRespHeader *req;
- req = reinterpret_cast<IpcReqRespHeader *>(malloc
- (sizeof(IpcReqRespHeader)));
- memset(req,0,sizeof(IpcReqRespHeader));
+ IPC_REQ_RESP_HEADER_DECL(req);
req->clnt_sess_id = 5;
req->config_id = 14;
req->operation = UNC_OP_READ;
req->option2 = UNC_OPT2_NONE;
req->datatype = UPLL_DT_CANDIDATE;
EXPECT_EQ(UPLL_RC_SUCCESS, obj.ValidateMessage(req, ikey));
+
+ delete ikey;
}
TEST_F(VbrMoMgrTest, ValidateMessage_DiffOption) {
VbrMoMgr obj;
key_vbr *key;
- val_vbr *val ;
- GetKeyValStruct(key,val);
- ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVbr,val);
+ GetKeyStruct(key);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,
IpctSt::kIpcStKeyVbr,
key, NULL);
- IpcReqRespHeader *req;
- req = reinterpret_cast<IpcReqRespHeader *>(malloc
- (sizeof(IpcReqRespHeader)));
- memset(req,0,sizeof(IpcReqRespHeader));
+ IPC_REQ_RESP_HEADER_DECL(req);
req->clnt_sess_id = 5;
req->config_id = 14;
req->operation = UNC_OP_READ;
req->option2 = UNC_OPT2_NONE;
req->datatype = UPLL_DT_STATE;
EXPECT_EQ(UPLL_RC_ERR_INVALID_OPTION1, obj.ValidateMessage(req, ikey));
+
+ delete ikey;
}
TEST_F(VbrMoMgrTest, ValidateMessage_DiffOption2) {
VbrMoMgr obj;
key_vbr *key;
- val_vbr *val ;
- GetKeyValStruct(key,val);
- ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVbr,val);
+ GetKeyStruct(key);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,
IpctSt::kIpcStKeyVbr,
key, NULL);
- IpcReqRespHeader *req;
- req = reinterpret_cast<IpcReqRespHeader *>(malloc
- (sizeof(IpcReqRespHeader)));
- memset(req,0,sizeof(IpcReqRespHeader));
+ IPC_REQ_RESP_HEADER_DECL(req);
req->clnt_sess_id = 5;
req->config_id = 14;
req->operation = UNC_OP_READ;
req->option2 = UNC_OPT2_IP_ROUTE;
req->datatype = UPLL_DT_STATE;
EXPECT_EQ(UPLL_RC_ERR_INVALID_OPTION2, obj.ValidateMessage(req, ikey));
+
+ delete ikey;
}
+
TEST_F(VbrMoMgrTest, ValidateMessage_ValidDiffOption) {
VbrMoMgr obj;
key_vbr *key;
- val_vbr *val ;
- GetKeyValStruct(key,val);
- ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVbr,val);
+ GetKeyStruct(key);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,
IpctSt::kIpcStKeyVbr,
key, NULL);
- IpcReqRespHeader *req;
- req = reinterpret_cast<IpcReqRespHeader *>(malloc
- (sizeof(IpcReqRespHeader)));
- memset(req,0,sizeof(IpcReqRespHeader));
+ IPC_REQ_RESP_HEADER_DECL(req);
req->clnt_sess_id = 5;
req->config_id = 14;
req->operation = UNC_OP_READ;
req->option2 = UNC_OPT2_NONE;
req->datatype = UPLL_DT_STATE;
EXPECT_EQ(UPLL_RC_SUCCESS, obj.ValidateMessage(req, ikey));
+
+ delete ikey;
}
TEST_F(VbrMoMgrTest, ValidateMessage_InvalidInputCREATE) {
-
VbrMoMgr obj;
key_vbr *key;
val_vbr *val;
ConfigKeyVal *invalkey = NULL;
IpcReqRespHeader *inreq = NULL;
- IpcReqRespHeader *req;
- req = reinterpret_cast<IpcReqRespHeader *>(malloc
- (sizeof(IpcReqRespHeader)));
- memset(req,0,sizeof(IpcReqRespHeader));
+ IPC_REQ_RESP_HEADER_DECL(req);
req->clnt_sess_id = 5;
req->config_id = 14;
req->operation = UNC_OP_CREATE;
EXPECT_EQ(UPLL_RC_ERR_GENERIC, obj.ValidateMessage(inreq, ikey));
- ConfigVal *inval_cfgval = new ConfigVal(IpctSt::kIpcStValRenameVbr, val);
+ key_vbr *key1(UT_CLONE(key_vbr, key));
+ val_vbr *val1(UT_CLONE(val_vbr, val));
+ ConfigVal *inval_cfgval = new ConfigVal(IpctSt::kIpcStValRenameVbr, val1);
ConfigKeyVal *invalcfgkey = new ConfigKeyVal(UNC_KT_VBRIDGE,
IpctSt::kIpcStKeyVbr,
- key, inval_cfgval);
+ key1, inval_cfgval);
EXPECT_EQ(UPLL_RC_ERR_BAD_REQUEST, obj.ValidateMessage(req, invalcfgkey));
- invalcfgkey = new ConfigKeyVal(UNC_KT_VBRIDGE,
- IpctSt::kIpcStKeyLogicalPort,
- key, cfgval);
+ key_vbr *key2(UT_CLONE(key_vbr, key));
+ val_vbr *val2(UT_CLONE(val_vbr, val));
+ inval_cfgval = new ConfigVal(IpctSt::kIpcStValRenameVbr, val2);
+ invalcfgkey = new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyLogicalPort,
+ key2, inval_cfgval);
EXPECT_EQ(UPLL_RC_ERR_BAD_REQUEST, obj.ValidateMessage(req, invalcfgkey));
- invalcfgkey = new ConfigKeyVal(UNC_KT_VTUNNEL,
- IpctSt::kIpcStKeyVbr,
- key, cfgval);
+ delete invalcfgkey;
+ key2 = UT_CLONE(key_vbr, key);
+ val2 = UT_CLONE(val_vbr, val);
+ inval_cfgval = new ConfigVal(IpctSt::kIpcStValRenameVbr, val2);
+ invalcfgkey = new ConfigKeyVal(UNC_KT_VTUNNEL, IpctSt::kIpcStKeyVbr,
+ key2, inval_cfgval);
EXPECT_EQ(UPLL_RC_ERR_BAD_REQUEST, obj.ValidateMessage(req, invalcfgkey));
EXPECT_EQ(UPLL_RC_ERR_NOT_ALLOWED_FOR_THIS_DT,obj.ValidateMessage(req, ikey));
req->datatype = UPLL_DT_CANDIDATE;
- strncpy(reinterpret_cast<char *>(key->vtn_key.vtn_name),
- "", strlen("")+1);
- invalcfgkey = new ConfigKeyVal(UNC_KT_VBRIDGE,
- IpctSt::kIpcStKeyVbr,
- key, cfgval);
+ delete invalcfgkey;
+ key2 = UT_CLONE(key_vbr, key);
+ key2->vtn_key.vtn_name[0] = '\0';
+ val2 = UT_CLONE(val_vbr, val);
+ inval_cfgval = new ConfigVal(IpctSt::kIpcStValRenameVbr, val2);
+ invalcfgkey = new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVbr,
+ key2, inval_cfgval);
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, obj.ValidateMessage(req, invalcfgkey));
+ delete invalcfgkey;
+ key2 = UT_CLONE(key_vbr, key);
strncpy(reinterpret_cast<char *>(key->vtn_key.vtn_name),
- "VTN_1", strlen("VTN_1")+1);
- invalcfgkey = new ConfigKeyVal(UNC_KT_VBRIDGE,
- IpctSt::kIpcStKeyVbr,
- key, NULL);
+ "VTN_1", strlen("VTN_1")+1);
+ invalcfgkey = new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVbr,
+ key2, NULL);
EXPECT_EQ(UPLL_RC_ERR_BAD_REQUEST,obj.ValidateMessage(req, invalcfgkey));
- ConfigVal *invalcfgval = new ConfigVal(IpctSt::kIpcStValVbr, NULL);
-
- invalcfgkey = new ConfigKeyVal(UNC_KT_VBRIDGE,
- IpctSt::kIpcStKeyVbr,
- key, invalcfgval);
+ delete invalcfgkey;
+ key2 = UT_CLONE(key_vbr, key);
+ inval_cfgval = new ConfigVal(IpctSt::kIpcStValVbr, NULL);
+ invalcfgkey = new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVbr,
+ key2, inval_cfgval);
EXPECT_EQ(UPLL_RC_ERR_BAD_REQUEST,obj.ValidateMessage(req, invalcfgkey));
- string ctrlr_id = "Controller 1";
- strncpy(reinterpret_cast<char *>(val->controller_id), ctrlr_id.c_str(),
- strlen(ctrlr_id.c_str())+1);
-
- invalcfgkey = new ConfigKeyVal(UNC_KT_VBRIDGE,
- IpctSt::kIpcStKeyVbr,
- key, cfgval);
+ delete invalcfgkey;
+ key2 = UT_CLONE(key_vbr, key);
+ val2 = UT_CLONE(val_vbr, val);
+ pfc_strlcpy(reinterpret_cast<char *>(val2->controller_id), "Controller 1",
+ sizeof(val2->controller_id));
+ inval_cfgval = new ConfigVal(IpctSt::kIpcStValVbr, val2);
+ invalcfgkey = new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVbr,
+ key2, inval_cfgval);
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, obj.ValidateMessage(req, invalcfgkey));
+ delete ikey;
delete invalcfgkey;
}
TEST_F(VbrMoMgrTest, ValidateMessage_InvalidInputRENAME) {
-
VbrMoMgr obj;
key_vbr *key;
val_vbr *val;
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,
IpctSt::kIpcStKeyVbr,
key, cfgval);
- IpcReqRespHeader *req;
- req = reinterpret_cast<IpcReqRespHeader *>(malloc
- (sizeof(IpcReqRespHeader)));
- memset(req,0,sizeof(IpcReqRespHeader));
+ IPC_REQ_RESP_HEADER_DECL(req);
req->clnt_sess_id = 5;
req->config_id = 14;
req->operation = UNC_OP_RENAME;
EXPECT_EQ(UPLL_RC_ERR_BAD_REQUEST, obj.ValidateMessage(req, ikey));
- val_rename_vbr *renameval;
- renameval = reinterpret_cast<val_rename_vbr *>(malloc
- (sizeof(val_rename_vbr)));
- memset(renameval,0,sizeof(val_rename_vbr));
- for(unsigned int loop = 0; loop < sizeof(renameval->valid)/
- sizeof(renameval->valid[0]); ++loop) {
- renameval->valid[loop] = UNC_VF_VALID;
- }
- strncpy(reinterpret_cast<char *>(renameval->new_name),
- "renamed", strlen("renamed")+1);
-
- ConfigVal *rename_cfgval = new ConfigVal(IpctSt::kIpcStValRenameVbr, renameval);
- ConfigKeyVal *rename_ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,
- IpctSt::kIpcStKeyVbr,
- key, rename_cfgval);
-
- ConfigVal *invrename_cfgval = new ConfigVal(IpctSt::kIpcStValRenameVbr, NULL);
- ConfigKeyVal *invrename_ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,
- IpctSt::kIpcStKeyVbr,
- key, invrename_cfgval);
-
- EXPECT_EQ(UPLL_RC_ERR_BAD_REQUEST, obj.ValidateMessage(req, invrename_ikey));
-
- strncpy(reinterpret_cast<char *>(renameval->new_name),
- "", strlen("")+1);
-
- invrename_cfgval = new ConfigVal(IpctSt::kIpcStValRenameVbr, renameval);
- invrename_ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,
- IpctSt::kIpcStKeyVbr,
- key, invrename_cfgval);
+ key_vbr *key1(UT_CLONE(key_vbr, key));
+ ConfigVal *cfgval1(new ConfigVal(IpctSt::kIpcStValRenameVbr, NULL));
+ ConfigKeyVal *ikey1(new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVbr,
+ key1, cfgval1));
+ EXPECT_EQ(UPLL_RC_ERR_BAD_REQUEST, obj.ValidateMessage(req, ikey1));
- EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, obj.ValidateMessage(req, invrename_ikey));
-
- strncpy(reinterpret_cast<char *>(renameval->new_name),
- "renamed", strlen("renamed")+1);
+ key_vbr *key2(UT_CLONE(key_vbr, key));
+ val_rename_vbr *rval2(ZALLOC_TYPE(val_rename_vbr));
+ for(unsigned int loop = 0; loop < PFC_ARRAY_CAPACITY(rval2->valid); ++loop){
+ rval2->valid[loop] = UNC_VF_VALID;
+ }
+ ConfigVal *cfgval2(new ConfigVal(IpctSt::kIpcStValRenameVbr, rval2));
+ ConfigKeyVal *ikey2(new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVbr,
+ key2, cfgval2));
+ EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, obj.ValidateMessage(req, ikey2));
+
+ key_vbr *key3(UT_CLONE(key_vbr, key));
+ val_rename_vbr *rval3(UT_CLONE(val_rename_vbr, rval2));
+ pfc_strlcpy(reinterpret_cast<char *>(rval3->new_name), "renamed",
+ sizeof(rval3->new_name));
+ ConfigVal *cfgval3(new ConfigVal(IpctSt::kIpcStValRenameVbr, rval3));
+ ConfigKeyVal *ikey3(new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVbr,
+ key3, cfgval3));
req->operation = UNC_OP_READ;
req->option1 = UNC_OPT1_DETAIL;
- EXPECT_EQ(UPLL_RC_ERR_INVALID_OPTION1, obj.ValidateMessage(req, rename_ikey));
+ EXPECT_EQ(UPLL_RC_ERR_INVALID_OPTION1, obj.ValidateMessage(req, ikey3));
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_PING;
- EXPECT_EQ(UPLL_RC_ERR_INVALID_OPTION2, obj.ValidateMessage(req, rename_ikey));
+ EXPECT_EQ(UPLL_RC_ERR_INVALID_OPTION2, obj.ValidateMessage(req, ikey3));
req->option2 = UNC_OPT2_NONE;
EXPECT_EQ(UPLL_RC_ERR_BAD_REQUEST, obj.ValidateMessage(req, ikey));
- strncpy(reinterpret_cast<char *>(renameval->new_name),
- "", strlen("")+1);
-
- invrename_cfgval = new ConfigVal(IpctSt::kIpcStValRenameVbr, renameval);
- invrename_ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,
- IpctSt::kIpcStKeyVbr,
- key, invrename_cfgval);
-
- EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, obj.ValidateMessage(req, invrename_ikey));
-
- strncpy(reinterpret_cast<char *>(renameval->new_name),
- "renamed", strlen("renamed")+1);
-
+ key_vbr *key4(UT_CLONE(key_vbr, key));
+ val_rename_vbr *rval4(UT_CLONE(val_rename_vbr, rval2));
+ ConfigVal *cfgval4(new ConfigVal(IpctSt::kIpcStValRenameVbr, rval4));
+ ConfigKeyVal *ikey4(new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVbr,
+ key4, cfgval4));
+ EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, obj.ValidateMessage(req, ikey4));
+
+ key_vbr *key5(UT_CLONE(key_vbr, key));
+ val_rename_vbr *rval5(UT_CLONE(val_rename_vbr, rval3));
+ ConfigVal *cfgval5(new ConfigVal(IpctSt::kIpcStValRenameVbr, rval5));
+ ConfigKeyVal *ikey5(new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVbr,
+ key5, cfgval5));
req->operation = UNC_OP_READ_BULK;
- EXPECT_EQ(UPLL_RC_SUCCESS, obj.ValidateMessage(req, rename_ikey));
+ EXPECT_EQ(UPLL_RC_SUCCESS, obj.ValidateMessage(req, ikey5));
+
+ delete ikey;
+ delete ikey1;
+ delete ikey2;
+ delete ikey3;
+ delete ikey4;
+ delete ikey5;
}
TEST_F(VbrMoMgrTest, ValidateMessage_InvalidInputREAD) {
-
VbrMoMgr obj;
key_vbr *key;
val_vbr *val;
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,
IpctSt::kIpcStKeyVbr,
key, cfgval);
- IpcReqRespHeader *req;
- req = reinterpret_cast<IpcReqRespHeader *>(malloc
- (sizeof(IpcReqRespHeader)));
- memset(req,0,sizeof(IpcReqRespHeader));
+ IPC_REQ_RESP_HEADER_DECL(req);
req->clnt_sess_id = 5;
req->config_id = 14;
req->operation = UNC_OP_READ_SIBLING_COUNT;
EXPECT_EQ(UPLL_RC_ERR_INVALID_OPTION2, obj.ValidateMessage(req, ikey));
+ key_vbr *key1(UT_CLONE(key_vbr, key));
+ val_rename_vbr *val1(ZALLOC_TYPE(val_rename_vbr));
req->option2 = UNC_OPT2_NONE;
- ConfigVal *inval_cfgval = new ConfigVal(IpctSt::kIpcStValRenameVbr, val);
- ConfigKeyVal *invalcfgkey = new ConfigKeyVal(UNC_KT_VBRIDGE,
- IpctSt::kIpcStKeyVbr,
- key, inval_cfgval);
-
- EXPECT_EQ(UPLL_RC_ERR_BAD_REQUEST,obj.ValidateMessage(req, invalcfgkey));
-
- inval_cfgval = new ConfigVal(IpctSt::kIpcStValVbr, NULL);
-
- invalcfgkey = new ConfigKeyVal(UNC_KT_VBRIDGE,
- IpctSt::kIpcStKeyVbr,
- key, inval_cfgval);
-
- EXPECT_EQ(UPLL_RC_SUCCESS, obj.ValidateMessage(req, invalcfgkey));
-
- string ctrlr_id = "Controller 1";
- strncpy(reinterpret_cast<char *>(val->controller_id), ctrlr_id.c_str(),
- strlen(ctrlr_id.c_str())+1);
-
- invalcfgkey = new ConfigKeyVal(UNC_KT_VBRIDGE,
- IpctSt::kIpcStKeyVbr,
- key, cfgval);
-
- EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, obj.ValidateMessage(req, invalcfgkey));
+ ConfigVal *cfgval1(new ConfigVal(IpctSt::kIpcStValRenameVbr, val1));
+ ConfigKeyVal *ikey1(new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVbr,
+ key1, cfgval1));
+ EXPECT_EQ(UPLL_RC_ERR_BAD_REQUEST,obj.ValidateMessage(req, ikey1));
+
+ key_vbr *key2(UT_CLONE(key_vbr, key));
+ ConfigVal *cfgval2(new ConfigVal(IpctSt::kIpcStValVbr, NULL));
+ ConfigKeyVal *ikey2(new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVbr,
+ key2, cfgval2));
+ EXPECT_EQ(UPLL_RC_SUCCESS, obj.ValidateMessage(req, ikey2));
+
+ key_vbr *key3(UT_CLONE(key_vbr, key));
+ val_vbr *val3(UT_CLONE(val_vbr, val));
+ pfc_strlcpy(reinterpret_cast<char *>(val3->controller_id), "Controller 1",
+ sizeof(val3->controller_id));
+ ConfigVal *cfgval3(new ConfigVal(IpctSt::kIpcStValVbr, val3));
+ ConfigKeyVal *ikey3(new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVbr,
+ key3, cfgval3));
+ EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, obj.ValidateMessage(req, ikey3));
req->datatype = UPLL_DT_AUDIT;
- EXPECT_EQ(UPLL_RC_ERR_NOT_ALLOWED_FOR_THIS_DT, obj.ValidateMessage(req, invalcfgkey));
+ EXPECT_EQ(UPLL_RC_ERR_NOT_ALLOWED_FOR_THIS_DT,
+ obj.ValidateMessage(req, ikey3));
req->operation = UNC_OP_DELETE;
- EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX,obj.ValidateMessage(req, invalcfgkey));
+ EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX,obj.ValidateMessage(req, ikey3));
+
+ delete ikey;
+ delete ikey1;
+ delete ikey2;
+ delete ikey3;
}
TEST_F(VbrMoMgrTest, ValidateMessage_InvalidInputCONTROL) {
-
VbrMoMgr obj;
key_vbr *key;
val_vbr *val;
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,
IpctSt::kIpcStKeyVbr,
key, cfgval);
- IpcReqRespHeader *req;
- req = reinterpret_cast<IpcReqRespHeader *>(malloc
- (sizeof(IpcReqRespHeader)));
- memset(req,0,sizeof(IpcReqRespHeader));
+ IPC_REQ_RESP_HEADER_DECL(req);
req->clnt_sess_id = 5;
req->config_id = 14;
req->operation = UNC_OP_CONTROL;
req->option2 = UNC_OPT2_PING;
EXPECT_EQ(UPLL_RC_ERR_BAD_REQUEST,obj.ValidateMessage(req, ikey));
- val_ping *vst = reinterpret_cast<val_ping *>(malloc
- (sizeof(val_ping)));
- memset(vst,0,sizeof(val_ping));
- for(unsigned int loop = 0; loop < sizeof(vst->valid)/
- sizeof(vst->valid[0]); ++loop) {
- vst->valid[loop] = UNC_VF_VALID;
+ key_vbr *key1(UT_CLONE(key_vbr, key));
+ val_ping *val1(ZALLOC_TYPE(val_ping));
+ for(unsigned int loop = 0; loop < PFC_ARRAY_CAPACITY(val1->valid); ++loop){
+ val1->valid[loop] = UNC_VF_VALID;
}
+
struct sockaddr_in sa;
inet_pton(AF_INET, "255.255.255.255", &(sa.sin_addr));
- vst->target_addr = sa.sin_addr.s_addr;
+ val1->target_addr = sa.sin_addr.s_addr;
inet_pton(AF_INET, "192.168.1.2", &(sa.sin_addr));
- vst->src_addr = sa.sin_addr.s_addr; // ("192.168.1.2")
- vst->dfbit = UPLL_DF_BIT_ENABLE;
- vst->packet_size = 5;
- vst->count = 14;
- vst->interval = 23;
- vst->timeout = 32;
-
- ConfigVal *ping_cfgval = new ConfigVal(IpctSt::kIpcStValPing, vst);
- ConfigKeyVal *ping_ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,
- IpctSt::kIpcStKeyVbr,
- key, ping_cfgval);
-
- EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, obj.ValidateMessage(req, ping_ikey));
-
+ val1->src_addr = sa.sin_addr.s_addr; // ("192.168.1.2")
+ val1->dfbit = UPLL_DF_BIT_ENABLE;
+ val1->packet_size = 5;
+ val1->count = 14;
+ val1->interval = 23;
+ val1->timeout = 32;
+ ConfigVal *cfgval1(new ConfigVal(IpctSt::kIpcStValPing, val1));
+ ConfigKeyVal *ikey1(new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVbr,
+ key1, cfgval1));
+ EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, obj.ValidateMessage(req, ikey1));
+
+ key_vbr *key2(UT_CLONE(key_vbr, key));
+ val_ping *val2(UT_CLONE(val_ping, val1));
inet_pton(AF_INET, "192.168.1.1", &(sa.sin_addr));
- vst->target_addr = sa.sin_addr.s_addr;// ("192.168.1.1")
+ val2->target_addr = sa.sin_addr.s_addr;// ("192.168.1.1")
+ ConfigVal *cfgval2(new ConfigVal(IpctSt::kIpcStValPing, val2));
+ ConfigKeyVal *ikey2(new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVbr,
+ key2, cfgval2));
req->datatype = UPLL_DT_CANDIDATE;
- EXPECT_EQ(UPLL_RC_ERR_NOT_ALLOWED_FOR_THIS_DT, obj.ValidateMessage(req, ping_ikey));
+ EXPECT_EQ(UPLL_RC_ERR_NOT_ALLOWED_FOR_THIS_DT,
+ obj.ValidateMessage(req, ikey2));
req->operation = UNC_OP_INVALID;
- EXPECT_EQ(UPLL_RC_ERR_NOT_ALLOWED_FOR_THIS_DT,obj.ValidateMessage(req, ping_ikey));
-}
+ EXPECT_EQ(UPLL_RC_ERR_NOT_ALLOWED_FOR_THIS_DT,
+ obj.ValidateMessage(req, ikey2));
+ delete ikey;
+ delete ikey1;
+ delete ikey2;
+}
TEST_F(VbrMoMgrTest, AdaptValToVtnService_Success) {
-
VbrMoMgr obj;
key_vbr *key;
- val_vbr *val;
- GetKeyValStruct(key, val);
-
- val_vbr_st *valst;
- valst = reinterpret_cast<val_vbr_st *>(malloc
- (sizeof(val_vbr_st)));
+ GetKeyStruct(key);
- memset(valst,0,sizeof(val_vbr_st));
+ val_vbr_st *valst(ZALLOC_TYPE(val_vbr_st));
valst->valid[0] = UNC_VF_VALID;
valst->oper_status = UPLL_OPER_STATUS_UP;
ConfigVal *cfg_val = new ConfigVal(IpctSt::kIpcStValVbrSt, valst);
-
-
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,
IpctSt::kIpcStKeyVbr,
key, cfg_val);
}
TEST_F(VbrMoMgrTest, AdaptValToVtnService_Failure) {
-
VbrMoMgr obj;
key_vbr *key;
- val_vbr *val;
- GetKeyValStruct(key, val);
- ConfigKeyVal* ikey = NULL;
+ GetKeyStruct(key);
+ ConfigKeyVal* ikey = NULL;
EXPECT_EQ(UPLL_RC_ERR_GENERIC, obj.AdaptValToVtnService(ikey));
- ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,
- IpctSt::kIpcStKeyVbr,
- key, NULL);
-
+ ikey = new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVbr, key, NULL);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, obj.AdaptValToVtnService(ikey));
delete ikey;
}
TEST_F(VbrMoMgrTest, GetValid) {
-
VbrMoMgr obj;
- key_vbr *key;
val_vbr *val;
- uint8_t * valid;
- GetKeyValStruct(key, val);
+ uint8_t *valid(NULL);
+ GetValStruct(val);
void *in_val = reinterpret_cast<void *>(val);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, obj.GetValid(in_val, vbridge::kDbiCtrlrName,
valid, UPLL_DT_CANDIDATE, MAINTBL));
- val_vbr_st *valst;
- valst = reinterpret_cast<val_vbr_st *>(malloc
- (sizeof(val_vbr_st)));
-
- memset(valst,0,sizeof(val_vbr_st));
+ val_vbr_st *valst(ZALLOC_TYPE(val_vbr_st));
valst->valid[0] = UNC_VF_VALID;
valst->oper_status = UPLL_OPER_STATUS_UP;
EXPECT_EQ(UPLL_RC_SUCCESS, obj.GetValid(in_val, 0, valid, UPLL_DT_STATE, RENAMETBL));
EXPECT_EQ(val->valid[UPLL_IDX_OPER_STATUS_VBRS], valid[UPLL_IDX_OPER_STATUS_VBRS]);
+ free(val);
+ free(valst);
}
-
-TEST(SwapKeyVal,IpctSt_valid ) {
+TEST_F(VbrMoMgrTest, SwapKeyVal_IpctSt_valid) {
+ DalOdbcMgr::stub_setResultcode(DalOdbcMgr::INIT,kDalRcSuccess);
+ DalOdbcMgr::stub_setSingleRecordExists(true);
+ DalOdbcMgr::stub_setResultcode(DalOdbcMgr::RECORD_EXISTS,kDalRcSuccess);
+ DalOdbcMgr::stub_setResultcode(DalOdbcMgr::RECORD_COUNT,kDalRcSuccess);
+ DalOdbcMgr::stub_setResultcode(DalOdbcMgr::SINGLE,kDalRcSuccess);
VbrMoMgr vbr;
- DalDmlIntf *dmi= new DalOdbcMgr();
- uint8_t *ctr_id1 = (uint8_t *)malloc(32);
- memset(ctr_id1, '\0', 32);
+ DalDmlIntf *dmi(getDalDmlIntf());
+ uint8_t *ctr_id1 = ZALLOC_ARRAY(uint8_t, 32);
memcpy(ctr_id1, "Controller1", 11);
const char *vbr_name = "VBR_1";
bool no_rename;
- key_vbr_t *key = (key_vbr_t *)malloc(sizeof(key_vbr_t));
- memset(key,0,sizeof(key_vbr));
- strncpy(reinterpret_cast<char *>(key->vbridge_name),
- vbr_name, strlen(vbr_name)+1);
- val_rename_vbr_t *val = (val_rename_vbr_t *)malloc(sizeof(val_rename_vbr_t));
+ key_vbr_t *key(ZALLOC_TYPE(key_vbr_t));
+ pfc_strlcpy(reinterpret_cast<char *>(key->vbridge_name),
+ vbr_name, sizeof(key->vbridge_name));
+ val_rename_vbr_t *val(ZALLOC_TYPE(val_rename_vbr_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrSt, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVbr, key, config_val);
ConfigKeyVal *okey = NULL;
- EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.SwapKeyVal(ikey,okey,dmi,ctr_id1,no_rename));
+ EXPECT_EQ(UPLL_RC_ERR_GENERIC,
+ vbr.SwapKeyVal(ikey, okey, dmi, ctr_id1, no_rename));
+ delete okey;
val->valid[UPLL_IDX_NEW_NAME_RVBR] = UNC_VF_VALID_NO_VALUE;
- EXPECT_EQ(UPLL_RC_SUCCESS, vbr.SwapKeyVal(ikey,okey,dmi,ctr_id1,no_rename));
-
- ConfigVal *config_val1= new ConfigVal(IpctSt::kIpcStValVbrSt, val);
- ConfigKeyVal *ikey1 = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVbr, key, config_val1);
- EXPECT_EQ(UPLL_RC_ERR_BAD_REQUEST, vbr.SwapKeyVal(ikey1,okey,dmi,ctr_id1,no_rename));
+ EXPECT_EQ(UPLL_RC_SUCCESS,
+ vbr.SwapKeyVal(ikey, okey, dmi, ctr_id1, no_rename));
+ delete okey;
+
+ key_vbr_t *key1(UT_CLONE(key_vbr_t, key));
+ val_rename_vbr_t *val1(UT_CLONE(val_rename_vbr_t, val));
+ ConfigVal *config_val1(new ConfigVal(IpctSt::kIpcStValVbrSt, val1));
+ ConfigKeyVal *ikey1(new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVbr,
+ key1, config_val1));
+ EXPECT_EQ(UPLL_RC_ERR_BAD_REQUEST,
+ vbr.SwapKeyVal(ikey1, okey, dmi, ctr_id1, no_rename));
+ delete okey;
+
+ key_vbr_t *key2(UT_CLONE(key_vbr_t, key));
+ ConfigVal *config_val2(NULL);
+ ConfigKeyVal *ikey2(new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVbr,
+ key2, config_val2));
+ EXPECT_EQ(UPLL_RC_ERR_GENERIC,
+ vbr.SwapKeyVal(ikey2, okey, dmi,ctr_id1, no_rename));
+ delete okey;
+
+ key_vbr_t *key3(UT_CLONE(key_vbr_t, key));
+ val_rename_vbr_t *val3(NULL);
+ ConfigVal *config_val3(new ConfigVal(IpctSt::kIpcStValVbrSt, val3));
+ ConfigKeyVal *ikey3(new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVbr,
+ key3, config_val3));
+ EXPECT_EQ(UPLL_RC_ERR_GENERIC,
+ vbr.SwapKeyVal(ikey3, okey, dmi, ctr_id1, no_rename));
+ delete okey;
- ConfigVal *config_val2= NULL;
- ConfigKeyVal *ikey2 = new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVbr, key, config_val2);
- EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.SwapKeyVal(ikey2,okey,dmi,ctr_id1,no_rename));
-
- val_rename_vbr_t *val3 = NULL;
- ConfigVal *config_val3= new ConfigVal(IpctSt::kIpcStValVbrSt, val3);
- ConfigKeyVal *ikey3 = new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVbr, key, config_val3);
- EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.SwapKeyVal(ikey3,okey,dmi,ctr_id1,no_rename));
+ delete ikey;
+ delete ikey1;
+ delete ikey2;
- delete ikey,ikey1,ikey2,okey;
+ free(ctr_id1);
}
-
-
TEST_F(VbrMoMgrTest, UpdateAuditConfigStatus_ValidCsStatus) {
VbrMoMgr vbrmomgr;
key_vbr *key;
val_vbr *val;
GetKeyValStruct(key, val);
+
ConfigVal *cfg_val = new ConfigVal(IpctSt::kIpcStValVbr, val);
unc_keytype_configstatus_t cs_status = UNC_CS_APPLIED;
UpdateCtrlrPhase phase = kUpllUcpCreate;
ConfigKeyVal *ckv_running = new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVbr, (void*)key, cfg_val);
EXPECT_EQ(UPLL_RC_SUCCESS, vbrmomgr.UpdateAuditConfigStatus(cs_status, phase, ckv_running));
+
+ delete ckv_running;
}
TEST_F(VbrMoMgrTest, UpdateAuditConfigStatus_InvalidCsStatus) {
key_vbr *key;
val_vbr *val;
GetKeyValStruct(key, val);
+
ConfigVal *cfg_val = new ConfigVal(IpctSt::kIpcStValVbr, val);
unc_keytype_configstatus_t cs_status = UNC_CS_INVALID;
UpdateCtrlrPhase phase = kUpllUcpCreate;
ConfigKeyVal *ckv_running = new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVbr, (void*)key, cfg_val);
EXPECT_EQ(UPLL_RC_SUCCESS, vbrmomgr.UpdateAuditConfigStatus(cs_status, phase, ckv_running));
+
+ delete ckv_running;
}
TEST_F(VbrMoMgrTest, UpdateAuditConfigStatus_EmptyVal) {
UpdateCtrlrPhase phase = kUpllUcpCreate;
ConfigKeyVal *ckv_running = new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVbr);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbrmomgr.UpdateAuditConfigStatus(cs_status, phase, ckv_running));
-}
-
+ delete ckv_running;
+}
TEST_F(VbrMoMgrTest, GetRenamedUncKey) {
- DalOdbcMgr::clearStubData();
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::INIT,kDalRcSuccess);
- TcLibModule::stub_setTCApiCommonRetcode(TcLibModule::REGISTER,unc::tclib::TC_API_COMMON_SUCCESS);
- TcLibModule::stub_loadtcLibModule();
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::SINGLE ,kDalRcSuccess);
+
VbrMoMgr vbrmomgr;
upll_keytype_datatype_t dt_type = UPLL_DT_CANDIDATE;
- DalDmlIntf *dmi = new DalOdbcMgr();
- uint8_t *ctr_id1 = (uint8_t *)malloc(32);
- memset(ctr_id1, '\0', 32);
+ DalDmlIntf *dmi(getDalDmlIntf());
+ uint8_t *ctr_id1 = ZALLOC_ARRAY(uint8_t, 32);
memcpy(ctr_id1, "Controller1", 11);
cout << "ctr_id1:" << ctr_id1<<endl;
key_vbr *key;
ConfigVal *cfg_val = new ConfigVal(IpctSt::kIpcStValVbr, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVbr, (void*)key, cfg_val);
EXPECT_EQ(UPLL_RC_SUCCESS, vbrmomgr.GetRenamedUncKey(ikey,dt_type,dmi,ctr_id1));
+
+ delete ikey;
+ free(ctr_id1);
}
-TEST(VbrMoMgr, GetRenamedControllerKey1) {
+TEST_F(VbrMoMgrTest, GetRenamedControllerKey_01) {
ConfigKeyVal *ikey = NULL;
VbrMoMgr vbr;
controller_domain *ctrl_domain = NULL;
EXPECT_EQ(UPLL_RC_ERR_GENERIC,vbr.GetRenamedControllerKey(ikey,UPLL_DT_STATE,dmi,ctrl_domain));
}
-TEST(VbrMoMgr, GetRenamedControllerKey2) {
+TEST_F(VbrMoMgrTest, GetRenamedControllerKey_02) {
VbrMoMgr vbr;
- controller_domain *ctrl_domain = new controller_domain();
- key_vbr_t *key_vbr = (key_vbr_t *)(malloc(sizeof(key_vbr_t)));
+ controller_domain ctrl_domain;
+ memset(&ctrl_domain, 0, sizeof(ctrl_domain));
+ key_vbr_t *key_vbr(ZALLOC_TYPE(key_vbr_t));
strcpy((char *)key_vbr->vtn_key.vtn_name, (char *)"vtn1");
strcpy((char *)key_vbr->vbridge_name, (char *)"vbridge");
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::SINGLE,kDalRcSuccess);
- DalDmlIntf *dmi = new DalOdbcMgr;
+ DalDmlIntf *dmi(getDalDmlIntf());
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,IpctSt::kIpcStKeyVbr,key_vbr);
SET_USER_DATA_FLAGS(ikey, 0x01);
- EXPECT_EQ(UPLL_RC_SUCCESS,vbr.GetRenamedControllerKey(ikey,UPLL_DT_CANDIDATE,dmi,ctrl_domain));
+ EXPECT_EQ(UPLL_RC_SUCCESS,
+ vbr.GetRenamedControllerKey(ikey, UPLL_DT_CANDIDATE, dmi,
+ &ctrl_domain));
+
+ delete ikey;
}
-TEST_F(VbrMoMgrTest, GetRenamedControllerKey) {
- DalOdbcMgr::clearStubData();
+TEST_F(VbrMoMgrTest, GetRenamedControllerKey_03) {
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::INIT,kDalRcSuccess);
- TcLibModule::stub_setTCApiCommonRetcode(TcLibModule::REGISTER,unc::tclib::TC_API_COMMON_SUCCESS);
- TcLibModule::stub_loadtcLibModule();
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::SINGLE ,kDalRcSuccess);
+
VbrMoMgr vbrmomgr;
upll_keytype_datatype_t dt_type = UPLL_DT_CANDIDATE;
- DalDmlIntf *dmi = new DalOdbcMgr();
- uint8_t *ctr_id1 = (uint8_t *)malloc(32);
- memset(ctr_id1, '\0', 32);
+ DalDmlIntf *dmi(getDalDmlIntf());
+ uint8_t *ctr_id1 = ZALLOC_ARRAY(uint8_t, 32);
memcpy(ctr_id1, "Controller1", 11);
cout << "ctr_id1:" << ctr_id1<<endl;
- uint8_t *dom_id1 = (uint8_t *)malloc(32);
- memset(dom_id1, '\0', 32);
+ uint8_t *dom_id1 = ZALLOC_ARRAY(uint8_t, 32);
memcpy(dom_id1, "Domain1", 7);
cout << "dom_id1:" << dom_id1<<endl;
- controller_domain ctrlr_dom;
- ctrlr_dom.ctrlr = ctr_id1;
- ctrlr_dom.domain = dom_id1;
key_vbr *key;
val_vbr *val;
GetKeyValStruct(key, val);
ctrlr_dom1.ctrlr = ctr_id1;
ctrlr_dom1.domain = NULL;
EXPECT_EQ(UPLL_RC_SUCCESS, vbrmomgr.GetRenamedControllerKey(ikey,dt_type,dmi,&ctrlr_dom1));
+
+ delete ikey;
+ free(ctr_id1);
+ free(dom_id1);
}
-TEST(GetRenamedControllerKey, GetRenamedControllerKey_01) {
- DalOdbcMgr::clearStubData();
+TEST_F(VbrMoMgrTest, GetRenamedControllerKey_04) {
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::INIT,kDalRcSuccess);
- TcLibModule::stub_setTCApiCommonRetcode(TcLibModule::REGISTER,unc::tclib::TC_API_COMMON_SUCCESS);
- TcLibModule::stub_loadtcLibModule();
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::SINGLE ,kDalRcSuccess);
+
VbrMoMgr vbr;
- key_vbr_t *keyvbr = (key_vbr_t *)malloc(sizeof(key_vbr_t));
- val_vbr_t *valVbr = (val_vbr_t *)malloc(sizeof(val_vbr_t));
+ key_vbr_t *keyvbr(ZALLOC_TYPE(key_vbr_t));
+ val_vbr_t *valVbr(ZALLOC_TYPE(val_vbr_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbr, valVbr);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVbr, keyvbr, config_val);
upll_keytype_datatype_t dt_type = UPLL_DT_CANDIDATE;
- DalDmlIntf *dmi = new DalOdbcMgr();
- uint8_t *ctr_id1 = (uint8_t *)malloc(32);
- memset(ctr_id1, '\0', 32);
+ DalDmlIntf *dmi(getDalDmlIntf());
+ uint8_t *ctr_id1 = ZALLOC_ARRAY(uint8_t, 32);
memcpy(ctr_id1, "Controller1", 11);
cout << "ctr_id1:" << ctr_id1<<endl;
- uint8_t *dom_id1 = (uint8_t *)malloc(32);
- memset(dom_id1, '\0', 32);
+ uint8_t *dom_id1 = ZALLOC_ARRAY(uint8_t, 32);
memcpy(dom_id1, "Domain1", 7);
cout << "dom_id1:" << dom_id1<<endl;
- controller_domain ctrlr_dom;
- ctrlr_dom.ctrlr = ctr_id1;
- ctrlr_dom.domain = dom_id1;
controller_domain ctrlr_dom1;
ctrlr_dom1.ctrlr = ctr_id1;
ctrlr_dom1.domain = NULL;
EXPECT_EQ(UPLL_RC_SUCCESS, vbr.GetRenamedControllerKey(ikey,dt_type,dmi,&ctrlr_dom1));
+
+ delete ikey;
+ free(ctr_id1);
+ free(dom_id1);
}
-TEST(VbrMoMgr, GetControllerDomainId1) {
+TEST_F(VbrMoMgrTest, GetControllerDomainId1) {
VbrMoMgr vbr;
- controller_domain *ctrl_domain = new controller_domain();
- key_vbr_t *key_vbr = (key_vbr_t *)(malloc(sizeof(key_vbr_t)));
+ controller_domain ctrl_domain;
+ memset(&ctrl_domain, 0, sizeof(ctrl_domain));
+ key_vbr_t *key_vbr(ZALLOC_TYPE(key_vbr_t));
strcpy((char *)key_vbr->vtn_key.vtn_name, (char *)"vtn1");
strcpy((char *)key_vbr->vbridge_name, (char *)"vbridge1");
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,IpctSt::kIpcStKeyVbr,key_vbr);
- EXPECT_EQ(UPLL_RC_SUCCESS,vbr.GetControllerDomainId(ikey,ctrl_domain));
+ EXPECT_EQ(UPLL_RC_SUCCESS, vbr.GetControllerDomainId(ikey, &ctrl_domain));
+
+ delete ikey;
}
-TEST(VbrMoMgr, GetControllerDomainId2) {
+TEST_F(VbrMoMgrTest, GetControllerDomainId2) {
VbrMoMgr vbr;
- controller_domain *ctrl_domain = new controller_domain();
+ controller_domain ctrl_domain;
+ memset(&ctrl_domain, 0, sizeof(ctrl_domain));
ConfigKeyVal *ikey = NULL;
- EXPECT_EQ(UPLL_RC_ERR_GENERIC,vbr.GetControllerDomainId(ikey,ctrl_domain));
+ EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.GetControllerDomainId(ikey, &ctrl_domain));
}
-TEST(VbrMoMgr, GetControllerDomainId3) {
+
+TEST_F(VbrMoMgrTest, GetControllerDomainId3) {
VbrMoMgr vbr;
controller_domain *ctrl_domain = NULL;
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE);
EXPECT_EQ(UPLL_RC_ERR_GENERIC,vbr.GetControllerDomainId(ikey,ctrl_domain));
+
+ delete ikey;
}
-TEST(VbrMoMgr, GetControllerDomainId4) {
+TEST_F(VbrMoMgrTest, GetControllerDomainId4) {
VbrMoMgr vbr;
- controller_domain *ctrl_domain = new controller_domain();
- val_vbr *vbr_val = (val_vbr_t *)(malloc(sizeof(val_vbr_t)));
- key_vbr_t *key_vbr = (key_vbr_t *)(malloc(sizeof(key_vbr_t)));
-
- strcpy((char *)vbr_val->controller_id, (char*)"");
- strcpy ((char*)vbr_val->vbr_description, (char *)"vbrcompleted");
- // vbr_val->dhcp_relay_admin_status = UPLL_ADMIN_ENABLE;
-
- vbr_val->valid[UPLL_IDX_CONTROLLER_ID_VBR] = UNC_VF_INVALID;
- vbr_val->valid[UPLL_IDX_DESC_VBR] = UNC_VF_VALID;
- //vbr_val->valid[UPLL_IDX_DHCP_RELAY_ADMIN_STATUS_VBR] = UNC_VF_VALID;
-
+ controller_domain ctrl_domain;
+ memset(&ctrl_domain, 0, sizeof(ctrl_domain));
+ key_vbr_t *key_vbr(ZALLOC_TYPE(key_vbr_t));
- ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbr, vbr_val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVbr, key_vbr, NULL);
- EXPECT_EQ(UPLL_RC_SUCCESS, vbr.GetControllerDomainId(ikey,ctrl_domain));
-}
-TEST(VbrMoMgr, GetControllerDomainId5) {
- VbrMoMgr vbr;
- controller_domain *ctrl_domain = new controller_domain();
- val_vbr *vbr_val = (val_vbr_t *)(malloc(sizeof(val_vbr_t)));
- key_vbr_t *key_vbr = (key_vbr_t *)(malloc(sizeof(key_vbr_t)));
-
- strcpy((char *)vbr_val->controller_id, (char*)"one");
- strcpy ((char*)vbr_val->vbr_description, (char *)"vbrcompleted");
-// vrt_val->dhcp_relay_admin_status = UPLL_ADMIN_ENABLE;
+ EXPECT_EQ(UPLL_RC_SUCCESS, vbr.GetControllerDomainId(ikey, &ctrl_domain));
- vbr_val->valid[UPLL_IDX_CONTROLLER_ID_VBR] = UNC_VF_INVALID;
- vbr_val->valid[UPLL_IDX_DESC_VBR] = UNC_VF_VALID;
-// vrt_val->valid[UPLL_IDX_DHCP_RELAY_ADMIN_STATUS_VRT] = UNC_VF_VALID;
+ delete ikey;
+}
+TEST_F(VbrMoMgrTest, GetControllerDomainId5) {
+ VbrMoMgr vbr;
+ controller_domain ctrl_domain;
+ memset(&ctrl_domain, 0, sizeof(ctrl_domain));
+ key_vbr_t *key_vbr(ZALLOC_TYPE(key_vbr_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbr, NULL);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVbr, key_vbr, config_val);
- EXPECT_EQ(UPLL_RC_SUCCESS, vbr.GetControllerDomainId(ikey,ctrl_domain));
+ EXPECT_EQ(UPLL_RC_SUCCESS, vbr.GetControllerDomainId(ikey, &ctrl_domain));
+
+ delete ikey;
}
-TEST(GetControllerDomainId,InvalidVal){
+TEST_F(VbrMoMgrTest, GetControllerDomainId_InvalidVal){
VbrMoMgr vbr;
- key_vbr *key= (key_vbr *)malloc(sizeof(key_vbr));
- val_vbr *val =(val_vbr *)malloc(sizeof(val_vbr));
+ key_vbr *key(ZALLOC_TYPE(key_vbr));
+ val_vbr *val(ZALLOC_TYPE(val_vbr));
val->valid[UPLL_IDX_CONTROLLER_ID_VBR] = UNC_VF_VALID;
val->valid[UPLL_IDX_DOMAIN_ID_VBR] = UNC_VF_VALID;
- strlen(reinterpret_cast<char*>(val->controller_id));
- strlen(reinterpret_cast<char*>(val->domain_id));
- controller_domain *ctrlr_dom =(controller_domain *)malloc(sizeof(controller_domain));
+ pfc_strlcpy(reinterpret_cast<char *>(val->controller_id), "pfc1",
+ sizeof(val->controller_id));
+ pfc_strlcpy(reinterpret_cast<char *>(val->domain_id), "dom1",
+ sizeof(val->domain_id));
+ controller_domain ctrlr_dom;
+ memset(&ctrlr_dom, 0, sizeof(ctrlr_dom));
ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVbr, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,
IpctSt::kIpcStKeyVbr,
key, cfgval);
- EXPECT_EQ(UPLL_RC_SUCCESS,vbr.GetControllerDomainId(ikey,ctrlr_dom));
+ EXPECT_EQ(UPLL_RC_SUCCESS, vbr.GetControllerDomainId(ikey, &ctrlr_dom));
+
+ delete ikey;
}
-TEST(GetControllerDomainId,SetDomainData){
+TEST_F(VbrMoMgrTest, GetControllerDomainId_SetDomainData){
VbrMoMgr vbr;
- key_vbr *key= (key_vbr *)malloc(sizeof(key_vbr));
- val_vbr *val =(val_vbr *)malloc(sizeof(val_vbr));
+ key_vbr *key(ZALLOC_TYPE(key_vbr));
+ val_vbr *val(ZALLOC_TYPE(val_vbr));
val->valid[UPLL_IDX_CONTROLLER_ID_VBR] = UNC_VF_VALID;
val->valid[UPLL_IDX_DOMAIN_ID_VBR] = UNC_VF_VALID;
- const char *controller_id = "pfc1";
- const char *domain_id = "dom1";
- strlen(reinterpret_cast<char*>(val->controller_id));
- strlen(reinterpret_cast<char*>(val->domain_id));
- controller_domain *ctrlr_dom =(controller_domain *)malloc(sizeof(controller_domain));
+ pfc_strlcpy(reinterpret_cast<char *>(val->controller_id), "pfc1",
+ sizeof(val->controller_id));
+ pfc_strlcpy(reinterpret_cast<char *>(val->domain_id), "dom1",
+ sizeof(val->domain_id));
+ controller_domain ctrlr_dom;
+ memset(&ctrlr_dom, 0, sizeof(ctrlr_dom));
ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVbr, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,
key, cfgval);
SET_USER_DATA_CTRLR(ikey,val->controller_id)
- EXPECT_EQ(UPLL_RC_SUCCESS,vbr.GetControllerDomainId(ikey,ctrlr_dom));
+ EXPECT_EQ(UPLL_RC_SUCCESS, vbr.GetControllerDomainId(ikey, &ctrlr_dom));
+
+ delete ikey;
}
+TEST_F(VbrMoMgrTest, GetRenameInfo1) {
+ DalOdbcMgr::stub_setResultcode(DalOdbcMgr::INIT,kDalRcSuccess);
+ DalOdbcMgr::stub_setResultcode(DalOdbcMgr::SINGLE ,kDalRcSuccess);
-TEST(VbrMoMgr, GetRenameInfo1) {
VbrMoMgr vbr;
bool no_rename = false;
ConfigKeyVal *okey = NULL;
ConfigKeyVal *rename_info = NULL;
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.GetRenameInfo(NULL, okey, rename_info, NULL, NULL, no_rename));
}
-TEST(VbrMoMgr, GetRenameInfo2) {
+
+TEST_F(VbrMoMgrTest, GetRenameInfo2) {
+ DalOdbcMgr::stub_setResultcode(DalOdbcMgr::INIT,kDalRcSuccess);
+ DalOdbcMgr::stub_setResultcode(DalOdbcMgr::SINGLE ,kDalRcSuccess);
+
VbrMoMgr vbr;
bool no_rename = false;
ConfigKeyVal *okey = NULL;
ConfigKeyVal *rename_info = NULL;
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,IpctSt::kIpcStKeyVbr, NULL);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.GetRenameInfo(ikey, okey, rename_info, NULL, NULL, no_rename));
+
+ delete ikey;
+ delete rename_info;
}
-TEST(VbrMoMgr, GetRenameInfo3) {
+
+TEST_F(VbrMoMgrTest, GetRenameInfo3) {
+ DalOdbcMgr::stub_setResultcode(DalOdbcMgr::INIT,kDalRcSuccess);
+ DalOdbcMgr::stub_setResultcode(DalOdbcMgr::SINGLE ,kDalRcSuccess);
+
VbrMoMgr vbr;
bool no_rename = false;
- ConfigKeyVal *okey = NULL;
ConfigKeyVal *rename_info = NULL;
const char * ctrlr_name = "ctrlr1";
- key_vbr_t *key_vbr = (key_vbr_t *)(malloc(sizeof(key_vbr_t)));
+ key_vbr_t *key_vbr(ZALLOC_TYPE(key_vbr_t));
strcpy((char *)key_vbr->vtn_key.vtn_name, (char *)"vtn1");
strcpy((char *)key_vbr->vbridge_name, (char *)"name");
- val_rename_vnode_t *val = (val_rename_vnode_t *) (malloc(sizeof(val_rename_vnode_t)));
+ val_rename_vnode_t *val(ZALLOC_TYPE(val_rename_vnode_t));
strcpy((char*)val->ctrlr_vtn_name,"vtn1)");
strcpy((char*)val->ctrlr_vnode_name, "vnode1");
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::UPDATE_RECORD,kDalRcSuccess);
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, val);
- DalDmlIntf *dmi = NULL;
- dmi = new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,IpctSt::kIpcStKeyVbr, key_vbr, config_val);
- okey = new ConfigKeyVal(UNC_KT_VBRIDGE,IpctSt::kIpcStKeyVbr, key_vbr);
+
+ key_vbr_t *key_vbr1(UT_CLONE(key_vbr_t, key_vbr));
+ ConfigKeyVal *okey(new ConfigKeyVal(UNC_KT_VBRIDGE,IpctSt::kIpcStKeyVbr,
+ key_vbr1));
EXPECT_EQ(UPLL_RC_SUCCESS, vbr.GetRenameInfo(ikey, okey, rename_info, dmi, ctrlr_name, no_rename));
+
+ delete ikey;
+ delete okey;
+ delete rename_info;
}
-TEST(VbrMoMgr, GetRenameInfo4) {
+
+TEST_F(VbrMoMgrTest, GetRenameInfo4) {
+ DalOdbcMgr::stub_setResultcode(DalOdbcMgr::INIT,kDalRcSuccess);
+ DalOdbcMgr::stub_setResultcode(DalOdbcMgr::SINGLE ,kDalRcSuccess);
+
VbrMoMgr vbr;
bool no_rename = true;
- ConfigKeyVal *okey = NULL;
ConfigKeyVal *rename_info = NULL;
const char * ctrlr_name = "ctrlr1";
- key_vbr_t *key_vbr = (key_vbr_t *)(malloc(sizeof(key_vbr_t)));
+ key_vbr_t *key_vbr(ZALLOC_TYPE(key_vbr_t));
strcpy((char *)key_vbr->vtn_key.vtn_name, (char *)"vtn1");
strcpy((char *)key_vbr->vbridge_name, (char *)"name");
- val_rename_vnode_t *val = (val_rename_vnode_t *) (malloc(sizeof(val_rename_vnode_t)));
+ val_rename_vnode_t *val(ZALLOC_TYPE(val_rename_vnode_t));
strcpy((char*)val->ctrlr_vtn_name,"");
strcpy((char*)val->ctrlr_vnode_name, "vnode1");
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::UPDATE_RECORD,kDalRcSuccess);
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, val);
- DalDmlIntf *dmi = NULL;
- dmi = new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,IpctSt::kIpcStKeyVbr, key_vbr, config_val);
- okey = new ConfigKeyVal(UNC_KT_VBRIDGE,IpctSt::kIpcStKeyVbr, key_vbr);
+
+ key_vbr_t *key_vbr1(UT_CLONE(key_vbr_t, key_vbr));
+ ConfigKeyVal *okey(new ConfigKeyVal(UNC_KT_VBRIDGE,IpctSt::kIpcStKeyVbr,
+ key_vbr1));
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.GetRenameInfo(ikey, okey, rename_info, dmi, ctrlr_name, no_rename));
+
+ delete ikey;
+ delete okey;
+ delete rename_info;
}
-TEST(VbrMoMgr, GetRenameInfo5) {
+
+TEST_F(VbrMoMgrTest, GetRenameInfo5) {
+ DalOdbcMgr::stub_setResultcode(DalOdbcMgr::INIT,kDalRcSuccess);
+ DalOdbcMgr::stub_setResultcode(DalOdbcMgr::SINGLE ,kDalRcSuccess);
+
VbrMoMgr vbr;
bool no_rename = true;
- ConfigKeyVal *okey = NULL;
ConfigKeyVal *rename_info = NULL;
const char * ctrlr_name = "ctrlr1";
- key_vbr_t *key_vbr = (key_vbr_t *)(malloc(sizeof(key_vbr_t)));
+ key_vbr_t *key_vbr(ZALLOC_TYPE(key_vbr_t));
strcpy((char *)key_vbr->vtn_key.vtn_name, (char *)"vtn1");
strcpy((char *)key_vbr->vbridge_name, (char *)"name");
- val_rename_vnode_t *val = (val_rename_vnode_t *) (malloc(sizeof(val_rename_vnode_t)));
+ val_rename_vnode_t *val(ZALLOC_TYPE(val_rename_vnode_t));
strcpy((char*)val->ctrlr_vtn_name,"vtn1");
strcpy((char*)val->ctrlr_vnode_name, "");
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::UPDATE_RECORD,kDalRcSuccess);
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, val);
- DalDmlIntf *dmi = NULL;
- dmi = new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,IpctSt::kIpcStKeyVbr, key_vbr, config_val);
- okey = new ConfigKeyVal(UNC_KT_VBRIDGE,IpctSt::kIpcStKeyVbr, key_vbr);
+
+ key_vbr_t *key_vbr1(UT_CLONE(key_vbr_t, key_vbr));
+ ConfigKeyVal *okey(new ConfigKeyVal(UNC_KT_VBRIDGE,IpctSt::kIpcStKeyVbr,
+ key_vbr1));
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.GetRenameInfo(ikey, okey, rename_info, dmi, ctrlr_name, no_rename));
+
+ delete ikey;
+ delete okey;
+ delete rename_info;
}
-TEST(VbrMoMgr, GetRenameInfo6) {
+TEST_F(VbrMoMgrTest, GetRenameInfo6) {
+ DalOdbcMgr::stub_setResultcode(DalOdbcMgr::INIT,kDalRcSuccess);
+ DalOdbcMgr::stub_setResultcode(DalOdbcMgr::SINGLE ,kDalRcSuccess);
+
VbrMoMgr vbr;
bool no_rename = false;
- ConfigKeyVal *okey = NULL;
ConfigKeyVal *rename_info = NULL;
const char * ctrlr_name = "ctrlr1";
- key_vbr_t *key_vbr = (key_vbr_t *)(malloc(sizeof(key_vbr_t)));
+ key_vbr_t *key_vbr(ZALLOC_TYPE(key_vbr_t));
strcpy((char *)key_vbr->vtn_key.vtn_name, (char *)"vtn1");
strcpy((char *)key_vbr->vbridge_name, (char *)"");
- val_rename_vnode_t *val = (val_rename_vnode_t *) (malloc(sizeof(val_rename_vnode_t)));
+ val_rename_vnode_t *val(ZALLOC_TYPE(val_rename_vnode_t));
strcpy((char*)val->ctrlr_vtn_name,"vtn1");
strcpy((char*)val->ctrlr_vnode_name, "");
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::UPDATE_RECORD,kDalRcSuccess);
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, val);
- DalDmlIntf *dmi = NULL;
- dmi = new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,IpctSt::kIpcStKeyVbr, key_vbr, config_val);
- okey = new ConfigKeyVal(UNC_KT_VBRIDGE,IpctSt::kIpcStKeyVbr, key_vbr);
+
+ key_vbr_t *key_vbr1(UT_CLONE(key_vbr_t, key_vbr));
+ ConfigKeyVal *okey(new ConfigKeyVal(UNC_KT_VBRIDGE,IpctSt::kIpcStKeyVbr,
+ key_vbr1));
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.GetRenameInfo(ikey, okey, rename_info, dmi, ctrlr_name, no_rename));
+
+ delete ikey;
+ delete okey;
+ delete rename_info;
}
-TEST(VbrMoMgr, GetRenameInfo7) {
+TEST_F(VbrMoMgrTest, GetRenameInfo7) {
+ DalOdbcMgr::stub_setResultcode(DalOdbcMgr::INIT,kDalRcSuccess);
+ DalOdbcMgr::stub_setResultcode(DalOdbcMgr::SINGLE ,kDalRcSuccess);
+
VbrMoMgr vbr;
bool no_rename = false;
- ConfigKeyVal *okey = NULL;
ConfigKeyVal *rename_info = NULL;
const char * ctrlr_name = "ctrlr1";
- key_vbr_t *key_vbr = (key_vbr_t *)(malloc(sizeof(key_vbr_t)));
+ key_vbr_t *key_vbr(ZALLOC_TYPE(key_vbr_t));
strcpy((char *)key_vbr->vtn_key.vtn_name, (char *)"");
strcpy((char *)key_vbr->vbridge_name, (char *)"name");
- val_rename_vnode_t *val = (val_rename_vnode_t *) (malloc(sizeof(val_rename_vnode_t)));
+ val_rename_vnode_t *val(ZALLOC_TYPE(val_rename_vnode_t));
strcpy((char*)val->ctrlr_vtn_name,"vtn1");
strcpy((char*)val->ctrlr_vnode_name, "");
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::UPDATE_RECORD,kDalRcSuccess);
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, val);
- DalDmlIntf *dmi = NULL;
- dmi = new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,IpctSt::kIpcStKeyVbr, key_vbr, config_val);
- okey = new ConfigKeyVal(UNC_KT_VBRIDGE,IpctSt::kIpcStKeyVbr, key_vbr);
+
+ key_vbr_t *key_vbr1(UT_CLONE(key_vbr_t, key_vbr));
+ ConfigKeyVal *okey(new ConfigKeyVal(UNC_KT_VBRIDGE,IpctSt::kIpcStKeyVbr,
+ key_vbr1));
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.GetRenameInfo(ikey, okey, rename_info, dmi, ctrlr_name, no_rename));
+
+ delete ikey;
+ delete okey;
+ delete rename_info;
}
-TEST(VbrMoMgr, GetRenameInfo8) {
+TEST_F(VbrMoMgrTest, GetRenameInfo8) {
+ DalOdbcMgr::stub_setResultcode(DalOdbcMgr::INIT,kDalRcSuccess);
+ DalOdbcMgr::stub_setResultcode(DalOdbcMgr::SINGLE ,kDalRcSuccess);
+
VbrMoMgr vbr;
bool no_rename = true;
- ConfigKeyVal *okey = NULL;
ConfigKeyVal *rename_info = NULL;
const char * ctrlr_name = "ctrlr1";
- key_vbr_t *key_vbr = (key_vbr_t *)(malloc(sizeof(key_vbr_t)));
+ key_vbr_t *key_vbr(ZALLOC_TYPE(key_vbr_t));
strcpy((char *)key_vbr->vtn_key.vtn_name, (char *)"");
strcpy((char *)key_vbr->vbridge_name, (char *)"name");
- val_rename_vnode_t *val = (val_rename_vnode_t *) (malloc(sizeof(val_rename_vnode_t)));
+ val_rename_vnode_t *val(ZALLOC_TYPE(val_rename_vnode_t));
strcpy((char*)val->ctrlr_vtn_name,"vtn1");
strcpy((char*)val->ctrlr_vnode_name, "");
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::UPDATE_RECORD,kDalRcSuccess);
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, val);
- DalDmlIntf *dmi = NULL;
- dmi = new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,IpctSt::kIpcStKeyVbr, key_vbr, config_val);
- okey = new ConfigKeyVal(UNC_KT_VBRIDGE,IpctSt::kIpcStKeyVbr, key_vbr);
+
+ key_vbr_t *key_vbr1(UT_CLONE(key_vbr_t, key_vbr));
+ ConfigKeyVal *okey(new ConfigKeyVal(UNC_KT_VBRIDGE,IpctSt::kIpcStKeyVbr,
+ key_vbr1));
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.GetRenameInfo(ikey, okey, rename_info, dmi, ctrlr_name, no_rename));
+
+ delete ikey;
+ delete okey;
+ delete rename_info;
}
-TEST(VbrMoMgr, GetRenameInfo9) {
+TEST_F(VbrMoMgrTest, GetRenameInfo9) {
+ DalOdbcMgr::stub_setResultcode(DalOdbcMgr::INIT,kDalRcSuccess);
+ DalOdbcMgr::stub_setResultcode(DalOdbcMgr::SINGLE ,kDalRcSuccess);
+
VbrMoMgr vbr;
bool no_rename = true;
- ConfigKeyVal *okey = NULL;
ConfigKeyVal *rename_info = NULL;
const char * ctrlr_name = "ctrlr1";
- key_vbr_t *key_vbr = (key_vbr_t *)(malloc(sizeof(key_vbr_t)));
+ key_vbr_t *key_vbr(ZALLOC_TYPE(key_vbr_t));
strcpy((char *)key_vbr->vtn_key.vtn_name, (char *)"vtn1`");
strcpy((char *)key_vbr->vbridge_name, (char *)"");
- val_rename_vnode_t *val = (val_rename_vnode_t *) (malloc(sizeof(val_rename_vnode_t)));
+ val_rename_vnode_t *val(ZALLOC_TYPE(val_rename_vnode_t));
strcpy((char*)val->ctrlr_vtn_name,"vtn1");
strcpy((char*)val->ctrlr_vnode_name, "");
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::UPDATE_RECORD,kDalRcSuccess);
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, val);
- DalDmlIntf *dmi = NULL;
- dmi = new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,IpctSt::kIpcStKeyVbr, key_vbr, config_val);
- okey = new ConfigKeyVal(UNC_KT_VBRIDGE,IpctSt::kIpcStKeyVbr, key_vbr);
+
+ key_vbr_t *key_vbr1(UT_CLONE(key_vbr_t, key_vbr));
+ ConfigKeyVal *okey(new ConfigKeyVal(UNC_KT_VBRIDGE,IpctSt::kIpcStKeyVbr,
+ key_vbr1));
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.GetRenameInfo(ikey, okey, rename_info, dmi, ctrlr_name, no_rename));
+
+ delete ikey;
+ delete okey;
+ delete rename_info;
}
-TEST(VbrMoMgr, IsReferenced1) {
+TEST_F(VbrMoMgrTest, IsReferenced1) {
VbrMoMgr vbr;
- DalDmlIntf *dmi = new DalOdbcMgr;
- UpllConfigMgr *upll_obj = UpllConfigMgr::GetUpllConfigMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,
IpctSt::kIpcStKeyVbr,
NULL, NULL);
EXPECT_EQ(UPLL_RC_ERR_GENERIC,vbr.IsReferenced(ikey, UPLL_DT_STATE, dmi));
+
+ delete ikey;
}
-TEST(VbrMoMgr, IsReferenced2) {
+TEST_F(VbrMoMgrTest, IsReferenced2) {
VbrMoMgr vbr;
- DalDmlIntf *dmi = new DalOdbcMgr;
- UpllConfigMgr *upll_obj = UpllConfigMgr::GetUpllConfigMgr();
- key_vbr_t *key_vbr = (key_vbr_t *)(malloc(sizeof(key_vbr_t)));
- val_vbr *val;
-
- ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, val);
+ DalDmlIntf *dmi(getDalDmlIntf());
+ key_vbr_t *key_vbr(ZALLOC_TYPE(key_vbr_t));
+ ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, NULL);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,
IpctSt::kIpcStKeyVbr,
key_vbr, config_val);
EXPECT_EQ(UPLL_RC_ERR_GENERIC,vbr.IsReferenced(ikey, UPLL_DT_STATE, dmi));
+
+ delete ikey;
}
-TEST(VbrMoMgr, UpdateAuditConfigStatus1) {
+
+TEST_F(VbrMoMgrTest, UpdateAuditConfigStatus1) {
VbrMoMgr vbr;
ConfigKeyVal *ikey =NULL;
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.UpdateAuditConfigStatus(UNC_CS_APPLIED,uuc::kUpllUcpCreate, ikey));
}
-TEST(VbrMoMgr, UpdateAuditConfigStatus2) {
- VbrMoMgr vbr;
- val_vbr_t *val = reinterpret_cast<val_vbr_t *>
- (malloc(sizeof(val_vbr_t)));
- memset(val, 0, sizeof(val_vbr_t));
- ConfigVal *tmp = new ConfigVal(IpctSt::kIpcStValVbr,
- val);
+TEST_F(VbrMoMgrTest, UpdateAuditConfigStatus2) {
+ VbrMoMgr vbr;
+ val_vbr_t *val(ZALLOC_TYPE(val_vbr_t));
+ ConfigVal *tmp = new ConfigVal(IpctSt::kIpcStValVbr, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,IpctSt::kIpcStKeyVbr, NULL,tmp);
EXPECT_EQ(UPLL_RC_SUCCESS, vbr.UpdateAuditConfigStatus(UNC_CS_INVALID,uuc::kUpllUcpCreate, ikey));
+
+ delete ikey;
}
-TEST(VbrMoMgr, UpdateAuditConfigStatus3) {
+
+TEST_F(VbrMoMgrTest, UpdateAuditConfigStatus3) {
VbrMoMgr vbr;
- val_vbr_t *val = reinterpret_cast<val_vbr_t *>
- (malloc(sizeof(val_vbr_t)));
- memset(val, 0, sizeof(val_vbr_t));
+ val_vbr_t *val(ZALLOC_TYPE(val_vbr_t));
val->valid[UPLL_IDX_CONTROLLER_ID_VBR] = UNC_VF_VALID;
val->valid[UPLL_IDX_DESC_VBR] = UNC_VF_VALID;
//val->valid[UPLL_IDX_DHCP_RELAY_ADMIN_STATUS_VRT] = UNC_VF_VALID;
- ConfigVal *tmp = new ConfigVal(IpctSt::kIpcStValVbr,
- val);
+ ConfigVal *tmp = new ConfigVal(IpctSt::kIpcStValVbr, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,IpctSt::kIpcStKeyVbr, NULL,tmp);
EXPECT_EQ(UPLL_RC_SUCCESS, vbr.UpdateAuditConfigStatus(UNC_CS_INVALID,uuc::kUpllUcpCreate, ikey));
val_vbr_t *output = reinterpret_cast<val_vbr_t *> (GetVal(ikey));
EXPECT_EQ(UNC_CS_INVALID,output->cs_attr[0]);
+
+ delete ikey;
}
-TEST(VbrMoMgr, SwapKeyVal1) {
+TEST_F(VbrMoMgrTest, SwapKeyVal1) {
VbrMoMgr vbr;
ConfigKeyVal *key = NULL;
bool no_rename = false;
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.SwapKeyVal(NULL, key, NULL, NULL, no_rename));
}
-TEST(VbrMoMgr, SwapKeyVal2) {
+TEST_F(VbrMoMgrTest, SwapKeyVal2) {
VbrMoMgr vbr;
- key_vbr_t *key_vbr = (key_vbr_t *)(malloc(sizeof(key_vbr_t)));
+ key_vbr_t *key_vbr(ZALLOC_TYPE(key_vbr_t));
strcpy((char *)key_vbr->vtn_key.vtn_name, (char *)"vtn1");
strcpy((char *)key_vbr->vbridge_name, (char *)"vbridge1");
ConfigKeyVal *okey = NULL;
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVbr, key_vbr);
EXPECT_EQ(UPLL_RC_ERR_BAD_REQUEST, vbr.SwapKeyVal(ikey, okey, NULL, NULL, no_rename));
+
delete ikey;
+ delete okey;
}
-TEST(VbrMoMgr, SwapKeyVal3) {
+TEST_F(VbrMoMgrTest, SwapKeyVal3) {
VbrMoMgr vbr;
- key_vbr_t *key_vbr = (key_vbr_t *)(malloc(sizeof(key_vbr_t)));
+ key_vbr_t *key_vbr(ZALLOC_TYPE(key_vbr_t));
strcpy((char *)key_vbr->vtn_key.vtn_name, (char *)"vtn1");
strcpy((char *)key_vbr->vbridge_name, (char *)"vbridge1");
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVbr, key_vbr, config_val);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vbr.SwapKeyVal(ikey, okey, NULL, NULL, no_rename));
- delete ikey;
-}
-TEST(VbrMoMgr, SwapKeyVal4) {
- VbrMoMgr vbr;
- key_vbr_t *key_vbr = (key_vbr_t *)(malloc(sizeof(key_vbr_t)));
- strcpy((char *)key_vbr->vtn_key.vtn_name, (char *)"vtn1");
- strcpy((char *)key_vbr->vbridge_name, (char *)"vbridge1");
-
- bool no_rename = false;
- ConfigKeyVal *okey = NULL;
- val_rename_vbr *vbr_rename_val = (val_rename_vbr *)(malloc(sizeof(val_rename_vbr)));
+ delete ikey;
+ delete okey;
}
-TEST(VbrMoMgr,IsHostAddrAndPrefixLenInUse1 ){
+TEST_F(VbrMoMgrTest, IsHostAddrAndPrefixLenInUse1){
VbrMoMgr vbr;
DalDmlIntf *dmi= NULL;
- key_vbr *key= (key_vbr *)malloc(sizeof(key_vbr));
- val_vbr *val =(val_vbr *)malloc(sizeof(val_vbr));
-
- IpcReqRespHeader *req;
- req = reinterpret_cast<IpcReqRespHeader *>(malloc
- (sizeof(IpcReqRespHeader)));
- memset(req,0,sizeof(IpcReqRespHeader));
+ key_vbr *key(ZALLOC_TYPE(key_vbr));
+ val_vbr *val(ZALLOC_TYPE(val_vbr));
+ IPC_REQ_RESP_HEADER_DECL(req);
+ pfc_strlcpy(reinterpret_cast<char *>(key->vtn_key.vtn_name), "vtn_name1",
+ sizeof(key->vtn_key.vtn_name));
ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVbr, val);
ConfigKeyVal *ckv = new ConfigKeyVal(UNC_KT_VBRIDGE,IpctSt::kIpcStKeyVbr,key, cfgval);
EXPECT_EQ(UPLL_RC_SUCCESS,vbr.IsHostAddrAndPrefixLenInUse(ckv,dmi,req));
+
+ delete ckv;
}
-TEST(VbrMoMgr, SwapKeyVal7) {
+
+TEST_F(VbrMoMgrTest, SwapKeyVal7) {
VbrMoMgr vbr;
- key_vbr_t *key_vbr = (key_vbr_t *)(malloc(sizeof(key_vbr_t)));
+ key_vbr_t *key_vbr(ZALLOC_TYPE(key_vbr_t));
strcpy((char *)key_vbr->vtn_key.vtn_name, (char *)"vtn1");
strcpy((char *)key_vbr->vbridge_name, (char *)"vbridge1");
const char * ctrlr_name = "ctrlr1";
- UpllConfigMgr *upll_obj = UpllConfigMgr::GetUpllConfigMgr();
bool no_rename = false;
ConfigKeyVal *okey = NULL;
- DalDmlIntf *dmi = NULL;
- dmi = new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
- val_rename_vbr *vbr_rename_val = (val_rename_vbr *)(malloc(sizeof(val_rename_vbr)));
+ val_rename_vbr *vbr_rename_val(ZALLOC_TYPE(val_rename_vbr));
strcpy((char *)vbr_rename_val->new_name, (char*)"hhh");
vbr_rename_val->valid[UPLL_IDX_NEW_NAME_RVRT] = UNC_VF_VALID;
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVrt, key_vbr, config_val);
EXPECT_EQ(UPLL_RC_SUCCESS, vbr.SwapKeyVal(ikey, okey, dmi, (uint8_t *)ctrlr_name, no_rename));
- delete ikey;
- }
-
-
+ delete ikey;
+}
-TEST(VbrMoMgr,IsHostAddrAndPrefixLenInUse2 ){
+TEST_F(VbrMoMgrTest, IsHostAddrAndPrefixLenInUse2){
VbrMoMgr vbr;
DalDmlIntf *dmi= NULL;
- key_vbr *key= (key_vbr *)malloc(sizeof(key_vbr));
+ key_vbr *key(ZALLOC_TYPE(key_vbr));
strcpy((char *)key->vtn_key.vtn_name, (char *)"vtn1");
strcpy((char *)key->vbridge_name, (char *)"vbridge1");
- val_vbr_t *val =(val_vbr_t *)malloc(sizeof(val_vbr_t));
- memset(val, 0, sizeof(val_vbr));
+
+ val_vbr_t *val(ZALLOC_TYPE(val_vbr_t));
val->valid[UPLL_IDX_HOST_ADDR_VBR] = UNC_VF_INVALID;
val->valid[UPLL_IDX_HOST_ADDR_PREFIXLEN_VBR] = UNC_VF_INVALID;
- IpcReqRespHeader *req;
- req = reinterpret_cast<IpcReqRespHeader *>(malloc
- (sizeof(IpcReqRespHeader)));
- memset(req,0,sizeof(IpcReqRespHeader));
-
+ IPC_REQ_RESP_HEADER_DECL(req);
ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVbr, val);
ConfigKeyVal *ckv = new ConfigKeyVal(UNC_KT_VBRIDGE,IpctSt::kIpcStKeyVbr,key, cfgval);
EXPECT_EQ(UPLL_RC_SUCCESS,vbr.IsHostAddrAndPrefixLenInUse(ckv,dmi,req));
-}
+ delete ckv;
+}
-TEST(VbrMoMgr,CtrlrIdAndDomainIdUpdationCheck2){
+TEST_F(VbrMoMgrTest, CtrlrIdAndDomainIdUpdationCheck2){
VbrMoMgr vbr;
- key_vbr *key= (key_vbr *)malloc(sizeof(key_vbr));
- val_vbr *val= (val_vbr *)malloc(sizeof(val_vbr));
- val_vbr *val1= (val_vbr *)malloc(sizeof(val_vbr));
+ key_vbr *key(ZALLOC_TYPE(key_vbr));
+ val_vbr *val(ZALLOC_TYPE(val_vbr));
val->valid[UPLL_IDX_CONTROLLER_ID_VBR] = UNC_VF_INVALID;
-
val->valid[UPLL_IDX_DOMAIN_ID_VBR] = UNC_VF_INVALID;
ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVbr, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,
IpctSt::kIpcStKeyVbr,
key, cfgval);
- ConfigVal *cfgval1 = new ConfigVal(IpctSt::kIpcStValVbr, val1);
- ConfigKeyVal *ckey = new ConfigKeyVal(UNC_KT_VBRIDGE,
- IpctSt::kIpcStKeyVbr,
- key, cfgval1);
- EXPECT_EQ(UPLL_RC_SUCCESS,vbr.CtrlrIdAndDomainIdUpdationCheck (ikey,ckey));
+
+ key_vbr *key1(UT_CLONE(key_vbr, key));
+ val_vbr *val1(ZALLOC_TYPE(val_vbr));
+ ConfigVal *cfgval1(new ConfigVal(IpctSt::kIpcStValVbr, val1));
+ ConfigKeyVal *ckey(new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVbr,
+ key1, cfgval1));
+ EXPECT_EQ(UPLL_RC_SUCCESS,vbr.CtrlrIdAndDomainIdUpdationCheck(ikey, ckey));
+
+ delete ikey;
+ delete ckey;
}
-TEST(VbrMoMgr,CtrlrIdAndDomainIdUpdationCheck3){
+
+TEST_F(VbrMoMgrTest, CtrlrIdAndDomainIdUpdationCheck3){
VbrMoMgr vbr;
key_vbr *key;
val_vbr *val;
-
GetKeyValStruct(key, val);
- val_vbr *val1;
val->valid[UPLL_IDX_CONTROLLER_ID_VBR] = UNC_VF_INVALID;
-
val->valid[UPLL_IDX_DOMAIN_ID_VBR] = UNC_VF_VALID;
ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVbr, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,
IpctSt::kIpcStKeyVbr,
key, cfgval);
- ConfigVal *cfgval1 = new ConfigVal(IpctSt::kIpcStValVbr, val1);
- ConfigKeyVal *ckey = new ConfigKeyVal(UNC_KT_VBRIDGE,
- IpctSt::kIpcStKeyVbr,
- key, cfgval1);
- EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX,vbr.CtrlrIdAndDomainIdUpdationCheck (ikey,ckey));
-}
-TEST(ValVbrAttributeSupportCheck, ValVbrAttributeSupportCheck_01) {
+ key_vbr *key1(UT_CLONE(key_vbr, key));
+ val_vbr *val1(ZALLOC_TYPE(val_vbr));
+ pfc_strlcpy(reinterpret_cast<char *>(val1->domain_id), "dom1",
+ sizeof(val1->domain_id));
+ ConfigVal *cfgval1(new ConfigVal(IpctSt::kIpcStValVbr, val1));
+ ConfigKeyVal *ckey(new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVbr,
+ key1, cfgval1));
+ EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX,
+ vbr.CtrlrIdAndDomainIdUpdationCheck(ikey, ckey));
+
+ delete ikey;
+ delete ckey;
+}
+TEST_F(VbrMoMgrTest, ValVbrAttributeSupportCheck_01) {
VbrMoMgr vbr;
key_vbr *key;
val_vbr *val;
GetKeyValStruct(key, val);
unc_keytype_operation_t operation= UNC_OP_CREATE;
- const uint8_t *attrs;
- attrs[unc::capa::vbr::kCapDomainId] == 0;
+ uint8_t attrs[8];
+ memset(attrs, 0xff, sizeof(attrs));
+ attrs[unc::capa::vbr::kCapDomainId] = 0;
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbr, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVbr, key, config_val);
EXPECT_EQ(UPLL_RC_ERR_NOT_SUPPORTED_BY_CTRLR, vbr.ValVbrAttributeSupportCheck(val,attrs,operation));
delete ikey;
}
-TEST(ValVbrAttributeSupportCheck, ValVbrAttributeSupportCheck_02) {
+TEST_F(VbrMoMgrTest, ValVbrAttributeSupportCheck_02) {
VbrMoMgr vbr;
key_vbr *key;
val_vbr *val;
GetKeyValStruct(key, val);
unc_keytype_operation_t operation= UNC_OP_CREATE;
- const uint8_t *attrs;
+ uint8_t attrs[8];
+ memset(attrs, 0xff, sizeof(attrs));
+ attrs[unc::capa::vbr::kCapDomainId] = 0;
+
val->valid[UPLL_IDX_CONTROLLER_ID_VBR] = UNC_VF_INVALID;
val->valid[UPLL_IDX_DOMAIN_ID_VBR] = UNC_VF_VALID;
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbr, val);
delete ikey;
}
-TEST(ValVbrAttributeSupportCheck, ValVbrAttributeSupportCheck_03) {
-
+TEST_F(VbrMoMgrTest, ValVbrAttributeSupportCheck_03) {
VbrMoMgr vbr;
key_vbr *key;
val_vbr *val;
GetKeyValStruct(key, val);
unc_keytype_operation_t operation= UNC_OP_CREATE;
- uint8_t *attrs;
+ uint8_t attrs[8];
+ memset(attrs, 0xff, sizeof(attrs));
+ attrs[unc::capa::vbr::kCapDesc] = 0;
val->valid[UPLL_IDX_DESC_VBR] = UNC_VF_VALID;
- attrs[unc::capa::vbr::kCapDomainId];
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbr, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVbr, key, config_val);
EXPECT_EQ(UPLL_RC_ERR_NOT_SUPPORTED_BY_CTRLR, vbr.ValVbrAttributeSupportCheck(val,attrs,operation));
delete ikey;
}
-TEST(ValVbrAttributeSupportCheck, ValVbrAttributeSupportCheck_04) {
+TEST_F(VbrMoMgrTest, ValVbrAttributeSupportCheck_04) {
VbrMoMgr vbr;
key_vbr *key;
val_vbr *val;
GetKeyValStruct(key, val);
- unc_keytype_operation_t operation;
- val->valid[UPLL_IDX_DESC_VBR] == UNC_VF_VALID;
- const uint8_t *attrs;
+ unc_keytype_operation_t operation(UNC_OP_READ);
+ val->valid[UPLL_IDX_DESC_VBR] = UNC_VF_VALID;
+ uint8_t attrs[8];
+ memset(attrs, 0xff, sizeof(attrs));
+ attrs[unc::capa::vbr::kCapDesc] = 0;
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbr, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVbr, key, config_val);
EXPECT_EQ(UPLL_RC_SUCCESS, vbr.ValVbrAttributeSupportCheck(val,attrs,operation));
delete ikey;
}
-
-}
- /*
- * Copyright (c) 2012-2013 NEC Corporation
- * All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this
- * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
- */
-
+/*
+ * Copyright (c) 2012-2013 NEC Corporation
+ * All rights reserved.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this
+ * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
+ */
#include <limits.h>
#include <gtest/gtest.h>
-#include "vtn_momgr.hh"
-#include "vbr_if_momgr.hh"
-#include "momgr_impl.hh"
-#include "config_mgr.hh"
-#include "momgr_intf.hh"
-#include "dal_odbc_mgr.hh"
-#include "dal_dml_intf.hh"
-#include "capa_intf.hh"
-#include "capa_module_stub.hh"
-#include "tclib_module.hh"
-#include "dal_cursor.hh"
+#include <pfc/util.h>
+#include <vtn_momgr.hh>
+#include <vbr_if_momgr.hh>
+#include <momgr_impl.hh>
+#include <config_mgr.hh>
+#include <momgr_intf.hh>
+#include <dal_odbc_mgr.hh>
+#include <dal_dml_intf.hh>
+#include <capa_intf.hh>
+#include <capa_module_stub.hh>
+#include <tclib_module.hh>
+#include <dal_cursor.hh>
+#include "ut_util.hh"
using ::testing::InitGoogleTest;
using ::testing::Test;
using namespace unc::upll::dal;
using namespace unc::upll::kt_momgr;
using namespace unc::upll::config_momgr;
+using namespace unc::upll::test;
using namespace unc::capa;
using namespace pfc::core;
using namespace unc::upll::dal::schema::table;
namespace upll {
namespace kt_momgr {
-void GetKeyValStruct(key_vtn *&kst, val_vtn *&vst) {
+class VtnMoMgrTest
+ : public UpllTestEnv
+{
+};
+static void GetKeyStruct(key_vtn *&kst)
+{
const char *vtn_name = "VTN_1";
- const char *desc = "thisisvbridge";
- kst = reinterpret_cast<key_vtn *>(malloc
- (sizeof(key_vtn)));
- memset(kst,0,sizeof(key_vtn));
+
+ kst = ZALLOC_TYPE(key_vtn);
strncpy(reinterpret_cast<char *>(kst->vtn_name),
- vtn_name, strlen(vtn_name)+1);
- vst = reinterpret_cast<val_vtn *>(malloc
- (sizeof(val_vtn)));
- memset(vst,0,sizeof(val_vtn));
+ vtn_name, strlen(vtn_name)+1);
+}
+
+static void GetKeyValStruct(key_vtn *&kst, val_vtn *&vst)
+{
+ GetKeyStruct(kst);
+
+ const char *desc = "thisisvbridge";
+ vst = ZALLOC_TYPE(val_vtn);
for(unsigned int loop = 0; loop < sizeof(vst->valid)/
- sizeof(vst->valid[0]); ++loop) {
- vst->valid[loop] = UNC_VF_VALID;
+ sizeof(vst->valid[0]); ++loop) {
+ vst->valid[loop] = UNC_VF_VALID;
}
vst->cs_row_status = UNC_VF_VALID;
for(unsigned int loop = 0; loop < sizeof(vst->valid)/
- sizeof(vst->valid[0]); ++loop) {
- vst->cs_attr[loop] = UNC_CS_APPLIED;
+ sizeof(vst->valid[0]); ++loop) {
+ vst->cs_attr[loop] = UNC_CS_APPLIED;
}
strncpy(reinterpret_cast<char *>(vst->description), desc,
- strlen(desc)+1);
+ strlen(desc)+1);
}
-void GetKeyValStructSt(key_vtn *&kst, val_vtn_st *&vst) {
-
+static void GetKeyValStructSt(key_vtn *&kst, val_vtn_st *&vst)
+{
const char *vtn_name = "VTN_1";
//const char *desc = "thisisvbridge";
- kst = reinterpret_cast<key_vtn *>(malloc
- (sizeof(key_vtn)));
- memset(kst,0,sizeof(key_vtn));
+ kst = ZALLOC_TYPE(key_vtn);
strncpy(reinterpret_cast<char *>(kst->vtn_name),
- vtn_name, strlen(vtn_name)+1);
- vst = reinterpret_cast<val_vtn_st *>(malloc
- (sizeof(val_vtn_st)));
- memset(vst,0,sizeof(val_vtn_st));
+ vtn_name, strlen(vtn_name)+1);
+ vst = ZALLOC_TYPE(val_vtn_st);
for(unsigned int loop = 0; loop < sizeof(vst->valid)/
- sizeof(vst->valid[0]); ++loop) {
- vst->valid[loop] = UNC_VF_VALID;
+ sizeof(vst->valid[0]); ++loop) {
+ vst->valid[loop] = UNC_VF_VALID;
}
}
-void createControllerInfo(const char* cntrlr_name,upll_keytype_datatype_t data_type,unc_keytype_ctrtype_t cntrl_type)
+static void createControllerInfo(const char* cntrlr_name,
+ upll_keytype_datatype_t data_type,
+ unc_keytype_ctrtype_t cntrl_type)
{
- const char* version("version");
- CtrlrMgr::Ctrlr ctrl(cntrlr_name,cntrl_type,version);
- CtrlrMgr::Ctrlr* ctrl1( new CtrlrMgr::Ctrlr(ctrl,data_type));
- CtrlrMgr::GetInstance()->ctrlrs_.push_back(ctrl1);
+ const char* version("version");
+ CtrlrMgr::Ctrlr ctrl(cntrlr_name,cntrl_type,version);
+ CtrlrMgr::Ctrlr* ctrl1(new CtrlrMgr::Ctrlr(ctrl,data_type));
+ CtrlrMgr::GetInstance()->ctrlrs_.push_back(ctrl1);
}
/* GetRenameKeyBindInfo() */
// Passing NULL
-TEST(GetRenameKeyBindInfo, outputNull) {
+TEST_F(VtnMoMgrTest, GetRenameKeyBindInfo_outputNull) {
VtnMoMgr vtn;
- DalOdbcMgr::clearStubData();
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::INIT,kDalRcSuccess);
- TcLibModule::stub_setTCApiCommonRetcode(TcLibModule::REGISTER,unc::tclib::TC_API_COMMON_SUCCESS);
- TcLibModule::stub_loadtcLibModule();
+
unc_key_type_t key_type = UNC_KT_VTN;
BindInfo *bin = NULL;
int nattr = 2;
}
// Verify the nattr is filled with proper value
-TEST(GetRenameKeyBindInfo, nattrFill) {
+TEST_F(VtnMoMgrTest, GetRenameKeyBindInfo_nattrFill) {
VtnMoMgr vtn;
unc_key_type_t key_type = UNC_KT_VTN;
BindInfo *bin = NULL;
}
// Passing controller table to the function
-TEST(GetRenameKeyBindInfo, ctrlTbl) {
+TEST_F(VtnMoMgrTest, GetRenameKeyBindInfo_ctrlTbl) {
VtnMoMgr vtn;
unc_key_type_t key_type = UNC_KT_VTN;
BindInfo *bin = NULL;
}
// Passing rename table to the function
-TEST(GetRenameKeyBindInfo, renameTbl) {
+TEST_F(VtnMoMgrTest, GetRenameKeyBindInfo_renameTbl) {
VtnMoMgr vtn;
unc_key_type_t key_type = UNC_KT_VTN;
BindInfo *bin = NULL;
}
// Passing rename table to the function
-TEST(GetRenameKeyBindInfo, novtnkey) {
+TEST_F(VtnMoMgrTest, GetRenameKeyBindInfo_novtnkey) {
VtnMoMgr vtn;
unc_key_type_t key_type = UNC_KT_VBRIDGE;
BindInfo *bin = NULL;
/* ValidateAttribute() */
// Passing null value to the function
-TEST(ValidateAttribute, nullkey) {
+TEST_F(VtnMoMgrTest, ValidateAttribute_nullkey) {
VtnMoMgr vtn;
ConfigKeyVal *ikey = NULL;
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.ValidateAttribute(ikey, dmi)); //Bug 217
}
// Passing vtn key type to the function
-TEST(ValidateAttribute, keyVtn) {
+TEST_F(VtnMoMgrTest, ValidateAttribute_keyVtn) {
VtnMoMgr vtn;
- DalDmlIntf *dmi= new DalOdbcMgr();
- key_vtn_t *keyvtn = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- val_vtn_t *valVtn = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ DalDmlIntf *dmi(getDalDmlIntf());
+ key_vtn_t *keyvtn(ZALLOC_TYPE(key_vtn_t));
+ val_vtn_t *valVtn(ZALLOC_TYPE(val_vtn_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, valVtn);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, keyvtn, config_val);
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.ValidateAttribute(ikey, dmi));
+
+ delete ikey;
}
// Passing other key type to the function
-TEST(ValidateAttribute, keyVtep) {
+TEST_F(VtnMoMgrTest, ValidateAttribute_keyVtep) {
VtnMoMgr vtn;
- DalDmlIntf *dmi= new DalOdbcMgr();
- key_vtep_t *keyVtep = (key_vtep_t *)malloc(sizeof(key_vtep_t));
- val_vtep_t *valVtep = (val_vtep_t *)malloc(sizeof(val_vtep_t));
+ DalDmlIntf *dmi(getDalDmlIntf());
+ key_vtep_t *keyVtep(ZALLOC_TYPE(key_vtep_t));
+ val_vtep_t *valVtep(ZALLOC_TYPE(val_vtep_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtep, valVtep);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTEP, IpctSt::kIpcStKeyVtep, keyVtep, config_val);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.ValidateAttribute(ikey, dmi));
+
+ delete ikey;
}
// Passing NULL key to the function
-TEST(IsValidKey, keyNull) {
+TEST_F(VtnMoMgrTest, IsValidKey_keyNull) {
VtnMoMgr vtn;
key_vtn_t *keyvtn = NULL;
unsigned long index = 1;
}
// Passing the vtn name to the function
-TEST(IsValidKey, vtnName) {
+TEST_F(VtnMoMgrTest, IsValidKey_vtnName) {
VtnMoMgr vtn;
unsigned long index = 0;
- key_vtn_t *keyvtn = (key_vtn_t *)malloc(sizeof(key_vtn_t));
+ key_vtn_t *keyvtn(ZALLOC_TYPE(key_vtn_t));
strcpy((char *)keyvtn->vtn_name, (const char *)"vtn1");
EXPECT_EQ(true, vtn.IsValidKey(keyvtn, index));
+ free(keyvtn);
}
// To test the maximum length of vtn name using the function
-TEST(IsValidKey, vtnNameMax) {
+TEST_F(VtnMoMgrTest, IsValidKey_vtnNameMax) {
VtnMoMgr vtn;
unsigned long index = 0;
- key_vtn_t *keyvtn = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- strcpy((char *)keyvtn->vtn_name,(const char *)"vtn1vtnvtnvtnvtnvtnvtnvtnvtnvtn");
+ key_vtn_t *keyvtn(ZALLOC_TYPE(key_vtn_t));
+ pfc_strlcpy(reinterpret_cast<char *>(keyvtn->vtn_name),
+ "vtn1vtnvtnvtnvtnvtnvtnvtnvtnvtn", sizeof(keyvtn->vtn_name));
EXPECT_EQ(true, vtn.IsValidKey(keyvtn, index));
+ free(keyvtn);
}
// To test the minimum length of vtn name using the function
-TEST(IsValidKey, vtnNameMin) {
+TEST_F(VtnMoMgrTest, IsValidKey_vtnNameMin) {
VtnMoMgr vtn;
- key_vtn_t *keyvtn = (key_vtn_t *)malloc(sizeof(key_vtn_t));
+ key_vtn_t *keyvtn(ZALLOC_TYPE(key_vtn_t));
unsigned long index = 0;
strcpy((char *)keyvtn->vtn_name, (const char *)"1");
EXPECT_EQ(true, vtn.IsValidKey(keyvtn, index));
+ free(keyvtn);
}
// To test exceeding the maximum length of vtn name using the function
-TEST(IsValidKey, vtnNameMaxExceeds) {
+TEST_F(VtnMoMgrTest, IsValidKey_vtnNameMaxExceeds) {
VtnMoMgr vtn;
- key_vtn_t *keyvtn = (key_vtn_t *)malloc(sizeof(key_vtn_t));
+ key_vtn_t *keyvtn(ZALLOC_ARRAY(key_vtn_t, 2));
unsigned long index = 0;
- strcpy((char *)keyvtn->vtn_name, (const char *)("vtnnkjdsokljhkjdsncvdsjkjdksdjjksd1"));
+ memcpy(keyvtn->vtn_name, "vtnnkjdsokljhkjdsncvdsjkjdksdjjksd1",
+ sizeof(keyvtn->vtn_name));
EXPECT_EQ(false, vtn.IsValidKey(keyvtn, index));
+ free(keyvtn);
}
// To test the empty name of vtn name using the function
-TEST(IsValidKey, vtnNameEmpty) {
+TEST_F(VtnMoMgrTest, IsValidKey_vtnNameEmpty) {
VtnMoMgr vtn;
- key_vtn_t *keyvtn = (key_vtn_t *)malloc(sizeof(key_vtn_t));
+ key_vtn_t *keyvtn(ZALLOC_TYPE(key_vtn_t));
unsigned long index = 0;
strcpy((char *)keyvtn->vtn_name, (const char *)"");
EXPECT_EQ(false, vtn.IsValidKey(keyvtn, index));
+ free(keyvtn);
}
+
/* GetValid() */
// Passing NULL to the function
-TEST(GetValid, nullValue) {
+TEST_F(VtnMoMgrTest, GetValid_nullValue) {
VtnMoMgr vtn;
void *val = NULL;
uint64_t index = uudst::vtn::kDbiVtnOperStatus;
}
// Passing operstatus to the function
-TEST(GetValid, operStatus) {
+TEST_F(VtnMoMgrTest, GetValid_operStatus) {
VtnMoMgr vtn;
void *val = NULL;
uint64_t index = uudst::vtn::kDbiVtnOperStatus;
uint8_t *valid;
upll_keytype_datatype_t dtType = UPLL_DT_STATE;
- val_vtn_st_t *vtn_valst = (val_vtn_st_t *)malloc(sizeof(val_vtn_st_t));
+ val_vtn_st_t *vtn_valst(ZALLOC_TYPE(val_vtn_st_t));
vtn_valst->valid[UPLL_IDX_OPER_STATUS_VS] = UNC_VF_VALID;
val = reinterpret_cast<void *>(reinterpret_cast<char *>(vtn_valst));
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.GetValid(val, index, valid, dtType, MAINTBL));
+ free(vtn_valst);
}
// Passing alarmstatus to the function
-TEST(GetValid, alarmStatus) {
+TEST_F(VtnMoMgrTest, GetValid_alarmStatus) {
VtnMoMgr vtn;
void *val = NULL;
unsigned long index = uudst::vtn::kDbiVtnAlarmStatus;
uint8_t *valid;
upll_keytype_datatype_t dtType = UPLL_DT_STATE;
- val_vtn_st_t *vtn_valst = (val_vtn_st_t *)malloc(sizeof(val_vtn_st_t));
+ val_vtn_st_t *vtn_valst(ZALLOC_TYPE(val_vtn_st_t));
vtn_valst->valid[UPLL_IDX_ALARM_STATUS_VS] = UNC_VF_VALID;
val = reinterpret_cast<void *>(reinterpret_cast<char *>(vtn_valst));
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.GetValid(val, index, valid, dtType, MAINTBL));
+ free(vtn_valst);
}
// Passing creationTime to the function
-TEST(GetValid, creationTime) {
+TEST_F(VtnMoMgrTest, GetValid_creationTime) {
VtnMoMgr vtn;
void *val = NULL;
unsigned long index = uudst::vtn::kDbiVtnCreationTime;
uint8_t *valid;
upll_keytype_datatype_t dtType = UPLL_DT_STATE;
- val_vtn_st_t *vtn_valst = (val_vtn_st_t *)malloc(sizeof(val_vtn_st_t));
+ val_vtn_st_t *vtn_valst(ZALLOC_TYPE(val_vtn_st_t));
vtn_valst->valid[UPLL_IDX_CREATION_TIME_VS] = UNC_VF_VALID;
val = reinterpret_cast<void *>(reinterpret_cast<char *>(vtn_valst));
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.GetValid(val, index, valid, dtType, MAINTBL));
+ free(vtn_valst);
}
// Passing lastUpdatedTime to the function
-TEST(GetValid, lastUpdatedTime) {
+TEST_F(VtnMoMgrTest, GetValid_lastUpdatedTime) {
VtnMoMgr vtn;
void *val = NULL;
unsigned long index = uudst::vtn::kDbiVtnLastUpdatedTime;
uint8_t *valid;
upll_keytype_datatype_t dtType = UPLL_DT_STATE;
- val_vtn_st_t *vtn_valst = (val_vtn_st_t *)malloc(sizeof(val_vtn_st_t));
+ val_vtn_st_t *vtn_valst(ZALLOC_TYPE(val_vtn_st_t));
vtn_valst->valid[UPLL_IDX_LAST_UPDATE_TIME_VS] = UNC_VF_VALID;
val = reinterpret_cast<void *>(reinterpret_cast<char *>(vtn_valst));
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.GetValid(val, index, valid, dtType, MAINTBL));
+ free(vtn_valst);
}
// Passing vtnName to the function
-TEST(GetValid, vtnName) {
+TEST_F(VtnMoMgrTest, GetValid_vtnName) {
VtnMoMgr vtn;
void *val = NULL;
unsigned long index = uudst::vtn::kDbiVtnName;
uint8_t *valid;
upll_keytype_datatype_t dtType = UPLL_DT_STATE;
- val_vtn_t *val_vtn = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ val_vtn_t *val_vtn(ZALLOC_TYPE(val_vtn_t));
val_vtn->valid[UPLL_IDX_DESC_VTN] = UNC_VF_VALID;
val = reinterpret_cast<void *>(reinterpret_cast<char *>(val_vtn));
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.GetValid(val, index, valid, dtType, MAINTBL));
+ free(val_vtn);
}
// Passing creationTime with DT_CANDIDATE to the function
-TEST(GetValid, creationTimeDtCandidate) {
+TEST_F(VtnMoMgrTest, GetValid_creationTimeDtCandidate) {
VtnMoMgr vtn;
void *val = NULL;
unsigned long index = uudst::vtn::kDbiVtnCreationTime;
uint8_t *valid;
upll_keytype_datatype_t dtType = UPLL_DT_CANDIDATE;
- val_vtn_t *val_vtn = (val_vtn_t *)malloc(sizeof(val_vtn_t));
- val_vtn->valid[UPLL_IDX_CREATION_TIME_VS] = UNC_VF_VALID;
- val = reinterpret_cast<void *>(reinterpret_cast<char *>(val_vtn));
+ val_vtn_st_t *vtn_valst(ZALLOC_TYPE(val_vtn_st_t));
+ vtn_valst->valid[UPLL_IDX_CREATION_TIME_VS] = UNC_VF_VALID;
+ val = reinterpret_cast<void *>(reinterpret_cast<char *>(vtn_valst));
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.GetValid(val, index, valid, dtType, MAINTBL));
+ free(vtn_valst);
}
// Passing description to the function
-TEST(GetValid, description) {
+TEST_F(VtnMoMgrTest, GetValid_description) {
VtnMoMgr vtn;
void *val = NULL;
unsigned long index = uudst::vtn::kDbiVtnDesc;
uint8_t *valid;
upll_keytype_datatype_t dtType = UPLL_DT_RUNNING;
- val_vtn_t *val_vtn = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ val_vtn_t *val_vtn(ZALLOC_TYPE(val_vtn_t));
val_vtn->valid[UPLL_IDX_DESC_VTN] = UNC_VF_VALID;
val = reinterpret_cast<void *>(reinterpret_cast<char *>(val_vtn));
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.GetValid(val, index, valid, dtType, MAINTBL));
+ free(val_vtn);
}
// Passing description to the function
-TEST(GetValid, descriptionRenameTbl) {
+TEST_F(VtnMoMgrTest, GetValid_descriptionRenameTbl) {
VtnMoMgr vtn;
void *val = NULL;
unsigned long index = uudst::vtn::kDbiVtnDesc;
uint8_t *valid;
upll_keytype_datatype_t dtType = UPLL_DT_RUNNING;
- val_vtn_t *val_vtn = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ val_vtn_t *val_vtn(ZALLOC_TYPE(val_vtn_t));
val_vtn->valid[UPLL_IDX_DESC_VTN] = UNC_VF_VALID;
val = reinterpret_cast<void *>(reinterpret_cast<char *>(val_vtn));
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.GetValid(val, index, valid, dtType, RENAMETBL));
+ free(val_vtn);
}
// Passing description to the function
-TEST(GetValid, descriptionCtrlrTbl) {
+TEST_F(VtnMoMgrTest, GetValid_descriptionCtrlrTbl) {
VtnMoMgr vtn;
void *val = NULL;
unsigned long index = uudst::vtn::kDbiVtnDesc;
uint8_t *valid;
upll_keytype_datatype_t dtType = UPLL_DT_RUNNING;
- val_vtn_ctrlr_t *val_vtn_ctrlr = (val_vtn_ctrlr_t *)malloc(sizeof(val_vtn_ctrlr_t));
+ val_vtn_ctrlr_t *val_vtn_ctrlr(ZALLOC_TYPE(val_vtn_ctrlr_t));
val_vtn_ctrlr->valid[UPLL_IDX_DESC_VTN] = UNC_VF_VALID;
val = reinterpret_cast<void *>(reinterpret_cast<char *>(val_vtn_ctrlr));
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.GetValid(val, index, valid, dtType, CTRLRTBL));
+ free(val_vtn_ctrlr);
}
// Passing alarmstatus to the function
-TEST(GetValid, alarmStatusCtrlrTbl) {
+TEST_F(VtnMoMgrTest, GetValid_alarmStatusCtrlrTbl) {
VtnMoMgr vtn;
void *val = NULL;
unsigned long index = uudst::vtn::kDbiVtnAlarmStatus;
uint8_t *valid;
upll_keytype_datatype_t dtType = UPLL_DT_RUNNING;
- val_rename_vtn_t *val_rename_vtn = (val_rename_vtn_t *)malloc(sizeof(val_rename_vtn_t));
- val_rename_vtn->valid[UPLL_IDX_ALARM_STATUS_VS] = UNC_VF_VALID;
- val = reinterpret_cast<void *>(reinterpret_cast<char *>(val_rename_vtn));
+ val_vtn_st_t *vtn_valst(ZALLOC_TYPE(val_vtn_st_t));
+ vtn_valst->valid[UPLL_IDX_ALARM_STATUS_VS] = UNC_VF_VALID;
+ val = reinterpret_cast<void *>(vtn_valst);
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.GetValid(val, index, valid, dtType, CTRLRTBL));
+ free(vtn_valst);
}
// Passing operstatus to the function
-TEST(GetValid, operStatusCtrlrTbl) {
+TEST_F(VtnMoMgrTest, GetValid_operStatusCtrlrTbl) {
VtnMoMgr vtn;
void *val = NULL;
unsigned long index = uudst::vtn::kDbiVtnAlarmStatus;
uint8_t *valid;
upll_keytype_datatype_t dtType = UPLL_DT_RUNNING;
- val_rename_vtn_t *val_rename_vtn = (val_rename_vtn_t *)malloc(sizeof(val_rename_vtn_t));
+ val_rename_vtn_t *val_rename_vtn(ZALLOC_TYPE(val_rename_vtn_t));
val_rename_vtn->valid[UPLL_IDX_OPER_STATUS_VS] = UNC_VF_VALID;
val = reinterpret_cast<void *>(reinterpret_cast<char *>(val_rename_vtn));
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.GetValid(val, index, valid, dtType, CTRLRTBL));
+ free(val_rename_vtn);
}
/* AllocVal() */
//Passing empty configval
-TEST(AllocVal, emptyval) {
+TEST_F(VtnMoMgrTest, AllocVal_emptyval) {
VtnMoMgr vtn;
ConfigVal *cfg_val = NULL;
upll_keytype_datatype_t dtType = UPLL_DT_CANDIDATE;
MoMgrTables tbl=MAINTBL;
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.AllocVal(cfg_val, dtType, tbl));
+ delete cfg_val;
}
// Passing configval to the function
-TEST(AllocVal, invalidObj) {
+TEST_F(VtnMoMgrTest, AllocVal_invalidObj) {
VtnMoMgr vtn;
- val_vtn_t *val_vtn = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ val_vtn_t *val_vtn(ZALLOC_TYPE(val_vtn_t));
ConfigVal *cfg_val = new ConfigVal(IpctSt::kIpcStValVtnSt, val_vtn);//Invalid st_num
upll_keytype_datatype_t dtType = UPLL_DT_RUNNING;
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.AllocVal(cfg_val, dtType, MAINTBL));
+ delete cfg_val;
}
// Passing DT_RUNNING to the function
-TEST(AllocVal, valVtnMaintbl) {
+TEST_F(VtnMoMgrTest, AllocVal_valVtnMaintbl) {
VtnMoMgr vtn;
upll_keytype_datatype_t dtType = UPLL_DT_RUNNING;
- val_vtn_t *val_vtn = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ val_vtn_t *val_vtn(ZALLOC_TYPE(val_vtn_t));
ConfigVal *cfg_val = new ConfigVal(IpctSt::kIpcStValVtn, val_vtn);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.AllocVal(cfg_val, dtType, MAINTBL));//Need to analyse
+ delete cfg_val;
}
// Passing DT_STATE to the function
-TEST(AllocVal, valVtnStMaintbl) {
+TEST_F(VtnMoMgrTest, AllocVal_valVtnStMaintbl) {
VtnMoMgr vtn;
upll_keytype_datatype_t dtType = UPLL_DT_STATE;
- val_db_vtn_st *val_vtnst = (val_db_vtn_st *)malloc(sizeof(val_db_vtn_st));
- ConfigVal *cfg_val = new ConfigVal(IpctSt::kIpcStValVtnSt, val_vtnst);
+ val_db_vtn_st *vtn_valst(ZALLOC_TYPE(val_db_vtn_st));
+ ConfigVal *cfg_val = new ConfigVal(IpctSt::kIpcStValVtnSt, vtn_valst);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.AllocVal(cfg_val, dtType, MAINTBL)); //Need to analyse
+ delete cfg_val;
}
// Passing RENAMETBL to the function
-TEST(AllocVal, valRenametbl) {
+TEST_F(VtnMoMgrTest, AllocVal_valRenametbl) {
VtnMoMgr vtn;
upll_keytype_datatype_t dtType = UPLL_DT_CANDIDATE;
MoMgrTables tbl = RENAMETBL;
ConfigVal *config_val=NULL;
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.AllocVal(config_val, dtType, tbl));//Need to analyse
+ delete config_val;
}
// Passing CTRLRTBL to the function
-TEST(AllocVal, valCtrlrtbl) {
+TEST_F(VtnMoMgrTest, AllocVal_valCtrlrtbl) {
VtnMoMgr vtn;
upll_keytype_datatype_t dtType = UPLL_DT_CANDIDATE;
MoMgrTables tbl = CTRLRTBL;
- val_vtn_ctrlr_t *val_vtn_ctrlr = (val_vtn_ctrlr_t *)malloc(sizeof(val_vtn_ctrlr_t));
+ val_vtn_ctrlr_t *val_vtn_ctrlr(ZALLOC_TYPE(val_vtn_ctrlr_t));
ConfigVal *cfg_val = new ConfigVal(IpctSt::kIpcInvalidStNum, val_vtn_ctrlr);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.AllocVal(cfg_val, dtType, tbl));
-
+ delete cfg_val;
}
-TEST(AllocVal, Error_defaultcase) {
+TEST_F(VtnMoMgrTest, AllocVal_Error_defaultcase) {
VtnMoMgr vtn;
upll_keytype_datatype_t dtType = UPLL_DT_STATE;
MoMgrTables tbl = MAX_MOMGR_TBLS;
ConfigVal *cfg_val = NULL;
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.AllocVal(cfg_val, dtType, tbl));
-
+ delete cfg_val;
}
// Passing empty val to the function
-TEST(DupConfigKeyValVtnMapping, EmptyReqval) {
+TEST_F(VtnMoMgrTest, DupConfigKeyValVtnMapping_EmptyReqval) {
VtnMoMgr vtn;
ConfigKeyVal *okey;
ConfigKeyVal *req=NULL;
}
// Passing empty val to the function
-TEST(DupConfigKeyValVtnMapping, EmptyConfigval) {
+TEST_F(VtnMoMgrTest, DupConfigKeyValVtnMapping_EmptyConfigval) {
VtnMoMgr vtn;
ConfigKeyVal *okey;
ConfigKeyVal *req=NULL;
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.DupConfigKeyValVtnMapping(okey, req));//Need to analyse
}
-TEST(DupConfigKeyValVtnMapping, Configval) {
+TEST_F(VtnMoMgrTest, DupConfigKeyValVtnMapping_Configval) {
VtnMoMgr vtn;
ConfigKeyVal *okey=NULL;
- key_vtn_controller_t *key = (key_vtn_controller_t *)malloc(sizeof(key_vtn_controller_t));
- val_vtn_mapping_controller_st *val = (val_vtn_mapping_controller_st *)malloc(sizeof(val_vtn_mapping_controller_st));
+ key_vtn_controller_t *key(ZALLOC_TYPE(key_vtn_controller_t));
+ val_vtn_mapping_controller_st *val
+ (ZALLOC_TYPE(val_vtn_mapping_controller_st));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnMappingControllerSt, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN_MAPPING_CONTROLLER, IpctSt::kIpcStKeyVtnController, key, config_val);
}
// Passing empty val to the function
-TEST(DupConfigKeyValVtnStation, EmptyReqval) {
+TEST_F(VtnMoMgrTest, DupConfigKeyValVtnStation_EmptyReqval) {
VtnMoMgr vtn;
ConfigKeyVal *okey=NULL;
ConfigKeyVal *req=NULL;
delete req;
}
-TEST(DupConfigKeyValVtnStation, Configval_kIpcStIpv4) {
+TEST_F(VtnMoMgrTest, DupConfigKeyValVtnStation_kIpcStIpv4) {
VtnMoMgr vtn;
ConfigKeyVal *okey=NULL;
- key_vtn_controller_t *key = (key_vtn_controller_t *)malloc(sizeof(key_vtn_controller_t));
- val_vtnstation_controller_st *val = (val_vtnstation_controller_st *)malloc(sizeof(val_vtnstation_controller_st));
+ key_vtn_controller_t *key(ZALLOC_TYPE(key_vtn_controller_t));
+ val_vtnstation_controller_st *val(ZALLOC_TYPE(val_vtnstation_controller_st));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStIpv4, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTNSTATION_CONTROLLER, IpctSt::kIpcStKeyVtnstationController, key, config_val);
delete okey;
delete ikey;
}
-TEST(DupConfigKeyValVtnStation, Configval_kIpcStIpv6) {
+
+TEST_F(VtnMoMgrTest, DupConfigKeyValVtnStation_kIpcStIpv6) {
VtnMoMgr vtn;
ConfigKeyVal *okey=NULL;
- key_vtn_controller_t *key = (key_vtn_controller_t *)malloc(sizeof(key_vtn_controller_t));
- val_vtnstation_controller_st *val = (val_vtnstation_controller_st *)malloc(sizeof(val_vtnstation_controller_st));
+ key_vtn_controller_t *key(ZALLOC_TYPE(key_vtn_controller_t));
+ val_vtnstation_controller_st *val(ZALLOC_TYPE(val_vtnstation_controller_st));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStIpv6, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTNSTATION_CONTROLLER, IpctSt::kIpcStKeyVtnstationController, key, config_val);
delete ikey;
}
-TEST(DupConfigKeyValVtnStation, okey_NOT_NULL) {
+TEST_F(VtnMoMgrTest, DupConfigKeyValVtnStation_okey_NOT_NULL) {
VtnMoMgr vtn;
- key_vtn_controller_t *key = (key_vtn_controller_t *)malloc(sizeof(key_vtn_controller_t));
- val_vtnstation_controller_st *val = (val_vtnstation_controller_st *)malloc(sizeof(val_vtnstation_controller_st));
+ key_vtn_controller_t *key(ZALLOC_TYPE(key_vtn_controller_t));
+ val_vtnstation_controller_st *val(ZALLOC_TYPE(val_vtnstation_controller_st));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStIpv4, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTNSTATION_CONTROLLER, IpctSt::kIpcStKeyVtnstationController, key, config_val);
- ConfigKeyVal *okey = new ConfigKeyVal(UNC_KT_VTNSTATION_CONTROLLER, IpctSt::kIpcStKeyVtnstationController, key, config_val);
+ key_vtn_controller_t *key1(UT_CLONE(key_vtn_controller_t, key));
+ ConfigKeyVal *okey = new ConfigKeyVal(UNC_KT_VTNSTATION_CONTROLLER, IpctSt::kIpcStKeyVtnstationController, key1, NULL);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.DupConfigKeyValVtnStation(okey, ikey));
delete ikey;
-}
-
-// Passing val1 as NULL to the function
-TEST(FilterAttributes, val1Null) {
- VtnMoMgr vtn;
- void *val2 = NULL;
- val_vtn_t *valVtn2 = (val_vtn_t *)malloc(sizeof(val_vtn_t));
- valVtn2->valid[UPLL_IDX_DESC_VTN] = UNC_VF_VALID;
- val2 = reinterpret_cast<void *>(reinterpret_cast<char *>(valVtn2));
-
- EXPECT_EQ(UNC_VF_VALID, valVtn2->valid[UPLL_IDX_DESC_VTN]);
+ delete okey;
}
// Passing val2 as NULL to the function
-TEST(FilterAttributes, val2Null) {
+TEST_F(VtnMoMgrTest, FilterAttributes_val2Null) {
VtnMoMgr vtn;
void *val1 = NULL;
void *val2 = NULL;
bool audit_status = true;
unc_keytype_operation_t op = UNC_OP_CREATE;
- val_vtn_t *valVtn1 = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ val_vtn_t *valVtn1(ZALLOC_TYPE(val_vtn_t));
valVtn1->valid[UPLL_IDX_DESC_VTN] = UNC_VF_INVALID;
val1 = reinterpret_cast<void *>(reinterpret_cast<char *>(valVtn1));
vtn.FilterAttributes(val1, val2, audit_status, op);
EXPECT_EQ(UNC_VF_INVALID, valVtn1->valid[UPLL_IDX_DESC_VTN]);
+ free(valVtn1);
}
// Passing audit_status as false to the function
-TEST(FilterAttributes, auditStatus) {
+TEST_F(VtnMoMgrTest, FilterAttributes_auditStatus) {
VtnMoMgr vtn;
void *val1 = NULL;
void *val2 = NULL;
bool audit_status = false;
unc_keytype_operation_t op = UNC_OP_CREATE;
- val_vtn_t *valVtn1 = (val_vtn_t *)malloc(sizeof(val_vtn_t));
- val_vtn_t *valVtn2 = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ val_vtn_t *valVtn1(ZALLOC_TYPE(val_vtn_t));
+ val_vtn_t *valVtn2(ZALLOC_TYPE(val_vtn_t));
valVtn1->valid[UPLL_IDX_DESC_VTN] = UNC_VF_INVALID;
val1 = reinterpret_cast<void *>(reinterpret_cast<char *>(valVtn1));
val2 = reinterpret_cast<void *>(reinterpret_cast<char *>(valVtn2));
vtn.FilterAttributes(val1, val2, audit_status, op);
EXPECT_EQ(UNC_VF_INVALID, valVtn1->valid[UPLL_IDX_DESC_VTN]);
+ free(valVtn1);
+ free(valVtn2);
}
// Passing valid flag to the function
-TEST(FilterAttributes, val1ValidFlag) {
+TEST_F(VtnMoMgrTest, FilterAttributes_val1ValidFlag) {
VtnMoMgr vtn;
void *val1 = NULL;
void *val2 = NULL;
bool audit_status = true;
unc_keytype_operation_t op = UNC_OP_CREATE;
- val_vtn_t *valVtn1 = (val_vtn_t *)malloc(sizeof(val_vtn_t));
- val_vtn_t *valVtn2 = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ val_vtn_t *valVtn1(ZALLOC_TYPE(val_vtn_t));
+ val_vtn_t *valVtn2(ZALLOC_TYPE(val_vtn_t));
valVtn1->valid[UPLL_IDX_DESC_VTN] = UNC_VF_INVALID;
val1 = reinterpret_cast<void *>(reinterpret_cast<char *>(valVtn1));
val2 = reinterpret_cast<void *>(reinterpret_cast<char *>(valVtn2));
vtn.FilterAttributes(val1, val2, audit_status, op);
EXPECT_EQ(UNC_VF_INVALID, valVtn1->valid[UPLL_IDX_DESC_VTN]);
+ free(valVtn1);
+ free(valVtn2);
}
// Passing valid flag with delete operation to the function
-TEST(FilterAttributes, val2ValidFlag) {
+TEST_F(VtnMoMgrTest, FilterAttributes_val2ValidFlag) {
VtnMoMgr vtn;
void *val1 = NULL;
void *val2 = NULL;
bool audit_status = true;
unc_keytype_operation_t op = UNC_OP_DELETE;
- val_vtn_t *valVtn1 = (val_vtn_t *)malloc(sizeof(val_vtn_t));
- val_vtn_t *valVtn2 = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ val_vtn_t *valVtn1(ZALLOC_TYPE(val_vtn_t));
+ val_vtn_t *valVtn2(ZALLOC_TYPE(val_vtn_t));
valVtn2->valid[UPLL_IDX_DESC_VTN] = UNC_VF_INVALID;
val1 = reinterpret_cast<void *>(reinterpret_cast<char *>(valVtn1));
val2 = reinterpret_cast<void *>(reinterpret_cast<char *>(valVtn2));
vtn.FilterAttributes(val1, val2, audit_status, op);
EXPECT_EQ(UNC_VF_INVALID, valVtn2->valid[UPLL_IDX_DESC_VTN]);
+ free(valVtn1);
+ free(valVtn2);
}
// Passing NULL to the function
-TEST(ValidateVtnKey, nullVal) {
+TEST_F(VtnMoMgrTest, ValidateVtnKey_nullVal) {
VtnMoMgr vtn;
key_vtn_t *keyVtn = NULL;
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, vtn.ValidateVtnKey(keyVtn));
}
// Testing the vtn name
-TEST(ValidateVtnKey, properVal) {
+TEST_F(VtnMoMgrTest, ValidateVtnKey_properVal) {
VtnMoMgr vtn;
- key_vtn_t *keyVtn = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- strcpy((char*)keyVtn->vtn_name,(const char *)"vtn1");
+ key_vtn_t *keyvtn(ZALLOC_TYPE(key_vtn_t));
+ strcpy((char*)keyvtn->vtn_name,(const char *)"vtn1");
- EXPECT_EQ(UPLL_RC_SUCCESS, vtn.ValidateVtnKey(keyVtn));
+ EXPECT_EQ(UPLL_RC_SUCCESS, vtn.ValidateVtnKey(keyvtn));
+ free(keyvtn);
}
// Testing the vtn name with minimum value
-TEST(ValidateVtnKey, minVal) {
+TEST_F(VtnMoMgrTest, ValidateVtnKey_minVal) {
VtnMoMgr vtn;
- key_vtn_t *keyVtn = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- strcpy((char*)keyVtn->vtn_name,(const char *)"1");
+ key_vtn_t *keyvtn(ZALLOC_TYPE(key_vtn_t));
+ strcpy((char*)keyvtn->vtn_name,(const char *)"1");
- EXPECT_EQ(UPLL_RC_SUCCESS, vtn.ValidateVtnKey(keyVtn));
+ EXPECT_EQ(UPLL_RC_SUCCESS, vtn.ValidateVtnKey(keyvtn));
+ free(keyvtn);
}
// Testing the vtn name with maximum value
-TEST(ValidateVtnKey, maxVal) {
+TEST_F(VtnMoMgrTest, ValidateVtnKey_maxVal) {
VtnMoMgr vtn;
- key_vtn_t *keyVtn = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- strcpy((char*)keyVtn->vtn_name,(const char *)"vtnsddfkjlkssdklfjsdkladdassdd1");
+ key_vtn_t *keyvtn(ZALLOC_TYPE(key_vtn_t));
+ pfc_strlcpy(reinterpret_cast<char *>(keyvtn->vtn_name),
+ "vtnsddfkjlkssdklfjsdkladdassdd1", sizeof(keyvtn->vtn_name));
- EXPECT_EQ(UPLL_RC_SUCCESS, vtn.ValidateVtnKey(keyVtn));
+ EXPECT_EQ(UPLL_RC_SUCCESS, vtn.ValidateVtnKey(keyvtn));
+ free(keyvtn);
}
// Testing the vtn name with maximum value exceeds
-TEST(ValidateVtnKey, maxValExceeds) {
+TEST_F(VtnMoMgrTest, ValidateVtnKey_maxValExceeds) {
VtnMoMgr vtn;
- key_vtn_t *keyVtn = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- strcpy((char*)keyVtn->vtn_name,(const char *)"vtndfgdfddfrsdklfjsdklflsdsddfdfgdgfd1");
+ key_vtn_t *keyvtn(ZALLOC_ARRAY(key_vtn_t, 2));
+ memcpy(keyvtn->vtn_name, "vtndfgdfddfrsdklfjsdklflsdsddfdfgdgfd1",
+ sizeof(keyvtn->vtn_name));
- EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, vtn.ValidateVtnKey(keyVtn));
+ EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, vtn.ValidateVtnKey(keyvtn));
+ free(keyvtn);
}
// Testing the vtn name with empty value
-TEST(ValidateVtnKey, emptyVal) {
+TEST_F(VtnMoMgrTest, ValidateVtnKey_emptyVal) {
VtnMoMgr vtn;
- key_vtn_t *keyVtn = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- strcpy((char*)keyVtn->vtn_name,(const char *)"");
+ key_vtn_t *keyvtn(ZALLOC_TYPE(key_vtn_t));
+ strcpy((char*)keyvtn->vtn_name,(const char *)"");
- EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, vtn.ValidateVtnKey(keyVtn));
+ EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, vtn.ValidateVtnKey(keyvtn));
+ free(keyvtn);
}
/* ValidateVtnValue() */
// Passing NULL to the function
-TEST(ValidateVtnValue, invalidVal) {
+TEST_F(VtnMoMgrTest, ValidateVtnValue_invalidVal) {
VtnMoMgr vtn;
- val_vtn_t *valVtn = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ val_vtn_t *valVtn(ZALLOC_TYPE(val_vtn_t));
valVtn->valid[UPLL_IDX_DESC_VTN] = UNC_VF_VALID;
uint32_t op = UNC_OP_CREATE;
strcpy((char*)valVtn->description,(const char *)"");
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, vtn.ValidateVtnValue(valVtn, op)); //Bug 250
+ free(valVtn);
}
// Testing the vtn description
-TEST(ValidateVtnValue, properVal) {
+TEST_F(VtnMoMgrTest, ValidateVtnValue_properVal) {
VtnMoMgr vtn;
- val_vtn_t *valVtn = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ val_vtn_t *valVtn(ZALLOC_TYPE(val_vtn_t));
uint32_t op = UNC_OP_CREATE;
valVtn->valid[UPLL_IDX_DESC_VTN] = UNC_VF_VALID;
strcpy((char*)valVtn->description,(const char *)"ashd l1");
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.ValidateVtnValue(valVtn, op));
+ free(valVtn);
}
// Testing the vtn description with minimum value
-TEST(ValidateVtnValue, minVal) {
+TEST_F(VtnMoMgrTest, ValidateVtnValue_minVal) {
VtnMoMgr vtn;
- val_vtn_t *valVtn = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ val_vtn_t *valVtn(ZALLOC_TYPE(val_vtn_t));
uint32_t op = UNC_OP_CREATE;
valVtn->valid[UPLL_IDX_DESC_VTN] = UNC_VF_VALID;
strcpy((char*)valVtn->description,(const char *)"1");
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.ValidateVtnValue(valVtn, op));
+ free(valVtn);
}
// Testing the vtn description with maximum value
-TEST(ValidateVtnValue, maxVal) {
+TEST_F(VtnMoMgrTest, ValidateVtnValue_maxVal) {
VtnMoMgr vtn;
- val_vtn_t *valVtn = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ val_vtn_t *valVtn(ZALLOC_TYPE(val_vtn_t));
uint32_t op = UNC_OP_CREATE;
valVtn->valid[UPLL_IDX_DESC_VTN] = UNC_VF_VALID;
- strcpy((char*)valVtn->description,(const char *)"vtnsddfkjlkssdklfjsdkladdassdd1");
+ pfc_strlcpy(reinterpret_cast<char *>(valVtn->description),
+ "vtnsddfkjlkssdklfjsdkladdassdd1", sizeof(valVtn->description));
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.ValidateVtnValue(valVtn, op));
+ free(valVtn);
}
// Testing the vtn description with maximum value exceeds
-TEST(ValidateVtnValue, maxValExceeds) {
+TEST_F(VtnMoMgrTest, ValidateVtnValue_maxValExceeds) {
VtnMoMgr vtn;
- val_vtn_t *valVtn = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ val_vtn_t *valVtn(ZALLOC_ARRAY(val_vtn_t, 2));
uint32_t op = UNC_OP_CREATE;
valVtn->valid[UPLL_IDX_DESC_VTN] = UNC_VF_VALID;
- strcpy((char*)valVtn->description,(const char *)"vtndfgjjj;j;j;j;jjjjjjjjjdfddfrsdklfjsdklflsdsddfdfgdgfd1");
+ memcpy(valVtn->description,
+ "vtndfgjjj;j;j;j;jjjjjjjjjdfddfrsdklfjsdklflsdsddfdfgdgfd1",
+ sizeof(valVtn->description));
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.ValidateVtnValue(valVtn, op));
+ free(valVtn);
}
// Testing the vtn description with empty value
-TEST(ValidateVtnValue, emptyVal) {
+TEST_F(VtnMoMgrTest, ValidateVtnValue_emptyVal) {
VtnMoMgr vtn;
- val_vtn_t *valVtn = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ val_vtn_t *valVtn(ZALLOC_TYPE(val_vtn_t));
uint32_t op = UNC_OP_CREATE;
valVtn->valid[UPLL_IDX_DESC_VTN] = UNC_VF_VALID;
strcpy((char*)valVtn->description,(const char *)"");
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, vtn.ValidateVtnValue(valVtn, op));
+ free(valVtn);
}
// Testing the vtn description with invalid flag
-TEST(ValidateVtnValue, invalidFlag) {
+TEST_F(VtnMoMgrTest, ValidateVtnValue_invalidFlag) {
VtnMoMgr vtn;
- val_vtn_t *valVtn = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ val_vtn_t *valVtn(ZALLOC_TYPE(val_vtn_t));
uint32_t op = UNC_OP_CREATE;
valVtn->valid[UPLL_IDX_DESC_VTN] = UNC_VF_INVALID;
strcpy((char*)valVtn->description,(const char *)"vtn1");
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.ValidateVtnValue(valVtn, op));
+ free(valVtn);
}
// Testing the vtn description with no value flag
-TEST(ValidateVtnValue, novalueFlagCreate) {
+TEST_F(VtnMoMgrTest, ValidateVtnValue_novalueFlagCreate) {
VtnMoMgr vtn;
- val_vtn_t *valVtn = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ val_vtn_t *valVtn(ZALLOC_TYPE(val_vtn_t));
uint32_t op = UNC_OP_CREATE;
valVtn->valid[UPLL_IDX_DESC_VTN] = UNC_VF_VALID_NO_VALUE;
strcpy((char*)valVtn->description,(const char *)"vtn1");
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.ValidateVtnValue(valVtn, op));
+ free(valVtn);
}
// Testing the vtn description with no value flag
-TEST(ValidateVtnValue, novalueFlagUpdate) {
+TEST_F(VtnMoMgrTest, ValidateVtnValue_novalueFlagUpdate) {
VtnMoMgr vtn;
- val_vtn_t *valVtn = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ val_vtn_t *valVtn(ZALLOC_TYPE(val_vtn_t));
uint32_t op = UNC_OP_UPDATE;
valVtn->valid[UPLL_IDX_DESC_VTN] = UNC_VF_VALID_NO_VALUE;
strcpy((char*)valVtn->description,(const char *)"vtn1");
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.ValidateVtnValue(valVtn, op));
+ free(valVtn);
}
// Testing the vtn description with invalid flag
-TEST(ValidateVtnValue, novalueFlagDelete) {
+TEST_F(VtnMoMgrTest, ValidateVtnValue_novalueFlagDelete) {
VtnMoMgr vtn;
- val_vtn_t *valVtn = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ val_vtn_t *valVtn(ZALLOC_TYPE(val_vtn_t));
uint32_t op = UNC_OP_DELETE;
valVtn->valid[UPLL_IDX_DESC_VTN] = UNC_VF_VALID_NO_VALUE;
strcpy((char*)valVtn->description,(const char *)"vtn1");
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.ValidateVtnValue(valVtn, op));
+ free(valVtn);
}
-
// Testing the vtn name
-TEST(ValidateVtnRenameValue, properVal) {
+TEST_F(VtnMoMgrTest, ValidateVtnRenameValue_properVal) {
VtnMoMgr vtn;
- val_rename_vtn_t *valVtnRename = (val_rename_vtn_t *)malloc(sizeof(val_rename_vtn_t));
+ val_rename_vtn_t *valVtnRename(ZALLOC_TYPE(val_rename_vtn_t));
valVtnRename->valid[UPLL_IDX_NEW_NAME_RVTN] = UNC_VF_VALID;
strcpy((char*)valVtnRename->new_name,(const char *)"vtn1");
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.ValidateVtnRenameValue(valVtnRename));
+ free(valVtnRename);
}
// Testing the vtn name with minimum value
-TEST(ValidateVtnRenameValue, minVal) {
+TEST_F(VtnMoMgrTest, ValidateVtnRenameValue_minVal) {
VtnMoMgr vtn;
- val_rename_vtn_t *valVtnRename = (val_rename_vtn_t *)malloc(sizeof(val_rename_vtn_t));
+ val_rename_vtn_t *valVtnRename(ZALLOC_TYPE(val_rename_vtn_t));
valVtnRename->valid[UPLL_IDX_NEW_NAME_RVTN] = UNC_VF_VALID;
strcpy((char*)valVtnRename->new_name,(const char *)"1");
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.ValidateVtnRenameValue(valVtnRename));
+ free(valVtnRename);
}
// Testing the vtn name with maximum value
-TEST(ValidateVtnRenameValue, maxVal) {
+TEST_F(VtnMoMgrTest, ValidateVtnRenameValue_maxVal) {
VtnMoMgr vtn;
- val_rename_vtn_t *valVtnRename = (val_rename_vtn_t *)malloc(sizeof(val_rename_vtn_t));
+ val_rename_vtn_t *valVtnRename(ZALLOC_TYPE(val_rename_vtn_t));
valVtnRename->valid[UPLL_IDX_NEW_NAME_RVTN] = UNC_VF_VALID;
- strcpy((char*)valVtnRename->new_name,(const char *)"vtnsddfkjlkssdklfjsdkladdassdd1");
+ pfc_strlcpy(reinterpret_cast<char *>(valVtnRename->new_name),
+ "vtnsddfkjlkssdklfjsdkladdassdd1",
+ sizeof(valVtnRename->new_name));
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.ValidateVtnRenameValue(valVtnRename));
+ free(valVtnRename);
}
// Testing the vtn name with maximum value exceeds
-TEST(ValidateVtnRenameValue, maxValExceeds) {
+TEST_F(VtnMoMgrTest, ValidateVtnRenameValue_maxValExceeds) {
VtnMoMgr vtn;
- val_rename_vtn_t *valVtnRename = (val_rename_vtn_t *)malloc(sizeof(val_rename_vtn_t));
+ val_rename_vtn_t *valVtnRename(ZALLOC_ARRAY(val_rename_vtn_t, 2));
valVtnRename->valid[UPLL_IDX_NEW_NAME_RVTN] = UNC_VF_VALID;
- strcpy((char*)valVtnRename->new_name,(const char *)"vtndfgdfddfrsdklfjsdklflsdsddfdfgdgfd1");
+ memcpy(valVtnRename->new_name,
+ "vtndfgdfddfrsdklfjsdklflsdsddfdfgdgfd1",
+ sizeof(valVtnRename->new_name));
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, vtn.ValidateVtnRenameValue(valVtnRename));
+ free(valVtnRename);
}
// Testing the vtn name with empty value
-TEST(ValidateVtnRenameValue, emptyVal) {
+TEST_F(VtnMoMgrTest, ValidateVtnRenameValue_emptyVal) {
VtnMoMgr vtn;
- val_rename_vtn_t *valVtnRename = (val_rename_vtn_t *)malloc(sizeof(val_rename_vtn_t));
+ val_rename_vtn_t *valVtnRename(ZALLOC_TYPE(val_rename_vtn_t));
valVtnRename->valid[UPLL_IDX_NEW_NAME_RVTN] = UNC_VF_VALID;
strcpy((char*)valVtnRename->new_name,(const char *)"");
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, vtn.ValidateVtnRenameValue(valVtnRename));
+ free(valVtnRename);
}
// Testing the vtn name with invalid flag
-TEST(ValidateVtnRenameValue, invalidFlag) {
+TEST_F(VtnMoMgrTest, ValidateVtnRenameValue_invalidFlag) {
VtnMoMgr vtn;
- val_rename_vtn_t *valVtnRename = (val_rename_vtn_t *)malloc(sizeof(val_rename_vtn_t));
+ val_rename_vtn_t *valVtnRename(ZALLOC_TYPE(val_rename_vtn_t));
valVtnRename->valid[UPLL_IDX_NEW_NAME_RVTN] = UNC_VF_INVALID;
strcpy((char*)valVtnRename->new_name,(const char *)"vtn1");
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.ValidateVtnRenameValue(valVtnRename));
+ free(valVtnRename);
}
/* ValidateVtnMapCtrlrKey() */
// Passing NULL to the function
-TEST(ValidateVtnMapCtrlrKey, nullVal) {
+TEST_F(VtnMoMgrTest, ValidateVtnMapCtrlrKey_nullVal) {
VtnMoMgr vtn;
key_vtn_controller_t *keyVtnMap = NULL;
}
// Testing the controller name and vtn name
-TEST(ValidateVtnMapCtrlrKey, properVal) {
+TEST_F(VtnMoMgrTest, ValidateVtnMapCtrlrKey_properVal) {
VtnMoMgr vtn;
- key_vtn_controller_t *keyVtnMap = (key_vtn_controller_t *)malloc(sizeof(key_vtn_controller_t));
+ key_vtn_controller_t *keyVtnMap(ZALLOC_TYPE(key_vtn_controller_t));
strcpy((char*)keyVtnMap->vtn_key.vtn_name,(const char *)"vtn1");
strcpy((char*)keyVtnMap->controller_name,(const char *)"pfc1");
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, vtn.ValidateVtnMapCtrlrKey(keyVtnMap,UNC_OP_CREATE));
+ free(keyVtnMap);
}
// Testing the controller name with minimum value and proper vtn name
-TEST(ValidateVtnMapCtrlrKey, ctrlNameMin) {
+TEST_F(VtnMoMgrTest, ValidateVtnMapCtrlrKey_ctrlNameMin) {
VtnMoMgr vtn;
- key_vtn_controller_t *keyVtnMap = (key_vtn_controller_t *)malloc(sizeof(key_vtn_controller_t));
+ key_vtn_controller_t *keyVtnMap(ZALLOC_TYPE(key_vtn_controller_t));
strcpy((char*)keyVtnMap->vtn_key.vtn_name,(const char *)"vtn1");
strcpy((char*)keyVtnMap->controller_name,(const char *)"1");
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, vtn.ValidateVtnMapCtrlrKey(keyVtnMap,UNC_OP_CREATE));
+ free(keyVtnMap);
}
// Testing the controller name with maximum value and proper vtn name
-TEST(ValidateVtnMapCtrlrKey, ctrlNameMax) {
+TEST_F(VtnMoMgrTest, ValidateVtnMapCtrlrKey_ctrlNameMax) {
VtnMoMgr vtn;
- key_vtn_controller_t *keyVtnMap = (key_vtn_controller_t *)malloc(sizeof(key_vtn_controller_t));
+ key_vtn_controller_t *keyVtnMap(ZALLOC_TYPE(key_vtn_controller_t));
strcpy((char*)keyVtnMap->vtn_key.vtn_name,(const char *)"vtn1");
- strcpy((char*)keyVtnMap->controller_name,(const char *)"vtnstationcontrollersdklfjsdkl1");
+ pfc_strlcpy(reinterpret_cast<char *>(keyVtnMap->controller_name),
+ "vtnstationcontrollersdklfjsdkl1",
+ sizeof(keyVtnMap->controller_name));
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, vtn.ValidateVtnMapCtrlrKey(keyVtnMap,UNC_OP_CREATE));
+ free(keyVtnMap);
}
// Testing the controller name with maximum value exceeds and proper vtn name
-TEST(ValidateVtnMapCtrlrKey, ctrlNameMaxExceeds) {
+TEST_F(VtnMoMgrTest, ValidateVtnMapCtrlrKey_ctrlNameMaxExceeds) {
VtnMoMgr vtn;
- key_vtn_controller_t *keyVtnMap = (key_vtn_controller_t *)malloc(sizeof(key_vtn_controller_t));
+ key_vtn_controller_t *keyVtnMap(ZALLOC_ARRAY(key_vtn_controller_t, 2));
strcpy((char*)keyVtnMap->vtn_key.vtn_name,(const char *)"vtn1");
- strcpy((char*)keyVtnMap->controller_name,(const char *)"vtnstationcontrollersdklfjsdklflsdsddf1");
+ memcpy(keyVtnMap->controller_name,
+ "vtnstationcontrollersdklfjsdklflsdsddf1",
+ sizeof(keyVtnMap->controller_name));
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, vtn.ValidateVtnMapCtrlrKey(keyVtnMap,UNC_OP_CREATE));
+ free(keyVtnMap);
}
// Testing the controller name with empty value and proper vtn name
-TEST(ValidateVtnMapCtrlrKey, ctrlNameempty) {
+TEST_F(VtnMoMgrTest, ValidateVtnMapCtrlrKey_ctrlNameempty) {
VtnMoMgr vtn;
- key_vtn_controller_t *keyVtnMap = (key_vtn_controller_t *)malloc(sizeof(key_vtn_controller_t));
+ key_vtn_controller_t *keyVtnMap(ZALLOC_TYPE(key_vtn_controller_t));
strcpy((char*)keyVtnMap->vtn_key.vtn_name,(const char *)"vtn1");
strcpy((char*)keyVtnMap->controller_name,(const char *)"");
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, vtn.ValidateVtnMapCtrlrKey(keyVtnMap,UNC_OP_CREATE));
+ free(keyVtnMap);
}
// Testing the vtn name with minimum value and proper controller name
-TEST(ValidateVtnMapCtrlrKey, vtnNameMin) {
+TEST_F(VtnMoMgrTest, ValidateVtnMapCtrlrKey_vtnNameMin) {
VtnMoMgr vtn;
- key_vtn_controller_t *keyVtnMap = (key_vtn_controller_t *)malloc(sizeof(key_vtn_controller_t));
+ key_vtn_controller_t *keyVtnMap(ZALLOC_TYPE(key_vtn_controller_t));
strcpy((char*)keyVtnMap->vtn_key.vtn_name,(const char *)"1");
strcpy((char*)keyVtnMap->controller_name,(const char *)"pfc1");
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, vtn.ValidateVtnMapCtrlrKey(keyVtnMap,UNC_OP_CREATE));
+ free(keyVtnMap);
}
// Testing the vtn name with maximum value and proper controller name
-TEST(ValidateVtnMapCtrlrKey, vtnNameMax) {
+TEST_F(VtnMoMgrTest, ValidateVtnMapCtrlrKey_vtnNameMax) {
VtnMoMgr vtn;
- key_vtn_controller_t *keyVtnMap = (key_vtn_controller_t *)malloc(sizeof(key_vtn_controller_t));
- strcpy((char*)keyVtnMap->vtn_key.vtn_name,(const char *)"vtnsdaflkjsdfhksdfgdghkshglkas1");
+ key_vtn_controller_t *keyVtnMap(ZALLOC_TYPE(key_vtn_controller_t));
+ pfc_strlcpy(reinterpret_cast<char *>(keyVtnMap->vtn_key.vtn_name),
+ "vtnsdaflkjsdfhksdfgdghkshglkas1",
+ sizeof(keyVtnMap->vtn_key.vtn_name));
strcpy((char*)keyVtnMap->controller_name,(const char *)"pfc1");
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, vtn.ValidateVtnMapCtrlrKey(keyVtnMap,UNC_OP_CREATE));
+ free(keyVtnMap);
}
// Testing the vtn name with maximum value exceeds and proper controller name
-TEST(ValidateVtnMapCtrlrKey, vtnNameMaxExceeds) {
+TEST_F(VtnMoMgrTest, ValidateVtnMapCtrlrKey_vtnNameMaxExceeds) {
VtnMoMgr vtn;
- key_vtn_controller_t *keyVtnMap = (key_vtn_controller_t *)malloc(sizeof(key_vtn_controller_t));
- strcpy((char*)keyVtnMap->vtn_key.vtn_name,(const char *)"vtnsdaflkjsdfhksdfghkjasdghkshglkask1");
+ key_vtn_controller_t *keyVtnMap(ZALLOC_ARRAY(key_vtn_controller_t, 2));
+ memcpy(keyVtnMap->vtn_key.vtn_name, "vtnsdaflkjsdfhksdfghkjasdghkshglkask1",
+ sizeof(keyVtnMap->vtn_key.vtn_name));
strcpy((char*)keyVtnMap->controller_name,(const char *)"pfc1");
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, vtn.ValidateVtnMapCtrlrKey(keyVtnMap,UNC_OP_CREATE));
+ free(keyVtnMap);
}
// Testing the vtn name with empty value and proper controller name
-TEST(ValidateVtnMapCtrlrKey, vtnNameEmpty) {
+TEST_F(VtnMoMgrTest, ValidateVtnMapCtrlrKey_vtnNameEmpty) {
VtnMoMgr vtn;
- key_vtn_controller_t *keyVtnMap = (key_vtn_controller_t *)malloc(sizeof(key_vtn_controller_t));
+ key_vtn_controller_t *keyVtnMap(ZALLOC_TYPE(key_vtn_controller_t));
strcpy((char*)keyVtnMap->vtn_key.vtn_name,(const char *)"");
strcpy((char*)keyVtnMap->controller_name,(const char *)"pfc1");
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, vtn.ValidateVtnMapCtrlrKey(keyVtnMap,UNC_OP_CREATE));
+ free(keyVtnMap);
}
/* ValidateVtnStnCtrlrKey() */
// Passing NULL to the function
-TEST(ValidateVtnStnCtrlrKey, nullVal) {
+TEST_F(VtnMoMgrTest, ValidateVtnStnCtrlrKey_nullVal) {
VtnMoMgr vtn;
key_vtnstation_controller_t *keyVtnStn = NULL;
}
// Testing the controller name
-TEST(ValidateVtnStnCtrlrKey, properVal) {
+TEST_F(VtnMoMgrTest, ValidateVtnStnCtrlrKey_properVal) {
VtnMoMgr vtn;
- key_vtnstation_controller_t *keyVtnStn = (key_vtnstation_controller_t *)malloc(sizeof(key_vtnstation_controller_t));
+ key_vtnstation_controller_t *keyVtnStn
+ (ZALLOC_TYPE(key_vtnstation_controller_t));
strcpy((char*)keyVtnStn->controller_name,(const char *)"pfc1");
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.ValidateVtnStnCtrlrKey(keyVtnStn,UNC_OP_CREATE));
+ free(keyVtnStn);
}
-TEST(ValidateVtnStnCtrlrKey, UNC_OP_READ_SIBLING_COUNT) {
+TEST_F(VtnMoMgrTest, ValidateVtnStnCtrlrKey_READ_SIBLING_COUNT) {
VtnMoMgr vtn;
- key_vtnstation_controller_t *keyVtnStn = (key_vtnstation_controller_t *)malloc(sizeof(key_vtnstation_controller_t));
+ key_vtnstation_controller_t *keyVtnStn
+ (ZALLOC_TYPE(key_vtnstation_controller_t));
strcpy((char*)keyVtnStn->controller_name,(const char *)"pfc1");
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.ValidateVtnStnCtrlrKey(keyVtnStn,UNC_OP_READ_SIBLING_COUNT));
+ free(keyVtnStn);
}
// Testing the controller name with minimum value
-TEST(ValidateVtnStnCtrlrKey, minVal) {
+TEST_F(VtnMoMgrTest, ValidateVtnStnCtrlrKey_minVal) {
VtnMoMgr vtn;
- key_vtnstation_controller_t *keyVtnStn = (key_vtnstation_controller_t *)malloc(sizeof(key_vtnstation_controller_t));
- strcpy((char*)keyVtnStn->controller_name,(const char *)"1");
+ key_vtnstation_controller_t *keyVtnStn
+ (ZALLOC_TYPE(key_vtnstation_controller_t));
+ keyVtnStn->controller_name[0] = 'a';
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.ValidateVtnStnCtrlrKey(keyVtnStn,UNC_OP_CREATE));
+ free(keyVtnStn);
}
// Testing the controller name with maximum value
-TEST(ValidateVtnStnCtrlrKey, maxVal) {
+TEST_F(VtnMoMgrTest, ValidateVtnStnCtrlrKey_maxVal) {
VtnMoMgr vtn;
- key_vtnstation_controller_t *keyVtnStn = (key_vtnstation_controller_t *)malloc(sizeof(key_vtnstation_controller_t));
- strcpy((char*)keyVtnStn->controller_name,(const char *)"vtnstationcontrollhljhleouuuuuu");
+ key_vtnstation_controller_t *keyVtnStn
+ (ZALLOC_TYPE(key_vtnstation_controller_t));
+ pfc_strlcpy(reinterpret_cast<char *>(keyVtnStn->controller_name),
+ "vtnstationcontrollhljhleouuuuuu",
+ sizeof(keyVtnStn->controller_name));
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.ValidateVtnStnCtrlrKey(keyVtnStn,UNC_OP_CREATE));
+ free(keyVtnStn);
}
// Testing the controller name with maximum value exceeds
-TEST(ValidateVtnStnCtrlrKey, maxValExceeds) {
+TEST_F(VtnMoMgrTest, ValidateVtnStnCtrlrKey_maxValExceeds) {
VtnMoMgr vtn;
- key_vtnstation_controller_t *keyVtnStn = (key_vtnstation_controller_t *)malloc(sizeof(key_vtnstation_controller_t));
- strcpy((char*)keyVtnStn->controller_name,(const char *)"vtnstationcontrollersdklfjsdklflsdsddf1");
+ key_vtnstation_controller_t *keyVtnStn
+ (ZALLOC_ARRAY(key_vtnstation_controller_t, 2));
+ memcpy(keyVtnStn->controller_name, "vtnstationcontrollersdklfjsdklflsdsddf1",
+ sizeof(keyVtnStn->controller_name));
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, vtn.ValidateVtnStnCtrlrKey(keyVtnStn,UNC_OP_CREATE));
+ free(keyVtnStn);
}
// Testing the controller name with empty value
-TEST(ValidateVtnStnCtrlrKey, emptyVal) {
+TEST_F(VtnMoMgrTest, ValidateVtnStnCtrlrKey_emptyVal) {
VtnMoMgr vtn;
- key_vtnstation_controller_t *keyVtnStn = (key_vtnstation_controller_t *)malloc(sizeof(key_vtnstation_controller_t));
+ key_vtnstation_controller_t *keyVtnStn
+ (ZALLOC_TYPE(key_vtnstation_controller_t));
strcpy((char*)keyVtnStn->controller_name,(const char *)"");
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, vtn.ValidateVtnStnCtrlrKey(keyVtnStn,UNC_OP_CREATE));
+ free(keyVtnStn);
}
/* ReadMo() */
-TEST(ReadMo, otherKT_detail) {
+TEST_F(VtnMoMgrTest, ReadMo_otherKT_detail) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
req->datatype = UPLL_DT_CANDIDATE;
req->operation = UNC_OP_READ;
req->option1 = UNC_OPT1_DETAIL;
req->option2 = UNC_OPT2_NONE;
- key_vtn_t *keyvtn = (key_vtn_t *)malloc(sizeof(key_vtn_t));
+ key_vtn_t *keyvtn(ZALLOC_TYPE(key_vtn_t));
strcpy((char*)keyvtn->vtn_name,(const char *)"vtn1");
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, keyvtn, NULL);
}
//otherKT when option1 = UNC_OPT1_COUNT
-TEST(ReadMo, otherKT_count) {
+TEST_F(VtnMoMgrTest, ReadMo_otherKT_count) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
req->datatype = UPLL_DT_CANDIDATE;
req->operation = UNC_OP_READ;
req->option1 = UNC_OPT1_COUNT;
req->option2 = UNC_OPT2_NONE;
- key_vtn_t *keyvtn = (key_vtn_t *)malloc(sizeof(key_vtn_t));
+ key_vtn_t *keyvtn(ZALLOC_TYPE(key_vtn_t));
strcpy((char*)keyvtn->vtn_name,(const char *)"vtn1");
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, keyvtn, NULL);
}
//UNC_KT_VTN_MAPPING_CONTROLLER has wrong dt_type
-TEST(ReadMo, Mapping_invaliddatatype) {
+TEST_F(VtnMoMgrTest, ReadMo_mapping_invaliddatatype) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
req->datatype = UPLL_DT_CANDIDATE;
req->operation = UNC_OP_READ;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NONE;
- key_vtn_controller_t *key_ctrlr = (key_vtn_controller_t*) malloc(sizeof(key_vtn_controller_t));
- val_vtn_mapping_controller_st_t *val_mapping = (val_vtn_mapping_controller_st_t*)malloc(sizeof(val_vtn_mapping_controller_st_t));
+ key_vtn_controller_t *key_ctrlr(ZALLOC_TYPE(key_vtn_controller_t));
+ val_vtn_mapping_controller_st_t *val_mapping
+ (ZALLOC_TYPE(val_vtn_mapping_controller_st_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnMappingControllerSt, val_mapping);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN_MAPPING_CONTROLLER, IpctSt::kIpcStKeyVtnController, key_ctrlr, config_val);
}
//UNC_KT_VTN_MAPPING_CONTROLLER has wrong st_num
-TEST(ReadMo, Mapping_invalidstnum) {
+TEST_F(VtnMoMgrTest, ReadMo_mapping_invalidstnum) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
req->datatype = UPLL_DT_STATE;
req->operation = UNC_OP_READ;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NONE;
- key_vtn_controller_t *key_ctrlr = (key_vtn_controller_t*) malloc(sizeof(key_vtn_controller_t));
- val_vtn_mapping_controller_st_t *val_mapping = (val_vtn_mapping_controller_st_t*)malloc(sizeof(val_vtn_mapping_controller_st_t));
+ key_vtn_controller_t *key_ctrlr(ZALLOC_TYPE(key_vtn_controller_t));
+ val_vtn_mapping_controller_st_t *val_mapping
+ (ZALLOC_TYPE(val_vtn_mapping_controller_st_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnMappingControllerSt, val_mapping);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN_MAPPING_CONTROLLER, IpctSt::kIpcStKeyVtn, key_ctrlr, config_val);
}
//UNC_KT_VTN_MAPPING_CONTROLLER has no vtn_name
-TEST(ReadMo, Mapping_emptyvtnname) {
+TEST_F(VtnMoMgrTest, ReadMo_mapping_emptyvtnname) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
req->datatype = UPLL_DT_STATE;
req->operation = UNC_OP_READ;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NONE;
- key_vtn_controller_t *key_ctrlr = (key_vtn_controller_t*) malloc(sizeof(key_vtn_controller_t));
- val_vtn_mapping_controller_st_t *val_mapping = (val_vtn_mapping_controller_st_t*)malloc(sizeof(val_vtn_mapping_controller_st_t));
+ key_vtn_controller_t *key_ctrlr(ZALLOC_TYPE(key_vtn_controller_t));
+ val_vtn_mapping_controller_st_t *val_mapping
+ (ZALLOC_TYPE(val_vtn_mapping_controller_st_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnMappingControllerSt, val_mapping);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN_MAPPING_CONTROLLER, IpctSt::kIpcStKeyVtnController, key_ctrlr, config_val);
strcpy((char*)key_ctrlr->vtn_key.vtn_name,(const char *)"");
delete ikey;
}
-TEST(ReadMo, Mapping_valid) {
+TEST_F(VtnMoMgrTest, ReadMo_mapping_valid) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
req->datatype = UPLL_DT_STATE;
req->operation = UNC_OP_READ;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NONE;
- key_vtn_controller_t *key_ctrlr = (key_vtn_controller_t*) malloc(sizeof(key_vtn_controller_t));
+ key_vtn_controller_t *key_ctrlr(ZALLOC_TYPE(key_vtn_controller_t));
strcpy((char*)key_ctrlr->controller_name,(const char *)"pfc1");
strcpy((char*)key_ctrlr->domain_id,(const char *)"dom1");
- val_vtn_mapping_controller_st_t *val_mapping = (val_vtn_mapping_controller_st_t*)malloc(sizeof(val_vtn_mapping_controller_st_t));
+ val_vtn_mapping_controller_st_t *val_mapping
+ (ZALLOC_TYPE(val_vtn_mapping_controller_st_t));
strcpy((char*)val_mapping->switch_id,(const char *)"switch_id1");
strcpy((char*)val_mapping->port_name,(const char *)"port_name1");
strcpy((char*)val_mapping->vbr_name,(const char *)"vbr_name1");
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.ReadMo(req, ikey, dmi));
delete ikey;
}
-TEST(ReadMo, Mapping_invalid_01) {
+
+TEST_F(VtnMoMgrTest, ReadMo_mapping_invalid_01) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
req->datatype = UPLL_DT_STATE;
req->operation = UNC_OP_READ;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NONE;
- key_vtn_controller_t *key_ctrlr = (key_vtn_controller_t*) malloc(sizeof(key_vtn_controller_t));
+ key_vtn_controller_t *key_ctrlr(ZALLOC_TYPE(key_vtn_controller_t));
strcpy((char*)key_ctrlr->controller_name,(const char *)"pfc1");
strcpy((char*)key_ctrlr->domain_id,(const char *)"dom1");
- val_vtn_mapping_controller_st_t *val_mapping = (val_vtn_mapping_controller_st_t*)malloc(sizeof(val_vtn_mapping_controller_st_t));
+ val_vtn_mapping_controller_st_t *val_mapping
+ (ZALLOC_TYPE(val_vtn_mapping_controller_st_t));
strcpy((char*)val_mapping->switch_id,(const char *)"switch_id1");
strcpy((char*)val_mapping->port_name,(const char *)"port_name1");
strcpy((char*)val_mapping->vbr_name,(const char *)"vbr_name1");
}
//UNC_KT_VTN_MAPPING_CONTROLLER has domain
-TEST(ReadMo, Mapping_withctrl_domain) {
+TEST_F(VtnMoMgrTest, ReadMo_mapping_withctrl_domain) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
req->datatype = UPLL_DT_STATE;
req->operation = UNC_OP_READ;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NONE;
- key_vtn_controller_t *key_ctrlr = (key_vtn_controller_t*) malloc(sizeof(key_vtn_controller_t));
- val_vtn_mapping_controller_st_t *val_mapping = (val_vtn_mapping_controller_st_t*)malloc(sizeof(val_vtn_mapping_controller_st_t));
+ key_vtn_controller_t *key_ctrlr(ZALLOC_TYPE(key_vtn_controller_t));
+ val_vtn_mapping_controller_st_t *val_mapping
+ (ZALLOC_TYPE(val_vtn_mapping_controller_st_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnMappingControllerSt, val_mapping);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN_MAPPING_CONTROLLER, IpctSt::kIpcStKeyVtnController, key_ctrlr, config_val);
strcpy((char*)key_ctrlr->vtn_key.vtn_name,(const char *)"vtn1");
delete ikey;
}
-TEST(ReadMo, Station_invalidkeytype) {
+TEST_F(VtnMoMgrTest, ReadMo_Station_invalidkeytype) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
req->datatype = UPLL_DT_STATE;
req->operation = UNC_OP_READ;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NONE;
- key_vtnstation_controller_t *key_station = (key_vtnstation_controller_t*) malloc(sizeof(key_vtnstation_controller_t));
- val_vtnstation_controller_st_t *val_station = (val_vtnstation_controller_st_t*)malloc(sizeof(val_vtnstation_controller_st_t));
+ key_vtnstation_controller_t *key_station
+ (ZALLOC_TYPE(key_vtnstation_controller_t));
+ val_vtnstation_controller_st_t *val_station
+ (ZALLOC_TYPE(val_vtnstation_controller_st_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnstationControllerSt, val_station);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVtnstationController, key_station, config_val);
}
//UNC_KT_VTNSTATION_CONTROLLER has wrong st_num
-TEST(ReadMo, Station_invalidstnum) {
+TEST_F(VtnMoMgrTest, ReadMo_Station_invalidstnum) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
req->datatype = UPLL_DT_STATE;
req->operation = UNC_OP_READ;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NONE;
- key_vtnstation_controller_t *key_station = (key_vtnstation_controller_t*) malloc(sizeof(key_vtnstation_controller_t));
- val_vtnstation_controller_st_t *val_station = (val_vtnstation_controller_st_t*)malloc(sizeof(val_vtnstation_controller_st_t));
+ key_vtnstation_controller_t *key_station
+ (ZALLOC_TYPE(key_vtnstation_controller_t));
+ val_vtnstation_controller_st_t *val_station
+ (ZALLOC_TYPE(val_vtnstation_controller_st_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnstationControllerSt, val_station);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTNSTATION_CONTROLLER, IpctSt::kIpcStKeyVtn, key_station, config_val);
}
//UNC_KT_VTNSTATION_CONTROLLER has no ctrlr_name
-TEST(ReadMo, Station_emptyctrlrname) {
+TEST_F(VtnMoMgrTest, ReadMo_Station_emptyctrlrname) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi = new DalOdbcMgr();;
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
req->datatype = UPLL_DT_STATE;
req->operation = UNC_OP_READ;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NONE;
- key_vtnstation_controller_t *key_station = (key_vtnstation_controller_t*) malloc(sizeof(key_vtnstation_controller_t));
- val_vtnstation_controller_st_t *val_station = (val_vtnstation_controller_st_t*)malloc(sizeof(val_vtnstation_controller_st_t));
+ key_vtnstation_controller_t *key_station
+ (ZALLOC_TYPE(key_vtnstation_controller_t));
+ val_vtnstation_controller_st_t *val_station
+ (ZALLOC_TYPE(val_vtnstation_controller_st_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnstationControllerSt, val_station);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTNSTATION_CONTROLLER, IpctSt::kIpcStKeyVtnstationController, key_station, config_val);
strcpy((char*)key_station->controller_name,(const char *)"");
delete ikey;
}
-TEST(ReadMo, Station_valid_01) {
+TEST_F(VtnMoMgrTest, ReadMo_Station_valid_01) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi = new DalOdbcMgr();;
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
req->datatype = UPLL_DT_STATE;
req->operation = UNC_OP_READ;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NONE;
- key_vtnstation_controller_t *key_station = (key_vtnstation_controller_t*) malloc(sizeof(key_vtnstation_controller_t));
+ key_vtnstation_controller_t *key_station
+ (ZALLOC_TYPE(key_vtnstation_controller_t));
uuu::upll_strncpy(key_station->controller_name,"pfc1", (kMaxLenCtrlrId + 1));
- val_vtnstation_controller_st_t *val_station = (val_vtnstation_controller_st_t*)malloc(sizeof(val_vtnstation_controller_st_t));
+ val_vtnstation_controller_st_t *val_station
+ (ZALLOC_TYPE(val_vtnstation_controller_st_t));
uuu::upll_strncpy(val_station->vtn_name,"vtn_name", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(val_station->vbr_name,"vbr_name", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(val_station->vbrif_name,"vbrif_name", (kMaxLenCtrlrId + 1));
delete ikey;
}
-TEST(ReadMo, Station_valid_02) {
+TEST_F(VtnMoMgrTest, ReadMo_Station_valid_02) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi = new DalOdbcMgr();;
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
req->datatype = UPLL_DT_STATE;
req->operation = UNC_OP_READ;
req->option1 = UNC_OPT1_COUNT;
req->option2 = UNC_OPT2_NONE;
- key_vtnstation_controller_t *key_station = (key_vtnstation_controller_t*) malloc(sizeof(key_vtnstation_controller_t));
+ key_vtnstation_controller_t *key_station
+ (ZALLOC_TYPE(key_vtnstation_controller_t));
uuu::upll_strncpy(key_station->controller_name,"pfc1", (kMaxLenCtrlrId + 1));
- val_vtnstation_controller_st_t *val_station = (val_vtnstation_controller_st_t*)malloc(sizeof(val_vtnstation_controller_st_t));
+ val_vtnstation_controller_st_t *val_station
+ (ZALLOC_TYPE(val_vtnstation_controller_st_t));
uuu::upll_strncpy(val_station->vtn_name,"vtn_name", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(val_station->vbr_name,"vbr_name", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(val_station->vbrif_name,"vbrif_name", (kMaxLenCtrlrId + 1));
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.ReadMo(req, ikey, dmi));
delete ikey;
}
-TEST(ReadMo, Station_valid_03) {
+
+TEST_F(VtnMoMgrTest, ReadMo_Station_valid_03) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
req->datatype = UPLL_DT_STATE;
req->operation = UNC_OP_READ;
req->option1 = UNC_OPT1_COUNT;
req->option2 = UNC_OPT2_NONE;
- key_vtnstation_controller_t *key_station = (key_vtnstation_controller_t*) malloc(sizeof(key_vtnstation_controller_t));
+ key_vtnstation_controller_t *key_station
+ (ZALLOC_TYPE(key_vtnstation_controller_t));
uuu::upll_strncpy(key_station->controller_name,"pfc1", (kMaxLenCtrlrId + 1));
- val_vtnstation_controller_st_t *val_station = (val_vtnstation_controller_st_t*)malloc(sizeof(val_vtnstation_controller_st_t));
+ val_vtnstation_controller_st_t *val_station
+ (ZALLOC_TYPE(val_vtnstation_controller_st_t));
memset(val_station, 0, sizeof(val_vtnstation_controller_st_t));
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTNSTATION_CONTROLLER, IpctSt::kIpcStKeyVtnstationController, key_station, NULL);
delete ikey;
}
-TEST(ReadMo, mapping_valid_01) {
+TEST_F(VtnMoMgrTest, ReadMo_mapping_valid_01) {
VtnMoMgr vtn;
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::RECORD_EXISTS,kDalRcSuccess);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::RECORD_COUNT,kDalRcSuccess);
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
req->datatype = UPLL_DT_STATE;
req->operation = UNC_OP_READ;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NONE;
- key_vtn_controller_t *key_ctrlr = (key_vtn_controller_t*) malloc(sizeof(key_vtn_controller_t));
+ key_vtn_controller_t *key_ctrlr(ZALLOC_TYPE(key_vtn_controller_t));
uuu::upll_strncpy(key_ctrlr->controller_name,"controller_name1", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(key_ctrlr->domain_id,"domain_id", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(key_ctrlr->vtn_key.vtn_name,"vtn_name1", (kMaxLenCtrlrId + 1));
- val_vtn_mapping_controller_st_t *val_mapping = (val_vtn_mapping_controller_st_t*)malloc(sizeof(val_vtn_mapping_controller_st_t));
+ val_vtn_mapping_controller_st_t *val_mapping
+ (ZALLOC_TYPE(val_vtn_mapping_controller_st_t));
uuu::upll_strncpy(val_mapping->logical_port_id,"logical_port_id1", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(val_mapping->vbr_name,"vbr_name", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(val_mapping->vbrif_name,"vbrif_name", (kMaxLenCtrlrId + 1));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnMappingControllerSt, val_mapping);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN_MAPPING_CONTROLLER, IpctSt::kIpcStKeyVtnController, key_ctrlr, config_val);
+ createControllerInfo("controller_name1", UPLL_DT_RUNNING, UNC_CT_PFC);
+
EXPECT_EQ(UPLL_RC_ERR_NO_SUCH_INSTANCE, vtn.ReadMo(req, ikey, dmi));
delete ikey;
- DalOdbcMgr::clearStubData();
}
-TEST(ReadMo, mapping_valid_02) {
+TEST_F(VtnMoMgrTest, ReadMo_mapping_valid_02) {
VtnMoMgr vtn;
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::INIT,kDalRcSuccess);
DalOdbcMgr::stub_setSingleRecordExists(true);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::RECORD_EXISTS,kDalRcSuccess);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::RECORD_COUNT,kDalRcSuccess);
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
req->datatype = UPLL_DT_STATE;
req->operation = UNC_OP_READ;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NONE;
- key_vtn_controller_t *key_ctrlr = (key_vtn_controller_t*) malloc(sizeof(key_vtn_controller_t));
+ key_vtn_controller_t *key_ctrlr(ZALLOC_TYPE(key_vtn_controller_t));
uuu::upll_strncpy(key_ctrlr->controller_name,"controller_name1", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(key_ctrlr->domain_id,"domain_id", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(key_ctrlr->vtn_key.vtn_name,"vtn_name1", (kMaxLenCtrlrId + 1));
- val_vtn_mapping_controller_st_t *val_mapping = (val_vtn_mapping_controller_st_t*)malloc(sizeof(val_vtn_mapping_controller_st_t));
+ val_vtn_mapping_controller_st_t *val_mapping
+ (ZALLOC_TYPE(val_vtn_mapping_controller_st_t));
uuu::upll_strncpy(val_mapping->logical_port_id,"logical_port_id1", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(val_mapping->vbr_name,"vbr_name", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(val_mapping->vbrif_name,"vbrif_name", (kMaxLenCtrlrId + 1));
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.ReadMo(req, ikey, dmi));
delete ikey;
- DalOdbcMgr::clearStubData();
}
-TEST(ReadMo, mapping_valid_03) {
+TEST_F(VtnMoMgrTest, ReadMo_mapping_valid_03) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
req->datatype = UPLL_DT_STATE;
req->operation = UNC_OP_READ;
req->option1 = UNC_OPT1_COUNT;
req->option2 = UNC_OPT2_NONE;
- key_vtn_controller_t *key_ctrlr = (key_vtn_controller_t*) malloc(sizeof(key_vtn_controller_t));
+ key_vtn_controller_t *key_ctrlr(ZALLOC_TYPE(key_vtn_controller_t));
strcpy((char*)key_ctrlr->controller_name,(const char *)"pfc1");
strcpy((char*)key_ctrlr->domain_id,(const char *)"dom1");
- val_vtn_mapping_controller_st_t *val_mapping = (val_vtn_mapping_controller_st_t*)malloc(sizeof(val_vtn_mapping_controller_st_t));
+ val_vtn_mapping_controller_st_t *val_mapping
+ (ZALLOC_TYPE(val_vtn_mapping_controller_st_t));
strcpy((char*)val_mapping->switch_id,(const char *)"switch_id1");
strcpy((char*)val_mapping->port_name,(const char *)"port_name1");
strcpy((char*)val_mapping->vbr_name,(const char *)"vbr_name1");
EXPECT_EQ(UPLL_RC_ERR_INVALID_OPTION1, vtn.ReadMo(req, ikey, dmi));
delete ikey;
}
-TEST(ReadMo, mapping_valid_04) {
+
+TEST_F(VtnMoMgrTest, ReadMo_mapping_valid_04) {
VtnMoMgr vtn;
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::INIT,kDalRcSuccess);
DalOdbcMgr::stub_setSingleRecordExists(true);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::RECORD_EXISTS,kDalRcSuccess);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::RECORD_COUNT,kDalRcSuccess);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::SINGLE,kDalRcSuccess);
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
req->datatype = UPLL_DT_STATE;
req->operation = UNC_OP_READ;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NONE;
- key_vtn_controller_t *key_ctrlr = (key_vtn_controller_t*) malloc(sizeof(key_vtn_controller_t));
+ key_vtn_controller_t *key_ctrlr(ZALLOC_TYPE(key_vtn_controller_t));
uuu::upll_strncpy(key_ctrlr->controller_name,"controller_name1", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(key_ctrlr->domain_id,"domain_id", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(key_ctrlr->vtn_key.vtn_name,"vtn_name1", (kMaxLenCtrlrId + 1));
- val_vtn_mapping_controller_st_t *val_mapping = (val_vtn_mapping_controller_st_t*)malloc(sizeof(val_vtn_mapping_controller_st_t));
+ val_vtn_mapping_controller_st_t *val_mapping
+ (ZALLOC_TYPE(val_vtn_mapping_controller_st_t));
uuu::upll_strncpy(val_mapping->logical_port_id,"logical_port_id1", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(val_mapping->vbr_name,"vbr_name", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(val_mapping->vbrif_name,"vbrif_name", (kMaxLenCtrlrId + 1));
createControllerInfo("controller_name1",UPLL_DT_RUNNING,UNC_CT_PFC);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.ReadMo(req, ikey, dmi));
delete ikey;
- DalOdbcMgr::clearStubData();
}
-TEST(ReadMo, mapping_valid_05) {
+
+TEST_F(VtnMoMgrTest, ReadMo_mapping_valid_05) {
VtnMoMgr vtn;
DalOdbcMgr::stub_setSingleRecordExists(true);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::RECORD_EXISTS,kDalRcSuccess);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::RECORD_COUNT,kDalRcSuccess);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::SINGLE,kDalRcSuccess);
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
req->datatype = UPLL_DT_STATE;
req->operation = UNC_OP_READ;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NONE;
- key_vtn_controller_t *key_ctrlr = (key_vtn_controller_t*) malloc(sizeof(key_vtn_controller_t));
+ key_vtn_controller_t *key_ctrlr(ZALLOC_TYPE(key_vtn_controller_t));
uuu::upll_strncpy(key_ctrlr->controller_name,"controller_name1", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(key_ctrlr->domain_id,"domain_id", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(key_ctrlr->vtn_key.vtn_name,"vtn_name1", (kMaxLenCtrlrId + 1));
- val_vtn_mapping_controller_st_t *val_mapping = (val_vtn_mapping_controller_st_t*)malloc(sizeof(val_vtn_mapping_controller_st_t));
+ val_vtn_mapping_controller_st_t *val_mapping
+ (ZALLOC_TYPE(val_vtn_mapping_controller_st_t));
uuu::upll_strncpy(val_mapping->logical_port_id,"logical_port_id1", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(val_mapping->vbr_name,"vbr_name", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(val_mapping->vbrif_name,"vbrif_name", (kMaxLenCtrlrId + 1));
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.ReadMo(req, ikey, dmi));
delete ikey;
- DalOdbcMgr::clearStubData();
}
+
/* ReadSiblingMo() */
//otherKT when option1 = UNC_OPT1_DETAIL
-TEST(ReadSiblingMo, KT_VTN_detail) {
+TEST_F(VtnMoMgrTest, ReadSiblingMo_KT_VTN_detail) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
bool begin = false;
req->datatype = UPLL_DT_CANDIDATE;
req->option1 = UNC_OPT1_DETAIL;
req->option2 = UNC_OPT2_NONE;
- key_vtn_t *keyvtn = (key_vtn_t *)malloc(sizeof(key_vtn_t));
+ key_vtn_t *keyvtn(ZALLOC_TYPE(key_vtn_t));
strcpy((char*)keyvtn->vtn_name,(const char *)"vtn1");
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, keyvtn, NULL);
delete ikey;
}
-TEST(ReadSiblingMo, KT_VBRIDGE) {
+TEST_F(VtnMoMgrTest, ReadSiblingMo_KT_VBRIDGE) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
bool begin = false;
req->datatype = UPLL_DT_CANDIDATE;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NONE;
- key_vbr_t *keyvbr = (key_vbr_t *)malloc(sizeof(key_vbr_t));
+ key_vbr_t *keyvbr(ZALLOC_TYPE(key_vbr_t));
strcpy((char*)keyvbr->vbridge_name,(const char *)"vbr1");
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVbr, keyvbr, NULL);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.ReadSiblingMo(req, ikey, begin, dmi));
delete ikey;
}
+
//otherKT when option1 = UNC_OPT1_COUNT
-TEST(ReadSiblingMo, otherKT_count) {
+TEST_F(VtnMoMgrTest, ReadSiblingMo_otherKT_count) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
bool begin = false;
req->datatype = UPLL_DT_CANDIDATE;
req->option1 = UNC_OPT1_COUNT;
req->option2 = UNC_OPT2_NONE;
- key_vtn_t *keyvtn = (key_vtn_t *)malloc(sizeof(key_vtn_t));
+ key_vtn_t *keyvtn(ZALLOC_TYPE(key_vtn_t));
strcpy((char*)keyvtn->vtn_name,(const char *)"vtn1");
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, keyvtn, NULL);
}
//UNC_KT_VTN_MAPPING_CONTROLLER has wrong dt_type
-TEST(ReadSiblingMo, Mapping_invaliddatatype) {
+TEST_F(VtnMoMgrTest, ReadSiblingMo_Mapping_invaliddatatype) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
bool begin = false;
req->datatype = UPLL_DT_CANDIDATE;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NONE;
- key_vtn_controller_t *key_ctrlr = (key_vtn_controller_t*) malloc(sizeof(key_vtn_controller_t));
- val_vtn_mapping_controller_st_t *val_mapping = (val_vtn_mapping_controller_st_t*)malloc(sizeof(val_vtn_mapping_controller_st_t));
+ key_vtn_controller_t *key_ctrlr(ZALLOC_TYPE(key_vtn_controller_t));
+ val_vtn_mapping_controller_st_t *val_mapping
+ (ZALLOC_TYPE(val_vtn_mapping_controller_st_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnMappingControllerSt, val_mapping);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN_MAPPING_CONTROLLER, IpctSt::kIpcStKeyVtnController, key_ctrlr, config_val);
}
//UNC_KT_VTN_MAPPING_CONTROLLER has wrong st_num
-TEST(ReadSiblingMo, Mapping_invalidstnum) {
+TEST_F(VtnMoMgrTest, ReadSiblingMo_Mapping_invalidstnum) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
bool begin = false;
req->datatype = UPLL_DT_STATE;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NONE;
- key_vtn_controller_t *key_ctrlr = (key_vtn_controller_t*) malloc(sizeof(key_vtn_controller_t));
- val_vtn_mapping_controller_st_t *val_mapping = (val_vtn_mapping_controller_st_t*)malloc(sizeof(val_vtn_mapping_controller_st_t));
+ key_vtn_controller_t *key_ctrlr(ZALLOC_TYPE(key_vtn_controller_t));
+ val_vtn_mapping_controller_st_t *val_mapping
+ (ZALLOC_TYPE(val_vtn_mapping_controller_st_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnMappingControllerSt, val_mapping);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN_MAPPING_CONTROLLER, IpctSt::kIpcStKeyVtn, key_ctrlr, config_val);
}
//UNC_KT_VTN_MAPPING_CONTROLLER has no vtn_name
-TEST(ReadSiblingMo, Mapping_emptyvtnname) {
+TEST_F(VtnMoMgrTest, ReadSiblingMo_Mapping_emptyvtnname) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
bool begin = false;
req->datatype = UPLL_DT_STATE;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NONE;
- key_vtn_controller_t *key_ctrlr = (key_vtn_controller_t*) malloc(sizeof(key_vtn_controller_t));
- val_vtn_mapping_controller_st_t *val_mapping = (val_vtn_mapping_controller_st_t*)malloc(sizeof(val_vtn_mapping_controller_st_t));
+ key_vtn_controller_t *key_ctrlr(ZALLOC_TYPE(key_vtn_controller_t));
+ val_vtn_mapping_controller_st_t *val_mapping
+ (ZALLOC_TYPE(val_vtn_mapping_controller_st_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnMappingControllerSt, val_mapping);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN_MAPPING_CONTROLLER, IpctSt::kIpcStKeyVtnController, key_ctrlr, config_val);
strcpy((char*)key_ctrlr->vtn_key.vtn_name,(const char *)"");
}
//UNC_KT_VTN_MAPPING_CONTROLLER has no ctrlr name
-TEST(ReadSiblingMo, Mapping_noctrlrname_nodomain) {
+TEST_F(VtnMoMgrTest, ReadSiblingMo_Mapping_noctrlrname_nodomain) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
bool begin = false;
req->datatype = UPLL_DT_STATE;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NONE;
- key_vtn_controller_t *key_ctrlr = (key_vtn_controller_t*) malloc(sizeof(key_vtn_controller_t));
- val_vtn_mapping_controller_st_t *val_mapping = (val_vtn_mapping_controller_st_t*)malloc(sizeof(val_vtn_mapping_controller_st_t));
+ key_vtn_controller_t *key_ctrlr(ZALLOC_TYPE(key_vtn_controller_t));
+ val_vtn_mapping_controller_st_t *val_mapping
+ (ZALLOC_TYPE(val_vtn_mapping_controller_st_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnMappingControllerSt, val_mapping);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN_MAPPING_CONTROLLER, IpctSt::kIpcStKeyVtnController, key_ctrlr, config_val);
strcpy((char*)key_ctrlr->vtn_key.vtn_name,(const char *)"vtn1");
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, vtn.ReadSiblingMo(req, ikey, begin, dmi));
delete ikey;
}
+
//UNC_KT_VTNSTATION_CONTROLLER has wrong dt_type
-TEST(ReadSiblingMo, station_invaliddatatype) {
+TEST_F(VtnMoMgrTest, ReadSiblingMo_station_invaliddatatype) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
bool begin = false;
req->datatype = UPLL_DT_CANDIDATE;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NONE;
- key_vtnstation_controller_t *key_station = (key_vtnstation_controller_t*) malloc(sizeof(key_vtnstation_controller_t));
- val_vtnstation_controller_st_t *val_station = (val_vtnstation_controller_st_t*)malloc(sizeof(val_vtnstation_controller_st_t));
+ key_vtnstation_controller_t *key_station
+ (ZALLOC_TYPE(key_vtnstation_controller_t));
+ val_vtnstation_controller_st_t *val_station
+ (ZALLOC_TYPE(val_vtnstation_controller_st_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnstationControllerSt, val_station);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTNSTATION_CONTROLLER, IpctSt::kIpcStKeyVtnstationController, key_station, config_val);
}
//UNC_KT_VTNSTATION_CONTROLLER has wrong st_num
-TEST(ReadSiblingMo, Station_invalidstnum) {
+TEST_F(VtnMoMgrTest, ReadSiblingMo_Station_invalidstnum) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
bool begin = false;
req->datatype = UPLL_DT_STATE;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NONE;
- key_vtnstation_controller_t *key_station = (key_vtnstation_controller_t*) malloc(sizeof(key_vtnstation_controller_t));
- val_vtnstation_controller_st_t *val_station = (val_vtnstation_controller_st_t*)malloc(sizeof(val_vtnstation_controller_st_t));
+ key_vtnstation_controller_t *key_station
+ (ZALLOC_TYPE(key_vtnstation_controller_t));
+ val_vtnstation_controller_st_t *val_station
+ (ZALLOC_TYPE(val_vtnstation_controller_st_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnstationControllerSt, val_station);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTNSTATION_CONTROLLER, IpctSt::kIpcStKeyVtn, key_station, config_val);
}
//UNC_KT_VTNSTATION_CONTROLLER has no ctrlr_name
-TEST(ReadSiblingMo, Station_emptyctrlrname) {
+TEST_F(VtnMoMgrTest, ReadSiblingMo_Station_emptyctrlrname) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
bool begin = false;
req->datatype = UPLL_DT_STATE;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NONE;
- key_vtnstation_controller_t *key_station = (key_vtnstation_controller_t*) malloc(sizeof(key_vtnstation_controller_t));
- val_vtnstation_controller_st_t *val_station = (val_vtnstation_controller_st_t*)malloc(sizeof(val_vtnstation_controller_st_t));
+ key_vtnstation_controller_t *key_station
+ (ZALLOC_TYPE(key_vtnstation_controller_t));
+ val_vtnstation_controller_st_t *val_station
+ (ZALLOC_TYPE(val_vtnstation_controller_st_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnstationControllerSt, val_station);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTNSTATION_CONTROLLER, IpctSt::kIpcStKeyVtnstationController, key_station, config_val);
strcpy((char*)key_station->controller_name,(const char *)"");
}
//UNC_KT_VTNSTATION_CONTROLLER has invalid datatype
-TEST(ReadSiblingMo, Station_invaliddatatype) {
+TEST_F(VtnMoMgrTest, ReadSiblingMo_Station_invaliddatatype) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
bool begin = false;
req->datatype = UPLL_DT_CANDIDATE;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NONE;
- key_vtnstation_controller_t *key_station = (key_vtnstation_controller_t*) malloc(sizeof(key_vtnstation_controller_t));
- val_vtnstation_controller_st_t *val_station = (val_vtnstation_controller_st_t*)malloc(sizeof(val_vtnstation_controller_st_t));
+ key_vtnstation_controller_t *key_station
+ (ZALLOC_TYPE(key_vtnstation_controller_t));
+ val_vtnstation_controller_st_t *val_station
+ (ZALLOC_TYPE(val_vtnstation_controller_st_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnstationControllerSt, val_station);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTNSTATION_CONTROLLER, IpctSt::kIpcStKeyVtnstationController, key_station, config_val);
}
//UNC_KT_VTNSTATION_CONTROLLER has invalid operation
-TEST(ReadSiblingMo, Station_invalidop) {
+TEST_F(VtnMoMgrTest, ReadSiblingMo_Station_invalidop) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
bool begin = false;
req->datatype = UPLL_DT_STATE;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NONE;
- key_vtnstation_controller_t *key_station = (key_vtnstation_controller_t*) malloc(sizeof(key_vtnstation_controller_t));
- val_vtnstation_controller_st_t *val_station = (val_vtnstation_controller_st_t*)malloc(sizeof(val_vtnstation_controller_st_t));
+ key_vtnstation_controller_t *key_station
+ (ZALLOC_TYPE(key_vtnstation_controller_t));
+ val_vtnstation_controller_st_t *val_station
+ (ZALLOC_TYPE(val_vtnstation_controller_st_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnstationControllerSt, val_station);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTNSTATION_CONTROLLER, IpctSt::kIpcStKeyVtnstationController, key_station, config_val);
delete ikey;
}
-
//otherKT when option1 = UNC_OPT1_DETAIL
-TEST(ReadSiblingMo, otherKT_detail_begin) {
+TEST_F(VtnMoMgrTest, ReadSiblingMo_otherKT_detail_begin) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi = new DalOdbcMgr();;
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
bool begin = true;
req->datatype = UPLL_DT_CANDIDATE;
req->option1 = UNC_OPT1_DETAIL;
req->option2 = UNC_OPT2_NONE;
- key_vtn_t *keyvtn = (key_vtn_t *)malloc(sizeof(key_vtn_t));
+ key_vtn_t *keyvtn(ZALLOC_TYPE(key_vtn_t));
strcpy((char*)keyvtn->vtn_name,(const char *)"vtn1");
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, keyvtn, NULL);
}
//otherKT when option1 = UNC_OPT1_COUNT
-TEST(ReadSiblingMo, otherKT_count_begin) {
+TEST_F(VtnMoMgrTest, ReadSiblingMo_otherKT_count_begin) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
bool begin = true;
req->datatype = UPLL_DT_CANDIDATE;
req->option1 = UNC_OPT1_COUNT;
req->option2 = UNC_OPT2_NONE;
- key_vtn_t *keyvtn = (key_vtn_t *)malloc(sizeof(key_vtn_t));
+ key_vtn_t *keyvtn(ZALLOC_TYPE(key_vtn_t));
strcpy((char*)keyvtn->vtn_name,(const char *)"vtn1");
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, keyvtn, NULL);
}
//UNC_KT_VTN_MAPPING_CONTROLLER has wrong dt_type
-TEST(ReadSiblingMo, Mapping_invaliddatatype_begin) {
+TEST_F(VtnMoMgrTest, ReadSiblingMo_Mapping_invaliddatatype_begin) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
bool begin = true;
req->datatype = UPLL_DT_CANDIDATE;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NONE;
- key_vtn_controller_t *key_ctrlr = (key_vtn_controller_t*) malloc(sizeof(key_vtn_controller_t));
- val_vtn_mapping_controller_st_t *val_mapping = (val_vtn_mapping_controller_st_t*)malloc(sizeof(val_vtn_mapping_controller_st_t));
+ key_vtn_controller_t *key_ctrlr(ZALLOC_TYPE(key_vtn_controller_t));
+ val_vtn_mapping_controller_st_t *val_mapping
+ (ZALLOC_TYPE(val_vtn_mapping_controller_st_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnMappingControllerSt, val_mapping);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN_MAPPING_CONTROLLER, IpctSt::kIpcStKeyVtnController, key_ctrlr, config_val);
}
//UNC_KT_VTN_MAPPING_CONTROLLER has wrong st_num
-TEST(ReadSiblingMo, Mapping_invalidstnum_begin) {
+TEST_F(VtnMoMgrTest, ReadSiblingMo_Mapping_invalidstnum_begin) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
bool begin = true;
req->datatype = UPLL_DT_STATE;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NONE;
- key_vtn_controller_t *key_ctrlr = (key_vtn_controller_t*) malloc(sizeof(key_vtn_controller_t));
- val_vtn_mapping_controller_st_t *val_mapping = (val_vtn_mapping_controller_st_t*)malloc(sizeof(val_vtn_mapping_controller_st_t));
+ key_vtn_controller_t *key_ctrlr(ZALLOC_TYPE(key_vtn_controller_t));
+ val_vtn_mapping_controller_st_t *val_mapping
+ (ZALLOC_TYPE(val_vtn_mapping_controller_st_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnMappingControllerSt, val_mapping);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN_MAPPING_CONTROLLER, IpctSt::kIpcStKeyVtn, key_ctrlr, config_val);
}
//UNC_KT_VTN_MAPPING_CONTROLLER has no vtn_name
-TEST(ReadSiblingMo, Mapping_emptyvtnname_begin) {
+TEST_F(VtnMoMgrTest, ReadSiblingMo_Mapping_emptyvtnname_begin) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
bool begin = true;
req->datatype = UPLL_DT_STATE;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NONE;
- key_vtn_controller_t *key_ctrlr = (key_vtn_controller_t*) malloc(sizeof(key_vtn_controller_t));
- val_vtn_mapping_controller_st_t *val_mapping = (val_vtn_mapping_controller_st_t*)malloc(sizeof(val_vtn_mapping_controller_st_t));
+ key_vtn_controller_t *key_ctrlr(ZALLOC_TYPE(key_vtn_controller_t));
+ val_vtn_mapping_controller_st_t *val_mapping
+ (ZALLOC_TYPE(val_vtn_mapping_controller_st_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnMappingControllerSt, val_mapping);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN_MAPPING_CONTROLLER, IpctSt::kIpcStKeyVtnController, key_ctrlr, config_val);
strcpy((char*)key_ctrlr->vtn_key.vtn_name,(const char *)"");
delete ikey;
}
-TEST(ReadSiblingMo, Mapping_01) {
+TEST_F(VtnMoMgrTest, ReadSiblingMo_Mapping_01) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
bool begin = true;
req->datatype = UPLL_DT_STATE;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NONE;
- key_vtn_controller_t *key_ctrlr = (key_vtn_controller_t*) malloc(sizeof(key_vtn_controller_t));
- val_vtn_mapping_controller_st_t *val_mapping = (val_vtn_mapping_controller_st_t*)malloc(sizeof(val_vtn_mapping_controller_st_t));
+ key_vtn_controller_t *key_ctrlr(ZALLOC_TYPE(key_vtn_controller_t));
+ val_vtn_mapping_controller_st_t *val_mapping
+ (ZALLOC_TYPE(val_vtn_mapping_controller_st_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnMappingControllerSt, val_mapping);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN_MAPPING_CONTROLLER, IpctSt::kIpcStKeyVtnController, key_ctrlr, config_val);
strcpy((char*)key_ctrlr->vtn_key.vtn_name,(const char *)"vtn1");
delete ikey;
}
-TEST(ReadSiblingMo, Mapping_READ_SIBLING_BEGIN) {
+TEST_F(VtnMoMgrTest, ReadSiblingMo_Mapping_READ_SIBLING_BEGIN) {
VtnMoMgr vtn;
DalOdbcMgr::stub_setSingleRecordExists(true);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::RECORD_EXISTS,kDalRcSuccess);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::RECORD_COUNT,kDalRcSuccess);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::SINGLE,kDalRcSuccess);
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
bool begin = true;
req->datatype = UPLL_DT_STATE;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NONE;
- key_vtn_controller_t *key_ctrlr = (key_vtn_controller_t*) malloc(sizeof(key_vtn_controller_t));
+ key_vtn_controller_t *key_ctrlr(ZALLOC_TYPE(key_vtn_controller_t));
uuu::upll_strncpy(key_ctrlr->controller_name,"controller_name1", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(key_ctrlr->domain_id,"domain_id", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(key_ctrlr->vtn_key.vtn_name,"vtn_name1", (kMaxLenCtrlrId + 1));
- val_vtn_mapping_controller_st_t *val_mapping = (val_vtn_mapping_controller_st_t*)malloc(sizeof(val_vtn_mapping_controller_st_t));
+ val_vtn_mapping_controller_st_t *val_mapping
+ (ZALLOC_TYPE(val_vtn_mapping_controller_st_t));
uuu::upll_strncpy(val_mapping->logical_port_id,"logical_port_id1", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(val_mapping->vbr_name,"vbr_name", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(val_mapping->vbrif_name,"vbrif_name", (kMaxLenCtrlrId + 1));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnMappingControllerSt, val_mapping);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN_MAPPING_CONTROLLER, IpctSt::kIpcStKeyVtnController, key_ctrlr, config_val);
- EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.ReadSiblingMo(req, ikey, begin, dmi));
+ EXPECT_EQ(UPLL_RC_ERR_NO_SUCH_INSTANCE,
+ vtn.ReadSiblingMo(req, ikey, begin, dmi));
delete ikey;
- DalOdbcMgr::clearStubData();
}
-TEST(ReadSiblingMo, Mapping_READ) {
- VtnMoMgr vtn;
+
+TEST_F(VtnMoMgrTest, ReadSiblingMo_Mapping_READ) {
DalOdbcMgr::stub_setSingleRecordExists(true);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::RECORD_EXISTS,kDalRcSuccess);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::RECORD_COUNT,kDalRcSuccess);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::SINGLE,kDalRcSuccess);
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+
+ VtnMoMgr vtn;
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
bool begin = true;
req->datatype = UPLL_DT_STATE;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NONE;
- key_vtn_controller_t *key_ctrlr = (key_vtn_controller_t*) malloc(sizeof(key_vtn_controller_t));
+ key_vtn_controller_t *key_ctrlr(ZALLOC_TYPE(key_vtn_controller_t));
uuu::upll_strncpy(key_ctrlr->controller_name,"controller_name1", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(key_ctrlr->domain_id,"domain_id", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(key_ctrlr->vtn_key.vtn_name,"vtn_name1", (kMaxLenCtrlrId + 1));
- val_vtn_mapping_controller_st_t *val_mapping = (val_vtn_mapping_controller_st_t*)malloc(sizeof(val_vtn_mapping_controller_st_t));
+ val_vtn_mapping_controller_st_t *val_mapping
+ (ZALLOC_TYPE(val_vtn_mapping_controller_st_t));
uuu::upll_strncpy(val_mapping->logical_port_id,"logical_port_id1", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(val_mapping->vbr_name,"vbr_name", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(val_mapping->vbrif_name,"vbrif_name", (kMaxLenCtrlrId + 1));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnMappingControllerSt, val_mapping);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN_MAPPING_CONTROLLER, IpctSt::kIpcStKeyVtnController, key_ctrlr, config_val);
- EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.ReadSiblingMo(req, ikey, begin, dmi));
+ EXPECT_EQ(UPLL_RC_ERR_NO_SUCH_INSTANCE,
+ vtn.ReadSiblingMo(req, ikey, begin, dmi));
delete ikey;
- DalOdbcMgr::clearStubData();
}
-TEST(ReadSiblingMo, station_READ_SIBLING_BEGIN) {
+
+TEST_F(VtnMoMgrTest, ReadSiblingMo_station_READ_SIBLING_BEGIN) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
bool begin = true;
req->operation = UNC_OP_READ_SIBLING_BEGIN;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NONE;
- key_vtnstation_controller_t *key_station = (key_vtnstation_controller_t*) malloc(sizeof(key_vtnstation_controller_t));
- val_vtnstation_controller_st_t *val_station = (val_vtnstation_controller_st_t*)malloc(sizeof(val_vtnstation_controller_st_t));
+ key_vtnstation_controller_t *key_station
+ (ZALLOC_TYPE(key_vtnstation_controller_t));
+ val_vtnstation_controller_st_t *val_station
+ (ZALLOC_TYPE(val_vtnstation_controller_st_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnstationControllerSt, val_station);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTNSTATION_CONTROLLER, IpctSt::kIpcStKeyVtnstationController, key_station, config_val);
}
//UNC_KT_VTNSTATION_CONTROLLER has wrong st_num
-TEST(ReadSiblingMo, Station_invalidstnum_begin) {
+TEST_F(VtnMoMgrTest, ReadSiblingMo_Station_invalidstnum_begin) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi = new DalOdbcMgr();;
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
bool begin = true;
req->datatype = UPLL_DT_STATE;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NONE;
- key_vtnstation_controller_t *key_station = (key_vtnstation_controller_t*) malloc(sizeof(key_vtnstation_controller_t));
- val_vtnstation_controller_st_t *val_station = (val_vtnstation_controller_st_t*)malloc(sizeof(val_vtnstation_controller_st_t));
+ key_vtnstation_controller_t *key_station
+ (ZALLOC_TYPE(key_vtnstation_controller_t));
+ val_vtnstation_controller_st_t *val_station
+ (ZALLOC_TYPE(val_vtnstation_controller_st_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnstationControllerSt, val_station);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTNSTATION_CONTROLLER, IpctSt::kIpcStKeyVtn, key_station, config_val);
delete ikey;
}
-TEST(ReadSiblingMo, Station_READ_SIBLING_BEGIN_01) {
+TEST_F(VtnMoMgrTest, ReadSiblingMo_Station_READ_SIBLING_BEGIN_01) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
bool begin = true;
req->operation = UNC_OP_READ_SIBLING_BEGIN;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NONE;
- key_vtnstation_controller_t *key_station = (key_vtnstation_controller_t*) malloc(sizeof(key_vtnstation_controller_t));
- val_vtnstation_controller_st_t *val_station = (val_vtnstation_controller_st_t*)malloc(sizeof(val_vtnstation_controller_st_t));
+ key_vtnstation_controller_t *key_station
+ (ZALLOC_TYPE(key_vtnstation_controller_t));
+ val_vtnstation_controller_st_t *val_station
+ (ZALLOC_TYPE(val_vtnstation_controller_st_t));
strcpy((char*)key_station->controller_name,(const char *)"pfc11");
strcpy((char*)val_station->vtn_name,(const char *)"vtn1");
strcpy((char*)val_station->domain_id,(const char *)"dom1");
delete ikey;
}
-TEST(ReadSiblingMo, Station_READ_SIBLING_BEGIN_02) {
+TEST_F(VtnMoMgrTest, ReadSiblingMo_Station_READ_SIBLING_BEGIN_02) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
bool begin = true;
req->operation = UNC_OP_READ_SIBLING_BEGIN;
req->option2 = UNC_OPT2_NONE;
//unc_keytype_ctrtype_t ctrlrtype = UNC_CT_PFC;
- key_vtnstation_controller_t *key_station = (key_vtnstation_controller_t*) malloc(sizeof(key_vtnstation_controller_t));
- val_vtnstation_controller_st_t *val_station = (val_vtnstation_controller_st_t*)malloc(sizeof(val_vtnstation_controller_st_t));
+ key_vtnstation_controller_t *key_station
+ (ZALLOC_TYPE(key_vtnstation_controller_t));
+ val_vtnstation_controller_st_t *val_station
+ (ZALLOC_TYPE(val_vtnstation_controller_st_t));
strcpy((char*)key_station->controller_name,(const char *)"pfc11");
strcpy((char*)val_station->vtn_name,(const char *)"vtn1");
strcpy((char*)val_station->domain_id,(const char *)"dom1");
delete ikey;
}
-TEST(ReadSiblingMo, Station_READ_SIBLING_BEGIN_03) {
+TEST_F(VtnMoMgrTest, ReadSiblingMo_Station_READ_SIBLING_BEGIN_03) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
bool begin = true;
req->operation = UNC_OP_READ_SIBLING_BEGIN;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NONE;
- key_vtnstation_controller_t *key_station = (key_vtnstation_controller_t*) malloc(sizeof(key_vtnstation_controller_t));
- val_vtnstation_controller_st_t *val_station = (val_vtnstation_controller_st_t*)malloc(sizeof(val_vtnstation_controller_st_t));
+ key_vtnstation_controller_t *key_station
+ (ZALLOC_TYPE(key_vtnstation_controller_t));
+ val_vtnstation_controller_st_t *val_station
+ (ZALLOC_TYPE(val_vtnstation_controller_st_t));
strcpy((char*)key_station->controller_name,(const char *)"pfc11");
strcpy((char*)val_station->vtn_name,(const char *)"vtn1");
strcpy((char*)val_station->domain_id,(const char *)"dom1");
EXPECT_EQ(UPLL_RC_ERR_NO_SUCH_INSTANCE, vtn.ReadSiblingMo(req, ikey, begin, dmi));
delete ikey;
}
+
//UNC_KT_VTNSTATION_CONTROLLER has no ctrlr_name
-TEST(ReadSiblingMo, Station_emptyctrlrname_begin) {
+TEST_F(VtnMoMgrTest, ReadSiblingMo_Station_emptyctrlrname_begin) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
bool begin = true;
req->datatype = UPLL_DT_STATE;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NONE;
- key_vtnstation_controller_t *key_station = (key_vtnstation_controller_t*) malloc(sizeof(key_vtnstation_controller_t));
- val_vtnstation_controller_st_t *val_station = (val_vtnstation_controller_st_t*)malloc(sizeof(val_vtnstation_controller_st_t));
+ key_vtnstation_controller_t *key_station
+ (ZALLOC_TYPE(key_vtnstation_controller_t));
+ val_vtnstation_controller_st_t *val_station
+ (ZALLOC_TYPE(val_vtnstation_controller_st_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnstationControllerSt, val_station);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTNSTATION_CONTROLLER, IpctSt::kIpcStKeyVtnstationController, key_station, config_val);
- strcpy((char*)key_station->controller_name,(const char *)"");
- EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.ReadSiblingMo(req, ikey, begin, dmi)); //Bug raised already
+ EXPECT_EQ(UPLL_RC_ERR_NO_SUCH_INSTANCE,
+ vtn.ReadSiblingMo(req, ikey, begin, dmi));
delete ikey;
}
//UNC_KT_VTNSTATION_CONTROLLER has invalid operation
-TEST(ReadSiblingMo, Station_invalidop_begin) {
+TEST_F(VtnMoMgrTest, ReadSiblingMo_Station_invalidop_begin) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
bool begin = true;
req->datatype = UPLL_DT_STATE;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NONE;
- key_vtnstation_controller_t *key_station = (key_vtnstation_controller_t*) malloc(sizeof(key_vtnstation_controller_t));
- val_vtnstation_controller_st_t *val_station = (val_vtnstation_controller_st_t*)malloc(sizeof(val_vtnstation_controller_st_t));
+ key_vtnstation_controller_t *key_station
+ (ZALLOC_TYPE(key_vtnstation_controller_t));
+ val_vtnstation_controller_st_t *val_station
+ (ZALLOC_TYPE(val_vtnstation_controller_st_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnstationControllerSt, val_station);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTNSTATION_CONTROLLER, IpctSt::kIpcStKeyVtnstationController, key_station, config_val);
delete ikey;
}
-
-TEST(ReadSiblingCount, vtn) {
+TEST_F(VtnMoMgrTest, ReadSiblingCount_vtn) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi=new unc::upll::dal::DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
req->datatype = UPLL_DT_STATE;
req->operation = UNC_OP_READ_SIBLING_BEGIN;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NONE;
- key_vtn_t *key_vtn = (key_vtn_t*) malloc(sizeof(key_vtn_t));
- val_vtn_t *val_vtn = (val_vtn_t*)malloc(sizeof(val_vtn_t));
+ key_vtn_t *key_vtn(ZALLOC_TYPE(key_vtn_t));
+ val_vtn_t *val_vtn(ZALLOC_TYPE(val_vtn_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, val_vtn);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, key_vtn, config_val);
strcpy((char*)key_vtn->vtn_name,(const char *)"vtn1");
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.ReadSiblingCount(req, ikey, dmi));
delete ikey;
}
-TEST(ReadSiblingCount, vtnStation_01) {
- VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi=new unc::upll::dal::DalOdbcMgr();
+TEST_F(VtnMoMgrTest, ReadSiblingCount_vtnStation_01) {
+ VtnMoMgr vtn;
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
req->datatype = UPLL_DT_STATE;
req->operation = UNC_OP_READ_SIBLING_BEGIN;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NONE;
- key_vtnstation_controller_t *key_station = (key_vtnstation_controller_t*) malloc(sizeof(key_vtnstation_controller_t));
- val_vtnstation_controller_st_t *val_station = (val_vtnstation_controller_st_t*)malloc(sizeof(val_vtnstation_controller_st_t));
+ key_vtnstation_controller_t *key_station
+ (ZALLOC_TYPE(key_vtnstation_controller_t));
+ val_vtnstation_controller_st_t *val_station
+ (ZALLOC_TYPE(val_vtnstation_controller_st_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnstationControllerSt, val_station);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTNSTATION_CONTROLLER, IpctSt::kIpcStKeyVtnstationController, key_station, config_val);
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.ReadSiblingCount(req, ikey, dmi));
delete ikey;
}
-/* MappingvExtTovBr() */
-TEST(MappingvExtTovBr, vtnstation_02) {
+/* MappingvExtTovBr() */
+TEST_F(VtnMoMgrTest, MappingvExtTovBr_vtnstation_02) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
uint32_t count1=0;
uint32_t *count=&count1;
- key_vtnstation_controller_t *key_station = (key_vtnstation_controller_t*) malloc(sizeof(key_vtnstation_controller_t));
+ key_vtnstation_controller_t *key_station
+ (ZALLOC_TYPE(key_vtnstation_controller_t));
strcpy((char*)key_station->controller_name,(const char *)"pfc1");
- val_vtnstation_controller_st_t *val_station = (val_vtnstation_controller_st_t*)malloc(sizeof(val_vtnstation_controller_st_t));
+ val_vtnstation_controller_st_t *val_station(ZALLOC_TYPE(val_vtnstation_controller_st_t));
strcpy((char*)val_station->vtn_name,(const char *)"vtn1");
strcpy((char*)val_station->domain_id,(const char *)"dom1");
strcpy((char*)val_station->vbr_name,(const char *)"vbr_name1");
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.MappingvExtTovBr(ikey, req, dmi, count));
delete ikey;
}
-TEST(MappingvExtTovBr, vtnstation_03) {
+
+TEST_F(VtnMoMgrTest, MappingvExtTovBr_vtnstation_03) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
uint32_t count1=0;
uint32_t *count=&count1;
- key_vtnstation_controller_t *key_station = (key_vtnstation_controller_t*) malloc(sizeof(key_vtnstation_controller_t));
+ key_vtnstation_controller_t *key_station
+ (ZALLOC_TYPE(key_vtnstation_controller_t));
strcpy((char*)key_station->controller_name,(const char *)"pfc1");
- val_vtnstation_controller_st_t *val_station = (val_vtnstation_controller_st_t*)malloc(sizeof(val_vtnstation_controller_st_t));
+ val_vtnstation_controller_st_t *val_station(ZALLOC_TYPE(val_vtnstation_controller_st_t));
uuu::upll_strncpy(val_station->vtn_name,"vtn_name", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(val_station->vbr_name,"vbr_name", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(val_station->vbrif_name,"vbrif_name", (kMaxLenCtrlrId + 1));
delete ikey;
}
-TEST(MappingvExtTovBr, vtnstation_val_NULL) {
+
+TEST_F(VtnMoMgrTest, MappingvExtTovBr_vtnstation_val_NULL) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
uint32_t count1=0;
uint32_t *count=&count1;
- key_vtnstation_controller_t *key_station = (key_vtnstation_controller_t*) malloc(sizeof(key_vtnstation_controller_t));
+ key_vtnstation_controller_t *key_station
+ (ZALLOC_TYPE(key_vtnstation_controller_t));
strcpy((char*)key_station->controller_name,(const char *)"pfc1");
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnstationControllerSt, NULL);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTNSTATION_CONTROLLER, IpctSt::kIpcStKeyVtnstationController, key_station, config_val);
delete ikey;
}
-TEST(MappingvExtTovBr, vtnstation_04) {
+
+TEST_F(VtnMoMgrTest, MappingvExtTovBr_vtnstation_04) {
VtnMoMgr vtn;
DalOdbcMgr::stub_setSingleRecordExists(true);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::RECORD_EXISTS,kDalRcSuccess);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::RECORD_COUNT,kDalRcSuccess);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::SINGLE,kDalRcSuccess);
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
uint32_t count1=0;
uint32_t *count=&count1;
- key_vtnstation_controller_t *key_station = (key_vtnstation_controller_t*) malloc(sizeof(key_vtnstation_controller_t));
+ key_vtnstation_controller_t *key_station
+ (ZALLOC_TYPE(key_vtnstation_controller_t));
strcpy((char*)key_station->controller_name,(const char *)"pfc1");
- val_vtnstation_controller_st_t *val_station = (val_vtnstation_controller_st_t*)malloc(sizeof(val_vtnstation_controller_st_t));
+ val_vtnstation_controller_st_t *val_station(ZALLOC_TYPE(val_vtnstation_controller_st_t));
uuu::upll_strncpy(val_station->vtn_name,"vtn_name", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(val_station->vbr_name,"vbr_name", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(val_station->vbrif_name,"vbrif_name", (kMaxLenCtrlrId + 1));
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.MappingvExtTovBr(ikey, req, dmi, count));
delete ikey;
- DalOdbcMgr::clearStubData();
}
-TEST(MappingvExtTovBr, vtnstation_05) {
+
+TEST_F(VtnMoMgrTest, MappingvExtTovBr_vtnstation_05) {
VtnMoMgr vtn;
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::RECORD_EXISTS,kDalRcSuccess);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::RECORD_COUNT,kDalRcSuccess);
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
uint32_t count1=0;
uint32_t *count=&count1;
- key_vtnstation_controller_t *key_station = (key_vtnstation_controller_t*) malloc(sizeof(key_vtnstation_controller_t));
+ key_vtnstation_controller_t *key_station
+ (ZALLOC_TYPE(key_vtnstation_controller_t));
strcpy((char*)key_station->controller_name,(const char *)"pfc1");
- val_vtnstation_controller_st_t *val_station = (val_vtnstation_controller_st_t*)malloc(sizeof(val_vtnstation_controller_st_t));
+ val_vtnstation_controller_st_t *val_station(ZALLOC_TYPE(val_vtnstation_controller_st_t));
uuu::upll_strncpy(val_station->vtn_name,"vtn_name", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(val_station->vbr_name,"vbr_name", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(val_station->vbrif_name,"vbrif_name", (kMaxLenCtrlrId + 1));
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.MappingvExtTovBr(ikey, req, dmi, count));
delete ikey;
- DalOdbcMgr::clearStubData();
}
-TEST(MappingvExtTovBr, vtnstation_06) {
+
+TEST_F(VtnMoMgrTest, MappingvExtTovBr_vtnstation_06) {
VtnMoMgr vtn;
DalOdbcMgr::stub_setSingleRecordExists(true);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::RECORD_EXISTS,kDalRcSuccess);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::RECORD_COUNT,kDalRcSuccess);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::SINGLE,kDalRcRecordNoMore);
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
uint32_t count1=0;
uint32_t *count=&count1;
- key_vtnstation_controller_t *key_station = (key_vtnstation_controller_t*) malloc(sizeof(key_vtnstation_controller_t));
+ key_vtnstation_controller_t *key_station
+ (ZALLOC_TYPE(key_vtnstation_controller_t));
strcpy((char*)key_station->controller_name,(const char *)"pfc1");
- val_vtnstation_controller_st_t *val_station = (val_vtnstation_controller_st_t*)malloc(sizeof(val_vtnstation_controller_st_t));
+ val_vtnstation_controller_st_t *val_station(ZALLOC_TYPE(val_vtnstation_controller_st_t));
uuu::upll_strncpy(val_station->vtn_name,"vtn_name", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(val_station->vbr_name,"vbr_name", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(val_station->vbrif_name,"vbrif_name", (kMaxLenCtrlrId + 1));
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.MappingvExtTovBr(ikey, req, dmi, count));
delete ikey;
- DalOdbcMgr::clearStubData();
}
+
//when the key is UNC_KT_VTN_MAPPING_CONTROLLER and has invalid key st_num
-TEST(MappingvExtTovBr, mapping_invalidkeynum) {
+TEST_F(VtnMoMgrTest, MappingvExtTovBr_mapping_invalidkeynum) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
uint32_t count1=0;
uint32_t *count=&count1;
- key_vtn_controller_t *key_ctrlr = (key_vtn_controller_t*) malloc(sizeof(key_vtn_controller_t));
- val_vtn_mapping_controller_st_t *val_mapping = (val_vtn_mapping_controller_st_t*)malloc(sizeof(val_vtn_mapping_controller_st_t));
+ key_vtn_controller_t *key_ctrlr(ZALLOC_TYPE(key_vtn_controller_t));
+ val_vtn_mapping_controller_st_t *val_mapping
+ (ZALLOC_TYPE(val_vtn_mapping_controller_st_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnMappingControllerSt, val_mapping);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN_MAPPING_CONTROLLER, IpctSt::kIpcStValVtnstationControllerSt, key_ctrlr, config_val);
delete ikey;
}
-TEST(MappingvExtTovBr, ikey_No_value) {
+TEST_F(VtnMoMgrTest, MappingvExtTovBr_ikey_No_value) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
uint32_t count1=0;
uint32_t *count=&count1;
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.MappingvExtTovBr(ikey, req, dmi, count));
delete ikey;
}
+
//when the key is UNC_KT_VTN_MAPPING_CONTROLLER and without setting vbr valid flag
-TEST(MappingvExtTovBr, mapping_withoutvbrvalidflag) {
+TEST_F(VtnMoMgrTest, MappingvExtTovBr_mapping_withoutvbrvalidflag) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
uint32_t count1=0;
uint32_t *count=&count1;
- key_vtn_controller_t *key_ctrlr = (key_vtn_controller_t*) malloc(sizeof(key_vtn_controller_t));
- val_vtn_mapping_controller_st_t *val_mapping = (val_vtn_mapping_controller_st_t*)malloc(sizeof(val_vtn_mapping_controller_st_t));
+ key_vtn_controller_t *key_ctrlr(ZALLOC_TYPE(key_vtn_controller_t));
+ val_vtn_mapping_controller_st_t *val_mapping
+ (ZALLOC_TYPE(val_vtn_mapping_controller_st_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnMappingControllerSt, val_mapping);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN_MAPPING_CONTROLLER, IpctSt::kIpcStKeyVtnController, key_ctrlr, config_val);
}
//when the key is UNC_KT_VTN_MAPPING_CONTROLLER and with setting vbr valid flag
-TEST(MappingvExtTovBr, mapping_withoutvbrifvalidflag) {
+TEST_F(VtnMoMgrTest, MappingvExtTovBr_mapping_withoutvbrifvalidflag) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
uint32_t count1=0;
uint32_t *count=&count1;
- key_vtn_controller_t *key_ctrlr = (key_vtn_controller_t*) malloc(sizeof(key_vtn_controller_t));
- val_vtn_mapping_controller_st_t *val_mapping = (val_vtn_mapping_controller_st_t*)malloc(sizeof(val_vtn_mapping_controller_st_t));
+ key_vtn_controller_t *key_ctrlr(ZALLOC_TYPE(key_vtn_controller_t));
+ val_vtn_mapping_controller_st_t *val_mapping
+ (ZALLOC_TYPE(val_vtn_mapping_controller_st_t));
val_mapping->valid[UPLL_IDX_VBR_NAME_VMCS] = UNC_VF_VALID;
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnMappingControllerSt, val_mapping);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN_MAPPING_CONTROLLER, IpctSt::kIpcStKeyVtnController, key_ctrlr, config_val);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.MappingvExtTovBr(ikey, req, dmi, count));
delete ikey;
}
-TEST(MappingvExtTovBr, mapping_withvbrifvalidflag) {
+
+TEST_F(VtnMoMgrTest, MappingvExtTovBr_mapping_withvbrifvalidflag) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
uint32_t count1=0;
uint32_t *count=&count1;
- key_vtn_controller_t *key_ctrlr = (key_vtn_controller_t*) malloc(sizeof(key_vtn_controller_t));
- val_vtn_mapping_controller_st_t *val_mapping = (val_vtn_mapping_controller_st_t*)malloc(sizeof(val_vtn_mapping_controller_st_t));
+ key_vtn_controller_t *key_ctrlr(ZALLOC_TYPE(key_vtn_controller_t));
+ val_vtn_mapping_controller_st_t *val_mapping
+ (ZALLOC_TYPE(val_vtn_mapping_controller_st_t));
strcpy((char*)key_ctrlr->controller_name,(const char *)"pfc1");
strcpy((char*)key_ctrlr->domain_id,(const char *)"dom1");
strcpy((char*)val_mapping->switch_id,(const char *)"switch_id1");
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.MappingvExtTovBr(ikey, req, dmi, count));
delete ikey;
}
-TEST(MappingvExtTovBr, mapping_01) {
+
+TEST_F(VtnMoMgrTest, MappingvExtTovBr_mapping_01) {
VtnMoMgr vtn;
DalOdbcMgr::stub_setSingleRecordExists(true);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::RECORD_EXISTS,kDalRcSuccess);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::RECORD_COUNT,kDalRcSuccess);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::SINGLE,kDalRcSuccess);
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
uint32_t count1=0;
uint32_t *count=&count1;
- key_vtn_controller_t *key_ctrlr = (key_vtn_controller_t*) malloc(sizeof(key_vtn_controller_t));
- val_vtn_mapping_controller_st_t *val_mapping = (val_vtn_mapping_controller_st_t*)malloc(sizeof(val_vtn_mapping_controller_st_t));
+ key_vtn_controller_t *key_ctrlr(ZALLOC_TYPE(key_vtn_controller_t));
+ val_vtn_mapping_controller_st_t *val_mapping
+ (ZALLOC_TYPE(val_vtn_mapping_controller_st_t));
strcpy((char*)key_ctrlr->controller_name,(const char *)"pfc1");
strcpy((char*)key_ctrlr->domain_id,(const char *)"dom1");
strcpy((char*)val_mapping->switch_id,(const char *)"switch_id1");
val_mapping->map_type = UPLL_IF_VLAN_MAP;
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.MappingvExtTovBr(ikey, req, dmi, count));
delete ikey;
- DalOdbcMgr::clearStubData();
}
-TEST(MappingvExtTovBr, mapping_02) {
+
+TEST_F(VtnMoMgrTest, MappingvExtTovBr_mapping_02) {
VtnMoMgr vtn;
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::INIT,kDalRcSuccess);
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
uint32_t count1=0;
uint32_t *count=&count1;
- key_vtn_controller_t *key_ctrlr = (key_vtn_controller_t*) malloc(sizeof(key_vtn_controller_t));
- val_vtn_mapping_controller_st_t *val_mapping = (val_vtn_mapping_controller_st_t*)malloc(sizeof(val_vtn_mapping_controller_st_t));
+ key_vtn_controller_t *key_ctrlr(ZALLOC_TYPE(key_vtn_controller_t));
+ val_vtn_mapping_controller_st_t *val_mapping
+ (ZALLOC_TYPE(val_vtn_mapping_controller_st_t));
strcpy((char*)key_ctrlr->controller_name,(const char *)"pfc1");
strcpy((char*)key_ctrlr->domain_id,(const char *)"dom1");
strcpy((char*)val_mapping->switch_id,(const char *)"switch_id1");
val_mapping->valid[UPLL_IDX_VBR_IF_NAME_VMCS] = UNC_VF_VALID;
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnMappingControllerSt, val_mapping);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN_MAPPING_CONTROLLER, IpctSt::kIpcStKeyVtnController, key_ctrlr, config_val);
- EXPECT_EQ(UPLL_RC_SUCCESS, vtn.MappingvExtTovBr(ikey, req, dmi, count));
+ EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.MappingvExtTovBr(ikey, req, dmi, count));
delete ikey;
- DalOdbcMgr::clearStubData();
}
-TEST(MappingvExtTovBr, mapping_03) {
+
+TEST_F(VtnMoMgrTest, MappingvExtTovBr_mapping_03) {
VtnMoMgr vtn;
DalOdbcMgr::stub_setSingleRecordExists(true);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::RECORD_EXISTS,kDalRcSuccess);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::RECORD_COUNT,kDalRcSuccess);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::SINGLE,kDalRcRecordNoMore);
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
- DalDmlIntf *dmi= new DalOdbcMgr();
+ IPC_REQ_RESP_HEADER_DECL(req);
+ DalDmlIntf *dmi(getDalDmlIntf());
uint32_t count1=0;
uint32_t *count=&count1;
- key_vtn_controller_t *key_ctrlr = (key_vtn_controller_t*) malloc(sizeof(key_vtn_controller_t));
- val_vtn_mapping_controller_st_t *val_mapping = (val_vtn_mapping_controller_st_t*)malloc(sizeof(val_vtn_mapping_controller_st_t));
+ key_vtn_controller_t *key_ctrlr(ZALLOC_TYPE(key_vtn_controller_t));
+ val_vtn_mapping_controller_st_t *val_mapping
+ (ZALLOC_TYPE(val_vtn_mapping_controller_st_t));
strcpy((char*)key_ctrlr->controller_name,(const char *)"pfc1");
strcpy((char*)key_ctrlr->domain_id,(const char *)"dom1");
strcpy((char*)val_mapping->switch_id,(const char *)"switch_id1");
val_mapping->valid[UPLL_IDX_VBR_IF_NAME_VMCS] = UNC_VF_VALID;
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnMappingControllerSt, val_mapping);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN_MAPPING_CONTROLLER, IpctSt::kIpcStKeyVtnController, key_ctrlr, config_val);
- EXPECT_EQ(UPLL_RC_SUCCESS, vtn.MappingvExtTovBr(ikey, req, dmi, count));
+ EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.MappingvExtTovBr(ikey, req, dmi, count));
delete ikey;
- DalOdbcMgr::clearStubData();
}
/* ValidateMessageForVtnStnCtrlr */
//when the configkeyval is null
-TEST(ValidateMessageForVtnStnCtrlr, ikeynull) {
+TEST_F(VtnMoMgrTest, ValidateMessageForVtnStnCtrlr_ikeynull) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
+ IPC_REQ_RESP_HEADER_DECL(req);
ConfigKeyVal *ikey = NULL;
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.ValidateMessageForVtnStnCtrlr(req, ikey)); // Code has the fix now
delete ikey;
}
//when the IpcReqRespHeader is null
-TEST(ValidateMessageForVtnStnCtrlr, reqnull) {
+TEST_F(VtnMoMgrTest, ValidateMessageForVtnStnCtrlr_reqnull) {
VtnMoMgr vtn;
IpcReqRespHeader *req = NULL;
- key_vtnstation_controller_t *key_station = (key_vtnstation_controller_t*) malloc(sizeof(key_vtnstation_controller_t));
- val_vtnstation_controller_st_t *val_station = (val_vtnstation_controller_st_t*)malloc(sizeof(val_vtnstation_controller_st_t));
+ key_vtnstation_controller_t *key_station
+ (ZALLOC_TYPE(key_vtnstation_controller_t));
+ val_vtnstation_controller_st_t *val_station(ZALLOC_TYPE(val_vtnstation_controller_st_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnstationControllerSt, val_station);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTNSTATION_CONTROLLER, IpctSt::kIpcStKeyVtnstationController, key_station, config_val);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.ValidateMessageForVtnStnCtrlr(req, ikey)); //Bug 404
}
//when invalid st_num
-TEST(ValidateMessageForVtnStnCtrlr, invalid_stnum) {
+TEST_F(VtnMoMgrTest, ValidateMessageForVtnStnCtrlr_invalid_stnum) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
+ IPC_REQ_RESP_HEADER_DECL(req);
- key_vtnstation_controller_t *key_station = (key_vtnstation_controller_t*) malloc(sizeof(key_vtnstation_controller_t));
- val_vtnstation_controller_st_t *val_station = (val_vtnstation_controller_st_t*)malloc(sizeof(val_vtnstation_controller_st_t));
+ key_vtnstation_controller_t *key_station
+ (ZALLOC_TYPE(key_vtnstation_controller_t));
+ val_vtnstation_controller_st_t *val_station(ZALLOC_TYPE(val_vtnstation_controller_st_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnstationControllerSt, val_station);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTNSTATION_CONTROLLER, IpctSt::kIpcStKeyVtn, key_station, config_val);
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, vtn.ValidateMessageForVtnStnCtrlr(req, ikey));
delete ikey;
}
-TEST(ValidateMessageForVtnStnCtrlr, Invalid_option1) {
+TEST_F(VtnMoMgrTest, ValidateMessageForVtnStnCtrlr_Invalid_option1) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
+ IPC_REQ_RESP_HEADER_DECL(req);
req->datatype = UPLL_DT_STATE;
req->operation = UNC_OP_READ;
req->option1=(unc_keytype_option1_t)3;
req->option2 = UNC_OPT2_NEIGHBOR;
- key_vtnstation_controller_t *key_station = (key_vtnstation_controller_t*) malloc(sizeof(key_vtnstation_controller_t));
- val_vtnstation_controller_st_t *val_station = (val_vtnstation_controller_st_t*)malloc(sizeof(val_vtnstation_controller_st_t));
+ key_vtnstation_controller_t *key_station
+ (ZALLOC_TYPE(key_vtnstation_controller_t));
+ val_vtnstation_controller_st_t *val_station(ZALLOC_TYPE(val_vtnstation_controller_st_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnstationControllerSt, val_station);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTNSTATION_CONTROLLER, IpctSt::kIpcStKeyVtnstationController, key_station, config_val);
EXPECT_EQ(UPLL_RC_ERR_INVALID_OPTION1, vtn.ValidateMessageForVtnStnCtrlr(req, ikey));
delete ikey;
}
-TEST(ValidateMessageForVtnStnCtrlr, Invalid_option2) {
+TEST_F(VtnMoMgrTest, ValidateMessageForVtnStnCtrlr_Invalid_option2) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
+ IPC_REQ_RESP_HEADER_DECL(req);
req->datatype = UPLL_DT_STATE;
req->operation = UNC_OP_READ;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NEIGHBOR;
- key_vtnstation_controller_t *key_station = (key_vtnstation_controller_t*) malloc(sizeof(key_vtnstation_controller_t));
- val_vtnstation_controller_st_t *val_station = (val_vtnstation_controller_st_t*)malloc(sizeof(val_vtnstation_controller_st_t));
+ key_vtnstation_controller_t *key_station
+ (ZALLOC_TYPE(key_vtnstation_controller_t));
+ val_vtnstation_controller_st_t *val_station(ZALLOC_TYPE(val_vtnstation_controller_st_t));
strcpy((char*)key_station->controller_name,(const char *)"pfc1");
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnstationControllerSt, val_station);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTNSTATION_CONTROLLER, IpctSt::kIpcStKeyVtnstationController, key_station, config_val);
}
//when valid stnum with ctrlr name
-TEST(ValidateMessageForVtnStnCtrlr, valid_stnum_ctrlname) {
+TEST_F(VtnMoMgrTest, ValidateMessageForVtnStnCtrlr_valid_stnum_ctrlname) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
+ IPC_REQ_RESP_HEADER_DECL(req);
req->datatype = UPLL_DT_STATE;
- key_vtnstation_controller_t *key_station = (key_vtnstation_controller_t*) malloc(sizeof(key_vtnstation_controller_t));
- val_vtnstation_controller_st_t *val_station = (val_vtnstation_controller_st_t*)malloc(sizeof(val_vtnstation_controller_st_t));
+ key_vtnstation_controller_t *key_station
+ (ZALLOC_TYPE(key_vtnstation_controller_t));
+ val_vtnstation_controller_st_t *val_station
+ (ZALLOC_TYPE(val_vtnstation_controller_st_t));
strcpy((char*)key_station->controller_name,(const char *)"pfc1");
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnstationControllerSt, val_station);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTNSTATION_CONTROLLER, IpctSt::kIpcStKeyVtnstationController, key_station, config_val);
}
//when the configkeyval is null
-TEST(ValidateMessageForVtnMapCtrlr, ikeynull) {
+TEST_F(VtnMoMgrTest, ValidateMessageForVtnMapCtrlr_ikeynull) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
+ IPC_REQ_RESP_HEADER_DECL(req);
ConfigKeyVal *ikey = NULL;
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.ValidateMessageForVtnMapCtrlr(req, ikey)); // Code has the fix now
delete ikey;
}
//when the IpcReqRespHeader is null
-TEST(ValidateMessageForVtnMapCtrlr, reqnull) {
+TEST_F(VtnMoMgrTest, ValidateMessageForVtnMapCtrlr_reqnull) {
VtnMoMgr vtn;
IpcReqRespHeader *req = NULL;
- key_vtn_controller_t *key_ctrlr = (key_vtn_controller_t*) malloc(sizeof(key_vtn_controller_t));
- val_vtn_mapping_controller_st_t *val_mapping = (val_vtn_mapping_controller_st_t*)malloc(sizeof(val_vtn_mapping_controller_st_t));
+ key_vtn_controller_t *key_ctrlr(ZALLOC_TYPE(key_vtn_controller_t));
+ val_vtn_mapping_controller_st_t *val_mapping
+ (ZALLOC_TYPE(val_vtn_mapping_controller_st_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnMappingControllerSt, val_mapping);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN_MAPPING_CONTROLLER, IpctSt::kIpcStKeyVtnController, key_ctrlr, config_val);
strcpy((char*)key_ctrlr->vtn_key.vtn_name,(const char *)"vtn1");
}
//when invalid st_num
-TEST(ValidateMessageForVtnMapCtrlr, invalid_stnum) {
+TEST_F(VtnMoMgrTest, ValidateMessageForVtnMapCtrlr_invalid_stnum) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
+ IPC_REQ_RESP_HEADER_DECL(req);
req->datatype = UPLL_DT_STATE;
req->operation = UNC_OP_READ;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NONE;
- key_vtn_controller_t *key_ctrlr = (key_vtn_controller_t*) malloc(sizeof(key_vtn_controller_t));
- val_vtn_mapping_controller_st_t *val_mapping = (val_vtn_mapping_controller_st_t*)malloc(sizeof(val_vtn_mapping_controller_st_t));
+ key_vtn_controller_t *key_ctrlr(ZALLOC_TYPE(key_vtn_controller_t));
+ val_vtn_mapping_controller_st_t *val_mapping
+ (ZALLOC_TYPE(val_vtn_mapping_controller_st_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnMappingControllerSt, val_mapping);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN_MAPPING_CONTROLLER, IpctSt::kIpcStKeyVtnstationController, key_ctrlr, config_val);
strcpy((char*)key_ctrlr->vtn_key.vtn_name,(const char *)"vtn1");
}
//when valid stnum with empty ctrlr name and vtn name
-TEST(ValidateMessageForVtnMapCtrlr, valid_stnum_emptyctrlvtnname) {
+TEST_F(VtnMoMgrTest, ValidateMessageForVtnMapCtrlr_valid_stnum_emptyctrlvtnname) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
+ IPC_REQ_RESP_HEADER_DECL(req);
req->datatype = UPLL_DT_STATE;
req->operation = UNC_OP_READ;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NONE;
- key_vtn_controller_t *key_ctrlr = (key_vtn_controller_t*) malloc(sizeof(key_vtn_controller_t));
- val_vtn_mapping_controller_st_t *val_mapping = (val_vtn_mapping_controller_st_t*)malloc(sizeof(val_vtn_mapping_controller_st_t));
+ key_vtn_controller_t *key_ctrlr(ZALLOC_TYPE(key_vtn_controller_t));
+ val_vtn_mapping_controller_st_t *val_mapping
+ (ZALLOC_TYPE(val_vtn_mapping_controller_st_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnMappingControllerSt, val_mapping);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN_MAPPING_CONTROLLER, IpctSt::kIpcStKeyVtnController, key_ctrlr, config_val);
strcpy((char*)key_ctrlr->vtn_key.vtn_name,(const char *)"");
}
//when valid stnum with empty ctrlr name
-TEST(ValidateMessageForVtnMapCtrlr, valid_stnum_emptyctrlname) {
+TEST_F(VtnMoMgrTest, ValidateMessageForVtnMapCtrlr_valid_stnum_emptyctrlname) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
+ IPC_REQ_RESP_HEADER_DECL(req);
req->datatype = UPLL_DT_STATE;
req->operation = UNC_OP_READ;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NONE;
- key_vtn_controller_t *key_ctrlr = (key_vtn_controller_t*) malloc(sizeof(key_vtn_controller_t));
- val_vtn_mapping_controller_st_t *val_mapping = (val_vtn_mapping_controller_st_t*)malloc(sizeof(val_vtn_mapping_controller_st_t));
+ key_vtn_controller_t *key_ctrlr(ZALLOC_TYPE(key_vtn_controller_t));
+ val_vtn_mapping_controller_st_t *val_mapping
+ (ZALLOC_TYPE(val_vtn_mapping_controller_st_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnMappingControllerSt, val_mapping);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN_MAPPING_CONTROLLER, IpctSt::kIpcStKeyVtnController, key_ctrlr, config_val);
strcpy((char*)key_ctrlr->vtn_key.vtn_name,(const char *)"vtn1");
}
//when valid stnum with ctrlr name
-TEST(ValidateMessageForVtnMapCtrlr, valid_stnum_ctrlname) {
+TEST_F(VtnMoMgrTest, ValidateMessageForVtnMapCtrlr_valid_stnum_ctrlname) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
+ IPC_REQ_RESP_HEADER_DECL(req);
req->datatype = UPLL_DT_STATE;
req->operation = UNC_OP_READ;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NONE;
- key_vtn_controller_t *key_ctrlr = (key_vtn_controller_t*) malloc(sizeof(key_vtn_controller_t));
- val_vtn_mapping_controller_st_t *val_mapping = (val_vtn_mapping_controller_st_t*)malloc(sizeof(val_vtn_mapping_controller_st_t));
+ key_vtn_controller_t *key_ctrlr(ZALLOC_TYPE(key_vtn_controller_t));
+ val_vtn_mapping_controller_st_t *val_mapping
+ (ZALLOC_TYPE(val_vtn_mapping_controller_st_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnMappingControllerSt, val_mapping);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN_MAPPING_CONTROLLER, IpctSt::kIpcStKeyVtnController, key_ctrlr, config_val);
+ pfc_strlcpy(reinterpret_cast<char *>(key_ctrlr->domain_id), "dom1",
+ sizeof(key_ctrlr->domain_id));
strcpy((char*)key_ctrlr->vtn_key.vtn_name,(const char *)"vtn1");
strcpy((char*)key_ctrlr->controller_name,(const char *)"pfc1");
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.ValidateMessageForVtnMapCtrlr(req, ikey));
}
//when valid stnum with empty vtn name
-TEST(ValidateMessageForVtnMapCtrlr, valid_stnum_emptyvtnname) {
+TEST_F(VtnMoMgrTest, ValidateMessageForVtnMapCtrlr_valid_stnum_emptyvtnname) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
+ IPC_REQ_RESP_HEADER_DECL(req);
req->datatype = UPLL_DT_STATE;
req->operation = UNC_OP_READ;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NONE;
- key_vtn_controller_t *key_ctrlr = (key_vtn_controller_t*) malloc(sizeof(key_vtn_controller_t));
- val_vtn_mapping_controller_st_t *val_mapping = (val_vtn_mapping_controller_st_t*)malloc(sizeof(val_vtn_mapping_controller_st_t));
+ key_vtn_controller_t *key_ctrlr(ZALLOC_TYPE(key_vtn_controller_t));
+ val_vtn_mapping_controller_st_t *val_mapping
+ (ZALLOC_TYPE(val_vtn_mapping_controller_st_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnMappingControllerSt, val_mapping);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN_MAPPING_CONTROLLER, IpctSt::kIpcStKeyVtnController, key_ctrlr, config_val);
strcpy((char*)key_ctrlr->vtn_key.vtn_name,(const char *)"");
delete ikey;
}
-TEST(ValidateMessageForVtnMapCtrlr, invalid_option1) {
+TEST_F(VtnMoMgrTest, ValidateMessageForVtnMapCtrlr_invalid_option1) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
+ IPC_REQ_RESP_HEADER_DECL(req);
req->datatype = UPLL_DT_STATE;
req->operation = UNC_OP_READ;
req->option1 = UNC_OPT1_DETAIL;
req->option2 = UNC_OPT2_NONE;
- key_vtn_controller_t *key_ctrlr = (key_vtn_controller_t*) malloc(sizeof(key_vtn_controller_t));
- val_vtn_mapping_controller_st_t *val_mapping = (val_vtn_mapping_controller_st_t*)malloc(sizeof(val_vtn_mapping_controller_st_t));
+ key_vtn_controller_t *key_ctrlr(ZALLOC_TYPE(key_vtn_controller_t));
+ val_vtn_mapping_controller_st_t *val_mapping
+ (ZALLOC_TYPE(val_vtn_mapping_controller_st_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnMappingControllerSt, val_mapping);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN_MAPPING_CONTROLLER, IpctSt::kIpcStKeyVtnController, key_ctrlr, config_val);
strcpy((char*)key_ctrlr->vtn_key.vtn_name,(const char *)"vtn1");
delete ikey;
}
-TEST(ValidateMessageForVtnMapCtrlr, invalid_option2) {
+TEST_F(VtnMoMgrTest, ValidateMessageForVtnMapCtrlr_invalid_option2) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
+ IPC_REQ_RESP_HEADER_DECL(req);
req->datatype = UPLL_DT_STATE;
req->operation = UNC_OP_READ;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NEIGHBOR;
- key_vtn_controller_t *key_ctrlr = (key_vtn_controller_t*) malloc(sizeof(key_vtn_controller_t));
- val_vtn_mapping_controller_st_t *val_mapping = (val_vtn_mapping_controller_st_t*)malloc(sizeof(val_vtn_mapping_controller_st_t));
+ key_vtn_controller_t *key_ctrlr(ZALLOC_TYPE(key_vtn_controller_t));
+ val_vtn_mapping_controller_st_t *val_mapping
+ (ZALLOC_TYPE(val_vtn_mapping_controller_st_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnMappingControllerSt, val_mapping);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN_MAPPING_CONTROLLER, IpctSt::kIpcStKeyVtnController, key_ctrlr, config_val);
strcpy((char*)key_ctrlr->vtn_key.vtn_name,(const char *)"vtn1");
}
//when invalid datatype
-TEST(ValidateMessageForVtnMapCtrlr, invalid_datatype) {
+TEST_F(VtnMoMgrTest, ValidateMessageForVtnMapCtrlr_invalid_datatype) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
+ IPC_REQ_RESP_HEADER_DECL(req);
req->datatype = UPLL_DT_CANDIDATE;
req->operation = UNC_OP_READ;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NONE;
- key_vtn_controller_t *key_ctrlr = (key_vtn_controller_t*) malloc(sizeof(key_vtn_controller_t));
- val_vtn_mapping_controller_st_t *val_mapping = (val_vtn_mapping_controller_st_t*)malloc(sizeof(val_vtn_mapping_controller_st_t));
+ key_vtn_controller_t *key_ctrlr(ZALLOC_TYPE(key_vtn_controller_t));
+ val_vtn_mapping_controller_st_t *val_mapping
+ (ZALLOC_TYPE(val_vtn_mapping_controller_st_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnMappingControllerSt, val_mapping);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN_MAPPING_CONTROLLER, IpctSt::kIpcStKeyVtnController, key_ctrlr, config_val);
strcpy((char*)key_ctrlr->vtn_key.vtn_name,(const char *)"vtn1");
}
//when invalid operation
-TEST(ValidateMessageForVtnMapCtrlr, invalid_operation) {
+TEST_F(VtnMoMgrTest, ValidateMessageForVtnMapCtrlr_invalid_operation) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
+ IPC_REQ_RESP_HEADER_DECL(req);
req->datatype = UPLL_DT_CANDIDATE;
req->operation = UNC_OP_CREATE;
req->option1 = UNC_OPT1_NORMAL;
req->option2 = UNC_OPT2_NONE;
- key_vtn_controller_t *key_ctrlr = (key_vtn_controller_t*) malloc(sizeof(key_vtn_controller_t));
- val_vtn_mapping_controller_st_t *val_mapping = (val_vtn_mapping_controller_st_t*)malloc(sizeof(val_vtn_mapping_controller_st_t));
+ key_vtn_controller_t *key_ctrlr(ZALLOC_TYPE(key_vtn_controller_t));
+ val_vtn_mapping_controller_st_t *val_mapping
+ (ZALLOC_TYPE(val_vtn_mapping_controller_st_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnMappingControllerSt, val_mapping);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN_MAPPING_CONTROLLER, IpctSt::kIpcStKeyVtnController, key_ctrlr, config_val);
strcpy((char*)key_ctrlr->vtn_key.vtn_name,(const char *)"vtn1");
}
/* DupConfigKeyVal */
-
-TEST(DupConfigKeyVal, nullkey) {
+TEST_F(VtnMoMgrTest, DupConfigKeyVal_nullkey) {
VtnMoMgr vtn;
ConfigKeyVal *ikey = NULL;
ConfigKeyVal *okey = NULL;
delete okey;
}
-TEST(DupConfigKeyVal, nonullokey) {
+TEST_F(VtnMoMgrTest, DupConfigKeyVal_nonullokey) {
VtnMoMgr vtn;
MoMgrTables tbl=MAINTBL;
- key_vtn_t *keyvtn = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- val_vtn_t *valVtn = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ key_vtn_t *keyvtn(ZALLOC_TYPE(key_vtn_t));
+ val_vtn_t *valVtn(ZALLOC_TYPE(val_vtn_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, valVtn);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, keyvtn, config_val);
- ConfigKeyVal *okey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, keyvtn, config_val);
+
+ key_vtn_t *key1(UT_CLONE(key_vtn_t, keyvtn));
+ ConfigKeyVal *okey(new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, key1,
+ NULL));
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.DupConfigKeyVal(okey, ikey, tbl));
delete ikey;
+ delete okey;
}
-TEST(DupConfigKeyVal, novtnKT) {
+TEST_F(VtnMoMgrTest, DupConfigKeyVal_novtnKT) {
VtnMoMgr vtn;
ConfigKeyVal *okey = NULL;
MoMgrTables tbl=MAINTBL;
- key_vtn_t *keyvtn = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- val_vtn_t *valVtn = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ key_vtn_t *keyvtn(ZALLOC_TYPE(key_vtn_t));
+ val_vtn_t *valVtn(ZALLOC_TYPE(val_vtn_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, valVtn);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, keyvtn, config_val);
delete okey;
}
-TEST(DupConfigKeyVal, MAINTBL) {
+TEST_F(VtnMoMgrTest, DupConfigKeyVal_MAINTBL) {
VtnMoMgr vtn;
ConfigKeyVal *okey = NULL;
MoMgrTables tbl = MAINTBL;
- key_vtn_t *keyvtn = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- val_vtn_t *valVtn = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ key_vtn_t *keyvtn(ZALLOC_TYPE(key_vtn_t));
+ val_vtn_t *valVtn(ZALLOC_TYPE(val_vtn_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, valVtn);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, keyvtn, config_val);
delete okey;
}
-TEST(DupConfigKeyVal, MAINTBL_withST) {
+TEST_F(VtnMoMgrTest, DupConfigKeyVal_MAINTBL_withST) {
VtnMoMgr vtn;
ConfigKeyVal *okey = NULL;
MoMgrTables tbl = MAINTBL;
- key_vtn_t *keyvtn = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- val_vtn_t *valVtn = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ key_vtn_t *keyvtn(ZALLOC_TYPE(key_vtn_t));
+ val_vtn_t *valVtn(ZALLOC_TYPE(val_vtn_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, valVtn);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, keyvtn, config_val);
- val_vtn_st_t *val_vtnst = (val_vtn_st_t *)malloc(sizeof(val_vtn_st_t));
- ConfigVal *config_valst = new ConfigVal(IpctSt::kIpcStValVtnSt, val_vtnst);
+ val_db_vtn_st *val_dbvtn(ZALLOC_TYPE(val_db_vtn_st));
+ ConfigVal *config_valst = new ConfigVal(IpctSt::kIpcStValVtnSt, val_dbvtn);
config_val->AppendCfgVal(config_valst);
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.DupConfigKeyVal(okey, ikey, tbl));
delete okey;
}
-TEST(DupConfigKeyVal, RENAMETBL) {
+TEST_F(VtnMoMgrTest, DupConfigKeyVal_RENAMETBL) {
VtnMoMgr vtn;
ConfigKeyVal *okey = NULL;
MoMgrTables tbl = RENAMETBL;
- key_vtn_t *keyvtn = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- val_rename_vtn_t *val_rename_vtn = (val_rename_vtn_t *)malloc(sizeof(val_rename_vtn_t));
+ key_vtn_t *keyvtn(ZALLOC_TYPE(key_vtn_t));
+ val_rename_vtn_t *val_rename_vtn(ZALLOC_TYPE(val_rename_vtn_t));
ConfigVal *rename_val = new ConfigVal(IpctSt::kIpcStValRenameVtn, val_rename_vtn);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStValRenameVtn, keyvtn, rename_val);
}
//Negative test case
-TEST(DupConfigKeyVal, CTRLRTBL) {
+TEST_F(VtnMoMgrTest, DupConfigKeyVal_CTRLRTBL) {
VtnMoMgr vtn;
ConfigKeyVal *okey = NULL;
MoMgrTables tbl = CTRLRTBL;
- key_vtn_t *keyvtn = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- val_vtn_t *valVtn = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ key_vtn_t *keyvtn(ZALLOC_TYPE(key_vtn_t));
+ val_vtn_t *valVtn(ZALLOC_TYPE(val_vtn_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, valVtn);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, keyvtn, config_val);
}
/* MergeValidateChildren */
-
-TEST(MergeValidateChildren, nullikey) {
+TEST_F(VtnMoMgrTest, MergeValidateChildren_nullikey) {
VtnMoMgr vtn;
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
const char *ctrlr_id = NULL;
ConfigKeyVal *ikey = NULL;
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.MergeValidateChildren(ikey, ctrlr_id, ikey, dmi));
}
-TEST(MergeValidateChildren, ikey_VTN) {
+
+TEST_F(VtnMoMgrTest, MergeValidateChildren_ikey_VTN) {
VtnMoMgr vtn;
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
const char *ctrlr_id = "pfc1";
- key_vtn_t *key = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- val_vtn_t *val = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ key_vtn_t *key;
+ val_vtn_t *val;
GetKeyValStruct(key, val);
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnSt, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, key, config_val);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.MergeValidateChildren(ikey, ctrlr_id, ikey, dmi));
+
+ delete ikey;
}
-TEST(MergeValidateChildren, ikey_UNC_KT_VBRIDGE) {
+
+TEST_F(VtnMoMgrTest, MergeValidateChildren_ikey_UNC_KT_VBRIDGE) {
VtnMoMgr vtn;
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
const char *ctrlr_id = "pfc1";
- key_vtn_t *key = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- val_vtn_t *val = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ key_vtn_t *key;
+ val_vtn_t *val;
GetKeyValStruct(key, val);
- ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnSt, val);
- ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVtn, key, config_val);
- EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.MergeValidateChildren(ikey, ctrlr_id, ikey, dmi));
-}
+ key_vbr_t *vbrkey(ZALLOC_TYPE(key_vbr_t));
+ vbrkey->vtn_key = *key;
+ free(key);
+ pfc_strlcpy(reinterpret_cast<char *>(vbrkey->vbridge_name), "VBR_1",
+ sizeof(vbrkey->vbridge_name));
+ ConfigVal *config_val(new ConfigVal(IpctSt::kIpcStValVtnSt, val));
+ ConfigKeyVal *ikey(new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVtn,
+ vbrkey, config_val));
-TEST(AdaptValToVtnService, ikey_NULL) {
+ EXPECT_EQ(UPLL_RC_ERR_GENERIC,
+ vtn.MergeValidateChildren(ikey, ctrlr_id, ikey, dmi));
+}
+TEST_F(VtnMoMgrTest, AdaptValToVtnService_ikey_NULL) {
VtnMoMgr vtn;
ConfigKeyVal *ikey = NULL;
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.AdaptValToVtnService(ikey));
}
-TEST(AdaptValToVtnService, ikey) {
+TEST_F(VtnMoMgrTest, AdaptValToVtnService_ikey) {
VtnMoMgr vtn;
key_vtn *key;
val_vtn *val;
GetKeyValStruct(key, val);
- val_vtn_st *valst;
- valst = reinterpret_cast<val_vtn_st *>(malloc
- (sizeof(val_vtn_st)));
-
- memset(valst,0,sizeof(val_vtn_st));
+ val_vtn_st *valst(ZALLOC_TYPE(val_vtn_st));
valst->valid[0] = UNC_VF_VALID;
valst->oper_status = UPLL_OPER_STATUS_UP;
-
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnSt, valst);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, key, config_val);
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.AdaptValToVtnService(ikey));
delete ikey;
}
-TEST(AdaptValToVtnService, ConfigVal_NULL) {
+TEST_F(VtnMoMgrTest, AdaptValToVtnService_ConfigVal_NULL) {
VtnMoMgr vtn;
key_vtn *key;
- val_vtn *val;
-
- GetKeyValStruct(key, val);
-
- val_vtn_st *valst;
- valst = reinterpret_cast<val_vtn_st *>(malloc
- (sizeof(val_vtn_st)));
-
- memset(valst,0,sizeof(val_vtn_st));
- valst->valid[0] = UNC_VF_VALID;
- valst->oper_status = UPLL_OPER_STATUS_UP;
-
+ GetKeyStruct(key);
ConfigVal *config_val= NULL;
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, key, config_val);
delete ikey;
}
-TEST(GetControllerDomainSpan, ikey) {
-
+TEST_F(VtnMoMgrTest, GetControllerDomainSpan_ikey) {
VtnMoMgr vtn;
ConfigKeyVal *ikey = NULL;
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
upll_keytype_datatype_t dtType = UPLL_DT_STATE;
std::list<controller_domain_t> list_ctrlr_dom;
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.GetControllerDomainSpan(ikey,dtType,dmi,list_ctrlr_dom));
delete ikey;
}
-TEST(GetControllerDomainSpan, datatype_STATE) {
+TEST_F(VtnMoMgrTest, GetControllerDomainSpan_datatype_STATE) {
VtnMoMgr vtn;
ConfigKeyVal *ikey = NULL;
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
upll_keytype_datatype_t dt_type=UPLL_DT_STATE;
std::list<controller_domain_t> list_ctrlr_dom;
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.GetControllerDomainSpan(ikey,dt_type,dmi,list_ctrlr_dom));
delete ikey;
}
-TEST(GetControllerDomainSpan, ikey_01) {
-
+TEST_F(VtnMoMgrTest, GetControllerDomainSpan_ikey_01) {
VtnMoMgr vtn;
- key_vtn_t *key = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- val_vtn_t *val = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ key_vtn_t *key;
+ val_vtn_t *val;
GetKeyValStruct(key, val);
+
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::RECORD_EXISTS,kDalRcSuccess);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::EXECUTE_QUERY,kDalRcSuccess);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::MULTIPLE,kDalRcRecordNoMore);
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnSt, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, key, config_val);
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
upll_keytype_datatype_t dtType = UPLL_DT_STATE;
std::list<controller_domain_t> list_ctrlr_dom;
EXPECT_EQ(UPLL_RC_ERR_NO_SUCH_INSTANCE, vtn.GetControllerDomainSpan(ikey,dtType,dmi,list_ctrlr_dom));
delete ikey;
- DalOdbcMgr::clearStubData();
}
-TEST(GetControllerDomainSpan, ikey_02) {
- DalDmlIntf *dmi= new DalOdbcMgr();
+TEST_F(VtnMoMgrTest, GetControllerDomainSpan_ikey_02) {
+ DalDmlIntf *dmi(getDalDmlIntf());
VtnMoMgr vtn;
- key_vtn_t *key = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- val_vtn_t *val = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ key_vtn_t *key;
+ val_vtn_t *val;
GetKeyValStruct(key, val);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::MULTIPLE,kDalRcSuccess);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, key, config_val);
upll_keytype_datatype_t dtType = UPLL_DT_STATE;
std::list<controller_domain_t> list_ctrlr_dom;
- key_user_data_t *user_data = reinterpret_cast<key_user_data_t *>(malloc(sizeof(key_user_data_t)));
+ key_user_data_t *user_data(ZALLOC_TYPE(key_user_data_t));
uuu::upll_strncpy(user_data->ctrlr_id,"ctr_id", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(user_data->domain_id,"dom_id", (kMaxLenCtrlrId + 1));
ikey->set_user_data((void*)user_data);
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.GetControllerDomainSpan(ikey,dtType,dmi,list_ctrlr_dom));
delete ikey;
- DalOdbcMgr::clearStubData();
}
-TEST(GetControllerDomainSpan,default ) {
+TEST_F(VtnMoMgrTest, GetControllerDomainSpan_default) {
VtnMoMgr vtn;
ConfigKeyVal *ikey = NULL;
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
upll_keytype_datatype_t dt_type=UPLL_DT_STATE;
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.GetControllerDomainSpan(ikey,dt_type,dmi));
delete ikey;
}
-TEST(ReadSingleCtlrlStation, ikey_NULL) {
+TEST_F(VtnMoMgrTest, ReadSingleCtlrlStation_ikey_NULL) {
VtnMoMgr vtn;
ConfigKeyVal *ikey = NULL;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
+ IPC_REQ_RESP_HEADER_DECL(req);
uint32_t ckv_count1=1;
uint32_t *rec_count=&ckv_count1;
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.ReadSingleCtlrlStation(req,ikey,dmi,rec_count));
delete ikey;
}
-TEST(ReadSingleCtlrlStation, ikey_proper) {
+TEST_F(VtnMoMgrTest, ReadSingleCtlrlStation_ikey_proper) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
+ IPC_REQ_RESP_HEADER_DECL(req);
uint32_t ckv_count1=1;
uint32_t *rec_count=&ckv_count1;
- DalDmlIntf *dmi= new DalOdbcMgr();
- key_vtn_t *keyvtn = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- val_vtn_t *valVtn = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ DalDmlIntf *dmi(getDalDmlIntf());
+ key_vtn_t *keyvtn(ZALLOC_TYPE(key_vtn_t));
+ val_vtn_t *valVtn(ZALLOC_TYPE(val_vtn_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, valVtn);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, keyvtn, config_val);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.ReadSingleCtlrlStation(req,ikey,dmi,rec_count));
delete ikey;
}
-TEST(ReadSingleCtlrlStation, val_vtnstation_valid) {
+TEST_F(VtnMoMgrTest, ReadSingleCtlrlStation_val_vtnstation_valid) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
+ IPC_REQ_RESP_HEADER_DECL(req);
uint32_t ckv_count1=1;
uint32_t *rec_count=&ckv_count1;
- DalDmlIntf *dmi= new DalOdbcMgr();
-
- key_vtnstation_controller_t *keyvtnsta = (key_vtnstation_controller_t *)malloc(sizeof(key_vtnstation_controller_t));
+ DalDmlIntf *dmi(getDalDmlIntf());
+ key_vtnstation_controller_t *keyvtnsta
+ (ZALLOC_TYPE(key_vtnstation_controller_t));
uuu::upll_strncpy(keyvtnsta->controller_name,"controller_name", (kMaxLenCtrlrId + 1));
- val_vtnstation_controller_st *valVtnsta = (val_vtnstation_controller_st *)malloc(sizeof(val_vtnstation_controller_st));
+ val_vtnstation_controller_st *valVtnsta
+ (ZALLOC_TYPE(val_vtnstation_controller_st));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnstationControllerSt, valVtnsta);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTNSTATION_CONTROLLER, IpctSt::kIpcStValVtnstationControllerSt, keyvtnsta, config_val);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.ReadSingleCtlrlStation(req,ikey,dmi,rec_count));
delete ikey;
}
-TEST(ReadSingleCtlrlStation, val_vtnstation_ALL_VALID_01) {
+TEST_F(VtnMoMgrTest, ReadSingleCtlrlStation_val_vtnstation_ALL_VALID_01) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
+ IPC_REQ_RESP_HEADER_DECL(req);
uint32_t ckv_count1=1;
uint32_t *rec_count=&ckv_count1;
- DalDmlIntf *dmi=new unc::upll::dal::DalOdbcMgr();
-
- key_vtnstation_controller_t *keyvtnsta = (key_vtnstation_controller_t *)malloc(sizeof(key_vtnstation_controller_t));
+ DalDmlIntf *dmi(getDalDmlIntf());
+ key_vtnstation_controller_t *keyvtnsta
+ (ZALLOC_TYPE(key_vtnstation_controller_t));
uuu::upll_strncpy(keyvtnsta->controller_name,"controller_name", (kMaxLenCtrlrId + 1));
- val_vtnstation_controller_st *valVtnsta = (val_vtnstation_controller_st *)malloc(sizeof(val_vtnstation_controller_st));
+ val_vtnstation_controller_st *valVtnsta
+ (ZALLOC_TYPE(val_vtnstation_controller_st));
uuu::upll_strncpy(valVtnsta->vtn_name,"vtn_name", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(valVtnsta->vbr_name,"vbr_name", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(valVtnsta->vbrif_name,"vbrif_name", (kMaxLenCtrlrId + 1));
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.ReadSingleCtlrlStation(req,ikey,dmi,rec_count));
delete ikey;
}
-TEST(ReadSingleCtlrlStation, val_vtnstation_ALL_VALID_02) {
+TEST_F(VtnMoMgrTest, ReadSingleCtlrlStation_val_vtnstation_ALL_VALID_02) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
+ IPC_REQ_RESP_HEADER_DECL(req);
DalOdbcMgr::stub_setSingleRecordExists(true);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::RECORD_EXISTS,kDalRcSuccess);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::RECORD_COUNT,kDalRcSuccess);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::SINGLE,kDalRcSuccess);
uint32_t ckv_count1=1;
uint32_t *rec_count=&ckv_count1;
- DalDmlIntf *dmi=new unc::upll::dal::DalOdbcMgr();
-
- key_vtnstation_controller_t *keyvtnsta = (key_vtnstation_controller_t *)malloc(sizeof(key_vtnstation_controller_t));
+ DalDmlIntf *dmi(getDalDmlIntf());
+ key_vtnstation_controller_t *keyvtnsta
+ (ZALLOC_TYPE(key_vtnstation_controller_t));
uuu::upll_strncpy(keyvtnsta->controller_name,"controller_name", (kMaxLenCtrlrId + 1));
- val_vtnstation_controller_st *valVtnsta = (val_vtnstation_controller_st *)malloc(sizeof(val_vtnstation_controller_st));
+ val_vtnstation_controller_st *valVtnsta
+ (ZALLOC_TYPE(val_vtnstation_controller_st));
uuu::upll_strncpy(valVtnsta->vtn_name,"vtn_name", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(valVtnsta->vbr_name,"vbr_name", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(valVtnsta->vbrif_name,"vbrif_name", (kMaxLenCtrlrId + 1));
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTNSTATION_CONTROLLER, IpctSt::kIpcStValVtnstationControllerSt, keyvtnsta, config_val);
EXPECT_EQ(UPLL_RC_ERR_NO_SUCH_INSTANCE, vtn.ReadSingleCtlrlStation(req,ikey,dmi,rec_count));
delete ikey;
- DalOdbcMgr::clearStubData();
}
-TEST(ReadSingleCtlrlStation, vtn_valid_01) {
+TEST_F(VtnMoMgrTest, ReadSingleCtlrlStation_vtn_valid_01) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
+ IPC_REQ_RESP_HEADER_DECL(req);
uint32_t ckv_count1=1;
uint32_t *rec_count=&ckv_count1;
- DalDmlIntf *dmi=new unc::upll::dal::DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
- key_vtnstation_controller_t *keyvtnsta = (key_vtnstation_controller_t *)malloc(sizeof(key_vtnstation_controller_t));
+ key_vtnstation_controller_t *keyvtnsta
+ (ZALLOC_TYPE(key_vtnstation_controller_t));
uuu::upll_strncpy(keyvtnsta->controller_name,"controller_name", (kMaxLenCtrlrId + 1));
- val_vtnstation_controller_st *valVtnsta = (val_vtnstation_controller_st *)malloc(sizeof(val_vtnstation_controller_st));
-
+ val_vtnstation_controller_st *valVtnsta
+ (ZALLOC_TYPE(val_vtnstation_controller_st));
uuu::upll_strncpy(valVtnsta->vtn_name,"vtn_name", (kMaxLenCtrlrId + 1));
valVtnsta->valid[UPLL_IDX_VTN_NAME_VSCS] = UNC_VF_VALID;
uuu::upll_strncpy(valVtnsta->vbr_name,"vbr_name", (kMaxLenCtrlrId + 1));
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.ReadSingleCtlrlStation(req,ikey,dmi,rec_count));
delete ikey;
}
-TEST(ReadSingleCtlrlStation, vtn_valid_02) {
+TEST_F(VtnMoMgrTest, ReadSingleCtlrlStation_vtn_valid_02) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
+ IPC_REQ_RESP_HEADER_DECL(req);
uint32_t ckv_count1=1;
uint32_t *rec_count=&ckv_count1;
- DalDmlIntf *dmi=new unc::upll::dal::DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
- key_vtnstation_controller_t *keyvtnsta = (key_vtnstation_controller_t *)malloc(sizeof(key_vtnstation_controller_t));
+ key_vtnstation_controller_t *keyvtnsta
+ (ZALLOC_TYPE(key_vtnstation_controller_t));
uuu::upll_strncpy(keyvtnsta->controller_name,"controller_name", (kMaxLenCtrlrId + 1));
- val_vtnstation_controller_st *valVtnsta = (val_vtnstation_controller_st *)malloc(sizeof(val_vtnstation_controller_st));
+ val_vtnstation_controller_st *valVtnsta
+ (ZALLOC_TYPE(val_vtnstation_controller_st));
uuu::upll_strncpy(valVtnsta->vtn_name,"vtn_name", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(valVtnsta->domain_id,"domain_id1", (kMaxLenCtrlrId + 1));
valVtnsta->valid[UPLL_IDX_VTN_NAME_VSCS] = UNC_VF_VALID;
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.ReadSingleCtlrlStation(req,ikey,dmi,rec_count));
delete ikey;
}
-TEST(ReadSingleCtlrlStation, vtn_valid_03) {
+TEST_F(VtnMoMgrTest, ReadSingleCtlrlStation_vtn_valid_03) {
VtnMoMgr vtn;
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::SINGLE,kDalRcSuccess);
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
+ IPC_REQ_RESP_HEADER_DECL(req);
uint32_t ckv_count1=1;
uint32_t *rec_count=&ckv_count1;
- DalDmlIntf *dmi=new unc::upll::dal::DalOdbcMgr();
-
- key_vtnstation_controller_t *keyvtnsta = (key_vtnstation_controller_t *)malloc(sizeof(key_vtnstation_controller_t));
- uuu::upll_strncpy(keyvtnsta->controller_name,"controller_name", (kMaxLenCtrlrId + 1));
- val_vtnstation_controller_st *valVtnsta = (val_vtnstation_controller_st *)malloc(sizeof(val_vtnstation_controller_st));
+ DalDmlIntf *dmi(getDalDmlIntf());
+ key_vtnstation_controller_t *keyvtnsta
+ (ZALLOC_TYPE(key_vtnstation_controller_t));
+ val_vtnstation_controller_st *valVtnsta
+ (ZALLOC_TYPE(val_vtnstation_controller_st));
uuu::upll_strncpy(valVtnsta->vtn_name,"vtn_name", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(valVtnsta->domain_id,"domain_id1", (kMaxLenCtrlrId + 1));
valVtnsta->valid[UPLL_IDX_VTN_NAME_VSCS] = UNC_VF_VALID;
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTNSTATION_CONTROLLER, IpctSt::kIpcStValVtnstationControllerSt, keyvtnsta, config_val);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.ReadSingleCtlrlStation(req,ikey,dmi,rec_count));
delete ikey;
- DalOdbcMgr::clearStubData();
}
-TEST(ReadSingleCtlrlVtnMapping, ikey) {
+TEST_F(VtnMoMgrTest, ReadSingleCtlrlVtnMapping_ikey) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
+ IPC_REQ_RESP_HEADER_DECL(req);
uint32_t ckv_count1=1;
uint32_t *ckv_count=&ckv_count1;
- key_vtn_t *keyvtn = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- val_vtn_t *valVtn = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ key_vtn_t *keyvtn(ZALLOC_TYPE(key_vtn_t));
+ val_vtn_t *valVtn(ZALLOC_TYPE(val_vtn_t));
+ req->rep_count = 2;
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, valVtn);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, keyvtn, config_val);
- DalDmlIntf *dmi=new unc::upll::dal::DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.ReadSingleCtlrlVtnMapping(req,ikey,dmi,ckv_count));
delete ikey;
}
-TEST(ReadSingleCtlrlVtnMapping, ikey_Proper) {
+TEST_F(VtnMoMgrTest, ReadSingleCtlrlVtnMapping_ikey_Proper) {
VtnMoMgr vtn;
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
+ IPC_REQ_RESP_HEADER_DECL(req);
uint32_t ckv_count1=1;
uint32_t *ckv_count=&ckv_count1;
req->rep_count = 2;
- key_vtn_t *keyvtn = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- val_vtn_t *valVtn = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ key_vtn_t *keyvtn;
+ val_vtn_t *valVtn;
GetKeyValStruct(keyvtn,valVtn);
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, valVtn);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, keyvtn, config_val);
- DalDmlIntf *dmi=new unc::upll::dal::DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.ReadSingleCtlrlVtnMapping(req,ikey,dmi,ckv_count));
delete ikey;
}
-TEST(ReadSingleCtlrlVtnMapping, ikey_Proper_03) {
-
+TEST_F(VtnMoMgrTest, ReadSingleCtlrlVtnMapping_ikey_Proper_03) {
VtnMoMgr vtn;
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::INIT,kDalRcSuccess);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::MULTIPLE,kDalRcRecordNoMore);
- IpcReqRespHeader *req = reinterpret_cast<IpcReqRespHeader*>(malloc(sizeof(IpcReqRespHeader)));
+ IPC_REQ_RESP_HEADER_DECL(req);
uint32_t ckv_count1=1;
uint32_t *ckv_count=&ckv_count1;
req->rep_count = 2;
- key_vtn_t *keyvtn = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- val_vtn_t *valVtn = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ key_vtn_t *keyvtn;
+ val_vtn_t *valVtn;
GetKeyValStruct(keyvtn,valVtn);
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, valVtn);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, keyvtn, config_val);
- DalDmlIntf *dmi=new unc::upll::dal::DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
EXPECT_EQ(UPLL_RC_ERR_NO_SUCH_INSTANCE, vtn.ReadSingleCtlrlVtnMapping(req,ikey,dmi,ckv_count));
delete ikey;
- DalOdbcMgr::clearStubData();
}
-TEST(MergeValidate, MergeValidate_Error) {
+TEST_F(VtnMoMgrTest, MergeValidate_Error) {
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::INIT,kDalRcSuccess);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::MULTIPLE,kDalRcSuccess);
map.insert(std::make_pair(0,kDalRcSuccess));
DalOdbcMgr::stub_setNextRecordResultCodes(map);
VtnMoMgr vtn;
- key_vtn_t *keyvtn = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- val_vtn_t *valVtn = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ key_vtn_t *keyvtn;
+ val_vtn_t *valVtn;
const char *ctrlr_id = "Controller1";
GetKeyValStruct(keyvtn,valVtn);
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, valVtn);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, keyvtn, config_val);
- DalDmlIntf *dmi = new DalOdbcMgr();;
+ DalDmlIntf *dmi(getDalDmlIntf());
EXPECT_EQ(UPLL_RC_ERR_GENERIC,vtn.MergeValidate(UNC_KT_VTN, ctrlr_id,
ikey, dmi));
delete ikey;
- DalOdbcMgr::clearStubData();
}
-TEST(MergeValidate, MergeValidate_success) {
+TEST_F(VtnMoMgrTest, MergeValidate_success) {
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::INIT,kDalRcSuccess);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::MULTIPLE,kDalRcSuccess);
map.insert(std::make_pair(0,kDalRcSuccess));
DalOdbcMgr::stub_setNextRecordResultCodes(map);
VtnMoMgr vtn;
- key_vtn_t *key = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- val_vtn_t *val = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ key_vtn_t *key;
+ val_vtn_t *val;
GetKeyValStruct(key, val);
const char *ctrlr_id = "Controller1";
- GetKeyValStruct(key,val);
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVtn, key, config_val);
- DalDmlIntf *dmi = new DalOdbcMgr();;
+ DalDmlIntf *dmi(getDalDmlIntf());
EXPECT_EQ(UPLL_RC_ERR_GENERIC,vtn.MergeValidate(UNC_KT_VTN, ctrlr_id,
ikey, dmi));
- DalOdbcMgr::clearStubData();
delete ikey;
}
-TEST(ControllerStatusHandler, ControllerStatusHandler_01) {
+
+TEST_F(VtnMoMgrTest, ControllerStatusHandler_01) {
bool operstatus=true;
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::MULTIPLE,kDalRcSuccess);
std::map<uint8_t,DalResultCode> map;
map.insert(std::make_pair(0,kDalRcSuccess));
DalOdbcMgr::stub_setNextRecordResultCodes(map);
VtnMoMgr vtn;
- key_vtn_t *keyvtn = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- val_vtn_t *valVtn = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ key_vtn_t *keyvtn;
+ val_vtn_t *valVtn;
GetKeyValStruct(keyvtn,valVtn);
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, valVtn);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, keyvtn, config_val);
- DalDmlIntf *dmi = new DalOdbcMgr();;
+ DalDmlIntf *dmi(getDalDmlIntf());
- uint8_t *ctr_id1 = (uint8_t *)malloc(32);
- memset(ctr_id1, '\0', 32);
+ uint8_t *ctr_id1 = ZALLOC_ARRAY(uint8_t, 32);
memcpy(ctr_id1, "Controller1", 11);
EXPECT_EQ(UPLL_RC_ERR_GENERIC,vtn.ControllerStatusHandler( ctr_id1,
dmi, operstatus));
- DalOdbcMgr::clearStubData();
delete ikey;
+ free(ctr_id1);
}
-TEST(ControllerStatusHandler, ControllerStatusHandler_02) {
+
+TEST_F(VtnMoMgrTest, ControllerStatusHandler_02) {
bool operstatus=true;
VtnMoMgr vtn;
- key_vtn_t *keyvtn = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- val_vtn_t *valVtn = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ key_vtn_t *keyvtn;
+ val_vtn_t *valVtn;
GetKeyValStruct(keyvtn,valVtn);
+
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, valVtn);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, keyvtn, config_val);
- DalDmlIntf *dmi = new DalOdbcMgr();;
+ DalDmlIntf *dmi(getDalDmlIntf());
uint8_t *ctrlr_id=NULL;
EXPECT_EQ(UPLL_RC_ERR_GENERIC,vtn.ControllerStatusHandler( ctrlr_id,
dmi, operstatus));
delete ikey;
}
-TEST(ControllerStatusHandler, ControllerStatusHandler_03) {
+
+TEST_F(VtnMoMgrTest, ControllerStatusHandler_03) {
bool operstatus=true;
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::INIT,kDalRcSuccess);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::MULTIPLE,kDalRcSuccess);
map.insert(std::make_pair(0,kDalRcSuccess));
DalOdbcMgr::stub_setNextRecordResultCodes(map);
VtnMoMgr vtn;
- key_vtn_t *keyvtn = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- val_vtn_t *valVtn = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ key_vtn_t *keyvtn;
+ val_vtn_t *valVtn;
+ GetKeyValStruct(keyvtn,valVtn);
+
+ ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, valVtn);
+ ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, keyvtn, config_val);
+ DalDmlIntf *dmi(getDalDmlIntf());
+ uint8_t *ctr_id1 = ZALLOC_ARRAY(uint8_t, 32);
+ memcpy(ctr_id1, "Controller1", 11);
+ EXPECT_EQ(UPLL_RC_ERR_GENERIC,vtn.ControllerStatusHandler( ctr_id1,
+ dmi, operstatus));
+ delete ikey;
+ free(ctr_id1);
+}
+
+TEST_F(VtnMoMgrTest, ControllerStatusHandler_04) {
+ bool operstatus=true;
+ VtnMoMgr vtn;
+ key_vtn_t *keyvtn;
+ val_vtn_t *valVtn;
GetKeyValStruct(keyvtn,valVtn);
+
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, valVtn);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, keyvtn, config_val);
- DalDmlIntf *dmi = new DalOdbcMgr();;
- uint8_t *ctr_id1 = (uint8_t *)malloc(32);
- memset(ctr_id1, '\0', 32);
+ DalDmlIntf *dmi(getDalDmlIntf());
+ uint8_t *ctr_id1 = ZALLOC_ARRAY(uint8_t, 32);
memcpy(ctr_id1, "Controller1", 11);
EXPECT_EQ(UPLL_RC_ERR_GENERIC,vtn.ControllerStatusHandler( ctr_id1,
dmi, operstatus));
delete ikey;
- DalOdbcMgr::clearStubData();
+ free(ctr_id1);
}
-TEST(IsReferenced, IsReferenced_01) {
+TEST_F(VtnMoMgrTest, IsReferenced_01) {
VtnMoMgr vtn;
upll_keytype_datatype_t dt_type=UPLL_DT_STATE;
- key_vtn_t *keyvtn = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- val_vtn_t *valVtn = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ key_vtn_t *keyvtn(ZALLOC_TYPE(key_vtn_t));
+ val_vtn_t *valVtn(ZALLOC_TYPE(val_vtn_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, valVtn);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, keyvtn, config_val);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.IsReferenced(ikey,dt_type,dmi));
delete ikey;
}
-TEST(IsReferenced, IsReferenced_02) {
+TEST_F(VtnMoMgrTest, IsReferenced_02) {
VtnMoMgr vtn;
upll_keytype_datatype_t dt_type=UPLL_DT_STATE;
- key_vtn_t *keyvtn = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- val_vtn_t *valVtn = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ key_vtn_t *keyvtn(ZALLOC_TYPE(key_vtn_t));
+ val_vtn_t *valVtn(ZALLOC_TYPE(val_vtn_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, valVtn);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, keyvtn, config_val);
- DalDmlIntf *dmi=new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.IsReferenced(ikey,dt_type,dmi));
delete ikey;
}
-TEST(IsReferenced, IsReferenced_03) {
+TEST_F(VtnMoMgrTest, IsReferenced_03) {
VtnMoMgr vtn;
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::MULTIPLE,kDalRcSuccess);
map.insert(std::make_pair(0,kDalRcSuccess));
DalOdbcMgr::stub_setNextRecordResultCodes(map);
upll_keytype_datatype_t dt_type=UPLL_DT_STATE;
- key_vtn_t *keyvtn = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- val_vtn_t *valVtn = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ key_vtn_t *keyvtn(ZALLOC_TYPE(key_vtn_t));
+ val_vtn_t *valVtn(ZALLOC_TYPE(val_vtn_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, valVtn);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, keyvtn, config_val);
- DalDmlIntf *dmi=new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
EXPECT_EQ(UPLL_RC_ERR_CFG_SEMANTIC, vtn.IsReferenced(ikey,dt_type,dmi));
delete ikey;
- DalOdbcMgr::clearStubData();
}
-TEST(ControllerStatusHandler, ControllerStatusHandler_04) {
- bool operstatus=true;
- VtnMoMgr vtn;
- key_vtn_t *keyvtn = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- val_vtn_t *valVtn = (val_vtn_t *)malloc(sizeof(val_vtn_t));
- GetKeyValStruct(keyvtn,valVtn);
- ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, valVtn);
- ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, keyvtn, config_val);
- DalDmlIntf *dmi = new DalOdbcMgr();;
- uint8_t *ctr_id1 = (uint8_t *)malloc(32);
- memset(ctr_id1, '\0', 32);
- memcpy(ctr_id1, "Controller1", 11);
- EXPECT_EQ(UPLL_RC_ERR_GENERIC,vtn.ControllerStatusHandler( ctr_id1,
- dmi, operstatus));
- delete ikey;
-}
-TEST(UpdateOperStatus, UpdateOperStatus_01) {
+TEST_F(VtnMoMgrTest, UpdateOperStatus_01) {
VtnMoMgr vtn;
state_notification notification=kCtrlrReconnect;
- key_vtn_t *keyvtn = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- val_vtn_t *valVtn = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ key_vtn_t *keyvtn;
+ val_vtn_t *valVtn;
GetKeyValStruct(keyvtn,valVtn);
+
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, valVtn);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, keyvtn, config_val);
- DalDmlIntf *dmi = new DalOdbcMgr();;
- uint8_t *ctr_id1 = (uint8_t *)malloc(32);
- memset(ctr_id1, '\0', 32);
+ DalDmlIntf *dmi(getDalDmlIntf());
+ uint8_t *ctr_id1 = ZALLOC_ARRAY(uint8_t, 32);
memcpy(ctr_id1, "Controller1", 11);
EXPECT_EQ(UPLL_RC_ERR_GENERIC,vtn.UpdateOperStatus( ikey,
dmi, notification, true));
delete ikey;
+ free(ctr_id1);
}
-TEST(UpdateOperStatus, UpdateOperStatus_02) {
+
+TEST_F(VtnMoMgrTest, UpdateOperStatus_02) {
VtnMoMgr vtn;
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::MULTIPLE,kDalRcSuccess);
map.insert(std::make_pair(1,kDalRcRecordNoMore));
map.insert(std::make_pair(0,kDalRcSuccess));
state_notification notification=kPortFaultReset;
- key_vtn_t *keyvtn = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- val_vtn_t *valVtn = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ key_vtn_t *keyvtn;
+ val_vtn_t *valVtn;
GetKeyValStruct(keyvtn,valVtn);
+
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, valVtn);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, keyvtn, config_val);
- DalDmlIntf *dmi = new DalOdbcMgr();;
- key_user_data_t *user_data = reinterpret_cast<key_user_data_t *>(malloc(sizeof(key_user_data_t)));
+ DalDmlIntf *dmi(getDalDmlIntf());
+ key_user_data_t *user_data(ZALLOC_TYPE(key_user_data_t));
uuu::upll_strncpy(user_data->ctrlr_id,"Controller1", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(user_data->domain_id,"dom_id", (kMaxLenCtrlrId + 1));
ikey->set_user_data((void*)user_data);
EXPECT_EQ(UPLL_RC_ERR_GENERIC,vtn.UpdateOperStatus( ikey,
dmi, notification, true));
delete ikey;
- DalOdbcMgr::clearStubData();
}
-TEST(UpdateOperStatus, UpdateOperStatus_03) {
+
+TEST_F(VtnMoMgrTest, UpdateOperStatus_03) {
VtnMoMgr vtn;
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::MULTIPLE,kDalRcRecordNoMore);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::CREATE_RECORD,kDalRcSuccess);
map.insert(std::make_pair(1,kDalRcRecordNoMore));
map.insert(std::make_pair(0,kDalRcSuccess));
state_notification notification=kPortFaultReset;
- key_vtn_t *keyvtn = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- val_vtn_t *valVtn = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ key_vtn_t *keyvtn;
+ val_vtn_t *valVtn;
GetKeyValStruct(keyvtn,valVtn);
+
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, valVtn);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, keyvtn, config_val);
- DalDmlIntf *dmi = new DalOdbcMgr();;
- key_user_data_t *user_data = reinterpret_cast<key_user_data_t *>(malloc(sizeof(key_user_data_t)));
+ DalDmlIntf *dmi(getDalDmlIntf());
+ key_user_data_t *user_data(ZALLOC_TYPE(key_user_data_t));
uuu::upll_strncpy(user_data->ctrlr_id,"Controller1", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(user_data->domain_id,"dom_id", (kMaxLenCtrlrId + 1));
ikey->set_user_data((void*)user_data);
EXPECT_EQ(UPLL_RC_ERR_NO_SUCH_INSTANCE,vtn.UpdateOperStatus( ikey, dmi, notification, true));
delete ikey;
- DalOdbcMgr::clearStubData();
}
-TEST(GetRenamedUncKey, GetRenamedUncKey_01) {
+
+TEST_F(VtnMoMgrTest, GetRenamedUncKey_01) {
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::INIT,kDalRcSuccess);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::SINGLE ,kDalRcSuccess);
VtnMoMgr vtn;
upll_keytype_datatype_t dt_type = UPLL_DT_CANDIDATE;
- DalDmlIntf *dmi = new DalOdbcMgr();
- uint8_t *ctr_id1 = (uint8_t *)malloc(32);
- memset(ctr_id1, '\0', 32);
+ DalDmlIntf *dmi(getDalDmlIntf());
+ uint8_t *ctr_id1 = ZALLOC_ARRAY(uint8_t, 32);
memcpy(ctr_id1, "Controller1", 11);
- key_vtn_t *keyvtn = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- val_vtn_t *valVtn = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ key_vtn_t *keyvtn(ZALLOC_TYPE(key_vtn_t));
+ val_vtn_t *valVtn(ZALLOC_TYPE(val_vtn_t));
+
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, valVtn);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, keyvtn, config_val);
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.GetRenamedUncKey(ikey,dt_type,dmi,ctr_id1));
delete ikey;
- DalOdbcMgr::clearStubData();
+ free(ctr_id1);
}
-TEST(GetRenamedUncKey, GetRenamedUncKey_02) {
+TEST_F(VtnMoMgrTest, GetRenamedUncKey_02) {
VtnMoMgr vtn;
upll_keytype_datatype_t dt_type = UPLL_DT_CANDIDATE;
- DalDmlIntf *dmi = new DalOdbcMgr();
- uint8_t *ctr_id1 = (uint8_t *)malloc(32);
- memset(ctr_id1, '\0', 32);
+ DalDmlIntf *dmi(getDalDmlIntf());
+ uint8_t *ctr_id1 = ZALLOC_ARRAY(uint8_t, 32);
memcpy(ctr_id1, "Controller1", 11);
- key_vtn_t *keyvtn = (key_vtn_t *)malloc(sizeof(key_vtn_t));
+ key_vtn_t *keyvtn(ZALLOC_TYPE(key_vtn_t));
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, keyvtn, NULL);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.GetRenamedUncKey(ikey,dt_type,dmi,ctr_id1));
delete ikey;
+ free(ctr_id1);
}
-TEST(GetRenamedUncKey, GetRenamedUncKey_03) {
+
+TEST_F(VtnMoMgrTest, GetRenamedUncKey_03) {
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::INIT,kDalRcSuccess);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::SINGLE ,kDalRcSuccess);
VtnMoMgr vtn;
upll_keytype_datatype_t dt_type = UPLL_DT_CANDIDATE;
- DalDmlIntf *dmi = new DalOdbcMgr();
- uint8_t *ctr_id1 = (uint8_t *)malloc(32);
- memset(ctr_id1, '\0', 32);
- key_vtn_t *keyvtn = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- val_vtn_t *valVtn = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ DalDmlIntf *dmi(getDalDmlIntf());
+ uint8_t *ctr_id1 = ZALLOC_ARRAY(uint8_t, 32);
+ key_vtn_t *keyvtn(ZALLOC_TYPE(key_vtn_t));
+ val_vtn_t *valVtn(ZALLOC_TYPE(val_vtn_t));
+
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, valVtn);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, keyvtn, config_val);
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.GetRenamedUncKey(ikey,dt_type,dmi,ctr_id1));
delete ikey;
- DalOdbcMgr::clearStubData();
+ free(ctr_id1);
}
-TEST(GetRenamedUncKey, GetRenamedUncKey_04) {
+
+TEST_F(VtnMoMgrTest, GetRenamedUncKey_04) {
VtnMoMgr vtn;
upll_keytype_datatype_t dt_type = UPLL_DT_CANDIDATE;
- DalDmlIntf *dmi = new DalOdbcMgr();
- uint8_t *ctr_id1 = (uint8_t *)malloc(32);
- memset(ctr_id1, '\0', 32);
+ DalDmlIntf *dmi(getDalDmlIntf());
+ uint8_t *ctr_id1 = ZALLOC_ARRAY(uint8_t, 32);
memcpy(ctr_id1, "Controller1", 11);
- key_vtn_t *keyvtn = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- val_vtn_t *valVtn = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ key_vtn_t *keyvtn(ZALLOC_TYPE(key_vtn_t));
+ val_vtn_t *valVtn(ZALLOC_TYPE(val_vtn_t));
+
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, valVtn);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVtn, keyvtn, config_val);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.GetRenamedUncKey(ikey,dt_type,dmi,ctr_id1));
delete ikey;
- DalOdbcMgr::clearStubData();
+ free(ctr_id1);
}
-TEST(GetRenamedControllerKey, GetRenamedControllerKey_01) {
+
+TEST_F(VtnMoMgrTest, GetRenamedControllerKey_01) {
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::INIT,kDalRcSuccess);
DalOdbcMgr::stub_setSingleRecordExists(true);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::RECORD_EXISTS,kDalRcSuccess);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::SINGLE,kDalRcSuccess);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::INIT,kDalRcSuccess);
VtnMoMgr vtn;
- key_vtn_t *keyvtn = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- val_vtn_t *valVtn = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ key_vtn_t *keyvtn;
+ val_vtn_t *valVtn;
GetKeyValStruct(keyvtn,valVtn);
+
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, valVtn);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, keyvtn, config_val);
upll_keytype_datatype_t dt_type = UPLL_DT_IMPORT;
- DalDmlIntf *dmi = new DalOdbcMgr();
- uint8_t *ctr_id1 = (uint8_t *)malloc(32);
- memset(ctr_id1, '\0', 32);
+ DalDmlIntf *dmi(getDalDmlIntf());
+ uint8_t *ctr_id1 = ZALLOC_ARRAY(uint8_t, 32);
memcpy(ctr_id1, "Controller1", 11);
- uint8_t *dom_id1 = (uint8_t *)malloc(32);
- memset(dom_id1, '\0', 32);
+ uint8_t *dom_id1 = ZALLOC_ARRAY(uint8_t, 32);
memcpy(dom_id1, "Domain1", 7);
- controller_domain *ctrlr_dom = reinterpret_cast<controller_domain_t *>(malloc(sizeof(controller_domain_t)));
- ctrlr_dom->ctrlr = ctr_id1;
- ctrlr_dom->domain = dom_id1;
- EXPECT_EQ(UPLL_RC_SUCCESS, vtn.GetRenamedControllerKey(ikey,dt_type,dmi,ctrlr_dom));
+ controller_domain ctrlr_dom;
+ ctrlr_dom.ctrlr = ctr_id1;
+ ctrlr_dom.domain = dom_id1;
+ EXPECT_EQ(UPLL_RC_SUCCESS,
+ vtn.GetRenamedControllerKey(ikey, dt_type, dmi, &ctrlr_dom));
delete ikey;
- DalOdbcMgr::clearStubData();
+ free(ctr_id1);
+ free(dom_id1);
}
-TEST(GetRenamedControllerKey, GetRenamedControllerKey_02) {
+
+TEST_F(VtnMoMgrTest, GetRenamedControllerKey_02) {
DalOdbcMgr::stub_setSingleRecordExists(true);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::RECORD_EXISTS,kDalRcSuccess);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::RECORD_COUNT,kDalRcSuccess);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::SINGLE,kDalRcSuccess);
VtnMoMgr vtn;
- key_vtn_t *keyvtn = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- val_vtn_t *valVtn = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ key_vtn_t *keyvtn;
+ val_vtn_t *valVtn;
GetKeyValStruct(keyvtn,valVtn);
+
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, valVtn);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, keyvtn, config_val);
upll_keytype_datatype_t dt_type = UPLL_DT_IMPORT;
- DalDmlIntf *dmi = new DalOdbcMgr();
- uint8_t *ctr_id1 = (uint8_t *)malloc(32);
- memset(ctr_id1, '\0', 32);
+ DalDmlIntf *dmi(getDalDmlIntf());
+ uint8_t *ctr_id1 = ZALLOC_ARRAY(uint8_t, 32);
memcpy(ctr_id1, "Controller1", 11);
- uint8_t *dom_id1 = (uint8_t *)malloc(32);
- memset(dom_id1, '\0', 32);
+ uint8_t *dom_id1 = ZALLOC_ARRAY(uint8_t, 32);
memcpy(dom_id1, "Domain1", 7);
- controller_domain *ctrlr_dom = reinterpret_cast<controller_domain_t *>(malloc(sizeof(controller_domain_t)));
- ctrlr_dom->ctrlr = ctr_id1;
- ctrlr_dom->domain = dom_id1;
+ controller_domain ctrlr_dom;
+ ctrlr_dom.ctrlr = ctr_id1;
+ ctrlr_dom.domain = dom_id1;
UpllConfigMgr::GetUpllConfigMgr()->CreateMoManagers();
SET_USER_DATA_FLAGS(ikey, 0x01);
- EXPECT_EQ(UPLL_RC_SUCCESS, vtn.GetRenamedControllerKey(ikey,dt_type,dmi,ctrlr_dom));
+ EXPECT_EQ(UPLL_RC_SUCCESS,
+ vtn.GetRenamedControllerKey(ikey, dt_type, dmi, &ctrlr_dom));
delete ikey;
- DalOdbcMgr::clearStubData();
+ free(ctr_id1);
+ free(dom_id1);
}
-TEST(GetRenamedControllerKey, GetRenamedControllerKey_03) {
+
+TEST_F(VtnMoMgrTest, GetRenamedControllerKey_03) {
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::INIT,kDalRcSuccess);
DalOdbcMgr::stub_setSingleRecordExists(true);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::RECORD_EXISTS,kDalRcSuccess);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::RECORD_COUNT,kDalRcSuccess);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::SINGLE,kDalRcRecordNoMore);
VtnMoMgr vtn;
- key_vtn_t *keyvtn = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- val_vtn_t *valVtn = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ key_vtn_t *keyvtn;
+ val_vtn_t *valVtn;
GetKeyValStruct(keyvtn,valVtn);
+
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, valVtn);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, keyvtn, config_val);
upll_keytype_datatype_t dt_type = UPLL_DT_IMPORT;
- DalDmlIntf *dmi = new DalOdbcMgr();
- uint8_t *ctr_id1 = (uint8_t *)malloc(32);
- memset(ctr_id1, '\0', 32);
+ DalDmlIntf *dmi(getDalDmlIntf());
+ uint8_t *ctr_id1 = ZALLOC_ARRAY(uint8_t, 32);
memcpy(ctr_id1, "Controller1", 11);
- uint8_t *dom_id1 = (uint8_t *)malloc(32);
- memset(dom_id1, '\0', 32);
+ uint8_t *dom_id1 = ZALLOC_ARRAY(uint8_t, 32);
memcpy(dom_id1, "Domain1", 7);
- controller_domain *ctrlr_dom = reinterpret_cast<controller_domain_t *>(malloc(sizeof(controller_domain_t)));
- ctrlr_dom->ctrlr = ctr_id1;
- ctrlr_dom->domain = dom_id1;
+ controller_domain ctrlr_dom;
+ ctrlr_dom.ctrlr = ctr_id1;
+ ctrlr_dom.domain = dom_id1;
UpllConfigMgr::GetUpllConfigMgr()->CreateMoManagers();
SET_USER_DATA_FLAGS(ikey, 0x01);
- EXPECT_EQ(UPLL_RC_ERR_NO_SUCH_INSTANCE, vtn.GetRenamedControllerKey(ikey,dt_type,dmi,ctrlr_dom));
+ EXPECT_EQ(UPLL_RC_ERR_NO_SUCH_INSTANCE,
+ vtn.GetRenamedControllerKey(ikey, dt_type, dmi, &ctrlr_dom));
delete ikey;
- DalOdbcMgr::clearStubData();
+ free(ctr_id1);
+ free(dom_id1);
}
-TEST(GetRenamedControllerKey, GetRenamedControllerKey_05) {
- DalOdbcMgr::stub_setSingleRecordExists(true);
- DalOdbcMgr::stub_setResultcode(DalOdbcMgr::RECORD_EXISTS,kDalRcSuccess);
- DalOdbcMgr::stub_setResultcode(DalOdbcMgr::RECORD_COUNT,kDalRcSuccess);
- DalOdbcMgr::stub_setResultcode(DalOdbcMgr::SINGLE,kDalRcSuccess);
+TEST_F(VtnMoMgrTest, GetRenamedControllerKey_04) {
VtnMoMgr vtn;
key_vtn_t *keyvtn;
val_vtn_t *valVtn;
GetKeyValStruct(keyvtn,valVtn);
+
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, valVtn);
- ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVtn, keyvtn, config_val);
+ ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, keyvtn, config_val);
upll_keytype_datatype_t dt_type = UPLL_DT_IMPORT;
- DalDmlIntf *dmi = new DalOdbcMgr();
- uint8_t *ctr_id1 = (uint8_t *)malloc(32);
- memset(ctr_id1, '\0', 32);
- memcpy(ctr_id1, "Controller1", 11);
- uint8_t *dom_id1 = (uint8_t *)malloc(32);
- memset(dom_id1, '\0', 32);
- memcpy(dom_id1, "Domain1", 7);
- controller_domain *ctrlr_dom = reinterpret_cast<controller_domain_t *>(malloc(sizeof(controller_domain_t)));
- ctrlr_dom->ctrlr = ctr_id1;
- ctrlr_dom->domain = dom_id1;
- UpllConfigMgr::GetUpllConfigMgr()->CreateMoManagers();
+ DalDmlIntf *dmi(getDalDmlIntf());
+ controller_domain *ctrlr_dom=NULL;
SET_USER_DATA_FLAGS(ikey, 0x01);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.GetRenamedControllerKey(ikey,dt_type,dmi,ctrlr_dom));
delete ikey;
- DalOdbcMgr::clearStubData();
}
-TEST(GetRenamedControllerKey, GetRenamedControllerKey_04) {
+
+TEST_F(VtnMoMgrTest, GetRenamedControllerKey_05) {
+ DalOdbcMgr::stub_setSingleRecordExists(true);
+ DalOdbcMgr::stub_setResultcode(DalOdbcMgr::RECORD_EXISTS,kDalRcSuccess);
+ DalOdbcMgr::stub_setResultcode(DalOdbcMgr::RECORD_COUNT,kDalRcSuccess);
+ DalOdbcMgr::stub_setResultcode(DalOdbcMgr::SINGLE,kDalRcSuccess);
VtnMoMgr vtn;
- key_vtn_t *keyvtn = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- val_vtn_t *valVtn = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ key_vtn_t *keyvtn;
+ val_vtn_t *valVtn;
GetKeyValStruct(keyvtn,valVtn);
+
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, valVtn);
- ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, keyvtn, config_val);
+ ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVtn, keyvtn, config_val);
upll_keytype_datatype_t dt_type = UPLL_DT_IMPORT;
- DalDmlIntf *dmi = new DalOdbcMgr();
- controller_domain *ctrlr_dom=NULL;
+ DalDmlIntf *dmi(getDalDmlIntf());
+ uint8_t *ctr_id1 = ZALLOC_ARRAY(uint8_t, 32);
+ memcpy(ctr_id1, "Controller1", 11);
+ uint8_t *dom_id1 = ZALLOC_ARRAY(uint8_t, 32);
+ memcpy(dom_id1, "Domain1", 7);
+ controller_domain ctrlr_dom;
+ ctrlr_dom.ctrlr = ctr_id1;
+ ctrlr_dom.domain = dom_id1;
+ UpllConfigMgr::GetUpllConfigMgr()->CreateMoManagers();
SET_USER_DATA_FLAGS(ikey, 0x01);
- EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.GetRenamedControllerKey(ikey,dt_type,dmi,ctrlr_dom));
+ EXPECT_EQ(UPLL_RC_ERR_GENERIC,
+ vtn.GetRenamedControllerKey(ikey, dt_type, dmi, &ctrlr_dom));
delete ikey;
- DalOdbcMgr::clearStubData();
+ free(ctr_id1);
+ free(dom_id1);
}
-TEST(GetRenamedControllerKey, ikey_NULL) {
+
+TEST_F(VtnMoMgrTest, GetRenamedControllerKey_ikey_NULL) {
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::SINGLE ,kDalRcSuccess);
VtnMoMgr vtn;
- key_vtn_t *keyvtn = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- val_vtn_t *valVtn = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ key_vtn_t *keyvtn(ZALLOC_TYPE(key_vtn_t));
+ val_vtn_t *valVtn(ZALLOC_TYPE(val_vtn_t));
+
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, valVtn);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVtn, keyvtn, config_val);
upll_keytype_datatype_t dt_type = UPLL_DT_CANDIDATE;
- DalDmlIntf *dmi = new DalOdbcMgr();
- uint8_t *ctr_id1 = (uint8_t *)malloc(32);
- memset(ctr_id1, '\0', 32);
+ DalDmlIntf *dmi(getDalDmlIntf());
+ uint8_t *ctr_id1 = ZALLOC_ARRAY(uint8_t, 32);
memcpy(ctr_id1, "Controller1", 11);
- uint8_t *dom_id1 = (uint8_t *)malloc(32);
- memset(dom_id1, '\0', 32);
+ uint8_t *dom_id1 = ZALLOC_ARRAY(uint8_t, 32);
memcpy(dom_id1, "Domain1", 7);
- controller_domain ctrlr_dom;
- ctrlr_dom.ctrlr = ctr_id1;
- ctrlr_dom.domain = dom_id1;
controller_domain ctrlr_dom1;
ctrlr_dom1.ctrlr = ctr_id1;
ctrlr_dom1.domain = NULL;
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.GetRenamedControllerKey(ikey,dt_type,dmi,&ctrlr_dom1));
delete ikey;
- DalOdbcMgr::clearStubData();
+ free(ctr_id1);
+ free(dom_id1);
}
-TEST(GetRenamedControllerKey, ikey_01) {
- DalOdbcMgr::clearStubData();
+
+TEST_F(VtnMoMgrTest, GetRenamedControllerKey_ikey_01) {
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::SINGLE ,kDalRcSuccess);
VtnMoMgr vtn;
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, NULL);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, NULL, config_val);
upll_keytype_datatype_t dt_type = UPLL_DT_CANDIDATE;
- DalDmlIntf *dmi = new DalOdbcMgr();
- uint8_t *ctr_id1 = (uint8_t *)malloc(32);
- memset(ctr_id1, '\0', 32);
+ DalDmlIntf *dmi(getDalDmlIntf());
+ uint8_t *ctr_id1 = ZALLOC_ARRAY(uint8_t, 32);
memcpy(ctr_id1, "Controller1", 11);
- uint8_t *dom_id1 = (uint8_t *)malloc(32);
- memset(dom_id1, '\0', 32);
+ uint8_t *dom_id1 = ZALLOC_ARRAY(uint8_t, 32);
memcpy(dom_id1, "Domain1", 7);
controller_domain ctrlr_dom;
ctrlr_dom.ctrlr = ctr_id1;
SET_USER_DATA_FLAGS(ikey, 0x01);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.GetRenamedControllerKey(ikey,dt_type,dmi,&ctrlr_dom));
delete ikey;
- DalOdbcMgr::clearStubData();
+ free(ctr_id1);
+ free(dom_id1);
}
-TEST(UpdateVtnConfigStatus, UpdateVtnConfigStatus_Update) {
- uint32_t ckv_count1=1;
- uint32_t *rec_count=&ckv_count1;
+TEST_F(VtnMoMgrTest, UpdateVtnConfigStatus_Update) {
VtnMoMgr vtn;
key_vtn_t *keyvtn;
val_vtn_t *valVtn;
GetKeyValStruct(keyvtn,valVtn);
+
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, valVtn);
strcpy((char *)keyvtn->vtn_name, (const char *)"vtn1");
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, keyvtn, config_val);
- DalDmlIntf *dmi = new DalOdbcMgr();
- ConfigKeyVal *upd_key = new ConfigKeyVal(UNC_KT_VTN,
- IpctSt::kIpcStKeyVtn,
- keyvtn, config_val);
+ DalDmlIntf *dmi(getDalDmlIntf());
+
+ key_vtn_t *key1(UT_CLONE(key_vtn_t, keyvtn));
+ val_vtn_t *val1(UT_CLONE(val_vtn_t, valVtn));
+ ConfigVal *cfgval1(new ConfigVal(IpctSt::kIpcStValVtn, val1));
+ ConfigKeyVal *upd_key(new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn,
+ key1, cfgval1));
uint32_t driver_result=UPLL_RC_SUCCESS;
- EXPECT_EQ(UPLL_RC_ERR_GENERIC,vtn.UpdateVtnConfigStatus(ikey, UNC_OP_UPDATE,
- driver_result,
- upd_key,dmi));
+ EXPECT_EQ(UPLL_RC_ERR_GENERIC,
+ vtn.UpdateVtnConfigStatus(ikey, UNC_OP_UPDATE, driver_result,
+ upd_key, dmi));
delete ikey;
+ delete upd_key;
}
-TEST(UpdateVtnConfigStatus, UpdateVtnConfigStatus_Update_01) {
+TEST_F(VtnMoMgrTest, UpdateVtnConfigStatus_Update_01) {
VtnMoMgr vtn;
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::SINGLE,kDalRcSuccess);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::CREATE_RECORD,kDalRcSuccess);
key_vtn_t *keyvtn;
val_vtn_t *valVtn;
GetKeyValStruct(keyvtn,valVtn);
+
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, valVtn);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, keyvtn, config_val);
- DalDmlIntf *dmi = new DalOdbcMgr();
- ConfigKeyVal *upd_key = new ConfigKeyVal(UNC_KT_VTN,
- IpctSt::kIpcStKeyVtn,
- keyvtn, config_val);
+ DalDmlIntf *dmi(getDalDmlIntf());
+
+ key_vtn_t *key1(UT_CLONE(key_vtn_t, keyvtn));
+ val_vtn_t *val1(UT_CLONE(val_vtn_t, valVtn));
+ ConfigVal *cfgval1(new ConfigVal(IpctSt::kIpcStValVtn, val1));
+ ConfigKeyVal *upd_key(new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn,
+ key1, cfgval1));
uint32_t driver_result=UPLL_RC_SUCCESS;
- EXPECT_EQ(UPLL_RC_ERR_GENERIC,vtn.UpdateVtnConfigStatus(ikey, UNC_OP_UPDATE,
- driver_result,
- upd_key,dmi));
+ EXPECT_EQ(UPLL_RC_ERR_GENERIC,
+ vtn.UpdateVtnConfigStatus(ikey, UNC_OP_UPDATE, driver_result,
+ upd_key, dmi));
delete ikey;
- DalOdbcMgr::clearStubData();
+ delete upd_key;
}
-TEST(UpdateVtnConfigStatus, UpdateVtnConfigStatus_Create) {
+TEST_F(VtnMoMgrTest, UpdateVtnConfigStatus_Create) {
VtnMoMgr vtn;
key_vtn_t *keyvtn;
val_vtn_t *valVtn;
GetKeyValStruct(keyvtn,valVtn);
+
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, valVtn);
strcpy((char *)keyvtn->vtn_name, (const char *)"vtn1");
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, keyvtn, config_val);
- DalDmlIntf *dmi = new DalOdbcMgr();
- ConfigKeyVal *upd_key = new ConfigKeyVal(UNC_KT_VTN,
- IpctSt::kIpcStKeyVtn,
- keyvtn, config_val);
+ DalDmlIntf *dmi(getDalDmlIntf());
+
+ key_vtn_t *key1(UT_CLONE(key_vtn_t, keyvtn));
+ val_vtn_t *val1(UT_CLONE(val_vtn_t, valVtn));
+ ConfigVal *cfgval1(new ConfigVal(IpctSt::kIpcStValVtn, val1));
+ ConfigKeyVal *upd_key(new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn,
+ key1, cfgval1));
uint32_t driver_result=UPLL_RC_SUCCESS;
EXPECT_EQ(UPLL_RC_ERR_GENERIC,vtn.UpdateVtnConfigStatus(ikey, UNC_OP_CREATE,
driver_result,
upd_key,dmi));
delete ikey;
+ delete upd_key;
}
-TEST(UpdateVtnConfigStatus, UpdateVtnConfigStatus_DElete) {
+TEST_F(VtnMoMgrTest, UpdateVtnConfigStatus_Delete) {
VtnMoMgr vtn;
key_vtn_t *keyvtn;
val_vtn_t *valVtn;
GetKeyValStruct(keyvtn,valVtn);
+
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, valVtn);
strcpy((char *)keyvtn->vtn_name, (const char *)"vtn1");
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, keyvtn, config_val);
- DalDmlIntf *dmi = new DalOdbcMgr();
- ConfigKeyVal *upd_key = new ConfigKeyVal(UNC_KT_VTN,
- IpctSt::kIpcStKeyVtn,
- keyvtn, config_val);
+ DalDmlIntf *dmi(getDalDmlIntf());
+
+ key_vtn_t *key1(UT_CLONE(key_vtn_t, keyvtn));
+ val_vtn_t *val1(UT_CLONE(val_vtn_t, valVtn));
+ ConfigVal *cfgval1(new ConfigVal(IpctSt::kIpcStValVtn, val1));
+ ConfigKeyVal *upd_key(new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn,
+ key1, cfgval1));
uint32_t driver_result=UPLL_RC_SUCCESS;
- EXPECT_EQ(UPLL_RC_ERR_GENERIC,vtn.UpdateVtnConfigStatus(ikey, UNC_OP_DELETE,
- driver_result,
- upd_key,dmi));
+ EXPECT_EQ(UPLL_RC_ERR_GENERIC,
+ vtn.UpdateVtnConfigStatus(ikey, UNC_OP_DELETE, driver_result,
+ upd_key, dmi));
delete ikey;
+ delete upd_key;
}
-TEST(UpdateVtnConfigStatus, UpdateVtnConfigStatus_Read) {
+TEST_F(VtnMoMgrTest, UpdateVtnConfigStatus_Read) {
VtnMoMgr vtn;
key_vtn_t *keyvtn;
val_vtn_t *valVtn;
GetKeyValStruct(keyvtn,valVtn);
+
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, valVtn);
strcpy((char *)keyvtn->vtn_name, (const char *)"vtn1");
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, keyvtn, config_val);
- DalDmlIntf *dmi = new DalOdbcMgr();
- ConfigKeyVal *upd_key = new ConfigKeyVal(UNC_KT_VTN,
- IpctSt::kIpcStKeyVtn,
- keyvtn, config_val);
+ DalDmlIntf *dmi(getDalDmlIntf());
+
+ key_vtn_t *key1(UT_CLONE(key_vtn_t, keyvtn));
+ val_vtn_t *val1(UT_CLONE(val_vtn_t, valVtn));
+ ConfigVal *cfgval1(new ConfigVal(IpctSt::kIpcStValVtn, val1));
+ ConfigKeyVal *upd_key(new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn,
+ key1, cfgval1));
uint32_t driver_result=UPLL_RC_SUCCESS;
- EXPECT_EQ(UPLL_RC_ERR_GENERIC,vtn.UpdateVtnConfigStatus(ikey, UNC_OP_READ,
- driver_result,
- upd_key,dmi));
+ EXPECT_EQ(UPLL_RC_ERR_GENERIC,
+ vtn.UpdateVtnConfigStatus(ikey, UNC_OP_READ, driver_result,
+ upd_key, dmi));
delete ikey;
+ delete upd_key;
}
-TEST(UpdateVtnConfigStatus, Update_ikey_Err) {
+TEST_F(VtnMoMgrTest, UpdateVtnConfigStatus_Update_ikey_Err) {
VtnMoMgr vtn;
key_vtn_t *keyvtn;
val_vtn_t *valVtn;
GetKeyValStruct(keyvtn,valVtn);
+
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, valVtn);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVtn, keyvtn, config_val);
- DalDmlIntf *dmi = new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
ConfigKeyVal *upd_key = NULL;
uint32_t driver_result=UPLL_RC_SUCCESS;
EXPECT_EQ(UPLL_RC_ERR_GENERIC,vtn.UpdateVtnConfigStatus(ikey, UNC_OP_UPDATE,
upd_key,dmi));
delete ikey;
}
-TEST(UpdateVtnConfigStatus, Update_Val_NULL) {
+TEST_F(VtnMoMgrTest, UpdateVtnConfigStatus_Update_Val_NULL) {
VtnMoMgr vtn;
key_vtn_t *keyvtn;
val_vtn_t *valVtn;
GetKeyValStruct(keyvtn,valVtn);
+
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, valVtn);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, keyvtn, config_val);
- DalDmlIntf *dmi = new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
ConfigKeyVal *upd_key = NULL;
uint32_t driver_result=UPLL_RC_SUCCESS;
EXPECT_EQ(UPLL_RC_ERR_GENERIC,vtn.UpdateVtnConfigStatus(ikey, UNC_OP_UPDATE,
upd_key,dmi));
delete ikey;
}
-TEST(UpdateVtnConfigStatus, Delete_ikey_Err) {
+TEST_F(VtnMoMgrTest, UpdateVtnConfigStatus_Delete_ikey_Err) {
VtnMoMgr vtn;
key_vtn_t *keyvtn;
val_vtn_t *valVtn;
GetKeyValStruct(keyvtn,valVtn);
+
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, valVtn);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVtn, keyvtn, config_val);
- DalDmlIntf *dmi = new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
ConfigKeyVal *upd_key = NULL;
uint32_t driver_result=UPLL_RC_SUCCESS;
EXPECT_EQ(UPLL_RC_ERR_GENERIC,vtn.UpdateVtnConfigStatus(ikey, UNC_OP_DELETE,
delete ikey;
}
-TEST(CopyToConfigkey, CopyToConfigkey_ikeyokeyNull) {
+TEST_F(VtnMoMgrTest, CopyToConfigkey_ikeyokeyNull) {
VtnMoMgr vtn;
ConfigKeyVal *okey = NULL;
ConfigKeyVal *ikey = NULL;
delete okey;
}
-TEST(CopyToConfigkey, CopyToConfigkey_01) {
+TEST_F(VtnMoMgrTest, CopyToConfigkey_01) {
VtnMoMgr vtn;
ConfigKeyVal *okey=NULL;
- key_vtn_t *keyvtn;
- val_vtn_t *valVtn;
- GetKeyValStruct(keyvtn,valVtn);
- ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, valVtn);
- ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN,
- IpctSt::kIpcStKeyVtn,
- keyvtn, config_val);
- EXPECT_EQ(UPLL_RC_ERR_GENERIC,vtn.CopyToConfigKey(okey,ikey));
+ key_rename_vnode_info *key_rename(ZALLOC_TYPE(key_rename_vnode_info));
+ ConfigKeyVal *ikey(new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn,
+ key_rename, NULL));
+ EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.CopyToConfigKey(okey, ikey));
delete ikey;
delete okey;
}
-TEST(CopyToConfigkey, CopyToConfigkey_02) {
+
+TEST_F(VtnMoMgrTest, CopyToConfigkey_02) {
VtnMoMgr vtn;
ConfigKeyVal *okey=NULL;
- key_vtn_t *keyvtn;
- val_vtn_t *valVtn;
- GetKeyValStruct(keyvtn,valVtn);
- ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, valVtn);
- ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN,
- IpctSt::kIpcStKeyVtn,
- keyvtn, config_val);
- key_rename_vnode_info *key_rename = reinterpret_cast<key_rename_vnode_info *>(ikey->get_key());
- uuu::upll_strncpy(keyvtn->vtn_name, key_rename->old_unc_vtn_name,(kMaxLenVtnName + 1));
-
-
- EXPECT_EQ(UPLL_RC_ERR_GENERIC,vtn.CopyToConfigKey(okey,ikey));
+ key_rename_vnode_info *key_rename(ZALLOC_TYPE(key_rename_vnode_info));
+ pfc_strlcpy(reinterpret_cast<char *>(key_rename->old_unc_vtn_name),
+ "VTN_1", sizeof(key_rename->old_unc_vtn_name));
+ ConfigKeyVal *ikey(new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn,
+ key_rename, NULL));
+ EXPECT_EQ(UPLL_RC_SUCCESS, vtn.CopyToConfigKey(okey, ikey));
delete ikey;
delete okey;
}
-TEST(UpdateConfigStatus, UpdateConfigStatus_Create) {
+TEST_F(VtnMoMgrTest, UpdateConfigStatus_Create) {
VtnMoMgr vtn;
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
key_vtn *key;
val_vtn *val;
UpllConfigMgr::GetUpllConfigMgr()->CreateMoManagers();
GetKeyValStruct(key, val);
+
ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVtn, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN,
IpctSt::kIpcStKeyVtn,
key, cfgval);
- ConfigKeyVal *upd_key = new ConfigKeyVal(UNC_KT_VTN,
- IpctSt::kIpcStKeyVtn,
- key, cfgval);
- ConfigKeyVal *ctrlr_run = new ConfigKeyVal(UNC_KT_VTN,
- IpctSt::kIpcStKeyVtn,
- key, cfgval);
+
+ key_vtn_t *key1(UT_CLONE(key_vtn_t, key));
+ val_vtn_t *val1(UT_CLONE(val_vtn_t, val));
+ ConfigVal *cfgval1(new ConfigVal(IpctSt::kIpcStValVtn, val1));
+ ConfigKeyVal *upd_key(new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn,
+ key1, cfgval1));
+
+ key_vtn_t *key2(UT_CLONE(key_vtn_t, key));
+ val_vtn_t *val2(UT_CLONE(val_vtn_t, val));
+ ConfigVal *cfgval2(new ConfigVal(IpctSt::kIpcStValVtn, val2));
+ ConfigKeyVal *ctrlr_run(new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn,
+ key2, cfgval2));
EXPECT_EQ(UPLL_RC_ERR_GENERIC,vtn.UpdateConfigStatus(ikey, UNC_OP_CREATE,
UPLL_RC_SUCCESS,
upd_key,dmi,ctrlr_run));
delete ikey;
+ delete upd_key;
+ delete ctrlr_run;
}
-TEST(UpdateConfigStatus, UpdateConfigStatus_ValVTN_NULL) {
+TEST_F(VtnMoMgrTest, UpdateConfigStatus_ValVTN_NULL) {
VtnMoMgr vtn;
- DalDmlIntf *dmi= new DalOdbcMgr();
- key_vtn *key;
- key = reinterpret_cast<key_vtn *>(malloc
- (sizeof(key_vtn)));
+ DalDmlIntf *dmi(getDalDmlIntf());
+ key_vtn *key(ZALLOC_TYPE(key_vtn));
UpllConfigMgr::GetUpllConfigMgr()->CreateMoManagers();
- val_vtn *val=NULL;
- ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVtn, val);
- ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN,
- IpctSt::kIpcStKeyVtn,
- key, cfgval);
- ConfigKeyVal *upd_key = new ConfigKeyVal(UNC_KT_VTN,
- IpctSt::kIpcStKeyVtn,
- key, cfgval);
+ ConfigVal *cfgval(new ConfigVal(IpctSt::kIpcStValVtn, NULL));
+ ConfigKeyVal *ikey(new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn,
+ key, cfgval));
- EXPECT_EQ(UPLL_RC_ERR_GENERIC,vtn.UpdateConfigStatus(ikey, UNC_OP_CREATE,
- UPLL_RC_SUCCESS,
- upd_key,dmi,ikey));
+ key_vtn_t *key1(UT_CLONE(key_vtn_t, key));
+ ConfigVal *cfgval1(new ConfigVal(IpctSt::kIpcStValVtn, NULL));
+ ConfigKeyVal *upd_key(new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn,
+ key1, cfgval1));
+
+ EXPECT_EQ(UPLL_RC_ERR_GENERIC,
+ vtn.UpdateConfigStatus(ikey, UNC_OP_CREATE, UPLL_RC_SUCCESS,
+ upd_key, dmi, ikey));
delete ikey;
+ delete upd_key;
}
-TEST(UpdateConfigStatus, UpdateConfigStatus_ConfigKeyVal_NULL) {
+TEST_F(VtnMoMgrTest, UpdateConfigStatus_ConfigKeyVal_NULL) {
VtnMoMgr vtn;
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
key_vtn *key;
val_vtn *val;
UpllConfigMgr::GetUpllConfigMgr()->CreateMoManagers();
GetKeyValStruct(key, val);
+
ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVtn, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN,
IpctSt::kIpcStKeyVtn,
upd_key,dmi,ikey));
delete ikey;
}
-TEST(UpdateConfigStatus, UpdateConfigStatus_PFC) {
+TEST_F(VtnMoMgrTest, UpdateConfigStatus_PFC) {
VtnMoMgr vtn;
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
key_vtn *key;
val_vtn *val;
-
GetKeyValStruct(key, val);
+
ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVtn, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN,
IpctSt::kIpcStKeyVtn,
key, cfgval);
- ConfigKeyVal *upd_key = new ConfigKeyVal(UNC_KT_VTN,
- IpctSt::kIpcStKeyVtn,
- key, cfgval);
+
+ key_vtn_t *key1(UT_CLONE(key_vtn_t, key));
+ val_vtn_t *val1(UT_CLONE(val_vtn_t, val));
+ ConfigVal *cfgval1(new ConfigVal(IpctSt::kIpcStValVtn, val1));
+ ConfigKeyVal *upd_key(new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn,
+ key1, cfgval1));
UpllConfigMgr::GetUpllConfigMgr()->CreateMoManagers();
- EXPECT_EQ(UPLL_RC_ERR_GENERIC,vtn.UpdateConfigStatus(ikey, UNC_OP_CREATE,
- UPLL_RC_SUCCESS,
- upd_key,dmi,ikey));
+ EXPECT_EQ(UPLL_RC_ERR_GENERIC,
+ vtn.UpdateConfigStatus(ikey, UNC_OP_CREATE, UPLL_RC_SUCCESS,
+ upd_key, dmi, ikey));
delete ikey;
+ delete upd_key;
}
-TEST(UpdateConfigStatus, OP_Update_01) {
-
+TEST_F(VtnMoMgrTest, UpdateConfigStatus_OP_Update_01) {
VtnMoMgr vtn;
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
key_vtn *key;
val_vtn *val;
GetKeyValStruct(key, val);
+
ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVtn, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN,
IpctSt::kIpcStKeyVtn,
key, cfgval);
- key_vtn_controller_t *key_ctrlr = reinterpret_cast<key_vtn_controller_t *>(malloc
- (sizeof(key_vtn_controller_t)));
+ key_vtn_controller_t *key_ctrlr(ZALLOC_TYPE(key_vtn_controller_t));
uuu::upll_strncpy(key_ctrlr->controller_name,"controller_name1", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(key_ctrlr->domain_id,"domain_id", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(key_ctrlr->vtn_key.vtn_name,"vtn_name1", (kMaxLenCtrlrId + 1));
- val_vtn_ctrlr_t *val_ctrlr = reinterpret_cast<val_vtn_ctrlr_t *>(malloc
- (sizeof(val_vtn_ctrlr_t)));
+ val_vtn_ctrlr_t *val_ctrlr(ZALLOC_TYPE(val_vtn_ctrlr_t));
val_ctrlr->ref_count=1;
val_ctrlr->down_count=1;
CtrlrMgr::Ctrlr ctrl("controller_name1",UNC_CT_PFC,version);
CtrlrMgr::Ctrlr* ctrl1( new CtrlrMgr::Ctrlr(ctrl,UPLL_DT_CANDIDATE));
CtrlrMgr::GetInstance()->ctrlrs_.push_back(ctrl1);
- key_user_data_t *user_data = reinterpret_cast<key_user_data_t *>(malloc(sizeof(key_user_data_t)));
+ key_user_data_t *user_data(ZALLOC_TYPE(key_user_data_t));
uuu::upll_strncpy(user_data->ctrlr_id,"controller_name1", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(user_data->domain_id,"dom_id", (kMaxLenCtrlrId + 1));
upd_key->set_user_data((void*)user_data);
UPLL_RC_SUCCESS,
upd_key,dmi,upd_key));
delete ikey;
+ delete upd_key;
}
-TEST(UpdateConfigStatus, OP_Update_02) {
+TEST_F(VtnMoMgrTest, UpdateConfigStatus_OP_Update_02) {
VtnMoMgr vtn;
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
key_vtn *key;
val_vtn *val;
GetKeyValStruct(key, val);
+
ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVtn, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN,
IpctSt::kIpcStKeyVtn,
key, cfgval);
- key_vtn_controller_t *key_ctrlr = reinterpret_cast<key_vtn_controller_t *>(malloc
- (sizeof(key_vtn_controller_t)));
+ key_vtn_controller_t *key_ctrlr(ZALLOC_TYPE(key_vtn_controller_t));
uuu::upll_strncpy(key_ctrlr->controller_name,"controller_name1", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(key_ctrlr->domain_id,"domain_id", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(key_ctrlr->vtn_key.vtn_name,"vtn_name1", (kMaxLenCtrlrId + 1));
- val_vtn_ctrlr_t *val_ctrlr = reinterpret_cast<val_vtn_ctrlr_t *>(malloc
- (sizeof(val_vtn_ctrlr_t)));
+ val_vtn_ctrlr_t *val_ctrlr(ZALLOC_TYPE(val_vtn_ctrlr_t));
val_ctrlr->ref_count=3;
val_ctrlr->down_count=1;
CtrlrMgr::Ctrlr ctrl("controller_name1",UNC_CT_PFC,version);
CtrlrMgr::Ctrlr* ctrl1( new CtrlrMgr::Ctrlr(ctrl,UPLL_DT_CANDIDATE));
CtrlrMgr::GetInstance()->ctrlrs_.push_back(ctrl1);
- key_user_data_t *user_data = reinterpret_cast<key_user_data_t *>(malloc(sizeof(key_user_data_t)));
+ key_user_data_t *user_data(ZALLOC_TYPE(key_user_data_t));
uuu::upll_strncpy(user_data->ctrlr_id,"controller_name1", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(user_data->domain_id,"dom_id", (kMaxLenCtrlrId + 1));
upd_key->set_user_data((void*)user_data);
CapaModuleStub::stub_setResultcode(CapaModuleStub::GET_CREATE_CAPABILITY, true);
- val_vtn_ctrlr_t *val_ctrlr1 = reinterpret_cast<val_vtn_ctrlr_t *>(malloc
- (sizeof(val_vtn_ctrlr_t)));
- val_ctrlr1->ref_count=1;
- val_ctrlr1->down_count=0;
- ConfigVal *cfgval2 = new ConfigVal(IpctSt::kIpcStValVtn, val_ctrlr1);
- ConfigKeyVal *upd_key1 = new ConfigKeyVal(UNC_KT_VTN,
- IpctSt::kIpcStKeyVtnController,
- key_ctrlr, cfgval2);
+ key_vtn_controller_t *key_ctrlr2(UT_CLONE(key_vtn_controller_t, key_ctrlr));
+ val_vtn_ctrlr_t *val_ctrlr2(ZALLOC_TYPE(val_vtn_ctrlr_t));
+ val_ctrlr2->ref_count=1;
+ val_ctrlr2->down_count=0;
+ ConfigVal *cfgval2(new ConfigVal(IpctSt::kIpcStValVtn, val_ctrlr2));
+ ConfigKeyVal *upd_key2(new ConfigKeyVal(UNC_KT_VTN,
+ IpctSt::kIpcStKeyVtnController,
+ key_ctrlr2, cfgval2));
- EXPECT_EQ(UPLL_RC_ERR_GENERIC,vtn.UpdateConfigStatus(ikey, UNC_OP_UPDATE,
- UPLL_RC_SUCCESS,
- upd_key,dmi,upd_key1));
+ EXPECT_EQ(UPLL_RC_ERR_GENERIC,
+ vtn.UpdateConfigStatus(ikey, UNC_OP_UPDATE, UPLL_RC_SUCCESS,
+ upd_key, dmi, upd_key2));
delete ikey;
+ delete upd_key;
+ delete upd_key2;
}
-TEST(UpdateConfigStatus, UpdateConfigStatus_invalidOP) {
+TEST_F(VtnMoMgrTest, UpdateConfigStatus_invalidOP) {
VtnMoMgr vtn;
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
key_vtn *key;
val_vtn *val;
GetKeyValStruct(key, val);
+
ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVtn, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN,
IpctSt::kIpcStKeyVtn,
key, cfgval);
- ConfigKeyVal *upd_key = new ConfigKeyVal(UNC_KT_VTN,
- IpctSt::kIpcStKeyVtn,
- key, cfgval);
+
+ key_vtn_t *key1(UT_CLONE(key_vtn_t, key));
+ val_vtn_t *val1(UT_CLONE(val_vtn_t, val));
+ ConfigVal *cfgval1(new ConfigVal(IpctSt::kIpcStValVtn, val1));
+ ConfigKeyVal *upd_key(new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn,
+ key1, cfgval1));
UpllConfigMgr::GetUpllConfigMgr()->CreateMoManagers();
EXPECT_EQ(UPLL_RC_ERR_GENERIC,vtn.UpdateConfigStatus(ikey, UNC_OP_READ,
UPLL_RC_SUCCESS,
upd_key,dmi,ikey));
delete ikey;
+ delete upd_key;
}
-TEST(UpdateConfigStatus, UpdateConfigStatus_OP_Create) {
+TEST_F(VtnMoMgrTest, UpdateConfigStatus_OP_Create) {
VtnMoMgr vtn;
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
key_vtn *key;
val_vtn *val;
GetKeyValStruct(key, val);
+
ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVtn, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN,
IpctSt::kIpcStKeyVtn,
key, cfgval);
- key_vtn_controller_t *key_ctrlr = reinterpret_cast<key_vtn_controller_t *>(malloc
- (sizeof(key_vtn_controller_t)));
+ key_vtn_controller_t *key_ctrlr(ZALLOC_TYPE(key_vtn_controller_t));
uuu::upll_strncpy(key_ctrlr->controller_name,"controller_name1", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(key_ctrlr->domain_id,"domain_id", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(key_ctrlr->vtn_key.vtn_name,"vtn_name1", (kMaxLenCtrlrId + 1));
- val_vtn_ctrlr_t *val_ctrlr = reinterpret_cast<val_vtn_ctrlr_t *>(malloc
- (sizeof(val_vtn_ctrlr_t)));
+ val_vtn_ctrlr_t *val_ctrlr(ZALLOC_TYPE(val_vtn_ctrlr_t));
val_ctrlr->ref_count=1;
val_ctrlr->down_count=1;
CtrlrMgr::Ctrlr ctrl("controller_name1",UNC_CT_PFC,version);
CtrlrMgr::Ctrlr* ctrl1( new CtrlrMgr::Ctrlr(ctrl,UPLL_DT_CANDIDATE));
CtrlrMgr::GetInstance()->ctrlrs_.push_back(ctrl1);
- key_user_data_t *user_data = reinterpret_cast<key_user_data_t *>(malloc(sizeof(key_user_data_t)));
+ key_user_data_t *user_data(ZALLOC_TYPE(key_user_data_t));
uuu::upll_strncpy(user_data->ctrlr_id,"controller_name1", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(user_data->domain_id,"dom_id", (kMaxLenCtrlrId + 1));
upd_key->set_user_data((void*)user_data);
UPLL_RC_SUCCESS,
upd_key,dmi,upd_key));
delete ikey;
+ delete upd_key;
}
-TEST(UpdateConfigStatus, UpdateConfigStatus_OP_Create_01) {
+TEST_F(VtnMoMgrTest, UpdateConfigStatus_OP_Create_01) {
VtnMoMgr vtn;
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
key_vtn *key;
val_vtn *val;
GetKeyValStruct(key, val);
+
val->cs_row_status=UNC_CS_NOT_APPLIED;
ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVtn, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN,
IpctSt::kIpcStKeyVtn,
key, cfgval);
- key_vtn_controller_t *key_ctrlr = reinterpret_cast<key_vtn_controller_t *>(malloc
- (sizeof(key_vtn_controller_t)));
+ key_vtn_controller_t *key_ctrlr(ZALLOC_TYPE(key_vtn_controller_t));
uuu::upll_strncpy(key_ctrlr->controller_name,"controller_name1", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(key_ctrlr->domain_id,"domain_id", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(key_ctrlr->vtn_key.vtn_name,"vtn_name1", (kMaxLenCtrlrId + 1));
- val_vtn_ctrlr_t *val_ctrlr = reinterpret_cast<val_vtn_ctrlr_t *>(malloc
- (sizeof(val_vtn_ctrlr_t)));
+ val_vtn_ctrlr_t *val_ctrlr(ZALLOC_TYPE(val_vtn_ctrlr_t));
val_ctrlr->ref_count=1;
val_ctrlr->down_count=1;
CtrlrMgr::Ctrlr ctrl("controller_name1",UNC_CT_PFC,version);
CtrlrMgr::Ctrlr* ctrl1( new CtrlrMgr::Ctrlr(ctrl,UPLL_DT_CANDIDATE));
CtrlrMgr::GetInstance()->ctrlrs_.push_back(ctrl1);
- key_user_data_t *user_data = reinterpret_cast<key_user_data_t *>(malloc(sizeof(key_user_data_t)));
+ key_user_data_t *user_data(ZALLOC_TYPE(key_user_data_t));
uuu::upll_strncpy(user_data->ctrlr_id,"controller_name1", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(user_data->domain_id,"dom_id", (kMaxLenCtrlrId + 1));
upd_key->set_user_data((void*)user_data);
UPLL_RC_SUCCESS,
upd_key,dmi,upd_key));
delete ikey;
+ delete upd_key;
}
-TEST(ValidateCapability, ValidateCapability_Success) {
+TEST_F(VtnMoMgrTest, ValidateCapability_Success) {
VtnMoMgr vtn;
key_vtn *key;
val_vtn *val;
GetKeyValStruct(key, val);
+
ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVtn, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN,
IpctSt::kIpcStKeyVtn,
CtrlrMgr::Ctrlr ctrlrobj("CTR_1", UNC_CT_PFC, "5.0");
CtrlrMgr::GetInstance()->Add(ctrlrobj, UPLL_DT_CANDIDATE);
- uint8_t attrs[3];
- attrs[unc::capa::vtn::kCapDesc] = 1;
-
- IpcReqRespHeader *req;
- req = reinterpret_cast<IpcReqRespHeader *>(malloc
- (sizeof(IpcReqRespHeader)));
- memset(req,0,sizeof(IpcReqRespHeader));
+ IPC_REQ_RESP_HEADER_DECL(req);
req->clnt_sess_id = 5;
req->config_id = 14;
req->operation = UNC_OP_CREATE;
CtrlrMgr::GetInstance()->Delete("CTR_1", UPLL_DT_CANDIDATE);
delete ikey;
}
-TEST(ValidateCapability, ValidateCapability_ikey_NULL) {
+TEST_F(VtnMoMgrTest, ValidateCapability_ikey_NULL) {
VtnMoMgr vtn;
- key_vtn *key;
- val_vtn *val;
- GetKeyValStruct(key, val);
ConfigKeyVal *ikey = NULL;
IpcReqRespHeader *req=NULL;
const char *ctrlr_name="ctr1";
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.ValidateCapability(req, ikey, ctrlr_name));
}
-TEST(ValidateCapability, ValidateCapability_ctrName_NULL) {
+TEST_F(VtnMoMgrTest, ValidateCapability_ctrName_NULL) {
VtnMoMgr vtn;
key_vtn *key;
val_vtn *val;
GetKeyValStruct(key, val);
+
ConfigVal *cfgval = new ConfigVal(IpctSt::kIpcStValVtn, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN,
IpctSt::kIpcStKeyVtn,
key, cfgval);
- IpcReqRespHeader *req;
- req = reinterpret_cast<IpcReqRespHeader *>(malloc
- (sizeof(IpcReqRespHeader)));
+ IPC_REQ_RESP_HEADER_DECL(req);
const char *ctrlr_name=NULL;
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.ValidateCapability(req, ikey, ctrlr_name));
+
+ delete ikey;
}
-TEST(GetChildConfigKey, GetChildConfigKey_SuccessNullObjs) {
+
+TEST_F(VtnMoMgrTest, GetChildConfigKey_SuccessNullObjs) {
VtnMoMgr vtn;
ConfigKeyVal *okey = NULL;
ConfigKeyVal *pkey = NULL;
delete okey;
delete pkey;
}
-TEST(GetChildConfigKey, GetChildConfigKey_pkeyNull) {
+
+TEST_F(VtnMoMgrTest, GetChildConfigKey_pkeyNull) {
VtnMoMgr vtn;
ConfigKeyVal *okey = NULL;
ConfigKeyVal *pkey = new ConfigKeyVal(UNC_KT_VTN,
delete okey;
delete pkey;
}
-TEST(GetChildConfigKey, pkeyNull_okey_NotNull) {
- VtnMoMgr vtn;
- key_vbr_t *key = reinterpret_cast<key_vbr_t *>
- (malloc(sizeof(key_vbr_t)));
- memset(key, 0 ,sizeof(key_vtn_t));
+TEST_F(VtnMoMgrTest, GetChildConfigKey_pkeyNull_okey_NotNull) {
+ VtnMoMgr vtn;
+ key_vbr_t *key(ZALLOC_TYPE(key_vbr_t));
strncpy((char*) key->vbridge_name,"VTN1",32);
ConfigKeyVal *pkey = NULL;
EXPECT_EQ(UPLL_RC_SUCCESS,vtn.GetChildConfigKey(okey, pkey));
delete okey;
}
-TEST(GetChildConfigKey, GetChildConfigKey_Vtn) {
+
+TEST_F(VtnMoMgrTest, GetChildConfigKey_Vtn) {
VtnMoMgr vtn;
ConfigKeyVal *okey = NULL;
- key_vtn_t *key = reinterpret_cast<key_vtn_t *>
- (malloc(sizeof(key_vtn_t)));
- memset(key, 0 ,sizeof(key_vtn_t));
-
+ key_vtn_t *key(ZALLOC_TYPE(key_vtn_t));
strncpy((char*) key->vtn_name,"VTN1",32);
ConfigKeyVal *pkey = new ConfigKeyVal(UNC_KT_VTN,
delete okey;
delete pkey;
}
-TEST(GetChildConfigKey, okey_Not_NULL) {
- VtnMoMgr vtn;
- key_vtn_t *key = reinterpret_cast<key_vtn_t *>
- (malloc(sizeof(key_vtn_t)));
- memset(key, 0 ,sizeof(key_vtn_t));
+TEST_F(VtnMoMgrTest, GetChildConfigKey_okey_Not_NULL) {
+ VtnMoMgr vtn;
+ key_vtn_t *key(ZALLOC_TYPE(key_vtn_t));
strncpy((char*) key->vtn_name,"VTN1",32);
+ key_vtn_t *key1(UT_CLONE(key_vtn_t, key));
- ConfigKeyVal *pkey = new ConfigKeyVal(UNC_KT_VTN,
- IpctSt::kIpcStKeyVtn,
- key, NULL);
- ConfigKeyVal *okey = new ConfigKeyVal(UNC_KT_VTN,
- IpctSt::kIpcStKeyVtn,
- key, NULL);
+ ConfigKeyVal *pkey(new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn,
+ key, NULL));
+ ConfigKeyVal *okey(new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn,
+ key1, NULL));
- EXPECT_EQ(UPLL_RC_SUCCESS,vtn.GetChildConfigKey(okey, pkey));
+ EXPECT_EQ(UPLL_RC_SUCCESS, vtn.GetChildConfigKey(okey, pkey));
delete okey;
+ delete pkey;
}
-TEST(GetChildConfigKey, GetChildConfigKey_Vbr) {
+
+TEST_F(VtnMoMgrTest, GetChildConfigKey_Vbr) {
VtnMoMgr vtn;
ConfigKeyVal *okey = NULL;
- key_vtn_t *key = reinterpret_cast<key_vtn_t *>
- (malloc(sizeof(key_vtn_t)));
- memset(key, 0 ,sizeof(key_vtn_t));
-
+ key_vtn_t *key(ZALLOC_TYPE(key_vtn_t));
strncpy((char*) key->vtn_name,"VTN1",32);
ConfigKeyVal *pkey = new ConfigKeyVal(UNC_KT_VBRIDGE,
delete okey;
delete pkey;
}
-TEST(IsKeyInUse, ikey_Error) {
+TEST_F(VtnMoMgrTest, IsKeyInUse_ikey_Error) {
VtnMoMgr vtn;
key_vtn *key;
val_vtn *val;
-
GetKeyValStruct(key, val);
+
upll_keytype_datatype_t dt_type=UPLL_DT_RUNNING;
- DalDmlIntf *dmi=new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
bool in_use;
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, val);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.IsKeyInUse(dt_type,ikey,&in_use,dmi));
delete ikey;
}
-TEST(IsKeyInUse, invalid_ctrlrName) {
+TEST_F(VtnMoMgrTest, IsKeyInUse_invalid_ctrlrName) {
VtnMoMgr vtn;
key_vtn *key;
val_vtn *val;
-
- const char *controller_name = "";
GetKeyValStruct(key, val);
+
upll_keytype_datatype_t dt_type=UPLL_DT_RUNNING;
- DalDmlIntf *dmi=new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
bool in_use;
- key = reinterpret_cast<key_vtn *>(malloc
- (sizeof(key_vtn)));
memset(key,0,sizeof(key_vtn));
+
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, key, config_val);
- key_ctr_t *key_ctr =
- reinterpret_cast<key_ctr_t *>(ikey->get_key());
- memset(key_ctr,0,sizeof(key_ctr));
- strncpy(reinterpret_cast<char *>(key_ctr->controller_name),
- controller_name, strlen(controller_name)+1);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.IsKeyInUse(dt_type,ikey,&in_use,dmi));
delete ikey;
}
-TEST(IsKeyInUse, ikey_NULL) {
-
+TEST_F(VtnMoMgrTest, IsKeyInUse_ikey_NULL) {
VtnMoMgr vtn;
- key_vtn *key;
- val_vtn *val;
-
- GetKeyValStruct(key, val);
upll_keytype_datatype_t dt_type=UPLL_DT_RUNNING;
- DalDmlIntf *dmi=new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
bool in_use;
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, NULL, NULL);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.IsKeyInUse(dt_type,ikey,&in_use,dmi));
delete ikey;
}
-TEST(ValidateMessage, ValidateMessage_01) {
+TEST_F(VtnMoMgrTest, ValidateMessage_01) {
VtnMoMgr vtn;
key_vtn *key;
val_vtn *val;
IpctSt::kIpcStKeyVtn,
key, cfgval);
- IpcReqRespHeader *req;
- req = reinterpret_cast<IpcReqRespHeader *>(malloc
- (sizeof(IpcReqRespHeader)));
- memset(req,0,sizeof(IpcReqRespHeader));
+ IPC_REQ_RESP_HEADER_DECL(req);
req->clnt_sess_id = 5;
req->config_id = 14;
req->operation = UNC_OP_CREATE;
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.ValidateMessage(req, ikey));
- ConfigVal *cfgval2 = NULL;
- ConfigKeyVal *ikey2 = new ConfigKeyVal(UNC_KT_VTN,
- IpctSt::kIpcStKeyVtn,
- key, cfgval2);
- EXPECT_EQ(UPLL_RC_SUCCESS, vtn.ValidateMessage(req, ikey2));
- val_rename_vtn *renameval;
- renameval = reinterpret_cast<val_rename_vtn *>(malloc
- (sizeof(val_rename_vbr)));
- memset(renameval,0,sizeof(val_rename_vtn));
+ key_vtn *key1(UT_CLONE(key_vtn, key));
+ ConfigKeyVal *ikey1(new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn,
+ key1, NULL));
+ EXPECT_EQ(UPLL_RC_SUCCESS, vtn.ValidateMessage(req, ikey1));
+ val_rename_vtn *renameval(ZALLOC_TYPE(val_rename_vtn));
for(unsigned int loop = 0; loop < sizeof(renameval->valid)/
- sizeof(renameval->valid[0]); ++loop) {
- renameval->valid[loop] = UNC_VF_VALID;
+ sizeof(renameval->valid[0]); ++loop) {
+ renameval->valid[loop] = UNC_VF_VALID;
}
strncpy(reinterpret_cast<char *>(renameval->new_name),
- "renamed", strlen("renamed")+1);
-
+ "renamed", strlen("renamed")+1);
- ConfigVal *rename_cfgval = new ConfigVal(IpctSt::kIpcStValRenameVtn, renameval);
- ConfigKeyVal *rename_ikey = new ConfigKeyVal(UNC_KT_VTN,
- IpctSt::kIpcStKeyVtn,
- key, rename_cfgval);
+ key_vtn *key2(UT_CLONE(key_vtn, key));
+ ConfigVal *rename_cfgval(new ConfigVal(IpctSt::kIpcStValRenameVtn,
+ renameval));
+ ConfigKeyVal *rename_ikey(new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn,
+ key2, rename_cfgval));
req->operation = UNC_OP_RENAME;
req->datatype = UPLL_DT_IMPORT;
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.ValidateMessage(req, rename_ikey));
- ConfigVal *cfgval3 = NULL;
- ConfigKeyVal *ikey3 = new ConfigKeyVal(UNC_KT_VTN,
- IpctSt::kIpcStKeyVtn,
- key, cfgval3);
+ key_vtn *key3(UT_CLONE(key_vtn, key));
+ ConfigKeyVal *ikey3(new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn,
+ key3, NULL));
EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, vtn.ValidateMessage(req, ikey3));
- val_rename_vtn *vtn_rename =NULL;
- ConfigVal *cfgval4 = new ConfigVal(IpctSt::kIpcStValVtn, vtn_rename);
- ConfigKeyVal *ikey4 = new ConfigKeyVal(UNC_KT_VTN,
- IpctSt::kIpcStKeyVtn,
- key, cfgval4);
+ key_vtn *key4(UT_CLONE(key_vtn, key));
+ ConfigVal *cfgval4(new ConfigVal(IpctSt::kIpcStValVtn, NULL));
+ ConfigKeyVal *ikey4(new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn,
+ key4, cfgval4));
EXPECT_EQ(UPLL_RC_ERR_BAD_REQUEST, vtn.ValidateMessage(req, ikey4));
req->operation = UNC_OP_READ_SIBLING;
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.ValidateMessage(req, rename_ikey));
- ConfigVal *invrename_cfgval = new ConfigVal(IpctSt::kIpcStValRenameVtn, NULL);
- ConfigKeyVal *invrename_ikey = new ConfigKeyVal(UNC_KT_VTN,
- IpctSt::kIpcStKeyVtn,
- key, invrename_cfgval);
+ key_vtn *key5(UT_CLONE(key_vtn, key));
+ ConfigVal *invrename_cfgval(new ConfigVal(IpctSt::kIpcStValRenameVtn, NULL));
+ ConfigKeyVal *invrename_ikey(new ConfigKeyVal(UNC_KT_VTN,
+ IpctSt::kIpcStKeyVtn,
+ key5, invrename_cfgval));
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.ValidateMessage(req, invrename_ikey));
const char *vtn_name1 = " ";
- key_vtn *key5;
- val_vtn *val5;
- key5 = reinterpret_cast<key_vtn *>(malloc
- (sizeof(key_vtn)));
- memset(key5,0,sizeof(key_vtn));
- strncpy(reinterpret_cast<char *>(key5->vtn_name),
- vtn_name1, strlen(vtn_name1)+1);
- val5 = reinterpret_cast<val_vtn *>(malloc
- (sizeof(val_vtn)));
- memset(val5,0,sizeof(val_vtn));
- ConfigVal *cfgval5 = new ConfigVal(IpctSt::kIpcStValVtn, val5);
- ConfigKeyVal *ikey5 = new ConfigKeyVal(UNC_KT_VTN,
- IpctSt::kIpcStKeyVtn,
- key5, cfgval5);
- EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, vtn.ValidateMessage(req, ikey5));
+ key_vtn *key6(ZALLOC_TYPE(key_vtn));
+ val_vtn *val6(ZALLOC_TYPE(val_vtn));
+ strncpy(reinterpret_cast<char *>(key6->vtn_name),
+ vtn_name1, strlen(vtn_name1)+1);
+ ConfigVal *cfgval6(new ConfigVal(IpctSt::kIpcStValVtn, val6));
+ ConfigKeyVal *ikey6(new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn,
+ key6, cfgval6));
+ EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, vtn.ValidateMessage(req, ikey6));
req->operation = UNC_OP_READ_SIBLING_COUNT;
req->datatype = UPLL_DT_RUNNING;
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.ValidateMessage(req, ikey));
-
ikey=NULL;
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.ValidateMessage(req, ikey));
+ key_vtn *key7(UT_CLONE(key_vtn, key));
+ val_vtn *val7(UT_CLONE(val_vtn, val));
+ ConfigVal *cfgval7(new ConfigVal(IpctSt::kIpcStValVtn, val7));
+ ConfigKeyVal *ikey7( new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVbr,
+ key7, cfgval7));
+ EXPECT_EQ(UPLL_RC_ERR_BAD_REQUEST, vtn.ValidateMessage(req, ikey7));
- ikey = new ConfigKeyVal(UNC_KT_VTN,
- IpctSt::kIpcStKeyVbr,
- key, cfgval);
- EXPECT_EQ(UPLL_RC_ERR_BAD_REQUEST, vtn.ValidateMessage(req, ikey));
-
- ikey = new ConfigKeyVal(UNC_KT_VBRIDGE,
- IpctSt::kIpcStKeyVtn,
- key, cfgval);
- EXPECT_EQ(UPLL_RC_ERR_BAD_REQUEST, vtn.ValidateMessage(req, ikey));
+ key_vtn *key8(UT_CLONE(key_vtn, key));
+ val_vtn *val8(UT_CLONE(val_vtn, val));
+ ConfigVal *cfgval8(new ConfigVal(IpctSt::kIpcStValVtn, val8));
+ ConfigKeyVal *ikey8(new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVtn,
+ key8, cfgval8));
+ EXPECT_EQ(UPLL_RC_ERR_BAD_REQUEST, vtn.ValidateMessage(req, ikey8));
+ delete ikey;
+ delete ikey1;
+ delete rename_ikey;
+ delete ikey3;
+ delete ikey4;
+ delete invrename_ikey;
+ delete ikey6;
+ delete ikey7;
+ delete ikey8;
}
-TEST(ValidateMessage, ValidateMessage_02) {
-
+TEST_F(VtnMoMgrTest, ValidateMessage_02) {
VtnMoMgr vtn;
key_vtn *key;
val_vtn *val;
IpctSt::kIpcStKeyVtn,
key, cfgval);
- IpcReqRespHeader *req;
- req = reinterpret_cast<IpcReqRespHeader *>(malloc
- (sizeof(IpcReqRespHeader)));
- memset(req,0,sizeof(IpcReqRespHeader));
+ IPC_REQ_RESP_HEADER_DECL(req);
req->clnt_sess_id = 5;
req->config_id = 14;
req->operation = UNC_OP_UPDATE;
req->datatype = UPLL_DT_CANDIDATE;
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.ValidateMessage(req, ikey));
+
+ key_vtn *key1(UT_CLONE(key_vtn, key));
+ val_vtn *val1(UT_CLONE(val_vtn, val));
+ ConfigVal *cfgval1(new ConfigVal(IpctSt::kIpcStValVtn, val1));
+ ConfigKeyVal *ikey1(new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn,
+ key1, cfgval1));
req->operation = UNC_OP_CONTROL;
- ConfigKeyVal *ikey4 = new ConfigKeyVal(UNC_KT_VTN,
- IpctSt::kIpcStKeyVtn,
- key, cfgval);
- EXPECT_EQ(UPLL_RC_ERR_NOT_ALLOWED_FOR_THIS_DT, vtn.ValidateMessage(req, ikey));
+ EXPECT_EQ(UPLL_RC_ERR_NOT_ALLOWED_FOR_THIS_DT,
+ vtn.ValidateMessage(req, ikey1));
req->operation = UNC_OP_UPDATE;
- ConfigVal *cfgval1 = new ConfigVal(IpctSt::kIpcStValVbr, val);
- ConfigKeyVal *ikey1 = new ConfigKeyVal(UNC_KT_VTN,
- IpctSt::kIpcStKeyVtn,
- key, cfgval1);
- EXPECT_EQ(UPLL_RC_ERR_BAD_REQUEST, vtn.ValidateMessage(req, ikey1));
+ key_vtn *key2(UT_CLONE(key_vtn, key));
+ val_vtn *val2(UT_CLONE(val_vtn, val));
+ ConfigVal *cfgval2(new ConfigVal(IpctSt::kIpcStValVbr, val2));
+ ConfigKeyVal *ikey2(new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn,
+ key2, cfgval2));
+ EXPECT_EQ(UPLL_RC_ERR_BAD_REQUEST, vtn.ValidateMessage(req, ikey2));
+
+ key_vtn *key3(UT_CLONE(key_vtn, key));
+ ConfigKeyVal *ikey3(new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn,
+ key3, NULL));
+ EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, vtn.ValidateMessage(req, ikey3));
- ConfigVal *cfgval2 = NULL;
- ConfigKeyVal *ikey2 = new ConfigKeyVal(UNC_KT_VTN,
- IpctSt::kIpcStKeyVtn,
- key, cfgval2);
- EXPECT_EQ(UPLL_RC_ERR_CFG_SYNTAX, vtn.ValidateMessage(req, ikey2));
-
- val = NULL;
- ConfigVal *cfgval3 = new ConfigVal(IpctSt::kIpcStValVtn, val);
- ConfigKeyVal *ikey3 = new ConfigKeyVal(UNC_KT_VTN,
- IpctSt::kIpcStKeyVtn,
- key, cfgval3);
- EXPECT_EQ(UPLL_RC_SUCCESS, vtn.ValidateMessage(req, ikey3));
+ key_vtn *key4(UT_CLONE(key_vtn, key));
+ ConfigVal *cfgval4(new ConfigVal(IpctSt::kIpcStValVtn, NULL));
+ ConfigKeyVal *ikey4(new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn,
+ key4, cfgval4));
+ EXPECT_EQ(UPLL_RC_SUCCESS, vtn.ValidateMessage(req, ikey4));
+ delete ikey;
+ delete ikey1;
+ delete ikey2;
+ delete ikey3;
+ delete ikey4;
}
-TEST(ValidateMessage, ValidateMessage_03) {
+TEST_F(VtnMoMgrTest, ValidateMessage_03) {
VtnMoMgr vtn;
key_vtn *key;
val_vtn *val;
IpctSt::kIpcStKeyVtn,
key, cfgval);
- IpcReqRespHeader *req;
- req = reinterpret_cast<IpcReqRespHeader *>(malloc
- (sizeof(IpcReqRespHeader)));
- memset(req,0,sizeof(IpcReqRespHeader));
+ IPC_REQ_RESP_HEADER_DECL(req);
req->clnt_sess_id = 5;
req->config_id = 14;
req->rep_count = 100;
req->option2 = UNC_OPT2_NONE;
req->option1 = UNC_OPT1_NORMAL;
- ConfigVal *cfgval1 = new ConfigVal(IpctSt::kIpcStValVbr, val);
- ConfigKeyVal *ikey1 = new ConfigKeyVal(UNC_KT_VTN,
- IpctSt::kIpcStKeyVtn,
- key, cfgval1);
+ key_vtn *key1(UT_CLONE(key_vtn, key));
+ val_vtn *val1(UT_CLONE(val_vtn, val));
+ ConfigVal *cfgval1(new ConfigVal(IpctSt::kIpcStValVbr, val1));
+ ConfigKeyVal *ikey1(new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn,
+ key1, cfgval1));
EXPECT_EQ(UPLL_RC_ERR_BAD_REQUEST, vtn.ValidateMessage(req, ikey1));
- ConfigVal *cfgval2 = NULL;
- ConfigKeyVal *ikey2 = new ConfigKeyVal(UNC_KT_VTN,
- IpctSt::kIpcStKeyVtn,
- key, cfgval2);
+ key_vtn *key2(UT_CLONE(key_vtn, key));
+ ConfigKeyVal *ikey2(new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn,
+ key2, NULL));
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.ValidateMessage(req, ikey2));
- val_vtn *val1=NULL;
- ConfigVal *cfgval3 = new ConfigVal(IpctSt::kIpcStValVtn, val1);
- ConfigKeyVal *ikey3 = new ConfigKeyVal(UNC_KT_VTN,
- IpctSt::kIpcStKeyVtn,
- key, cfgval3);
+ key_vtn *key3(UT_CLONE(key_vtn, key));
+ ConfigVal *cfgval3(new ConfigVal(IpctSt::kIpcStValVtn, NULL));
+ ConfigKeyVal *ikey3(new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn,
+ key3, cfgval3));
EXPECT_EQ(UPLL_RC_ERR_BAD_REQUEST, vtn.ValidateMessage(req, ikey3));
+ delete ikey;
+ delete ikey1;
+ delete ikey2;
+ delete ikey3;
}
-TEST(ValidateMessage, ValidateMessage_04) {
+TEST_F(VtnMoMgrTest, ValidateMessage_04) {
VtnMoMgr vtn;
key_vtn *key;
val_vtn *val;
IpctSt::kIpcStKeyVtn,
key, cfgval);
- IpcReqRespHeader *req;
- req = reinterpret_cast<IpcReqRespHeader *>(malloc
- (sizeof(IpcReqRespHeader)));
- memset(req,0,sizeof(IpcReqRespHeader));
+ IPC_REQ_RESP_HEADER_DECL(req);
req->clnt_sess_id = 5;
req->config_id = 14;
req->rep_count = 100;
EXPECT_EQ(UPLL_RC_ERR_INVALID_OPTION2, vtn.ValidateMessage(req, ikey));
req->option2 = UNC_OPT2_NONE;
- ConfigVal *cfgval1 = new ConfigVal(IpctSt::kIpcStValVbr, val);
- ConfigKeyVal *ikey1 = new ConfigKeyVal(UNC_KT_VTN,
- IpctSt::kIpcStKeyVtn,
- key, cfgval1);
+
+ key_vtn *key1(UT_CLONE(key_vtn, key));
+ val_vtn *val1(UT_CLONE(val_vtn, val));
+ ConfigVal *cfgval1(new ConfigVal(IpctSt::kIpcStValVbr, val1));
+ ConfigKeyVal *ikey1(new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn,
+ key1, cfgval1));
EXPECT_EQ(UPLL_RC_ERR_BAD_REQUEST, vtn.ValidateMessage(req, ikey1));
- ConfigVal *cfgval2 = NULL;
- ConfigKeyVal *ikey2 = new ConfigKeyVal(UNC_KT_VTN,
- IpctSt::kIpcStKeyVtn,
- key, cfgval2);
+ key_vtn *key2(UT_CLONE(key_vtn, key));
+ ConfigKeyVal *ikey2(new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn,
+ key2, NULL));
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.ValidateMessage(req, ikey2));
- val_vtn *val1=NULL;
- ConfigVal *cfgval3 = new ConfigVal(IpctSt::kIpcStValVtn, val1);
- ConfigKeyVal *ikey3 = new ConfigKeyVal(UNC_KT_VTN,
- IpctSt::kIpcStKeyVtn,
- key, cfgval3);
+ key_vtn *key3(UT_CLONE(key_vtn, key));
+ ConfigVal *cfgval3(new ConfigVal(IpctSt::kIpcStValVtn, NULL));
+ ConfigKeyVal *ikey3(new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn,
+ key3, cfgval3));
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.ValidateMessage(req, ikey3));
+
+ delete ikey;
+ delete ikey1;
+ delete ikey2;
+ delete ikey3;
}
-TEST(ValVtnAttributeSupportCheck, ValVtnAttributeSupportCheck_01) {
+TEST_F(VtnMoMgrTest, ValVtnAttributeSupportCheck_01) {
VtnMoMgr vtn;
key_vtn *key;
val_vtn *val;
-
GetKeyValStruct(key, val);
+
uint32_t operation= UNC_OP_CREATE;
uint8_t ckv_count1=1;
uint8_t *attrs=&ckv_count1;
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.ValVtnAttributeSupportCheck(val,attrs,operation));
delete ikey;
}
-TEST(ValVtnAttributeSupportCheck, ValVtnAttributeSupportCheck_02) {
+TEST_F(VtnMoMgrTest, ValVtnAttributeSupportCheck_02) {
VtnMoMgr vtn;
key_vtn *key;
val_vtn *val;
-
GetKeyValStruct(key, val);
+
uint32_t operation= UNC_OP_CREATE;
val->valid[UPLL_IDX_DESC_VTN] = UNC_VF_VALID;
uint8_t ckv_count1=1;
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.ValVtnAttributeSupportCheck(val,attrs,operation));
delete ikey;
}
-TEST(SetOperStatus, ikey_NULL) {
+TEST_F(VtnMoMgrTest, SetOperStatus_ikey_NULL) {
VtnMoMgr vtn;
- key_vtn *key;
- val_vtn *val;
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
- GetKeyValStruct(key, val);
state_notification notification=kCtrlrReconnect;
ConfigKeyVal *ikey =NULL;
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.SetOperStatus(ikey,notification,dmi));
- delete ikey;
}
-TEST(SetConsolidatedStatus, invalid_key) {
+TEST_F(VtnMoMgrTest, SetConsolidatedStatus_invalid_key) {
VtnMoMgr vtn;
const char *vtn_name = "VTN_1";
- key_vtn_t *key = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- val_db_vtn_st_t *val = (val_db_vtn_st_t *)malloc(sizeof(val_db_vtn_st_t));
- memset(key,0,sizeof(key_vtn));
+ key_vtn_t *key(ZALLOC_TYPE(key_vtn_t));
+ val_db_vtn_st_t *val(ZALLOC_TYPE(val_db_vtn_st_t));
strncpy(reinterpret_cast<char *>(key->vtn_name),
- vtn_name, strlen(vtn_name)+1);
+ vtn_name, strlen(vtn_name)+1);
val->down_count=0;
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnSt, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVtn, key, config_val);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.SetConsolidatedStatus(ikey,dmi));
delete ikey;
}
-TEST(SetConsolidatedStatus, valid_key) {
+TEST_F(VtnMoMgrTest, SetConsolidatedStatus_valid_key) {
VtnMoMgr vtn;
const char *vtn_name = "VTN_1";
- key_vtn_t *key = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- val_db_vtn_st_t *val = (val_db_vtn_st_t *)malloc(sizeof(val_db_vtn_st_t));
- memset(key,0,sizeof(key_vtn));
+ key_vtn_t *key(ZALLOC_TYPE(key_vtn_t));
+ val_db_vtn_st_t *val(ZALLOC_TYPE(val_db_vtn_st_t));
strncpy(reinterpret_cast<char *>(key->vtn_name),
- vtn_name, strlen(vtn_name)+1);
+ vtn_name, strlen(vtn_name)+1);
val->down_count=0;
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnSt, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, key, config_val);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.SetConsolidatedStatus(ikey,dmi));
delete ikey;
}
-TEST(SetOperStatus, notification_kCtrlrReconnectIfUp) {
+TEST_F(VtnMoMgrTest, SetOperStatus_notification_kCtrlrReconnectIfUp) {
VtnMoMgr vtn;
const char *vtn_name = "VTN_1";
- key_vtn_t *key = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- val_db_vtn_st_t *val = (val_db_vtn_st_t *)malloc(sizeof(val_db_vtn_st_t));
- memset(key,0,sizeof(key_vtn));
+ key_vtn_t *key(ZALLOC_TYPE(key_vtn_t));
+ val_db_vtn_st_t *val(ZALLOC_TYPE(val_db_vtn_st_t));
strncpy(reinterpret_cast<char *>(key->vtn_name),
- vtn_name, strlen(vtn_name)+1);
+ vtn_name, strlen(vtn_name)+1);
val->down_count=0;
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
state_notification notification=kCtrlrReconnectIfUp;
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnSt, val);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.SetOperStatus(ikey,notification,dmi));
delete ikey;
}
-TEST(SetOperStatus, notification_kCtrlrDisconnect) {
+TEST_F(VtnMoMgrTest, SetOperStatus_notification_kCtrlrDisconnect) {
const char *vtn_name = "VTN_1";
VtnMoMgr vtn;
- key_vtn_t *key = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- val_db_vtn_st_t *val = (val_db_vtn_st_t *)malloc(sizeof(val_db_vtn_st_t));
- memset(key,0,sizeof(key_vtn));
+ key_vtn_t *key(ZALLOC_TYPE(key_vtn_t));
+ val_db_vtn_st_t *val(ZALLOC_TYPE(val_db_vtn_st_t));
strncpy(reinterpret_cast<char *>(key->vtn_name),
- vtn_name, strlen(vtn_name)+1);
+ vtn_name, strlen(vtn_name)+1);
val->down_count=0;
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
state_notification notification=kCtrlrDisconnect;
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnSt, val);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.SetOperStatus(ikey,notification,dmi));
delete ikey;
}
-TEST(SetCtrlrOperStatus, ikey_NULL) {
+TEST_F(VtnMoMgrTest, SetCtrlrOperStatus_ikey_NULL) {
VtnMoMgr vtn;
- key_vtn *key;
- val_vtn *val;
- DalDmlIntf *dmi= new DalOdbcMgr();
-
- GetKeyValStruct(key, val);
+ DalDmlIntf *dmi(getDalDmlIntf());
state_notification notification=kCtrlrReconnect;
ConfigKeyVal *ikey =NULL;
bool oper_change;
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.SetCtrlrOperStatus(ikey,notification,dmi,oper_change));
delete ikey;
}
-TEST(SetCtrlrOperStatus, kCtrlrReconnectIfUp) {
+TEST_F(VtnMoMgrTest, SetCtrlrOperStatus_kCtrlrReconnectIfUp) {
VtnMoMgr vtn;
const char *vtn_name = "VTN_1";
const char *controller_name = "pfc1";
const char *domain_id = "dom1";
- key_vtn_controller *key = (key_vtn_controller *)malloc(sizeof(key_vtn_controller));
- memset(key,0,sizeof(key_vtn_controller));
+ key_vtn_controller *key(ZALLOC_TYPE(key_vtn_controller));
strncpy(reinterpret_cast<char *>(key->controller_name),
- vtn_name, strlen(controller_name)+1);
+ vtn_name, strlen(controller_name)+1);
strncpy(reinterpret_cast<char *>(key->domain_id),
- vtn_name, strlen(domain_id)+1);
- val_vtn_ctrlr_t *val_vtn = (val_vtn_ctrlr_t *)malloc(sizeof(val_vtn_ctrlr_t));
+ vtn_name, strlen(domain_id)+1);
+ val_vtn_ctrlr_t *val_vtn(ZALLOC_TYPE(val_vtn_ctrlr_t));
ConfigVal *config_val = new ConfigVal(IpctSt::kIpcStValVtn, val_vtn);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, key, config_val);
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
state_notification notification=kCtrlrReconnectIfUp;
bool oper_change;
delete ikey;
}
-TEST(SetCtrlrOperStatus, kCtrlrReconnectIfDown) {
-
+TEST_F(VtnMoMgrTest, SetCtrlrOperStatus_kCtrlrReconnectIfDown) {
VtnMoMgr vtn;
const char *vtn_name = "VTN_1";
const char *controller_name = "pfc1";
const char *domain_id = "dom1";
- key_vtn_controller *key = (key_vtn_controller *)malloc(sizeof(key_vtn_controller));
- memset(key,0,sizeof(key_vtn_controller));
+ key_vtn_controller *key(ZALLOC_TYPE(key_vtn_controller));
strncpy(reinterpret_cast<char *>(key->controller_name),
- vtn_name, strlen(controller_name)+1);
+ vtn_name, strlen(controller_name)+1);
strncpy(reinterpret_cast<char *>(key->domain_id),
- vtn_name, strlen(domain_id)+1);
- val_vtn_ctrlr_t *val_vtn = (val_vtn_ctrlr_t *)malloc(sizeof(val_vtn_ctrlr_t));
+ vtn_name, strlen(domain_id)+1);
+ val_vtn_ctrlr_t *val_vtn(ZALLOC_TYPE(val_vtn_ctrlr_t));
ConfigVal *config_val = new ConfigVal(IpctSt::kIpcStValVtn, val_vtn);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, key, config_val);
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
state_notification notification=kCtrlrReconnectIfDown;
bool oper_change;
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.SetCtrlrOperStatus(ikey,notification,dmi,oper_change));
delete ikey;
}
-TEST(VtnSetOperStatus, default) {
+TEST_F(VtnMoMgrTest, VtnSetOperStatus_default) {
VtnMoMgr vtn;
- key_vtn_t *key = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- val_vtn_t *val = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ key_vtn_t *key;
+ val_vtn_t *val;
+ DalDmlIntf *dmi(getDalDmlIntf());
GetKeyValStruct(key, val);
- DalDmlIntf *dmi= new DalOdbcMgr();
state_notification notification=kCtrlrReconnect;
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnSt, val);
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.VtnSetOperStatus(vtn_name_o,dmi,notification));
delete ikey;
}
-TEST(VtnSetOperStatus, Valid) {
+TEST_F(VtnMoMgrTest, VtnSetOperStatus_Valid) {
VtnMoMgr vtn;
- key_vtn_t *key = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- val_vtn_t *val = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ key_vtn_t *key;
+ val_vtn_t *val;
+ DalDmlIntf *dmi(getDalDmlIntf());
GetKeyValStruct(key, val);
- DalDmlIntf *dmi= new DalOdbcMgr();
state_notification notification=kCtrlrReconnect;
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnSt, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, key, config_val);
- uint8_t *ctr_id1 = (uint8_t *)malloc(32);
- memset(ctr_id1, '\0', 32);
+ uint8_t *ctr_id1 = ZALLOC_ARRAY(uint8_t, 32);
memcpy(ctr_id1, "Controller1", 11);
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.VtnSetOperStatus(ctr_id1,dmi,notification));
delete ikey;
+ free(ctr_id1);
}
-TEST(VtnSetOperStatus, Valid_01) {
+TEST_F(VtnMoMgrTest, VtnSetOperStatus_Valid_01) {
VtnMoMgr vtn;
- key_vtn_t *key = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- val_vtn_t *val = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ key_vtn_t *key;
+ val_vtn_t *val;
+ DalDmlIntf *dmi(getDalDmlIntf());
GetKeyValStruct(key, val);
- DalDmlIntf *dmi= new DalOdbcMgr();
state_notification notification=kCtrlrReconnectIfUp;
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnSt, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, key, config_val);
- uint8_t *ctr_id1 = (uint8_t *)malloc(32);
- memset(ctr_id1, '\0', 32);
+ uint8_t *ctr_id1 = ZALLOC_ARRAY(uint8_t, 32);
memcpy(ctr_id1, "Controller1", 11);
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.VtnSetOperStatus(ctr_id1,dmi,notification));
delete ikey;
+ free(ctr_id1);
}
-TEST(TxUpdateDtState,UNC_KT_VTN_01 ) {
+TEST_F(VtnMoMgrTest, TxUpdateDtState_UNC_KT_VTN_01) {
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::MULTIPLE,kDalRcSuccess);
std::map<uint8_t,DalResultCode> map;
map.insert(std::make_pair(1,kDalRcRecordNoMore));
unc_key_type_t ktype=UNC_KT_VTN;
uint32_t session_id=1;
uint32_t config_id=2;
- key_vtn_t *key = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- val_vtn_t *val = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ key_vtn_t *key;
+ val_vtn_t *val;
GetKeyValStruct(key, val);
+
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, key, config_val);
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.TxUpdateDtState(ktype,session_id,config_id,dmi));
delete ikey;
- DalOdbcMgr::clearStubData();
}
-TEST(TxUpdateDtState,UNC_KT_VTN_02 ) {
+TEST_F(VtnMoMgrTest, TxUpdateDtState_UNC_KT_VTN_02) {
VtnMoMgr vtn;
unc_key_type_t ktype=UNC_KT_VTN;
uint32_t session_id=1;
uint32_t config_id=2;
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.TxUpdateDtState(ktype,session_id,config_id,dmi));
}
-TEST(TxUpdateDtState,UNC_KT_VBRIDGE ) {
+TEST_F(VtnMoMgrTest, TxUpdateDtState_UNC_KT_VBRIDGE) {
VtnMoMgr vtn;
unc_key_type_t ktype=UNC_KT_VBRIDGE;
uint32_t session_id=1;
uint32_t config_id=2;
- DalDmlIntf *dmi= new DalOdbcMgr();
- key_vtn_t *key = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- val_vtn_st_t *val = (val_vtn_st_t *)malloc(sizeof(val_vtn_st_t));
+ DalDmlIntf *dmi(getDalDmlIntf());
+ key_vtn_t *key;
+ val_vtn_st_t *val;
GetKeyValStructSt(key, val);
+
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnSt, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, key, config_val);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.TxUpdateDtState(ktype,session_id,config_id,dmi));
delete ikey;
}
-TEST(UpdateVnodeOperStatus,UNC_KT_VBRIDGE ) {
+TEST_F(VtnMoMgrTest, UpdateVnodeOperStatus_UNC_KT_VBRIDGE) {
VtnMoMgr vtn;
state_notification notification=kCtrlrReconnect;
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
bool skip=true;
uint8_t *ctrlr_id=NULL;
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.UpdateVnodeOperStatus(ctrlr_id,dmi,notification,skip));
}
-TEST(UpdateVnodeOperStatus,kCtrlrDisconnect ) {
+TEST_F(VtnMoMgrTest, UpdateVnodeOperStatus_kCtrlrDisconnect) {
VtnMoMgr vtn;
state_notification notification=kCtrlrDisconnect;
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
bool skip=true;
uint8_t *ctrlr_id=NULL;
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.UpdateVnodeOperStatus(ctrlr_id,dmi,notification,skip));
}
-TEST(UpdateVnodeOperStatus,val_NULL ) {
+TEST_F(VtnMoMgrTest, UpdateVnodeOperStatus_val_NULL) {
VtnMoMgr vtn;
state_notification notification=kCtrlrReconnect;
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
- key_vbr_t *key = (key_vbr_t *)malloc(sizeof(key_vbr_t));
+ key_vbr_t *key(ZALLOC_TYPE(key_vbr_t));
val_db_vbr_st *val=NULL;
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrSt, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVbr, key, config_val);
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.UpdateVnodeOperStatus(ctrlr_id,dmi,notification,skip));
delete ikey;
}
-TEST(UpdateVnodeOperStatus,ikey_NULL ) {
+TEST_F(VtnMoMgrTest, UpdateVnodeOperStatus_ikey_NULL) {
VtnMoMgr vtn;
state_notification notification=kCtrlrReconnect;
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
ConfigKeyVal *ikey = NULL;
bool skip=true;
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.UpdateVnodeOperStatus(ctrlr_id,dmi,notification,skip));
delete ikey;
}
-TEST(UpdateVnodeOperStatus,UNC_KT_VBR_IF ) {
+TEST_F(VtnMoMgrTest, UpdateVnodeOperStatus_UNC_KT_VBR_IF) {
VtnMoMgr vtn;
state_notification notification=kCtrlrReconnect;
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
bool skip=true;
uint8_t *ctrlr_id=NULL;
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.UpdateVnodeOperStatus(ctrlr_id,dmi,notification,skip));
}
-TEST(UpdateVnodeOperStatus,UNC_KT_VROUTER ) {
+TEST_F(VtnMoMgrTest, UpdateVnodeOperStatus_UNC_KT_VROUTER) {
VtnMoMgr vtn;
state_notification notification=kCtrlrReconnect;
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
bool skip=true;
- key_vrt_t *key = (key_vrt_t *)malloc(sizeof(key_vrt_t));
- val_db_vrt_st_t *val = (val_db_vrt_st_t *)malloc(sizeof(val_db_vrt_st_t));
+ key_vrt_t *key(ZALLOC_TYPE(key_vrt_t));
+ val_db_vrt_st_t *val(ZALLOC_TYPE(val_db_vrt_st_t));
val->down_count=0;
val->fault_count=0;
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVrtSt, val);
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.UpdateVnodeOperStatus(ctrlr_id,dmi,notification,skip));
delete ikey;
}
-TEST(UpdateVnodeIfOperStatus,UNC_KT_VBR_IF ) {
+TEST_F(VtnMoMgrTest, UpdateVnodeIfOperStatus_UNC_KT_VBR_IF) {
VtnMoMgr vtn;
state_notification notification=kCtrlrReconnect;
- DalDmlIntf *dmi= new DalOdbcMgr();
- key_vbr_if_t *key = (key_vbr_if_t *)malloc(sizeof(key_vbr_if_t));
- val_db_vbr_if_st_t *val = (val_db_vbr_if_st_t *)malloc(sizeof(val_db_vbr_if_st_t));
+ DalDmlIntf *dmi(getDalDmlIntf());
+ key_vbr_if_t *key(ZALLOC_TYPE(key_vbr_if_t));
+ val_db_vbr_if_st_t *val(ZALLOC_TYPE(val_db_vbr_if_st_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrIfSt, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVbrIf, key, config_val);
bool skip=true;
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.UpdateVnodeIfOperStatus(ikey,dmi,notification,skip,if_type));
delete ikey;
}
-TEST(UpdateVnodeIfOperStatus,UNC_KT_VRT_IF ) {
+TEST_F(VtnMoMgrTest, UpdateVnodeIfOperStatus_UNC_KT_VRT_IF) {
VtnMoMgr vtn;
state_notification notification=kCtrlrReconnect;
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
bool skip=true;
int if_type=kLinkedInterface;
- key_vrt_if_t *key = (key_vrt_if_t *)malloc(sizeof(key_vrt_if_t));
- val_db_vrt_if_st_t *val = (val_db_vrt_if_st_t *)malloc(sizeof(val_db_vrt_if_st_t));
+ key_vrt_if_t *key(ZALLOC_TYPE(key_vrt_if_t));
+ val_db_vrt_if_st_t *val(ZALLOC_TYPE(val_db_vrt_if_st_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVrtIfSt, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VRT_IF, IpctSt::kIpcStKeyVrtIf, key, config_val);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.UpdateVnodeIfOperStatus(ikey,dmi,notification,skip,if_type));
delete ikey;
}
-TEST(UpdateVnodeIfOperStatus,UNC_KT_VROUTER ) {
+TEST_F(VtnMoMgrTest, UpdateVnodeIfOperStatus_UNC_KT_VROUTER) {
VtnMoMgr vtn;
state_notification notification=kCtrlrReconnect;
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
bool skip=true;
int if_type=kLinkedInterface;
- key_vrt_t *key = (key_vrt_t *)malloc(sizeof(key_vrt_t));
- val_db_vrt_st_t *val = (val_db_vrt_st_t *)malloc(sizeof(val_db_vrt_st_t));
+ key_vrt_t *key(ZALLOC_TYPE(key_vrt_t));
+ val_db_vrt_st_t *val(ZALLOC_TYPE(val_db_vrt_st_t));
val->down_count=0;
val->fault_count=0;
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVrtSt, val);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.UpdateVnodeIfOperStatus(ikey,dmi,notification,skip,if_type));
delete ikey;
}
-TEST(RestoreVtnOperStatus,invalid_keytype ) {
+TEST_F(VtnMoMgrTest, RestoreVtnOperStatus_invalid_keytype) {
VtnMoMgr vtn;
state_notification notification=kCtrlrDisconnect;
- DalDmlIntf *dmi= new DalOdbcMgr();
- key_vtn_t *key = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- val_vtn_t *val = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ DalDmlIntf *dmi(getDalDmlIntf());
+ key_vtn_t *key;
+ val_vtn_t *val;
GetKeyValStruct(key, val);
+
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnSt, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVtn, key, config_val);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.RestoreVtnOperStatus(ikey,dmi,notification));
delete ikey;
}
-TEST(RestoreVtnOperStatus,VALID ) {
+TEST_F(VtnMoMgrTest, RestoreVtnOperStatus_VALID) {
VtnMoMgr vtn;
state_notification notification=kCtrlrDisconnect;
- DalDmlIntf *dmi= new DalOdbcMgr();
- key_vtn_t *key = (key_vtn_t *)malloc(sizeof(key_vtn_t));
+ DalDmlIntf *dmi(getDalDmlIntf());
+ key_vtn_t *key(ZALLOC_TYPE(key_vtn_t));
val_db_vtn_st_t *val = NULL;
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnSt, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, key, config_val);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.RestoreVtnOperStatus(ikey,dmi,notification));
delete ikey;
}
-TEST(RestoreVtnOperStatus,VALID_01 ) {
+
+TEST_F(VtnMoMgrTest, RestoreVtnOperStatus_VALID_01) {
VtnMoMgr vtn;
state_notification notification=kCtrlrDisconnect;
- DalDmlIntf *dmi= new DalOdbcMgr();
- key_vtn_t *key = (key_vtn_t *)malloc(sizeof(key_vtn_t));
+ DalDmlIntf *dmi(getDalDmlIntf());
+ key_vtn_t *key;
val_vtn_t *val;
GetKeyValStruct(key,val);
+
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnSt, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, key, config_val);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::SINGLE,kDalRcSuccess);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.RestoreVtnOperStatus(ikey,dmi,notification));
delete ikey;
- DalOdbcMgr::clearStubData();
}
-TEST(RestoreVtnOperStatus,VALID_02 ) {
+
+TEST_F(VtnMoMgrTest, RestoreVtnOperStatus_VALID_02) {
VtnMoMgr vtn;
state_notification notification=kCtrlrReconnect;
- DalDmlIntf *dmi= new DalOdbcMgr();
- key_vtn_t *key = (key_vtn_t *)malloc(sizeof(key_vtn_t));
+ DalDmlIntf *dmi(getDalDmlIntf());
+ key_vtn_t *key;
val_vtn_t *val;
GetKeyValStruct(key,val);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::SINGLE,kDalRcSuccess);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.RestoreVtnOperStatus(ikey,dmi,notification));
delete ikey;
- DalOdbcMgr::clearStubData();
}
-TEST(RestoreVtnOperStatus,VALID_03 ) {
+
+TEST_F(VtnMoMgrTest, RestoreVtnOperStatus_VALID_03) {
VtnMoMgr vtn;
state_notification notification=kCtrlrDisconnect;
- DalDmlIntf *dmi= new DalOdbcMgr();
- key_vtn_t *key = (key_vtn_t *)malloc(sizeof(key_vtn_t));
+ DalDmlIntf *dmi(getDalDmlIntf());
+ key_vtn_t *key;
val_vtn_t *val;
GetKeyValStruct(key,val);
+
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnSt, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, key, config_val);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::SINGLE,kDalRcSuccess);
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.RestoreVtnOperStatus(ikey,dmi,notification));
delete ikey;
- DalOdbcMgr::clearStubData();
}
-TEST(RestoreVtnOperStatus,ikey_NULL ) {
+TEST_F(VtnMoMgrTest, RestoreVtnOperStatus_ikey_NULL) {
VtnMoMgr vtn;
state_notification notification=kCtrlrReconnect;
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
ConfigKeyVal *ikey = NULL;
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.RestoreVtnOperStatus(ikey,dmi,notification));
delete ikey;
}
-TEST(RestoreVtnCtrlrOperStatus,ikey_NULL ) {
+
+TEST_F(VtnMoMgrTest, RestoreVtnCtrlrOperStatus_ikey_NULL) {
VtnMoMgr vtn;
state_notification notification=kCtrlrReconnect;
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
uint8_t *ctrlr_id=NULL;
- key_vtn_t *key = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- val_vtn_t *val = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ key_vtn_t *key;
+ val_vtn_t *val;
GetKeyValStruct(key, val);
+
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnSt, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBR_IF, IpctSt::kIpcStKeyVtn, key, config_val);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.RestoreVtnCtrlrOperStatus(ctrlr_id,dmi,notification));
delete ikey;
}
-TEST(RestoreVtnCtrlrOperStatus,valid_01 ) {
+
+TEST_F(VtnMoMgrTest, RestoreVtnCtrlrOperStatus_valid_01) {
VtnMoMgr vtn;
state_notification notification=kCtrlrReconnect;
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
uint8_t *ctrlr_id=NULL;
- key_vtn_controller_t *key_ctrlr = reinterpret_cast<key_vtn_controller_t *>(malloc
- (sizeof(key_vtn_controller_t)));
+ key_vtn_controller_t *key_ctrlr(ZALLOC_TYPE(key_vtn_controller_t));
uuu::upll_strncpy(key_ctrlr->controller_name,"controller_name1", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(key_ctrlr->domain_id,"domain_id", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(key_ctrlr->vtn_key.vtn_name,"vtn_name1", (kMaxLenCtrlrId + 1));
- val_vtn_ctrlr_t *val_ctrlr = reinterpret_cast<val_vtn_ctrlr_t *>(malloc
- (sizeof(val_vtn_ctrlr_t)));
+ val_vtn_ctrlr_t *val_ctrlr(ZALLOC_TYPE(val_vtn_ctrlr_t));
val_ctrlr->ref_count=1;
val_ctrlr->down_count=1;
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnSt, val_ctrlr);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.RestoreVtnCtrlrOperStatus(ctrlr_id,dmi,notification));
delete ikey;
- DalOdbcMgr::clearStubData();
}
-TEST(RestoreVtnCtrlrOperStatus,valid_02 ) {
+TEST_F(VtnMoMgrTest, RestoreVtnCtrlrOperStatus_valid_02) {
VtnMoMgr vtn;
state_notification notification=kCtrlrReconnect;
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::INIT,kDalRcSuccess);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::MULTIPLE,kDalRcSuccess);
std::map<uint8_t,DalResultCode> map;
map.insert(std::make_pair(1,kDalRcRecordNoMore));
map.insert(std::make_pair(0,kDalRcSuccess));
DalOdbcMgr::stub_setNextRecordResultCodes(map);
- uint8_t *ctr_id1 = (uint8_t *)malloc(32);
- memset(ctr_id1, '\0', 32);
+ uint8_t *ctr_id1 = ZALLOC_ARRAY(uint8_t, 32);
memcpy(ctr_id1, "Controller1", 11);
- key_vtn_controller_t *key_ctrlr = reinterpret_cast<key_vtn_controller_t *>(malloc
- (sizeof(key_vtn_controller_t)));
+ key_vtn_controller_t *key_ctrlr(ZALLOC_TYPE(key_vtn_controller_t));
uuu::upll_strncpy(key_ctrlr->controller_name,"controller_name1", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(key_ctrlr->domain_id,"domain_id", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(key_ctrlr->vtn_key.vtn_name,"vtn_name1", (kMaxLenCtrlrId + 1));
- val_vtn_ctrlr_t *val_ctrlr = reinterpret_cast<val_vtn_ctrlr_t *>(malloc
- (sizeof(val_vtn_ctrlr_t)));
+ val_vtn_ctrlr_t *val_ctrlr(ZALLOC_TYPE(val_vtn_ctrlr_t));
val_ctrlr->ref_count=1;
val_ctrlr->down_count=1;
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnSt, val_ctrlr);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.RestoreVtnCtrlrOperStatus(ctr_id1,dmi,notification));
delete ikey;
- DalOdbcMgr::clearStubData();
+ free(ctr_id1);
}
-TEST(RestoreVtnCtrlrOperStatus,valid_03 ) {
+TEST_F(VtnMoMgrTest, RestoreVtnCtrlrOperStatus_valid_03) {
VtnMoMgr vtn;
state_notification notification=kCtrlrReconnect;
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
uint8_t *ctrlr_id=NULL;
- key_vtn_controller_t *key_ctrlr = reinterpret_cast<key_vtn_controller_t *>(malloc
- (sizeof(key_vtn_controller_t)));
+ key_vtn_controller_t *key_ctrlr(ZALLOC_TYPE(key_vtn_controller_t));
uuu::upll_strncpy(key_ctrlr->controller_name,"controller_name1", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(key_ctrlr->domain_id,"domain_id", (kMaxLenCtrlrId + 1));
uuu::upll_strncpy(key_ctrlr->vtn_key.vtn_name,"vtn_name1", (kMaxLenCtrlrId + 1));
- val_vtn_ctrlr_t *val_ctrlr = reinterpret_cast<val_vtn_ctrlr_t *>(malloc
- (sizeof(val_vtn_ctrlr_t)));
+ val_vtn_ctrlr_t *val_ctrlr(ZALLOC_TYPE(val_vtn_ctrlr_t));
val_ctrlr->ref_count=1;
val_ctrlr->down_count=1;
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnSt, val_ctrlr);
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.RestoreVtnCtrlrOperStatus(ctrlr_id,dmi,notification));
delete ikey;
- DalOdbcMgr::clearStubData();
}
-TEST(CreateVtunnelKey,ikey_NULL ) {
+TEST_F(VtnMoMgrTest, CreateVtunnelKey_ikey_NULL) {
VtnMoMgr vtn;
ConfigKeyVal *ikey = NULL;
ConfigKeyVal *okey = NULL;
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.CreateVtunnelKey(ikey,okey));
delete ikey;
}
-TEST(CreateVtunnelKey,IpctSt_invalid ) {
+TEST_F(VtnMoMgrTest, CreateVtunnelKey_IpctSt_invalid) {
VtnMoMgr vtn;
- key_vtunnel_t *key = (key_vtunnel_t *)malloc(sizeof(key_vtunnel_t));
- val_vtunnel_t *val = (val_vtunnel_t *)malloc(sizeof(val_vtunnel_t));
+ key_vtunnel_t *key(ZALLOC_TYPE(key_vtunnel_t));
+ val_vtunnel_t *val(ZALLOC_TYPE(val_vtunnel_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnSt, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTUNNEL, IpctSt::kIpcStKeyVtn, key, config_val);
ConfigKeyVal *okey = NULL;
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.CreateVtunnelKey(ikey,okey));
delete ikey;
}
-TEST(CreateVtunnelKey,IpctSt_valid ) {
+TEST_F(VtnMoMgrTest, CreateVtunnelKey_IpctSt_valid) {
VtnMoMgr vtn;
- key_vtunnel_t *key = (key_vtunnel_t *)malloc(sizeof(key_vtunnel_t));
- val_vtunnel_t *val = (val_vtunnel_t *)malloc(sizeof(val_vtunnel_t));
+ key_vtunnel_t *key(ZALLOC_TYPE(key_vtunnel_t));
+ val_vtunnel_t *val(ZALLOC_TYPE(val_vtunnel_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtunnelSt, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTUNNEL, IpctSt::kIpcStKeyVtunnel, key, config_val);
ConfigKeyVal *okey = NULL;
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.CreateVtunnelKey(ikey,okey));
delete ikey;
}
-TEST(SwapKeyVal,ikey_NULL ) {
+TEST_F(VtnMoMgrTest, SwapKeyVal_ikey_NULL) {
VtnMoMgr vtn;
ConfigKeyVal *ikey = NULL;
ConfigKeyVal *okey = NULL;
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
uint8_t *ctrlr=NULL;
bool no_rename;
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.SwapKeyVal(ikey,okey,dmi,ctrlr,no_rename));
delete ikey;
}
-TEST(SwapKeyVal,IpctSt_valid ) {
-
+TEST_F(VtnMoMgrTest, SwapKeyVal_IpctSt_valid) {
VtnMoMgr vtn;
- DalDmlIntf *dmi= new DalOdbcMgr();
- uint8_t *ctr_id1 = (uint8_t *)malloc(32);
- memset(ctr_id1, '\0', 32);
+ DalDmlIntf *dmi(getDalDmlIntf());
+ uint8_t *ctr_id1 = ZALLOC_ARRAY(uint8_t, 32);
memcpy(ctr_id1, "Controller1", 11);
const char *vtn_name = "VTN_1";
bool no_rename;
- key_vtn_t *key = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- memset(key,0,sizeof(key_vtn));
+ key_vtn_t *key(ZALLOC_TYPE(key_vtn_t));
strncpy(reinterpret_cast<char *>(key->vtn_name),
- vtn_name, strlen(vtn_name)+1);
- val_rename_vtn_t *val = (val_rename_vtn_t *)malloc(sizeof(val_rename_vtn_t));
+ vtn_name, strlen(vtn_name)+1);
+ val_rename_vtn_t *val(ZALLOC_TYPE(val_rename_vtn_t));
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnSt, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, key, config_val);
ConfigKeyVal *okey = NULL;
- EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.SwapKeyVal(ikey,okey,dmi,ctr_id1,no_rename));
+ EXPECT_EQ(UPLL_RC_ERR_GENERIC,
+ vtn.SwapKeyVal(ikey, okey, dmi, ctr_id1, no_rename));
val->valid[UPLL_IDX_NEW_NAME_RVTN] = UNC_VF_VALID_NO_VALUE;
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.SwapKeyVal(ikey,okey,dmi,ctr_id1,no_rename));
+ delete okey;
+ okey = NULL;
+
+ key_vtn_t *key1(UT_CLONE(key_vtn_t, key));
+ val_rename_vtn_t *val1(UT_CLONE(val_rename_vtn_t, val));
+ ConfigVal *cfgval1(new ConfigVal(IpctSt::kIpcStValVtnSt, val1));
+ ConfigKeyVal *ikey1(new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVtn,
+ key1, cfgval1));
+ EXPECT_EQ(UPLL_RC_ERR_BAD_REQUEST,
+ vtn.SwapKeyVal(ikey1, okey, dmi, ctr_id1, no_rename));
+ delete okey;
+ okey = NULL;
- ConfigVal *config_val1= new ConfigVal(IpctSt::kIpcStValVtnSt, val);
- ConfigKeyVal *ikey1 = new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVtn, key, config_val1);
- EXPECT_EQ(UPLL_RC_ERR_BAD_REQUEST, vtn.SwapKeyVal(ikey1,okey,dmi,ctr_id1,no_rename));
-
- ConfigVal *config_val2= NULL;
- ConfigKeyVal *ikey2 = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, key, config_val2);
- EXPECT_EQ(UPLL_RC_ERR_BAD_REQUEST, vtn.SwapKeyVal(ikey2,okey,dmi,ctr_id1,no_rename));
+ key_vtn_t *key2(UT_CLONE(key_vtn_t, key));
+ ConfigKeyVal *ikey2(new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn,
+ key2, NULL));
+ EXPECT_EQ(UPLL_RC_ERR_BAD_REQUEST,
+ vtn.SwapKeyVal(ikey2, okey, dmi, ctr_id1, no_rename));
+ delete okey;
+ okey = NULL;
- val_rename_vtn_t *val3 = NULL;
- ConfigVal *config_val3= new ConfigVal(IpctSt::kIpcStValVtnSt, val3);
- ConfigKeyVal *ikey3 = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, key, config_val3);
- EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.SwapKeyVal(ikey3,okey,dmi,ctr_id1,no_rename));
+ key_vtn_t *key3(UT_CLONE(key_vtn_t, key));
+ ConfigVal *cfgval3(new ConfigVal(IpctSt::kIpcStValVtnSt, NULL));
+ ConfigKeyVal *ikey3(new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn,
+ key3, cfgval3));
+ EXPECT_EQ(UPLL_RC_ERR_GENERIC,
+ vtn.SwapKeyVal(ikey3, okey, dmi, ctr_id1, no_rename));
delete okey;
delete ikey;
+ delete ikey1;
+ delete ikey2;
+ delete ikey3;
+ free(ctr_id1);
}
-TEST(SwapKeyVal,IpctSt_valid_01 ) {
+TEST_F(VtnMoMgrTest, SwapKeyVal_IpctSt_valid_01) {
VtnMoMgr vtn;
- DalDmlIntf *dmi= new DalOdbcMgr();
- uint8_t *ctr_id1 = (uint8_t *)malloc(32);
- memset(ctr_id1, '\0', 32);
+ DalDmlIntf *dmi(getDalDmlIntf());
+ uint8_t *ctr_id1 = ZALLOC_ARRAY(uint8_t, 32);
memcpy(ctr_id1, "Controller1", 11);
const char *vtn_name = "VTN_1";
bool no_rename;
- key_vtn_t *key = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- memset(key,0,sizeof(key_vtn));
+ key_vtn_t *key(ZALLOC_TYPE(key_vtn_t));
strncpy(reinterpret_cast<char *>(key->vtn_name),
- vtn_name, strlen(vtn_name)+1);
- val_rename_vtn_t *val = (val_rename_vtn_t *)malloc(sizeof(val_rename_vtn_t));
+ vtn_name, strlen(vtn_name)+1);
+ val_rename_vtn_t *val(ZALLOC_TYPE(val_rename_vtn_t));
+ pfc_strlcpy(reinterpret_cast<char *>(val->new_name), "VTN_2",
+ sizeof(val->new_name));
+
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnSt, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, key, config_val);
ConfigKeyVal *okey = NULL;
val->valid[UPLL_IDX_NEW_NAME_RVTN] = UNC_VF_VALID;
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.SwapKeyVal(ikey,okey,dmi,ctr_id1,no_rename));
+ delete okey;
delete ikey;
+ free(ctr_id1);
}
-TEST(SwapKeyVal,same_newName ) {
-
+TEST_F(VtnMoMgrTest, SwapKeyVal_same_newName) {
VtnMoMgr vtn;
- DalDmlIntf *dmi= new DalOdbcMgr();
- uint8_t *ctr_id1 = (uint8_t *)malloc(32);
- memset(ctr_id1, '\0', 32);
+ DalDmlIntf *dmi(getDalDmlIntf());
+ uint8_t *ctr_id1 = ZALLOC_ARRAY(uint8_t, 32);
memcpy(ctr_id1, "Controller1", 11);
const char *vtn_name = "vtn1";
const char *new_name = "vtn1";
bool no_rename;
- key_vtn_t *key = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- memset(key,0,sizeof(key_vtn));
+ key_vtn_t *key(ZALLOC_TYPE(key_vtn_t));
strncpy(reinterpret_cast<char *>(key->vtn_name),
- vtn_name, strlen(vtn_name)+1);
- val_rename_vtn_t *val = (val_rename_vtn_t *)malloc(sizeof(val_rename_vtn_t));
- memset(val,0,sizeof(val_rename_vtn));
+ vtn_name, strlen(vtn_name)+1);
+ val_rename_vtn_t *val(ZALLOC_TYPE(val_rename_vtn_t));
strncpy(reinterpret_cast<char *>(val->new_name),
- new_name, strlen(new_name)+1);
+ new_name, strlen(new_name)+1);
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnSt, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, key, config_val);
ConfigKeyVal *okey = NULL;
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.SwapKeyVal(ikey,okey,dmi,ctr_id1,no_rename));
delete okey;
delete ikey;
+ free(ctr_id1);
}
-TEST(SwapKeyVal,EmptyNewName ) {
+TEST_F(VtnMoMgrTest, SwapKeyVal_EmptyNewName) {
VtnMoMgr vtn;
- DalDmlIntf *dmi= new DalOdbcMgr();
- uint8_t *ctr_id1 = (uint8_t *)malloc(32);
- memset(ctr_id1, '\0', 32);
+ DalDmlIntf *dmi(getDalDmlIntf());
+ uint8_t *ctr_id1 = ZALLOC_ARRAY(uint8_t, 32);
memcpy(ctr_id1, "Controller1", 11);
const char *vtn_name = "vtn1";
const char *new_name = " ";
bool no_rename;
- key_vtn_t *key = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- memset(key,0,sizeof(key_vtn));
+ key_vtn_t *key(ZALLOC_TYPE(key_vtn_t));
strncpy(reinterpret_cast<char *>(key->vtn_name),
- vtn_name, strlen(vtn_name)+1);
- val_rename_vtn_t *val = (val_rename_vtn_t *)malloc(sizeof(val_rename_vtn_t));
- memset(val,0,sizeof(val_rename_vtn));
+ vtn_name, strlen(vtn_name)+1);
+ val_rename_vtn_t *val(ZALLOC_TYPE(val_rename_vtn_t));
strncpy(reinterpret_cast<char *>(val->new_name),
- new_name, strlen(new_name)+1);
+ new_name, strlen(new_name)+1);
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnSt, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, key, config_val);
ConfigKeyVal *okey = NULL;
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.SwapKeyVal(ikey,okey,dmi,ctr_id1,no_rename));
delete okey;
delete ikey;
+ free(ctr_id1);
}
-TEST(UpdateCtrlrConfigStatus,valid ) {
-
+TEST_F(VtnMoMgrTest, UpdateCtrlrConfigStatus_valid) {
VtnMoMgr vtn;
const char *vtn_name = "VTN_1";
const char *controller_name = "pfc1";
const char *domain_id = "dom1";
unc_keytype_configstatus_t cs_status=UNC_CS_APPLIED;
uuc::UpdateCtrlrPhase phase=uuc::kUpllUcpCreate;
- key_vtn_controller *key = (key_vtn_controller *)malloc(sizeof(key_vtn_controller));
- memset(key,0,sizeof(key_vtn_controller));
+ key_vtn_controller *key(ZALLOC_TYPE(key_vtn_controller));
strncpy(reinterpret_cast<char *>(key->controller_name),
- vtn_name, strlen(controller_name)+1);
+ vtn_name, strlen(controller_name)+1);
strncpy(reinterpret_cast<char *>(key->domain_id),
- vtn_name, strlen(domain_id)+1);
- val_vtn_ctrlr_t *val_vtn = (val_vtn_ctrlr_t *)malloc(sizeof(val_vtn_ctrlr_t));
+ vtn_name, strlen(domain_id)+1);
+ val_vtn_ctrlr_t *val_vtn(ZALLOC_TYPE(val_vtn_ctrlr_t));
ConfigVal *config_val = new ConfigVal(IpctSt::kIpcStValVtn, val_vtn);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, key, config_val);
delete ikey;
}
-TEST(UpdateCtrlrConfigStatus,phase_kUpllUcpCreate ) {
+TEST_F(VtnMoMgrTest, UpdateCtrlrConfigStatus_phase_kUpllUcpCreate) {
VtnMoMgr vtn;
const char *vtn_name = "VTN_1";
const char *controller_name = "pfc1";
const char *domain_id = "dom1";
unc_keytype_configstatus_t cs_status=UNC_CS_APPLIED;
uuc::UpdateCtrlrPhase phase=uuc::kUpllUcpCreate;
- key_vtn_controller *key = (key_vtn_controller *)malloc(sizeof(key_vtn_controller));
- memset(key,0,sizeof(key_vtn_controller));
+ key_vtn_controller *key(ZALLOC_TYPE(key_vtn_controller));
strncpy(reinterpret_cast<char *>(key->controller_name),
- vtn_name, strlen(controller_name)+1);
+ vtn_name, strlen(controller_name)+1);
strncpy(reinterpret_cast<char *>(key->domain_id),
- vtn_name, strlen(domain_id)+1);
- val_vtn_ctrlr_t *val_vtn = (val_vtn_ctrlr_t *)malloc(sizeof(val_vtn_ctrlr_t));
+ vtn_name, strlen(domain_id)+1);
+ val_vtn_ctrlr_t *val_vtn(ZALLOC_TYPE(val_vtn_ctrlr_t));
ConfigVal *config_val = new ConfigVal(IpctSt::kIpcStValVtn, val_vtn);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, key, config_val);
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.UpdateCtrlrConfigStatus(cs_status,phase,ikey));
delete ikey;
}
-TEST(UpdateCtrlrConfigStatus,phase_kUpllUcpUpdate ) {
+TEST_F(VtnMoMgrTest, UpdateCtrlrConfigStatus_phase_kUpllUcpUpdate) {
VtnMoMgr vtn;
const char *vtn_name = "VTN_1";
const char *controller_name = "pfc1";
const char *domain_id = "dom1";
unc_keytype_configstatus_t cs_status=UNC_CS_APPLIED;
uuc::UpdateCtrlrPhase phase=uuc::kUpllUcpUpdate;
- key_vtn_controller *key = (key_vtn_controller *)malloc(sizeof(key_vtn_controller));
- memset(key,0,sizeof(key_vtn_controller));
+ key_vtn_controller *key(ZALLOC_TYPE(key_vtn_controller));
strncpy(reinterpret_cast<char *>(key->controller_name),
- vtn_name, strlen(controller_name)+1);
+ vtn_name, strlen(controller_name)+1);
strncpy(reinterpret_cast<char *>(key->domain_id),
- vtn_name, strlen(domain_id)+1);
- val_vtn_ctrlr_t *val_vtn = (val_vtn_ctrlr_t *)malloc(sizeof(val_vtn_ctrlr_t));
+ vtn_name, strlen(domain_id)+1);
+ val_vtn_ctrlr_t *val_vtn(ZALLOC_TYPE(val_vtn_ctrlr_t));
val_vtn->cs_row_status = UNC_CS_INVALID;
ConfigVal *config_val = new ConfigVal(IpctSt::kIpcStValVtn, val_vtn);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, key, config_val);
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.UpdateCtrlrConfigStatus(cs_status,phase,ikey));
delete ikey;
}
-TEST(UpdateCtrlrConfigStatus,phase_kUpllUcpUpdate_invalid ) {
+TEST_F(VtnMoMgrTest, UpdateCtrlrConfigStatus_phase_kUpllUcpUpdate_invalid) {
VtnMoMgr vtn;
const char *vtn_name = "VTN_1";
const char *controller_name = "pfc1";
const char *domain_id = "dom1";
unc_keytype_configstatus_t cs_status=UNC_CS_INVALID;
uuc::UpdateCtrlrPhase phase=uuc::kUpllUcpUpdate;
- key_vtn_controller *key = (key_vtn_controller *)malloc(sizeof(key_vtn_controller));
- memset(key,0,sizeof(key_vtn_controller));
+ key_vtn_controller *key(ZALLOC_TYPE(key_vtn_controller));
strncpy(reinterpret_cast<char *>(key->controller_name),
- vtn_name, strlen(controller_name)+1);
+ vtn_name, strlen(controller_name)+1);
strncpy(reinterpret_cast<char *>(key->domain_id),
- vtn_name, strlen(domain_id)+1);
- val_vtn_ctrlr_t *val_vtn = (val_vtn_ctrlr_t *)malloc(sizeof(val_vtn_ctrlr_t));
+ vtn_name, strlen(domain_id)+1);
+ val_vtn_ctrlr_t *val_vtn(ZALLOC_TYPE(val_vtn_ctrlr_t));
val_vtn->valid[UPLL_IDX_DESC_VTN] = UNC_VF_VALID;
ConfigVal *config_val = new ConfigVal(IpctSt::kIpcStValVtn, val_vtn);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, key, config_val);
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.UpdateCtrlrConfigStatus(cs_status,phase,ikey));
delete ikey;
}
-TEST(UpdateAuditConfigStatus,valid ) {
+TEST_F(VtnMoMgrTest, UpdateAuditConfigStatus_valid) {
VtnMoMgr vtn;
unc_keytype_configstatus_t cs_status=UNC_CS_APPLIED;
uuc::UpdateCtrlrPhase phase=uuc::kUpllUcpCreate;
- key_vtn_t *key = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- val_vtn_t *val = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ key_vtn_t *key;
+ val_vtn_t *val;
GetKeyValStruct(key, val);
+
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, key, config_val);
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.UpdateAuditConfigStatus(cs_status,phase,ikey));
delete ikey;
}
-TEST(UpdateAuditConfigStatus, phase_kUpllUcpCreate ) {
+TEST_F(VtnMoMgrTest, UpdateAuditConfigStatus_phase_kUpllUcpCreate) {
VtnMoMgr vtn;
unc_keytype_configstatus_t cs_status=UNC_CS_APPLIED;
uuc::UpdateCtrlrPhase phase=uuc::kUpllUcpCreate;
- key_vtn_t *key = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- val_vtn_t *val = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ key_vtn_t *key;
+ val_vtn_t *val;
GetKeyValStruct(key, val);
+
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnSt, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, key, config_val);
EXPECT_EQ(UPLL_RC_SUCCESS, vtn.UpdateAuditConfigStatus(cs_status,phase,ikey));
delete ikey;
}
-TEST(SetVtnConsolidatedStatus,ikey_NULL ) {
+TEST_F(VtnMoMgrTest, SetVtnConsolidatedStatus_ikey_NULL) {
VtnMoMgr vtn;
ConfigKeyVal *ikey = NULL;
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
uint8_t *ctrlr=NULL;
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.SetVtnConsolidatedStatus(ikey,ctrlr,dmi));
delete ikey;
}
-TEST(SetVtnConsolidatedStatus,ctrlr_valid ) {
+TEST_F(VtnMoMgrTest, SetVtnConsolidatedStatus_ctrlr_valid) {
VtnMoMgr vtn;
const char *vtn_name = "VTN_1";
const char *controller_name = "pfc1";
const char *domain_id = "dom1";
- key_vtn_controller *key = (key_vtn_controller *)malloc(sizeof(key_vtn_controller));
- memset(key,0,sizeof(key_vtn_controller));
+ key_vtn_controller *key(ZALLOC_TYPE(key_vtn_controller));
strncpy(reinterpret_cast<char *>(key->controller_name),
- vtn_name, strlen(controller_name)+1);
+ vtn_name, strlen(controller_name)+1);
strncpy(reinterpret_cast<char *>(key->domain_id),
- vtn_name, strlen(domain_id)+1);
- val_vtn_ctrlr_t *val_vtn = (val_vtn_ctrlr_t *)malloc(sizeof(val_vtn_ctrlr_t));
+ vtn_name, strlen(domain_id)+1);
+ val_vtn_ctrlr_t *val_vtn(ZALLOC_TYPE(val_vtn_ctrlr_t));
val_vtn->down_count=0;
val_vtn->ref_count=0;
val_vtn->cs_row_status=UNC_CS_APPLIED;
ConfigVal *config_val = new ConfigVal(IpctSt::kIpcStValVtn, val_vtn);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, key, config_val);
- DalDmlIntf *dmi= new DalOdbcMgr();
- uint8_t *ctr_id1 = (uint8_t *)malloc(32);
- memset(ctr_id1, '\0', 32);
+ DalDmlIntf *dmi(getDalDmlIntf());
+ uint8_t *ctr_id1 = ZALLOC_ARRAY(uint8_t, 32);
memcpy(ctr_id1, "Controller1", 11);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.SetVtnConsolidatedStatus(ikey,ctr_id1,dmi));
delete ikey;
+ free(ctr_id1);
}
-TEST(SetVtnConsolidatedStatus,ctrlr_valid_01 ) {
+TEST_F(VtnMoMgrTest, SetVtnConsolidatedStatus_ctrlr_valid_01) {
VtnMoMgr vtn;
const char *vtn_name = "VTN_1";
const char *controller_name = "pfc1";
const char *domain_id = "dom1";
- key_vtn_controller *key = (key_vtn_controller *)malloc(sizeof(key_vtn_controller));
- memset(key,0,sizeof(key_vtn_controller));
+ key_vtn_controller *key(ZALLOC_TYPE(key_vtn_controller));
strncpy(reinterpret_cast<char *>(key->controller_name),
- vtn_name, strlen(controller_name)+1);
+ vtn_name, strlen(controller_name)+1);
strncpy(reinterpret_cast<char *>(key->domain_id),
- vtn_name, strlen(domain_id)+1);
- val_vtn_ctrlr_t *val_vtn = (val_vtn_ctrlr_t *)malloc(sizeof(val_vtn_ctrlr_t));
+ vtn_name, strlen(domain_id)+1);
+ val_vtn_ctrlr_t *val_vtn(ZALLOC_TYPE(val_vtn_ctrlr_t));
val_vtn->down_count=0;
val_vtn->ref_count=0;
val_vtn->cs_row_status=UNC_CS_APPLIED;
ConfigVal *config_val = new ConfigVal(IpctSt::kIpcStValVtn, val_vtn);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, key, config_val);
- DalDmlIntf *dmi= new DalOdbcMgr();
- uint8_t *ctr_id1 = (uint8_t *)malloc(32);
- memset(ctr_id1, '\0', 32);
+ DalDmlIntf *dmi(getDalDmlIntf());
+ uint8_t *ctr_id1 = ZALLOC_ARRAY(uint8_t, 32);
memcpy(ctr_id1, "Controller1", 11);
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::MULTIPLE,kDalRcSuccess);
DalOdbcMgr::stub_setNextRecordResultCodes(map);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.SetVtnConsolidatedStatus(ikey,ctr_id1,dmi));
delete ikey;
- DalOdbcMgr::clearStubData();
+ free(ctr_id1);
}
-TEST(SetVtnConsolidatedStatus,keytype_invalid ) {
+TEST_F(VtnMoMgrTest, SetVtnConsolidatedStatus_keytype_invalid) {
VtnMoMgr vtn;
const char *vtn_name = "VTN_1";
const char *controller_name = "pfc1";
const char *domain_id = "dom1";
- key_vtn_controller *key = (key_vtn_controller *)malloc(sizeof(key_vtn_controller));
- memset(key,0,sizeof(key_vtn_controller));
+ key_vtn_controller *key(ZALLOC_TYPE(key_vtn_controller));
strncpy(reinterpret_cast<char *>(key->controller_name),
- vtn_name, strlen(controller_name)+1);
+ vtn_name, strlen(controller_name)+1);
strncpy(reinterpret_cast<char *>(key->domain_id),
- vtn_name, strlen(domain_id)+1);
- val_vtn_ctrlr_t *val_vtn = (val_vtn_ctrlr_t *)malloc(sizeof(val_vtn_ctrlr_t));
+ vtn_name, strlen(domain_id)+1);
+ val_vtn_ctrlr_t *val_vtn(ZALLOC_TYPE(val_vtn_ctrlr_t));
ConfigVal *config_val = new ConfigVal(IpctSt::kIpcStValVtn, val_vtn);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVtn, key, config_val);
- DalDmlIntf *dmi= new DalOdbcMgr();
- uint8_t *ctr_id1 = (uint8_t *)malloc(32);
- memset(ctr_id1, '\0', 32);
+ DalDmlIntf *dmi(getDalDmlIntf());
+ uint8_t *ctr_id1 = ZALLOC_ARRAY(uint8_t, 32);
memcpy(ctr_id1, "Controller1", 11);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.SetVtnConsolidatedStatus(ikey,ctr_id1,dmi));
delete ikey;
+ free(ctr_id1);
}
-TEST(SetConsolidatedStatus,ikey_valid ) {
+TEST_F(VtnMoMgrTest, SetConsolidatedStatus_ikey_valid) {
VtnMoMgr vtn;
const char *vtn_name = "VTN_1";
const char *controller_name = "pfc1";
const char *domain_id = "dom1";
- key_vtn_controller *key = (key_vtn_controller *)malloc(sizeof(key_vtn_controller));
- memset(key,0,sizeof(key_vtn_controller));
+ key_vtn_controller *key(ZALLOC_TYPE(key_vtn_controller));
strncpy(reinterpret_cast<char *>(key->controller_name),
- vtn_name, strlen(controller_name)+1);
+ vtn_name, strlen(controller_name)+1);
strncpy(reinterpret_cast<char *>(key->domain_id),
- vtn_name, strlen(domain_id)+1);
- val_vtn_ctrlr_t *val_vtn = (val_vtn_ctrlr_t *)malloc(sizeof(val_vtn_ctrlr_t));
+ vtn_name, strlen(domain_id)+1);
+ val_vtn_ctrlr_t *val_vtn(ZALLOC_TYPE(val_vtn_ctrlr_t));
ConfigVal *config_val = new ConfigVal(IpctSt::kIpcStValVtn, val_vtn);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, key, config_val);
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.SetConsolidatedStatus(ikey,dmi));
delete ikey;
}
-TEST(SetConsolidatedStatus,ikey_proper ) {
+TEST_F(VtnMoMgrTest, SetConsolidatedStatus_ikey_proper) {
VtnMoMgr vtn;
const char *vtn_name = "VTN_1";
- key_vtn_t *key = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- memset(key,0,sizeof(key_vtn_t));
+ key_vtn_t *key(ZALLOC_TYPE(key_vtn_t));
strncpy(reinterpret_cast<char *>(key->vtn_name),
- vtn_name, strlen(vtn_name)+1);
- val_vtn_ctrlr_t *val_vtn = (val_vtn_ctrlr_t *)malloc(sizeof(val_vtn_ctrlr_t));
+ vtn_name, strlen(vtn_name)+1);
+ val_vtn_ctrlr_t *val_vtn(ZALLOC_TYPE(val_vtn_ctrlr_t));
val_vtn->down_count=0;
val_vtn->ref_count=0;
ConfigVal *config_val = new ConfigVal(IpctSt::kIpcStValVtn, val_vtn);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, key, config_val);
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.SetConsolidatedStatus(ikey,dmi));
delete ikey;
}
-TEST(SetConsolidatedStatus,ikey_proper_01 ) {
+TEST_F(VtnMoMgrTest, SetConsolidatedStatus_ikey_proper_01) {
VtnMoMgr vtn;
const char *vtn_name = "VTN_1";
- key_vtn_t *key = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- memset(key,0,sizeof(key_vtn_t));
+ key_vtn_t *key(ZALLOC_TYPE(key_vtn_t));
strncpy(reinterpret_cast<char *>(key->vtn_name),
- vtn_name, strlen(vtn_name)+1);
- val_vtn_ctrlr_t *val_vtn = (val_vtn_ctrlr_t *)malloc(sizeof(val_vtn_ctrlr_t));
+ vtn_name, strlen(vtn_name)+1);
+ val_vtn_ctrlr_t *val_vtn(ZALLOC_TYPE(val_vtn_ctrlr_t));
val_vtn->down_count=0;
val_vtn->ref_count=0;
DalOdbcMgr::stub_setResultcode(DalOdbcMgr::MULTIPLE,kDalRcSuccess);
ConfigVal *config_val = new ConfigVal(IpctSt::kIpcStValVtn, val_vtn);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, key, config_val);
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.SetConsolidatedStatus(ikey,dmi));
delete ikey;
- DalOdbcMgr::clearStubData();
}
-TEST(TxCopyCandidateToRunning,ikey_NULL ) {
+TEST_F(VtnMoMgrTest, TxCopyCandidateToRunning_ikey_NULL) {
VtnMoMgr vtn;
unc_key_type_t keytype = UNC_KT_VTN;
CtrlrCommitStatusList *ctrlr_commit_status=NULL;
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.TxCopyCandidateToRunning(keytype,ctrlr_commit_status,dmi));
}
-TEST(TxCopyCandidateToRunning,valid_01 ) {
-
+TEST_F(VtnMoMgrTest, TxCopyCandidateToRunning_valid_01) {
VtnMoMgr vtn;
std::list<CtrlrCommitStatus *> CtrlrCommitStatusList;
- struct CtrlrTxResult * l_CtrlrTxResult = new CtrlrTxResult("vtn",(upll_rc_t)1,1);
+ struct CtrlrTxResult *l_CtrlrTxResult
+ (new CtrlrTxResult("vtn",(upll_rc_t)1, 1));
l_CtrlrTxResult->upll_ctrlr_result = UPLL_RC_SUCCESS;
CtrlrCommitStatusList.push_back(l_CtrlrTxResult);
unc_key_type_t keytype = UNC_KT_VTN;
- key_vtn_t *key = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- val_vtn_t *val = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ key_vtn_t *key;
+ val_vtn_t *val;
GetKeyValStruct(key, val);
+
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, key, config_val);
l_CtrlrTxResult->err_ckv = ikey;
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.TxCopyCandidateToRunning(keytype,&CtrlrCommitStatusList,dmi));
- delete ikey;
+ delete l_CtrlrTxResult;
}
-TEST(TxCopyCandidateToRunning,valid_02 ) {
-
+TEST_F(VtnMoMgrTest, TxCopyCandidateToRunning_valid_02) {
VtnMoMgr vtn;
std::list<CtrlrCommitStatus *> CtrlrCommitStatusList;
- struct CtrlrTxResult * l_CtrlrTxResult = new CtrlrTxResult("vtn",(upll_rc_t)1,1);
+ struct CtrlrTxResult * l_CtrlrTxResult
+ (new CtrlrTxResult("vtn",(upll_rc_t)1, 1));
l_CtrlrTxResult->upll_ctrlr_result = UPLL_RC_ERR_GENERIC;
CtrlrCommitStatusList.push_back(l_CtrlrTxResult);
unc_key_type_t keytype = UNC_KT_VTN;
- key_vtn_t *key = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- val_vtn_t *val = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ key_vtn_t *key;
+ val_vtn_t *val;
GetKeyValStruct(key, val);
+
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, key, config_val);
l_CtrlrTxResult->err_ckv = ikey;
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.TxCopyCandidateToRunning(keytype,&CtrlrCommitStatusList,dmi));
- delete ikey;
+ delete l_CtrlrTxResult;
}
-TEST(GetRenameInfo, ikey_NULL ) {
+TEST_F(VtnMoMgrTest, GetRenameInfo_ikey_NULL) {
VtnMoMgr vtn;
ConfigKeyVal *ikey=NULL;
ConfigKeyVal *okey=NULL;
ConfigKeyVal *rename_info=NULL;
const char *ctrlr_id = "Controller1";
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
bool renamed;
- key_vtn_t *key = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- val_vtn_t *val = (val_vtn_t *)malloc(sizeof(val_vtn_t));
- GetKeyValStruct(key, val);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.GetRenameInfo(ikey,okey,rename_info,dmi,ctrlr_id,renamed));
delete ikey;
delete rename_info;
}
-TEST(GetRenameInfo, key_NULL ) {
-
+TEST_F(VtnMoMgrTest, GetRenameInfo_key_NULL) {
VtnMoMgr vtn;
const char *ctrlr_id = "Controller1";
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
bool renamed=true;
- key_vtn_t *key = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- memset(key, '\0', sizeof(key_vtn_t));
- val_vtn_t *val = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ key_vtn_t *key;
+ val_vtn_t *val;
GetKeyValStruct(key,val);
+
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, key, config_val);
- ConfigKeyVal *okey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, key, config_val);
+
+ key_vtn_t *key1(UT_CLONE(key_vtn_t, key));
+ val_vtn_t *val1(UT_CLONE(val_vtn_t, val));
+ ConfigVal *cfgval1(new ConfigVal(IpctSt::kIpcStValVtn, val1));
+ ConfigKeyVal *okey(new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn,
+ key1, cfgval1));
ConfigKeyVal *rename_info = NULL;
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.GetRenameInfo(ikey,okey,rename_info,dmi,ctrlr_id,renamed));
delete ikey;
+ delete okey;
}
-TEST(GetRenameInfo, renamed_false ) {
+TEST_F(VtnMoMgrTest, GetRenameInfo_renamed_false) {
VtnMoMgr vtn;
const char *ctrlr_id = "Controller1";
- DalDmlIntf *dmi= new DalOdbcMgr();
+ DalDmlIntf *dmi(getDalDmlIntf());
bool renamed=false;
- key_rename_vnode_info_t *key1 = (key_rename_vnode_info_t *)malloc(sizeof(key_rename_vnode_info_t));
- val_rename_vnode_t *val1 = (val_rename_vnode_t *)malloc(sizeof(val_rename_vnode_t));
- key_vtn_t *key = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- val_vtn_t *val = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ key_rename_vnode_info_t *key1(ZALLOC_TYPE(key_rename_vnode_info_t));
+ val_rename_vnode_t *val1(ZALLOC_TYPE(val_rename_vnode_t));
+ key_vtn_t *key;
+ val_vtn_t *val;
GetKeyValStruct(key, val);
+
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtnSt, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, key, config_val);
- ConfigKeyVal *okey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, key, config_val);
+
+ key_vtn_t *key_o(UT_CLONE(key_vtn_t, key));
+ val_vtn_t *val_o(UT_CLONE(val_vtn_t, val));
+ ConfigVal *cfg_o(new ConfigVal(IpctSt::kIpcStValVtn, val_o));
+ ConfigKeyVal *okey(new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, key_o,
+ cfg_o));
+
ConfigVal *config_val1= new ConfigVal(IpctSt::kIpcStValVtnSt, val1);
ConfigKeyVal *rename_info = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, key1, config_val1);
EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.GetRenameInfo(ikey,okey,rename_info,dmi,ctrlr_id,renamed));
delete ikey;
+ delete okey;
+ delete rename_info;
}
-TEST(TxUpdateProcess,Create_01 ) {
-
+TEST_F(VtnMoMgrTest, TxUpdateProcess_Create_01) {
VtnMoMgr vtn;
- IpcResponse *req = reinterpret_cast<IpcResponse*>(malloc(sizeof(IpcResponse)));
unc_keytype_operation_t op=UNC_OP_CREATE;
controller_domain *ctrlr_dom=NULL;
- DalDmlIntf *dmi= new DalOdbcMgr();
- key_vtn_t *key = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- val_vtn_t *val = (val_vtn_t *)malloc(sizeof(val_vtn_t));
- GetKeyValStruct(key, val);
+ DalDmlIntf *dmi(getDalDmlIntf());
+
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVbrSt, NULL);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VBRIDGE, IpctSt::kIpcStKeyVbr, NULL, config_val);
- EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.TxUpdateProcess(ikey,req,op,dmi,ctrlr_dom));
+ IPC_RESPONSE_DECL(resp);
+ EXPECT_EQ(UPLL_RC_ERR_GENERIC,
+ vtn.TxUpdateProcess(ikey, resp, op, dmi, ctrlr_dom));
delete ikey;
}
-TEST(TxUpdateProcess,Create_02 ) {
+TEST_F(VtnMoMgrTest, TxUpdateProcess_Create_02) {
VtnMoMgr vtn;
- IpcResponse *req = reinterpret_cast<IpcResponse*>(malloc(sizeof(IpcResponse)));
unc_keytype_operation_t op=UNC_OP_CREATE;
controller_domain *ctrlr_dom=NULL;
- DalDmlIntf *dmi= new DalOdbcMgr();
- key_vtn_t *key = (key_vtn_t *)malloc(sizeof(key_vtn_t));
- val_vtn_t *val = (val_vtn_t *)malloc(sizeof(val_vtn_t));
+ DalDmlIntf *dmi(getDalDmlIntf());
+ key_vtn_t *key;
+ val_vtn_t *val;
GetKeyValStruct(key, val);
+
ConfigVal *config_val= new ConfigVal(IpctSt::kIpcStValVtn, val);
ConfigKeyVal *ikey = new ConfigKeyVal(UNC_KT_VTN, IpctSt::kIpcStKeyVtn, key, config_val);
- EXPECT_EQ(UPLL_RC_ERR_GENERIC, vtn.TxUpdateProcess(ikey,req,op,dmi,ctrlr_dom));
+ IPC_RESPONSE_DECL(resp);
+ EXPECT_EQ(UPLL_RC_ERR_GENERIC,
+ vtn.TxUpdateProcess(ikey, resp, op, dmi, ctrlr_dom));
delete ikey;
}
+
}
}
}
/*
* Copyright (c) 2012-2013 NEC Corporation
- * * All rights reserved.
+ * All rights reserved.
*
* This program and the accompanying materials are made available under the
* terms of the Eclipse Public License v1.0 which accompanies this
* distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
*/
-
-
#include <limits.h>
#include <gtest/gtest.h>
#include <pfc/iostream.h>
#include <pfc/ipc_client.h>
#include <pfc/ipc_pfcd.h>
-#include "stub/ODBC/include/odbcm_mgr.hh"
+#include <odbcm_mgr.hh>
#include "PhysicalLayerStub.hh"
-#include "itc_read_request.hh"
-#include "tclib_module.hh"
-#include "physical_common_def.hh"
-#include "unc/uppl_common.h"
-#include "unc/keytype.h"
-#include "unc/upll_svc.h"
-#include "itc_kt_boundary.hh"
-#include "itc_kt_controller.hh"
-#include "itc_kt_ctr_domain.hh"
-#include "itc_kt_switch.hh"
-#include "itc_kt_port.hh"
-#include "itc_kt_link.hh"
-#include "ipct_util.hh"
-
+#include <itc_read_request.hh>
+#include <tclib_module.hh>
+#include <physical_common_def.hh>
+#include <unc/uppl_common.h>
+#include <unc/keytype.h>
+#include <unc/upll_svc.h>
+#include <itc_kt_boundary.hh>
+#include <itc_kt_controller.hh>
+#include <itc_kt_ctr_domain.hh>
+#include <itc_kt_switch.hh>
+#include <itc_kt_port.hh>
+#include <itc_kt_link.hh>
+#include <ipct_util.hh>
+#include "ut_util.hh"
using namespace pfc;
using namespace pfc::core;
using namespace pfc::core::ipc;
using namespace std;
using namespace unc::tclib;
+using namespace unc::uppl::test;
-ClientSession *cli_sess = NULL;
-pfc_ipcid_t service = UPPL_SVC_CONFIGREQ;
-class KtClassTest : public testing::Test {
-protected:
- virtual void SetUp() {
- unc::tclib::TcLibModule::stub_loadtcLibModule();
- if (cli_sess == NULL) {
- pfc_ipcconn_t connp = 0;
- int err = pfc_ipcclnt_altopen(UPPL_IPC_CHN_NAME, &connp);
- ASSERT_EQ(0, err);
- //ASSERT_TRUE(connp != 0);
- cli_sess = new ClientSession(connp, UPPL_IPC_SVC_NAME, service, err);
- //ASSERT_EQ(0, err);
- } else {
- cli_sess->reset(UPPL_IPC_SVC_NAME, service);
- }
- }
- virtual void TearDown() {
- }
+class BoundaryTest
+ : public UpplTestEnv
+{
};
-char pkempty[] = "";
-char pkName1[] = "Boundary1";
-char pkName2[] = "Boundary2";
-char pkName3[] = "Boundary3";
-char pkName4[] = "Boundary4";
-char pkName5[] = "Boundary5";
-char pkNameNonExistent[] = "NonExistent";
+static char pkName1[] = "Boundary1";
-void getKeyForKtBoundary0(key_boundary_t& k) {
+static void getKeyForKtBoundary0(key_boundary_t& k) {
memset(k.boundary_id, '\0', 32);
}
-void getKeyForKtBoundary1(key_boundary_t& k) {
+static void getKeyForKtBoundary1(key_boundary_t& k) {
memset(k.boundary_id, '\0', 32);
memcpy(k.boundary_id, pkName1, strlen(pkName1));
}
-void getKeyForKtBoundary2(key_boundary_t& k) {
- memset(k.boundary_id, '\0', 32);
- memcpy(k.boundary_id, pkName2, strlen(pkName2));
-}
-
-void getKeyForKtBoundary3(key_boundary_t& k) {
- memset(k.boundary_id, '\0', 32);
- memcpy(k.boundary_id, pkName3, strlen(pkName3));
-}
-
-void getKeyForKtBoundary4(key_boundary_t& k) {
- memset(k.boundary_id, '\0', 32);
- memcpy(k.boundary_id, pkName4, strlen(pkName4));
-}
-
-void getKeyForKtBoundary5(key_boundary_t& k) {
- memset(k.boundary_id, '\0', 32);
- memcpy(k.boundary_id, pkName5, strlen(pkName5));
-}
-
-
-void getValForKtBoundary1(val_boundary_t& v) {
-
+static void getValForKtBoundary1(val_boundary_t& v) {
memset(v.description, '\0', 128);
memcpy(v.description, "boundary description", strlen("boundary description"));
-
memset(v.controller_name1, '\0', 32);
memcpy(v.controller_name1, "Controller5", strlen("Controller5"));
-
memset(v.domain_name1, '\0', 32);
memcpy(v.domain_name1, "domain1", strlen("domain1"));
-
memset(v.logical_port_id1, '\0', 320);
memcpy(v.logical_port_id1, "{0xab,0xc}", strlen("{0xab,0xc}"));
-
memset(v.controller_name2, '\0', 32);
memcpy(v.controller_name2, "Controller7", strlen("Controller7"));
-
memset(v.domain_name2, '\0', 32);
memcpy(v.domain_name2, "domain2", strlen("domain2"));
v.cs_attr[6] = '\0';
}
-void getValForKtBoundary2(val_boundary_t& v) {
-
- memset(v.description, '\0', 128);
- memcpy(v.description, "bndry2 description", strlen("bndry2 description"));
-
-
- memset(v.controller_name1, '\0', 32);
- memcpy(v.controller_name1, "Controller5", strlen("Controller5"));
-
-
- memset(v.domain_name1, '\0', 32);
- memcpy(v.domain_name1, "domain4", strlen("domain4"));
-
-
- memset(v.logical_port_id1, '\0', 320);
- memcpy(v.logical_port_id1, "{0x9a,0xa}", strlen("{0x9a,0xa}"));
-
-
- memset(v.controller_name2, '\0', 32);
- memcpy(v.controller_name2, "Controller7", strlen("Controller7"));
-
- memset(v.domain_name2, '\0', 32);
- memcpy(v.domain_name2, "domain5", strlen("domain5"));
-
- memset(v.logical_port_id2, '\0', 320);
- memcpy(v.logical_port_id2, "{0xef,0xf}", strlen("{0xef,0xf}"));
-
- memset(v.valid, 1, 7); // uint8_t valid[7];
- v.cs_row_status = 0; // uint8_t cs_row_status;
- memset(v.cs_attr, 1, 7); // uint8_t cs_attr[7]
- v.cs_attr[6] = '\0';
-}
-
-void getValForKtBoundary3(val_boundary_t& v) {
- memset(v.description, '\0', 128);
- memcpy(v.description, "", strlen("")); // uint8_t description[128];
-
- memset(v.controller_name1, '\0', 32);
- memcpy(v.controller_name1, "", strlen("")); // uint8_t controller_name1[32];
-
- memset(v.domain_name1, '\0', 32);
- memcpy(v.domain_name1, "", strlen("")); // uint8_t domain_name1[32];
-
- memset(v.logical_port_id1, '\0', 320);
- memcpy(v.logical_port_id1, "", strlen("")); // uint8_t logical_port_id1[320];
-
- memset(v.controller_name2, '\0', 32);
- memcpy(v.controller_name2, "", strlen("")); // uint8_t controller_name1[32];
-
- memset(v.domain_name2, '\0', 32);
- memcpy(v.domain_name2, "", strlen("")); // uint8_t domain_name2[32];
-
- memset(v.logical_port_id2, '\0', 320);
- memcpy(v.logical_port_id2, "", strlen("")); // uint8_t logical_port_id2[320];
-
- memset(v.valid, '\0', 7); // uint8_t valid[7];
- v.cs_row_status = 0; // uint8_t cs_row_status;
- memset(v.cs_attr, '\0', 7); // uint8_t cs_attr[7];
-}
-
-void getValForKtBoundary5(val_boundary_t& v) {
-
+static void getValForKtBoundary5(val_boundary_t& v) {
memset(v.description, '\0', 128);
memcpy(v.description, "boundary description", strlen("boundary description"));
-
memset(v.controller_name1, '\0', 32);
memcpy(v.controller_name1, "Controller5", strlen("Controller5"));
-
memset(v.domain_name1, '\0', 32);
memcpy(v.domain_name1, "domain1", strlen("domain1"));
-
memset(v.logical_port_id1, '\0', 320);
memcpy(v.logical_port_id1, "{0xab,0xc}", strlen("{0xab,0xc}"));
-
memset(v.controller_name2, '\0', 32);
memcpy(v.controller_name2, "Controller5", strlen("Controller5"));
-
memset(v.domain_name2, '\0', 32);
memcpy(v.domain_name2, "domain1", strlen("domain1"));
memset(v.cs_attr, 1, 7); // uint8_t cs_attr[7]
v.cs_attr[6] = '\0';
}
+
// Create for unsupported datatype
-TEST_F(KtClassTest, Create_01) {
+TEST_F(BoundaryTest, Create_01) {
key_boundary_t k;
val_boundary_t v;
uint32_t session_id = 1;
uint32_t configuration_id = 2;
- PhysicalLayerStub::loadphysicallayer();
getKeyForKtBoundary1(k);
getValForKtBoundary1(v);
Kt_Boundary KtboundaryObj;
ServerSession ses;
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtboundaryObj.Create(db_conn,session_id,configuration_id,&k,&v,UNC_DT_STATE,ses);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
// Boundary Create success
-TEST_F(KtClassTest, Create_02) {
+TEST_F(BoundaryTest, Create_02) {
key_boundary_t k;
val_boundary_t v;
uint32_t session_id = 1;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::CREATEONEROW, ODBCM_RC_SUCCESS);
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtboundaryObj.Create(db_conn,session_id,configuration_id,&k,&v,UNC_DT_CANDIDATE,ses);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// Boundary Create Server session addOutput failed
-TEST_F(KtClassTest, Create_03) {
+TEST_F(BoundaryTest, Create_03) {
key_boundary_t k;
val_boundary_t v;
uint32_t session_id = 1;
getValForKtBoundary1(v);
Kt_Boundary KtboundaryObj;
ServerSession ses;
- ServerSession::clearStubData();
ses.stub_setAddOutput((uint32_t)configuration_id);
ses.stub_setAddOutput((uint32_t)session_id);
ses.stub_setAddOutput((uint32_t)UNC_OP_CREATE);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::CREATEONEROW, ODBCM_RC_SUCCESS);
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtboundaryObj.Create(db_conn,session_id,configuration_id,&k,&v,UNC_DT_CANDIDATE,ses);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
// CreateOneRow returns ODBCM_RC_CONNECTION_ERROR
-TEST_F(KtClassTest, CreateKeyInstance_01) {
+TEST_F(BoundaryTest, CreateKeyInstance_01) {
key_boundary_t k;
val_boundary_t v;
uint32_t key_type = 1;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::CREATEONEROW, ODBCM_RC_CONNECTION_ERROR);
int ret = KtboundaryObj.CreateKeyInstance(db_conn,&k,&v,UNC_DT_STATE,key_type);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
// CreateOneRow returns ODBCM_RC_PKEY_VIOLATION
-TEST_F(KtClassTest, CreateKeyInstance_02) {
+TEST_F(BoundaryTest, CreateKeyInstance_02) {
key_boundary_t k;
val_boundary_t v;
uint32_t key_type = 1;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::CREATEONEROW, ODBCM_RC_PKEY_VIOLATION);
int ret = KtboundaryObj.CreateKeyInstance(db_conn,&k,&v,UNC_DT_STATE,key_type);
- EXPECT_EQ(ret,UPPL_RC_ERR_INSTANCE_EXISTS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_INSTANCE_EXISTS, ret);
}
// CreateOneRow returns ODBCM_RC_QUERY_FAILED
-TEST_F(KtClassTest, CreateKeyInstance_03) {
+TEST_F(BoundaryTest, CreateKeyInstance_03) {
key_boundary_t k;
val_boundary_t v;
uint32_t key_type = 1;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::CREATEONEROW, ODBCM_RC_QUERY_FAILED);
int ret = KtboundaryObj.CreateKeyInstance(db_conn,&k,&v,UNC_DT_STATE,key_type);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_CREATE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_CREATE, ret);
}
// CreateOneRow returns ODBCM_RC_QUERY_FAILED
-TEST_F(KtClassTest, CreateKeyInstance_04) {
+TEST_F(BoundaryTest, CreateKeyInstance_04) {
key_boundary_t k;
val_boundary_t v;
uint32_t key_type = 1;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::CREATEONEROW, ODBCM_RC_SUCCESS);
int ret = KtboundaryObj.CreateKeyInstance(db_conn,&k,&v,UNC_DT_STATE,key_type);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// Update for unsupported datatype
-TEST_F(KtClassTest, Update_01) {
+TEST_F(BoundaryTest, Update_01) {
key_boundary_t k;
val_boundary_t v;
uint32_t session_id = 1;
ServerSession ses;
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtboundaryObj.Update(db_conn,session_id,configuration_id,&k,&v,UNC_DT_STATE,ses);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
// Boundary Update success
-TEST_F(KtClassTest, Update_02) {
+TEST_F(BoundaryTest, Update_02) {
key_boundary_t k;
val_boundary_t v;
uint32_t session_id = 1;
getValForKtBoundary1(v);
Kt_Boundary KtboundaryObj;
ServerSession ses;
- ServerSession::clearStubData();
ses.stub_setAddOutput((uint32_t)configuration_id);
ses.stub_setAddOutput((uint32_t)session_id);
ses.stub_setAddOutput((uint32_t)UNC_OP_UPDATE);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtboundaryObj.Update(db_conn,session_id,configuration_id,&k,&v,UNC_DT_CANDIDATE,ses);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// Boundary Update Server session addOutput failed
-TEST_F(KtClassTest, Update_03) {
+TEST_F(BoundaryTest, Update_03) {
key_boundary_t k;
val_boundary_t v;
uint32_t session_id = 1;
getValForKtBoundary1(v);
Kt_Boundary KtboundaryObj;
ServerSession ses;
- ServerSession::clearStubData();
ses.stub_setAddOutput((uint32_t)configuration_id);
ses.stub_setAddOutput((uint32_t)session_id);
ses.stub_setAddOutput((uint32_t)UNC_OP_UPDATE);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtboundaryObj.Update(db_conn,session_id,configuration_id,&k,&v,UNC_DT_CANDIDATE,ses);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
// UpdateOneRow returns ODBCM_RC_CONNECTION_ERROR
-TEST_F(KtClassTest, Update_04) {
+TEST_F(BoundaryTest, Update_04) {
key_boundary_t k;
val_boundary_t v;
- uint32_t key_type = 1;
uint32_t session_id = 1;
uint32_t configuration_id = 2;
getKeyForKtBoundary1(k);
Kt_Boundary KtboundaryObj;
OdbcmConnectionHandler *db_conn =NULL;
ServerSession ses;
- ServerSession::clearStubData();
ses.stub_setAddOutput((uint32_t)configuration_id);
ses.stub_setAddOutput((uint32_t)session_id);
ses.stub_setAddOutput((uint32_t)UNC_OP_UPDATE);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_CONNECTION_ERROR);
int ret = KtboundaryObj.Update(db_conn,session_id,configuration_id,&k,&v,UNC_DT_CANDIDATE,ses);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// UpdateOneRow returns ODBCM_RC_PKEY_VIOLATION
-TEST_F(KtClassTest, Update_05) {
+TEST_F(BoundaryTest, Update_05) {
key_boundary_t k;
val_boundary_t v;
- uint32_t key_type = 1;
uint32_t session_id = 1;
uint32_t configuration_id = 2;
getKeyForKtBoundary1(k);
Kt_Boundary KtboundaryObj;
OdbcmConnectionHandler *db_conn =NULL;
ServerSession ses;
- ServerSession::clearStubData();
ses.stub_setAddOutput((uint32_t)configuration_id);
ses.stub_setAddOutput((uint32_t)session_id);
ses.stub_setAddOutput((uint32_t)UNC_OP_UPDATE);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_PKEY_VIOLATION);
int ret = KtboundaryObj.Update(db_conn,session_id,configuration_id,&k,&v,UNC_DT_CANDIDATE,ses);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
+
// ReadBulkInternal GetBulkRows returns ODBCM_RC_RECORD_NOT_FOUND
-TEST_F(KtClassTest, ReadBulkInternal_01) {
+TEST_F(BoundaryTest, ReadBulkInternal_01) {
key_boundary_t k;
val_boundary_t v;
uint32_t max_rep_ct = 2;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_RECORD_NOT_FOUND);
int ret = KtboundaryObj.ReadBulkInternal(db_conn,&k,&v,UNC_DT_STATE,max_rep_ct,vect_key_boundary,vect_val_boundary);
- EXPECT_EQ(ret,UPPL_RC_ERR_NO_SUCH_INSTANCE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
}
// ReadBulkInternal GetBulkRows returns ODBCM_RC_CONNECTION_ERROR
-TEST_F(KtClassTest, ReadBulkInternal_02) {
+TEST_F(BoundaryTest, ReadBulkInternal_02) {
key_boundary_t k;
val_boundary_t v;
uint32_t max_rep_ct = 2;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_CONNECTION_ERROR);
int ret = KtboundaryObj.ReadBulkInternal(db_conn,&k,&v,UNC_DT_STATE,max_rep_ct,vect_key_boundary,vect_val_boundary);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
// ReadBulkInternal GetBulkRows returns ODBCM_RC_QUERY_FAILED
-TEST_F(KtClassTest, ReadBulkInternal_03) {
+TEST_F(BoundaryTest, ReadBulkInternal_03) {
key_boundary_t k;
val_boundary_t v;
uint32_t max_rep_ct = 2;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_QUERY_FAILED);
int ret = KtboundaryObj.ReadBulkInternal(db_conn,&k,&v,UNC_DT_STATE,max_rep_ct,vect_key_boundary,vect_val_boundary);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_GET);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_GET, ret);
}
+
// ReadBulkInternal GetBulkRows returns ODBCM_RC_SUCCESS
-TEST_F(KtClassTest, ReadBulkInternal_04) {
+TEST_F(BoundaryTest, ReadBulkInternal_04) {
key_boundary_t k;
val_boundary_t v;
uint32_t max_rep_ct = 2;
getKeyForKtBoundary1(k);
getValForKtBoundary1(v);
Kt_Boundary KtboundaryObj;
- ServerSession ses;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_SUCCESS);
int ret = KtboundaryObj.ReadBulkInternal(db_conn,&k,&v,UNC_DT_STATE,max_rep_ct,vect_key_boundary,vect_val_boundary);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// Boundary Delete on unsupported data type server sessio failed
-TEST_F(KtClassTest, Delete_01) {
+TEST_F(BoundaryTest, Delete_01) {
key_boundary_t k;
uint32_t session_id = 1;
uint32_t configuration_id = 2;
getKeyForKtBoundary1(k);
Kt_Boundary KtboundaryObj;
ServerSession ses;
- ServerSession::clearStubData();
- unc::tclib::TcLibModule::stub_setTCApiCommonRetcode(TcLibModule::REGISTER, TC_API_COMMON_SUCCESS);
- unc::uppl::PhysicalLayer *physical_layer = unc::uppl::PhysicalLayer::get_instance();
- physical_layer->init();
ses.stub_setAddOutput((uint32_t)configuration_id);
ses.stub_setAddOutput((uint32_t)session_id);
ses.stub_setAddOutput((uint32_t)UNC_OP_DELETE);
ses.stub_setAddOutput((uint32_t)UNC_KT_BOUNDARY);
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtboundaryObj.Delete(db_conn,session_id,configuration_id,&k,UNC_DT_RUNNING,ses);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
// Boundary Delete on unsupported data type server session pass
-TEST_F(KtClassTest, Delete_02) {
+TEST_F(BoundaryTest, Delete_02) {
key_boundary_t k;
uint32_t session_id = 1;
uint32_t configuration_id = 2;
getKeyForKtBoundary1(k);
Kt_Boundary KtboundaryObj;
ServerSession ses;
- ServerSession::clearStubData();
ses.stub_setAddOutput((uint32_t)configuration_id);
ses.stub_setAddOutput((uint32_t)session_id);
ses.stub_setAddOutput((uint32_t)UNC_OP_DELETE);
ses.stub_setAddOutput((uint32_t)UNC_KT_BOUNDARY);
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtboundaryObj.Delete(db_conn,session_id,configuration_id,&k,UNC_DT_RUNNING,ses);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
+
#if 0
// DeleteOneRow returns ODBCM_RC_SUCCESS
-TEST_F(KtClassTest, Delete_03) {
+TEST_F(BoundaryTest, Delete_03) {
key_boundary_t k;
uint32_t session_id = 1;
uint32_t configuration_id = 2;
getKeyForKtBoundary1(k);
Kt_Boundary KtboundaryObj;
- unc::tclib::TcLibModule::stub_setTCApiCommonRetcode(TcLibModule::REGISTER, TC_API_COMMON_SUCCESS);
- unc::uppl::PhysicalLayer *physical_layer = unc::uppl::PhysicalLayer::get_instance();
- physical_layer->init();
ServerSession ses;
- ServerSession::clearStubData();
ses.stub_setAddOutput((uint32_t)configuration_id);
ses.stub_setAddOutput((uint32_t)session_id);
ses.stub_setAddOutput((uint32_t)UNC_OP_DELETE);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_SUCCESS);
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtboundaryObj.Delete(db_conn,session_id,configuration_id,&k,UNC_DT_CANDIDATE,ses);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// DeleteOneRow returns ODBCM_RC_CONNECTION_ERROR
-TEST_F(KtClassTest, Delete_04) {
+TEST_F(BoundaryTest, Delete_04) {
key_boundary_t k;
uint32_t session_id = 1;
uint32_t configuration_id = 2;
getKeyForKtBoundary1(k);
Kt_Boundary KtboundaryObj;
ServerSession ses;
- ServerSession::clearStubData();
ses.stub_setAddOutput((uint32_t)configuration_id);
ses.stub_setAddOutput((uint32_t)session_id);
ses.stub_setAddOutput((uint32_t)UNC_OP_DELETE);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_CONNECTION_ERROR);
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtboundaryObj.Delete(db_conn,session_id,configuration_id,&k,UNC_DT_CANDIDATE,ses);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// DeleteOneRow returns ODBCM_RC_ROW_NOT_EXISTS
-TEST_F(KtClassTest, Delete_05) {
+TEST_F(BoundaryTest, Delete_05) {
key_boundary_t k;
uint32_t session_id = 1;
uint32_t configuration_id = 2;
getKeyForKtBoundary1(k);
Kt_Boundary KtboundaryObj;
ServerSession ses;
- ServerSession::clearStubData();
ses.stub_setAddOutput((uint32_t)configuration_id);
ses.stub_setAddOutput((uint32_t)session_id);
ses.stub_setAddOutput((uint32_t)UNC_OP_DELETE);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_ROW_NOT_EXISTS);
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtboundaryObj.Delete(db_conn,session_id,configuration_id,&k,UNC_DT_CANDIDATE,ses);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// DeleteOneRow returns ODBCM_RC_FAILED
-TEST_F(KtClassTest, Delete_06) {
+TEST_F(BoundaryTest, Delete_06) {
key_boundary_t k;
uint32_t session_id = 1;
uint32_t configuration_id = 2;
getKeyForKtBoundary1(k);
Kt_Boundary KtboundaryObj;
ServerSession ses;
- ServerSession::clearStubData();
ses.stub_setAddOutput((uint32_t)configuration_id);
ses.stub_setAddOutput((uint32_t)session_id);
ses.stub_setAddOutput((uint32_t)UNC_OP_DELETE);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_FAILED);
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtboundaryObj.Delete(db_conn,session_id,configuration_id,&k,UNC_DT_CANDIDATE,ses);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
+
#endif
+
// DeleteOneRow returns ODBCM_RC_FAILED
-TEST_F(KtClassTest, Delete_07) {
+TEST_F(BoundaryTest, Delete_07) {
key_boundary_t k;
uint32_t session_id = 1;
uint32_t configuration_id = 2;
getKeyForKtBoundary1(k);
Kt_Boundary KtboundaryObj;
ServerSession ses;
- ServerSession::clearStubData();
ses.stub_setAddOutput((uint32_t)configuration_id);
ses.stub_setAddOutput((uint32_t)session_id);
ses.stub_setAddOutput((uint32_t)UNC_OP_DELETE);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_FAILED);
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtboundaryObj.Delete(db_conn,session_id,configuration_id,&k,UNC_DT_CANDIDATE,ses);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
+
// ReadInternal success
-TEST_F(KtClassTest, ReadInternal_01) {
+TEST_F(BoundaryTest, ReadInternal_01) {
key_boundary_t k;
- val_boundary_t v;
+ val_boundary_st_t v;
getKeyForKtBoundary1(k);
- getValForKtBoundary1(v);
+ getValForKtBoundary1(v.boundary);
vector<void *> boundary_key;
vector<void *> boundary_val;
boundary_key.push_back(&k);
boundary_val.push_back(&v);
uint32_t operation_type = UNC_OP_READ;
Kt_Boundary KtboundaryObj;
- ServerSession ses;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
int ret = KtboundaryObj.ReadInternal(db_conn,boundary_key,boundary_val,UNC_DT_STATE,operation_type);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// ReadInternal operation_type != UNC_OP_READ
-TEST_F(KtClassTest, ReadInternal_02) {
+TEST_F(BoundaryTest, ReadInternal_02) {
key_boundary_t k;
val_boundary_t v;
getKeyForKtBoundary1(k);
ServerSession ses;
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtboundaryObj.ReadInternal(db_conn,boundary_key,boundary_val,UNC_DT_STATE,operation_type);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// ReadBoundaryValFromDB returns failure
-TEST_F(KtClassTest, ReadInternal_03) {
+TEST_F(BoundaryTest, ReadInternal_03) {
key_boundary_t k;
val_boundary_t v;
getKeyForKtBoundary1(k);
boundary_val.push_back(&v);
uint32_t operation_type = UNC_OP_READ;
Kt_Boundary KtboundaryObj;
- ServerSession ses;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_CONNECTION_ERROR);
int ret = KtboundaryObj.ReadInternal(db_conn,boundary_key,boundary_val,UNC_DT_STATE,operation_type);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
// ReadBulk
-TEST_F(KtClassTest, ReadBulk_01) {
+TEST_F(BoundaryTest, ReadBulk_01) {
key_boundary_t k;
getKeyForKtBoundary1(k);
- uint32_t operation_type = UNC_OP_READ;
uint32_t max_rep_ct = 2;
int child_index = 1;
ReadRequest *read_req = NULL;
Kt_Boundary KtboundaryObj;
- ServerSession ses;
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtboundaryObj.ReadBulk(db_conn,&k,UNC_DT_IMPORT,max_rep_ct,child_index,(pfc_bool_t)false,(pfc_bool_t)false,read_req);
- EXPECT_EQ(ret,UPPL_RC_ERR_OPERATION_NOT_ALLOWED);
+ EXPECT_EQ(UPPL_RC_ERR_OPERATION_NOT_ALLOWED, ret);
}
// ReadBulk
-TEST_F(KtClassTest, ReadBulk_02) {
+TEST_F(BoundaryTest, ReadBulk_02) {
key_boundary_t k;
getKeyForKtBoundary1(k);
- uint32_t operation_type = UNC_OP_READ;
uint32_t max_rep_ct = 0;
int child_index = 1;
ReadRequest *read_req = NULL;
Kt_Boundary KtboundaryObj;
- ServerSession ses;
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtboundaryObj.ReadBulk(db_conn,&k,UNC_DT_CANDIDATE,max_rep_ct,child_index,(pfc_bool_t)false,(pfc_bool_t)false,read_req);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// ReadBulk
-TEST_F(KtClassTest, ReadBulk_03) {
+TEST_F(BoundaryTest, ReadBulk_03) {
key_boundary_t k;
getKeyForKtBoundary1(k);
- uint32_t operation_type = UNC_OP_READ;
uint32_t max_rep_ct = 1;
int child_index = 1;
- ReadRequest *read_req = new ReadRequest;
+ ReadRequest read_req;
Kt_Boundary KtboundaryObj;
- ServerSession ses;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_SUCCESS);
- int ret = KtboundaryObj.ReadBulk(db_conn,&k,UNC_DT_CANDIDATE,max_rep_ct,child_index,(pfc_bool_t)false,(pfc_bool_t)false,read_req);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ int ret = KtboundaryObj.ReadBulk(db_conn,&k,UNC_DT_CANDIDATE,max_rep_ct,child_index,(pfc_bool_t)false,(pfc_bool_t)false,&read_req);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// ReadBulk
-TEST_F(KtClassTest, ReadBulk_04) {
+TEST_F(BoundaryTest, ReadBulk_04) {
key_boundary_t k;
getKeyForKtBoundary1(k);
- uint32_t operation_type = UNC_OP_READ;
uint32_t max_rep_ct = 2;
int child_index = 1;
- ReadRequest *read_req = new ReadRequest;
+ ReadRequest read_req;
Kt_Boundary KtboundaryObj;
- ServerSession ses;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_SUCCESS);
- int ret = KtboundaryObj.ReadBulk(db_conn,&k,UNC_DT_STATE,max_rep_ct,child_index,(pfc_bool_t)false,(pfc_bool_t)false,read_req);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ int ret = KtboundaryObj.ReadBulk(db_conn,&k,UNC_DT_STATE,max_rep_ct,child_index,(pfc_bool_t)false,(pfc_bool_t)false,&read_req);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// ReadBulk
-TEST_F(KtClassTest, ReadBulk_05) {
+TEST_F(BoundaryTest, ReadBulk_05) {
key_boundary_t k;
getKeyForKtBoundary1(k);
- uint32_t operation_type = UNC_OP_READ;
uint32_t max_rep_ct = 1;
int child_index = 1;
- ReadRequest *read_req = new ReadRequest;
+ ReadRequest read_req;
Kt_Boundary KtboundaryObj;
- ServerSession ses;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_CONNECTION_ERROR);
- int ret = KtboundaryObj.ReadBulk(db_conn,&k,UNC_DT_STATE,max_rep_ct,child_index,(pfc_bool_t)false,(pfc_bool_t)false,read_req);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);
- unc::uppl::ODBCManager::clearStubData();
+ int ret = KtboundaryObj.ReadBulk(db_conn,&k,UNC_DT_STATE,max_rep_ct,child_index,(pfc_bool_t)false,(pfc_bool_t)false,&read_req);
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
// ReadBulk
-TEST_F(KtClassTest, ReadBulk_06) {
+TEST_F(BoundaryTest, ReadBulk_06) {
key_boundary_t k;
getKeyForKtBoundary1(k);
- uint32_t operation_type = UNC_OP_READ;
uint32_t max_rep_ct = 1;
int child_index = 1;
- ReadRequest *read_req = new ReadRequest;
+ ReadRequest read_req;
Kt_Boundary KtboundaryObj;
- ServerSession ses;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_FAILED);
- int ret = KtboundaryObj.ReadBulk(db_conn,&k,UNC_DT_STATE,max_rep_ct,child_index,(pfc_bool_t)false,(pfc_bool_t)false,read_req);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ int ret = KtboundaryObj.ReadBulk(db_conn,&k,UNC_DT_STATE,max_rep_ct,child_index,(pfc_bool_t)false,(pfc_bool_t)false,&read_req);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// PerformSyntaxValidation returns success
-TEST_F(KtClassTest, PerformSyntaxValidation_01) {
+TEST_F(BoundaryTest, PerformSyntaxValidation_01) {
key_boundary_t k;
val_boundary_t v;
getKeyForKtBoundary1(k);
Kt_Boundary KtboundaryObj;
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtboundaryObj.PerformSyntaxValidation(db_conn,&k,&v,operation_type,UNC_DT_CANDIDATE);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// PerformSyntaxValidation without boundary name
-TEST_F(KtClassTest, PerformSyntaxValidation_02) {
+TEST_F(BoundaryTest, PerformSyntaxValidation_02) {
key_boundary_t k;
val_boundary_t v;
getKeyForKtBoundary0(k);
Kt_Boundary KtboundaryObj;
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtboundaryObj.PerformSyntaxValidation(db_conn,&k,&v,operation_type,UNC_DT_CANDIDATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SYNTAX);
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SYNTAX, ret);
}
// PerformSyntaxValidation without controller name1
-TEST_F(KtClassTest, PerformSyntaxValidation_03) {
+TEST_F(BoundaryTest, PerformSyntaxValidation_03) {
key_boundary_t k;
val_boundary_t v;
getKeyForKtBoundary1(k);
Kt_Boundary KtboundaryObj;
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtboundaryObj.PerformSyntaxValidation(db_conn,&k,&v,operation_type,UNC_DT_CANDIDATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SYNTAX);
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SYNTAX, ret);
}
// PerformSyntaxValidation without controller name2
-TEST_F(KtClassTest, PerformSyntaxValidation_04) {
+TEST_F(BoundaryTest, PerformSyntaxValidation_04) {
key_boundary_t k;
val_boundary_t v;
getKeyForKtBoundary1(k);
Kt_Boundary KtboundaryObj;
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtboundaryObj.PerformSyntaxValidation(db_conn,&k,&v,operation_type,UNC_DT_CANDIDATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SYNTAX);
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SYNTAX, ret);
}
// PerformSyntaxValidation without domain name1
-TEST_F(KtClassTest, PerformSyntaxValidation_05) {
+TEST_F(BoundaryTest, PerformSyntaxValidation_05) {
key_boundary_t k;
val_boundary_t v;
getKeyForKtBoundary1(k);
Kt_Boundary KtboundaryObj;
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtboundaryObj.PerformSyntaxValidation(db_conn,&k,&v,operation_type,UNC_DT_CANDIDATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SYNTAX);
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SYNTAX, ret);
}
// PerformSyntaxValidation without domain name2
-TEST_F(KtClassTest, PerformSyntaxValidation_06) {
+TEST_F(BoundaryTest, PerformSyntaxValidation_06) {
key_boundary_t k;
val_boundary_t v;
getKeyForKtBoundary1(k);
Kt_Boundary KtboundaryObj;
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtboundaryObj.PerformSyntaxValidation(db_conn,&k,&v,operation_type,UNC_DT_CANDIDATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SYNTAX);
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SYNTAX, ret);
}
// PerformSyntaxValidation returns success
-TEST_F(KtClassTest, PerformSyntaxValidation_07) {
+TEST_F(BoundaryTest, PerformSyntaxValidation_07) {
key_boundary_t k;
val_boundary_t v;
getKeyForKtBoundary1(k);
Kt_Boundary KtboundaryObj;
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtboundaryObj.PerformSyntaxValidation(db_conn,&k,&v,operation_type,UNC_DT_CANDIDATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SYNTAX);
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SYNTAX, ret);
}
// PerformSyntaxValidation returns success
-TEST_F(KtClassTest, PerformSyntaxValidation_08) {
+TEST_F(BoundaryTest, PerformSyntaxValidation_08) {
key_boundary_t k;
val_boundary_t v;
getKeyForKtBoundary1(k);
Kt_Boundary KtboundaryObj;
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtboundaryObj.PerformSyntaxValidation(db_conn,&k,&v,operation_type,UNC_DT_CANDIDATE);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// GETONEROW returns ODBCM_RC_RECORD_NOT_FOUND
-TEST_F(KtClassTest, ReadBoundaryValFromDB_01) {
+TEST_F(BoundaryTest, ReadBoundaryValFromDB_01) {
key_boundary_t k;
val_boundary_t v;
uint32_t max_rep_ct = 2;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_RECORD_NOT_FOUND);
int ret = KtboundaryObj.ReadBoundaryValFromDB(db_conn,&k,&v,UNC_DT_STATE,UNC_OP_READ,max_rep_ct,vect_key_boundary,vect_val_boundary,false);
- EXPECT_EQ(ret,UPPL_RC_ERR_NO_SUCH_INSTANCE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
}
// GETONEROW returns ODBCM_RC_CONNECTION_ERROR
-TEST_F(KtClassTest, ReadBoundaryValFromDB_02) {
+TEST_F(BoundaryTest, ReadBoundaryValFromDB_02) {
key_boundary_t k;
val_boundary_t v;
uint32_t max_rep_ct = 2;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_CONNECTION_ERROR);
int ret = KtboundaryObj.ReadBoundaryValFromDB(db_conn,&k,&v,UNC_DT_STATE,UNC_OP_READ,max_rep_ct,vect_key_boundary,vect_val_boundary,false);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
// GETONEROW returns ODBCM_RC_FAILED
-TEST_F(KtClassTest, ReadBoundaryValFromDB_03) {
+TEST_F(BoundaryTest, ReadBoundaryValFromDB_03) {
key_boundary_t k;
val_boundary_t v;
uint32_t max_rep_ct = 2;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_FAILED);
int ret = KtboundaryObj.ReadBoundaryValFromDB(db_conn,&k,&v,UNC_DT_STATE,UNC_OP_READ,max_rep_ct,vect_key_boundary,vect_val_boundary,false);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_GET);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_GET, ret);
}
// GETBULKROWS returns ODBCM_RC_RECORD_NOT_FOUND
-TEST_F(KtClassTest, ReadBoundaryValFromDB_04) {
+TEST_F(BoundaryTest, ReadBoundaryValFromDB_04) {
key_boundary_t k;
val_boundary_t v;
uint32_t max_rep_ct = 2;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_RECORD_NOT_FOUND);
int ret = KtboundaryObj.ReadBoundaryValFromDB(db_conn,&k,&v,UNC_DT_STATE,UNC_OP_READ_NEXT,max_rep_ct,vect_key_boundary,vect_val_boundary,false);
- EXPECT_EQ(ret,UPPL_RC_ERR_NO_SUCH_INSTANCE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
}
// GETBULKROWS returns ODBCM_RC_CONNECTION_ERROR
-TEST_F(KtClassTest, ReadBoundaryValFromDB_05) {
+TEST_F(BoundaryTest, ReadBoundaryValFromDB_05) {
key_boundary_t k;
val_boundary_t v;
uint32_t max_rep_ct = 2;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_CONNECTION_ERROR);
int ret = KtboundaryObj.ReadBoundaryValFromDB(db_conn,&k,&v,UNC_DT_STATE,UNC_OP_READ_NEXT,max_rep_ct,vect_key_boundary,vect_val_boundary,false);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
// GETBULKROWS returns ODBCM_RC_FAILED
-TEST_F(KtClassTest, ReadBoundaryValFromDB_06) {
+TEST_F(BoundaryTest, ReadBoundaryValFromDB_06) {
key_boundary_t k;
val_boundary_t v;
uint32_t max_rep_ct = 2;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_FAILED);
int ret = KtboundaryObj.ReadBoundaryValFromDB(db_conn,&k,&v,UNC_DT_STATE,UNC_OP_READ_NEXT,max_rep_ct,vect_key_boundary,vect_val_boundary,false);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_GET);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_GET, ret);
}
// operation_type < UNC_OP_READ
-TEST_F(KtClassTest, ReadBoundaryValFromDB_07) {
+TEST_F(BoundaryTest, ReadBoundaryValFromDB_07) {
key_boundary_t k;
val_boundary_t v;
uint32_t max_rep_ct = 2;
Kt_Boundary KtboundaryObj;
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtboundaryObj.ReadBoundaryValFromDB(db_conn,&k,&v,UNC_DT_STATE,UNC_OP_CREATE,max_rep_ct,vect_key_boundary,vect_val_boundary,false);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// GetModifiedRows returns ODBCM_RC_RECORD_NOT_FOUND
-TEST_F(KtClassTest, GetModifiedRows_01) {
+TEST_F(BoundaryTest, GetModifiedRows_01) {
vector<void *> obj_key_struct;
obj_key_struct.clear();
CsRowStatus row_status = UPDATED;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETMODIFIEDROWS, ODBCM_RC_RECORD_NOT_FOUND);
int ret = KtboundaryObj.GetModifiedRows(db_conn,obj_key_struct,row_status);
- EXPECT_EQ(ret,UPPL_RC_ERR_NO_SUCH_INSTANCE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
}
// GetModifiedRows returns ODBCM_RC_CONNECTION_ERROR
-TEST_F(KtClassTest, GetModifiedRows_02) {
+TEST_F(BoundaryTest, GetModifiedRows_02) {
vector<void *> obj_key_struct;
obj_key_struct.clear();
CsRowStatus row_status = UPDATED;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETMODIFIEDROWS, ODBCM_RC_CONNECTION_ERROR);
int ret = KtboundaryObj.GetModifiedRows(db_conn,obj_key_struct,row_status);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
// GetModifiedRows returns ODBCM_RC_SUCCESS
-TEST_F(KtClassTest, GetModifiedRows_03) {
+TEST_F(BoundaryTest, GetModifiedRows_03) {
vector<void *> obj_key_struct;
obj_key_struct.clear();
CsRowStatus row_status = UPDATED;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETMODIFIEDROWS, ODBCM_RC_SUCCESS);
int ret = KtboundaryObj.GetModifiedRows(db_conn,obj_key_struct,row_status);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// GetModifiedRows returns ODBCM_RC_FAILED
-TEST_F(KtClassTest, GetModifiedRows_04) {
+TEST_F(BoundaryTest, GetModifiedRows_04) {
vector<void *> obj_key_struct;
obj_key_struct.clear();
CsRowStatus row_status = UPDATED;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETMODIFIEDROWS, ODBCM_RC_FAILED);
int ret = KtboundaryObj.GetModifiedRows(db_conn,obj_key_struct,row_status);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_GET);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_GET, ret);
}
// IsKeyExists with empty vector
-TEST_F(KtClassTest, IsKeyExists_01) {
+TEST_F(BoundaryTest, IsKeyExists_01) {
vector<string> obj_key_struct;
obj_key_struct.clear();
Kt_Boundary KtboundaryObj;
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtboundaryObj.IsKeyExists(db_conn,UNC_DT_CANDIDATE,obj_key_struct);
- EXPECT_EQ(ret,UPPL_RC_ERR_BAD_REQUEST);
+ EXPECT_EQ(UPPL_RC_ERR_BAD_REQUEST, ret);
}
// IsRowExists returns ODBCM_RC_CONNECTION_ERROR
-TEST_F(KtClassTest, IsKeyExists_02) {
+TEST_F(BoundaryTest, IsKeyExists_02) {
vector<string> obj_key_struct;
obj_key_struct.clear();
string BD1 = "boundary1";
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_CONNECTION_ERROR);
int ret = KtboundaryObj.IsKeyExists(db_conn,UNC_DT_CANDIDATE,obj_key_struct);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
// IsRowExists returns ODBCM_RC_ROW_EXISTS
-TEST_F(KtClassTest, IsKeyExists_03) {
+TEST_F(BoundaryTest, IsKeyExists_03) {
vector<string> obj_key_struct;
obj_key_struct.clear();
string BD1 = "boundary1";
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);
int ret = KtboundaryObj.IsKeyExists(db_conn,UNC_DT_CANDIDATE,obj_key_struct);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// IsRowExists returns ODBCM_RC_FAILED
-TEST_F(KtClassTest, IsKeyExists_04) {
+TEST_F(BoundaryTest, IsKeyExists_04) {
vector<string> obj_key_struct;
obj_key_struct.clear();
string BD1 = "boundary1";
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_FAILED);
int ret = KtboundaryObj.IsKeyExists(db_conn,UNC_DT_CANDIDATE,obj_key_struct);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_GET);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_GET, ret);
}
// PerformSemanticValidation with UNC_OP_CREATE
-TEST_F(KtClassTest, PerformSemanticValidation_01) {
+TEST_F(BoundaryTest, PerformSemanticValidation_01) {
key_boundary_t k;
val_boundary_t v;
getKeyForKtBoundary1(k);
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);
int ret = KtboundaryObj.PerformSemanticValidation(db_conn,&k,&v,UNC_OP_CREATE,UNC_DT_CANDIDATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_INSTANCE_EXISTS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_INSTANCE_EXISTS, ret);
}
// IsKeyExists returns ODBCM_RC_CONNECTION_ERROR
-TEST_F(KtClassTest, PerformSemanticValidation_02) {
+TEST_F(BoundaryTest, PerformSemanticValidation_02) {
key_boundary_t k;
val_boundary_t v;
getKeyForKtBoundary1(k);
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_CONNECTION_ERROR);
int ret = KtboundaryObj.PerformSemanticValidation(db_conn,&k,&v,UNC_OP_CREATE,UNC_DT_CANDIDATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
// PerformSemanticValidation with UNC_OP_UPDATE
-TEST_F(KtClassTest, PerformSemanticValidation_03) {
+TEST_F(BoundaryTest, PerformSemanticValidation_03) {
key_boundary_t k;
val_boundary_t v;
getKeyForKtBoundary1(k);
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_CONNECTION_ERROR);
int ret = KtboundaryObj.PerformSemanticValidation(db_conn,&k,&v,UNC_OP_UPDATE,UNC_DT_CANDIDATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
// PerformSemanticValidation with UNC_OP_DELETE
-TEST_F(KtClassTest, PerformSemanticValidation_04) {
+TEST_F(BoundaryTest, PerformSemanticValidation_04) {
key_boundary_t k;
val_boundary_t v;
getKeyForKtBoundary1(k);
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_CONNECTION_ERROR);
int ret = KtboundaryObj.PerformSemanticValidation(db_conn,&k,&v,UNC_OP_DELETE,UNC_DT_CANDIDATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);
- unc::uppl::ODBCManager::clearStubData();
-}// PerformSemanticValidation with UNC_OP_READ
-TEST_F(KtClassTest, PerformSemanticValidation_05) {
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
+}
+
+// PerformSemanticValidation with UNC_OP_READ
+TEST_F(BoundaryTest, PerformSemanticValidation_05) {
key_boundary_t k;
val_boundary_t v;
getKeyForKtBoundary1(k);
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_CONNECTION_ERROR);
int ret = KtboundaryObj.PerformSemanticValidation(db_conn,&k,&v,UNC_OP_READ,UNC_DT_CANDIDATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
// PerformSemanticValidation with UNC_OP_UPDATE and IsKeyExists returns ODBCM_RC_ROW_NOT_EXISTS
-TEST_F(KtClassTest, PerformSemanticValidation_06) {
+TEST_F(BoundaryTest, PerformSemanticValidation_06) {
key_boundary_t k;
val_boundary_t v;
getKeyForKtBoundary1(k);
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_NOT_EXISTS);
int ret = KtboundaryObj.PerformSemanticValidation(db_conn,&k,&v,UNC_OP_UPDATE,UNC_DT_CANDIDATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_NO_SUCH_INSTANCE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
}
// PerformSemanticValidation with UNC_OP_DELETE and IsKeyExists returns ODBCM_RC_ROW_NOT_EXISTS
-TEST_F(KtClassTest, PerformSemanticValidation_07) {
+TEST_F(BoundaryTest, PerformSemanticValidation_07) {
key_boundary_t k;
val_boundary_t v;
getKeyForKtBoundary1(k);
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_NOT_EXISTS);
int ret = KtboundaryObj.PerformSemanticValidation(db_conn,&k,&v,UNC_OP_DELETE,UNC_DT_CANDIDATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_NO_SUCH_INSTANCE);
- unc::uppl::ODBCManager::clearStubData();
-}// PerformSemanticValidation with UNC_OP_READ and IsKeyExists returns ODBCM_RC_ROW_NOT_EXISTS
-TEST_F(KtClassTest, PerformSemanticValidation_08) {
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
+}
+
+// PerformSemanticValidation with UNC_OP_READ and IsKeyExists returns ODBCM_RC_ROW_NOT_EXISTS
+TEST_F(BoundaryTest, PerformSemanticValidation_08) {
key_boundary_t k;
val_boundary_t v;
getKeyForKtBoundary1(k);
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_NOT_EXISTS);
int ret = KtboundaryObj.PerformSemanticValidation(db_conn,&k,&v,UNC_OP_READ,UNC_DT_CANDIDATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_NO_SUCH_INSTANCE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
}
// PerformSemanticValidation with UNC_OP_UPDATE and IsKeyExists returns ODBCM_RC_ROW_EXISTS
-TEST_F(KtClassTest, PerformSemanticValidation_09) {
+TEST_F(BoundaryTest, PerformSemanticValidation_09) {
key_boundary_t k;
val_boundary_t v;
getKeyForKtBoundary1(k);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_RECORD_NOT_FOUND);
int ret = KtboundaryObj.PerformSemanticValidation(db_conn,&k,&v,UNC_OP_UPDATE,UNC_DT_CANDIDATE);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// controller1 == controller2 && domain1 == domain2
-TEST_F(KtClassTest, PerformSemanticValidation_10) {
+TEST_F(BoundaryTest, PerformSemanticValidation_10) {
key_boundary_t k;
val_boundary_t v;
getKeyForKtBoundary1(k);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_RECORD_NOT_FOUND);
int ret = KtboundaryObj.PerformSemanticValidation(db_conn,&k,&v,UNC_OP_UPDATE,UNC_DT_CANDIDATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SEMANTIC);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SEMANTIC, ret);
}
// Val struct NULL
-TEST_F(KtClassTest, PerformSemanticValidation_11) {
+TEST_F(BoundaryTest, PerformSemanticValidation_11) {
key_boundary_t k;
val_boundary_t *v = NULL;
getKeyForKtBoundary1(k);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_RECORD_NOT_FOUND);
int ret = KtboundaryObj.PerformSemanticValidation(db_conn,&k,v,UNC_OP_UPDATE,UNC_DT_CANDIDATE);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// PerformSemanticValidation with UNC_OP_DELETE and IsKeyExists returns ODBCM_RC_ROW_EXISTS
-TEST_F(KtClassTest, PerformSemanticValidation_12) {
+TEST_F(BoundaryTest, PerformSemanticValidation_12) {
key_boundary_t k;
val_boundary_t v;
getKeyForKtBoundary1(k);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_RECORD_NOT_FOUND);
int ret = KtboundaryObj.PerformSemanticValidation(db_conn,&k,&v,UNC_OP_DELETE,UNC_DT_CANDIDATE);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
+
// Getctr type failure
-TEST_F(KtClassTest, PerformSemanticValidation_13) {
+TEST_F(BoundaryTest, PerformSemanticValidation_13) {
key_boundary_t k;
val_boundary_t v;
getKeyForKtBoundary1(k);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_FAILED);
int ret = KtboundaryObj.PerformSemanticValidation(db_conn,&k,&v,UNC_OP_UPDATE,UNC_DT_CANDIDATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SEMANTIC);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SEMANTIC, ret);
}
// Domain1 name Default
-TEST_F(KtClassTest, PerformSemanticValidation_14) {
+TEST_F(BoundaryTest, PerformSemanticValidation_14) {
key_boundary_t k;
val_boundary_t v;
getKeyForKtBoundary1(k);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
int ret = KtboundaryObj.PerformSemanticValidation(db_conn,&k,&v,UNC_OP_UPDATE,UNC_DT_CANDIDATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SEMANTIC);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SEMANTIC, ret);
}
// Domain2 name Default
-TEST_F(KtClassTest, PerformSemanticValidation_15) {
+TEST_F(BoundaryTest, PerformSemanticValidation_15) {
key_boundary_t k;
val_boundary_t v;
getKeyForKtBoundary1(k);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
int ret = KtboundaryObj.PerformSemanticValidation(db_conn,&k,&v,UNC_OP_UPDATE,UNC_DT_CANDIDATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SEMANTIC);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SEMANTIC, ret);
}
// ValidateSiblingFiltering
-TEST_F(KtClassTest, ValidateSiblingFiltering_01) {
+TEST_F(BoundaryTest, ValidateSiblingFiltering_01) {
Kt_Boundary KtboundaryObj;
- OdbcmConnectionHandler *db_conn =NULL;
int ret = KtboundaryObj.ValidateSiblingFiltering(0,0,1,1);
- EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SYNTAX);
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SYNTAX, ret);
}
// ValidateSiblingFiltering
-TEST_F(KtClassTest, ValidateSiblingFiltering_02) {
+TEST_F(BoundaryTest, ValidateSiblingFiltering_02) {
Kt_Boundary KtboundaryObj;
- OdbcmConnectionHandler *db_conn =NULL;
int ret = KtboundaryObj.ValidateSiblingFiltering(1,0,0,1);
- EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SYNTAX);
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SYNTAX, ret);
}
// ValidateSiblingFiltering
-TEST_F(KtClassTest, ValidateSiblingFiltering_03) {
+TEST_F(BoundaryTest, ValidateSiblingFiltering_03) {
Kt_Boundary KtboundaryObj;
- OdbcmConnectionHandler *db_conn =NULL;
int ret = KtboundaryObj.ValidateSiblingFiltering(1,1,1,1);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// SendOperStatusNotification Success
-TEST_F(KtClassTest, SendOperStatusNotification_01) {
+TEST_F(BoundaryTest, SendOperStatusNotification_01) {
key_boundary_t k;
getKeyForKtBoundary1(k);
uint8_t old_oper_st = 1;
uint8_t new_oper_st = 0;
ServerSession ses;
- ServerSession::clearStubData();
ses.stub_setAddOutput((uint32_t)UNC_OP_UPDATE);
ses.stub_setAddOutput((uint32_t)UNC_DT_STATE);
ses.stub_setAddOutput((uint32_t)UNC_KT_BOUNDARY);
Kt_Boundary KtboundaryObj;
- OdbcmConnectionHandler *db_conn =NULL;
int ret = KtboundaryObj.SendOperStatusNotification(k,old_oper_st,new_oper_st);
- EXPECT_EQ(ret,UPPL_RC_FAILURE);
+ EXPECT_EQ(UPPL_RC_FAILURE, ret);
}
// SendOperStatusNotification Failure
-TEST_F(KtClassTest, SendOperStatusNotification_02) {
+TEST_F(BoundaryTest, SendOperStatusNotification_02) {
key_boundary_t k;
getKeyForKtBoundary1(k);
uint8_t old_oper_st = 1;
uint8_t new_oper_st = 0;
ServerSession ses;
- ServerSession::clearStubData();
ses.stub_setAddOutput((uint32_t)UNC_OP_UPDATE);
ses.stub_setAddOutput((uint32_t)UNC_KT_BOUNDARY);
Kt_Boundary KtboundaryObj;
- OdbcmConnectionHandler *db_conn =NULL;
int ret = KtboundaryObj.SendOperStatusNotification(k,old_oper_st,new_oper_st);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
// GetAllBoundaryOperStatus success
-TEST_F(KtClassTest, GetAllBoundaryOperStatus_01) {
+TEST_F(BoundaryTest, GetAllBoundaryOperStatus_01) {
string ctr_name = "controller1";
string domain = "domain1";
string lp_name = "logical_port1";
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_SUCCESS);
int ret = KtboundaryObj.GetAllBoundaryOperStatus(db_conn,ctr_name,domain,lp_name,bdry_notfn,UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// GetAllBoundaryOperStatus Failure
-TEST_F(KtClassTest, GetAllBoundaryOperStatus_02) {
+TEST_F(BoundaryTest, GetAllBoundaryOperStatus_02) {
string ctr_name = "controller1";
string domain = "domain1";
string lp_name = "logical_port1";
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_FAILED);
int ret = KtboundaryObj.GetAllBoundaryOperStatus(db_conn,ctr_name,domain,lp_name,bdry_notfn,UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_GET);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_GET, ret);
}
// CheckBoundaryExistence
-TEST_F(KtClassTest, CheckBoundaryExistence_01) {
+TEST_F(BoundaryTest, CheckBoundaryExistence_01) {
key_boundary_t k;
val_boundary_t v;
getKeyForKtBoundary1(k);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_SUCCESS);
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtboundaryObj.CheckBoundaryExistence(db_conn,&k,&v,UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SEMANTIC);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SEMANTIC, ret);
}
// GetOperStatus success
-TEST_F(KtClassTest, GetOperStatus_01) {
+TEST_F(BoundaryTest, GetOperStatus_01) {
key_boundary_t k;
uint8_t oper_status = 0;
getKeyForKtBoundary1(k);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtboundaryObj.GetOperStatus(db_conn,UNC_DT_STATE,&k,oper_status);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// GetOperStatus Failure
-TEST_F(KtClassTest, GetOperStatus_02) {
+TEST_F(BoundaryTest, GetOperStatus_02) {
key_boundary_t k;
uint8_t oper_status = 0;
getKeyForKtBoundary1(k);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_FAILED);
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtboundaryObj.GetOperStatus(db_conn,UNC_DT_STATE,&k,oper_status);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_GET);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_GET, ret);
}
// GetBoundaryValidFlag
-TEST_F(KtClassTest, GetBoundaryValidFlag_01) {
+TEST_F(BoundaryTest, GetBoundaryValidFlag_01) {
key_boundary_t k;
val_boundary_st_t v;
memset(&v,0,sizeof(val_boundary_st_t));
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtboundaryObj.GetBoundaryValidFlag(db_conn,&k,v,UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// IsBoundaryReferred with key type UNC_KT_CONTROLLER
-TEST_F(KtClassTest, IsBoundaryReferred_01) {
- key_boundary_t k;
+TEST_F(BoundaryTest, IsBoundaryReferred_01) {
+ key_ctr_t k;
+ pfc_strlcpy(reinterpret_cast<char *>(k.controller_name), "Controller1",
+ sizeof(k.controller_name));
unc_key_type_t keytype = UNC_KT_CONTROLLER;
- uint8_t oper_status = 0;
- getKeyForKtBoundary1(k);
Kt_Boundary KtboundaryObj;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);
OdbcmConnectionHandler *db_conn =NULL;
- int ret = KtboundaryObj.IsBoundaryReferred(db_conn,keytype,&k,UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_FAILURE);
- unc::uppl::ODBCManager::clearStubData();
+ ASSERT_EQ(PFC_TRUE,
+ KtboundaryObj.IsBoundaryReferred(db_conn, keytype, &k,
+ UNC_DT_STATE));
}
// IsBoundaryReferred with key type UNC_KT_CONTROLLER and row not exists
-TEST_F(KtClassTest, IsBoundaryReferred_02) {
- key_boundary_t k;
+TEST_F(BoundaryTest, IsBoundaryReferred_02) {
+ key_ctr_t k;
+ pfc_strlcpy(reinterpret_cast<char *>(k.controller_name), "Controller1",
+ sizeof(k.controller_name));
unc_key_type_t keytype = UNC_KT_CONTROLLER;
- uint8_t oper_status = 0;
- getKeyForKtBoundary1(k);
Kt_Boundary KtboundaryObj;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_NOT_EXISTS);
OdbcmConnectionHandler *db_conn =NULL;
- int ret = KtboundaryObj.IsBoundaryReferred(db_conn,keytype,&k,UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ ASSERT_EQ(PFC_FALSE,
+ KtboundaryObj.IsBoundaryReferred(db_conn, keytype, &k,
+ UNC_DT_STATE));
}
// IsBoundaryReferred with key type UNC_KT_CTR_DOMAIN
-TEST_F(KtClassTest, IsBoundaryReferred_03) {
- key_boundary_t k;
+TEST_F(BoundaryTest, IsBoundaryReferred_03) {
+ key_ctr_domain_t k;
+ pfc_strlcpy(reinterpret_cast<char *>(k.ctr_key.controller_name),
+ "Controller1", sizeof(k.ctr_key.controller_name));
+ pfc_strlcpy(reinterpret_cast<char *>(k.domain_name), "Domain1",
+ sizeof(k.domain_name));
unc_key_type_t keytype = UNC_KT_CTR_DOMAIN;
- uint8_t oper_status = 0;
- getKeyForKtBoundary1(k);
Kt_Boundary KtboundaryObj;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);
OdbcmConnectionHandler *db_conn =NULL;
- int ret = KtboundaryObj.IsBoundaryReferred(db_conn,keytype,&k,UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_FAILURE);
- unc::uppl::ODBCManager::clearStubData();
+ ASSERT_EQ(PFC_TRUE,
+ KtboundaryObj.IsBoundaryReferred(db_conn, keytype, &k,
+ UNC_DT_STATE));
}
// IsBoundaryReferred with key type UNC_KT_CTR_DOMAIN and row not exists
-TEST_F(KtClassTest, IsBoundaryReferred_04) {
- key_boundary_t k;
+TEST_F(BoundaryTest, IsBoundaryReferred_04) {
+ key_ctr_domain_t k;
+ pfc_strlcpy(reinterpret_cast<char *>(k.ctr_key.controller_name),
+ "Controller1", sizeof(k.ctr_key.controller_name));
+ pfc_strlcpy(reinterpret_cast<char *>(k.domain_name), "Domain1",
+ sizeof(k.domain_name));
unc_key_type_t keytype = UNC_KT_CTR_DOMAIN;
- uint8_t oper_status = 0;
- getKeyForKtBoundary1(k);
Kt_Boundary KtboundaryObj;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_NOT_EXISTS);
OdbcmConnectionHandler *db_conn =NULL;
- int ret = KtboundaryObj.IsBoundaryReferred(db_conn,keytype,&k,UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ ASSERT_EQ(PFC_FALSE,
+ KtboundaryObj.IsBoundaryReferred(db_conn, keytype, &k,
+ UNC_DT_STATE));
}
// IsBoundaryReferred with unknown key type
-TEST_F(KtClassTest, IsBoundaryReferred_05) {
- key_boundary_t k;
+TEST_F(BoundaryTest, IsBoundaryReferred_05) {
unc_key_type_t keytype = UNC_KT_LINK;
- uint8_t oper_status = 0;
- getKeyForKtBoundary1(k);
Kt_Boundary KtboundaryObj;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_NOT_EXISTS);
OdbcmConnectionHandler *db_conn =NULL;
- int ret = KtboundaryObj.IsBoundaryReferred(db_conn,keytype,&k,UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ ASSERT_EQ(PFC_FALSE,
+ KtboundaryObj.IsBoundaryReferred(db_conn, keytype, NULL,
+ UNC_DT_STATE));
}
+
//PerformRead with negative option1
-TEST_F(KtClassTest, PerformRead_Neg_option1_01) {
+TEST_F(BoundaryTest, PerformRead_Neg_option1_01) {
key_boundary_t k;
val_boundary_st_t v;
memset(&v,0,sizeof(val_boundary_st_t));
Kt_Boundary KtboundaryObj;
OdbcmConnectionHandler *db_conn =NULL;
ServerSession sess;
- ServerSession::clearStubData();
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)UNC_OP_READ);
sess.stub_setAddOutput((uint32_t)UNC_KT_BOUNDARY);
int ret = KtboundaryObj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_DETAIL,(uint32_t)UNC_OPT2_NONE,(uint32_t)1);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
+
//PerformRead with negative option1
-TEST_F(KtClassTest, PerformRead_Neg_option1_02) {
+TEST_F(BoundaryTest, PerformRead_Neg_option1_02) {
key_boundary_t k;
val_boundary_st_t v;
memset(&v,0,sizeof(val_boundary_st_t));
Kt_Boundary KtboundaryObj;
OdbcmConnectionHandler *db_conn =NULL;
ServerSession sess;
- ServerSession::clearStubData();
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)UNC_OP_READ);
sess.stub_setAddOutput((uint32_t)UNC_KT_BOUNDARY);
int ret = KtboundaryObj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_DETAIL,(uint32_t)UNC_OPT2_NONE,(uint32_t)1);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
//PerformRead with unsupported datatype
-TEST_F(KtClassTest, PerformRead_Neg_datatype_03) {
+TEST_F(BoundaryTest, PerformRead_Neg_datatype_03) {
key_boundary_t k;
val_boundary_st_t v;
memset(&v,0,sizeof(val_boundary_st_t));
Kt_Boundary KtboundaryObj;
OdbcmConnectionHandler *db_conn =NULL;
ServerSession sess;
- ServerSession::clearStubData();
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)UNC_OP_READ);
sess.stub_setAddOutput((uint32_t)UNC_KT_BOUNDARY);
int ret = KtboundaryObj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_AUDIT,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_NONE,(uint32_t)1);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
+
//PerformRead with unsupported datatype
-TEST_F(KtClassTest, PerformRead_Neg_datatype_04) {
+TEST_F(BoundaryTest, PerformRead_Neg_datatype_04) {
key_boundary_t k;
val_boundary_st_t v;
memset(&v,0,sizeof(val_boundary_st_t));
Kt_Boundary KtboundaryObj;
OdbcmConnectionHandler *db_conn =NULL;
ServerSession sess;
- ServerSession::clearStubData();
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)UNC_OP_READ);
sess.stub_setAddOutput((uint32_t)UNC_KT_BOUNDARY);
int ret = KtboundaryObj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_AUDIT,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_NONE,(uint32_t)1);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
+
//PerformRead with negative dB
-TEST_F(KtClassTest, PerformRead_Neg_DB_05) {
+TEST_F(BoundaryTest, PerformRead_Neg_DB_05) {
key_boundary_t k;
val_boundary_st_t v;
memset(&v,0,sizeof(val_boundary_st_t));
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_FAILED);
ServerSession sess;
- ServerSession::clearStubData();
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)UNC_OP_READ);
sess.stub_setAddOutput((uint32_t)UNC_KT_BOUNDARY);
int ret = KtboundaryObj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_CANDIDATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_NONE,(uint32_t)1);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
+
//PerformRead with positive dB
-TEST_F(KtClassTest, PerformRead_pos_DB_06) {
+TEST_F(BoundaryTest, PerformRead_pos_DB_06) {
key_boundary_t k;
val_boundary_st_t v;
memset(&v,0,sizeof(val_boundary_st_t));
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
ServerSession sess;
- ServerSession::clearStubData();
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)UNC_OP_READ);
sess.stub_setAddOutput((uint32_t)UNC_KT_BOUNDARY);
int ret = KtboundaryObj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_CANDIDATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_NONE,(uint32_t)1);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
//PerformRead with max_rep_cnt NULL
-TEST_F(KtClassTest, PerformRead_max_rep_count_07) {
+TEST_F(BoundaryTest, PerformRead_max_rep_count_07) {
key_boundary_t k;
val_boundary_st_t v;
memset(&v,0,sizeof(val_boundary_st_t));
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
ServerSession sess;
- ServerSession::clearStubData();
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)UNC_OP_READ);
sess.stub_setAddOutput((uint32_t)UNC_KT_BOUNDARY);
int ret = KtboundaryObj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_CANDIDATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_NONE,(uint32_t)0);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
+
//PerformRead with Datatype UNC_DT_STATE
-TEST_F(KtClassTest, PerformRead_STATE_08) {
+TEST_F(BoundaryTest, PerformRead_STATE_08) {
key_boundary_t k;
val_boundary_st_t v;
memset(&v,0,sizeof(val_boundary_st_t));
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
ServerSession sess;
- ServerSession::clearStubData();
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)UNC_OP_READ);
sess.stub_setAddOutput((uint32_t)UNC_DT_STATE);
int ret = KtboundaryObj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_NONE,(uint32_t)1);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
+
//PerformRead with max_rep_cnt NULL
-TEST_F(KtClassTest, PerformRead_max_rep_count_09) {
+TEST_F(BoundaryTest, PerformRead_max_rep_count_09) {
key_boundary_t k;
val_boundary_st_t v;
memset(&v,0,sizeof(val_boundary_st_t));
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
ServerSession sess;
- ServerSession::clearStubData();
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)UNC_OP_READ);
sess.stub_setAddOutput((uint32_t)UNC_KT_BOUNDARY);
int ret = KtboundaryObj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_CANDIDATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_NONE,(uint32_t)0);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
+
//HandleOperStatus with Val_Struct NULL
-TEST_F(KtClassTest, HandleOperStatus_Val_Struct_NULL_01) {
+TEST_F(BoundaryTest, HandleOperStatus_Val_Struct_NULL_01) {
key_boundary_t k;
val_boundary_t *v=NULL;
vector<OperStatusHolder> ref_oper_status;
Kt_Boundary KtboundaryObj;
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtboundaryObj.HandleOperStatus(db_conn,UNC_DT_STATE,&k,v,ref_oper_status);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
//HandleOperStatus
-TEST_F(KtClassTest, HandleOperStatus_02) {
+TEST_F(BoundaryTest, HandleOperStatus_02) {
key_boundary_t k;
- val_boundary_t *v = new val_boundary_t;
+ val_boundary_t v;
+ memset(&v, 0, sizeof(v));
vector<OperStatusHolder> ref_oper_status;
getKeyForKtBoundary1(k);
Kt_Boundary KtboundaryObj;
OdbcmConnectionHandler *db_conn =NULL;
- v->valid[kIdxBoundaryControllerName1]=0;
- v->valid[kIdxBoundaryControllerName2]=0;
+ v.valid[kIdxBoundaryControllerName1]=0;
+ v.valid[kIdxBoundaryControllerName2]=0;
- int ret = KtboundaryObj.HandleOperStatus(db_conn,UNC_DT_CANDIDATE,&k,v,ref_oper_status);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ int ret = KtboundaryObj.HandleOperStatus(db_conn,UNC_DT_CANDIDATE,&k,&v,ref_oper_status);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
+
//HandleOperStatus
-TEST_F(KtClassTest, HandleOperStatus_03) {
+TEST_F(BoundaryTest, HandleOperStatus_03) {
key_boundary_t k;
- val_boundary_t *v = new val_boundary_t;
+ val_boundary_t v;
+ memset(&v, 0, sizeof(v));
vector<OperStatusHolder> ref_oper_status;
getKeyForKtBoundary1(k);
Kt_Boundary KtboundaryObj;
OdbcmConnectionHandler *db_conn =NULL;
- v->valid[kIdxBoundaryControllerName1]=1;
- v->valid[kIdxBoundaryControllerName2]=0;
+ v.valid[kIdxBoundaryControllerName1]=1;
+ v.valid[kIdxBoundaryControllerName2]=0;
- int ret = KtboundaryObj.HandleOperStatus(db_conn,UNC_DT_CANDIDATE,&k,v,ref_oper_status);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ int ret = KtboundaryObj.HandleOperStatus(db_conn,UNC_DT_CANDIDATE,&k,&v,ref_oper_status);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
+
//HandleOperStatus
-TEST_F(KtClassTest, HandleOperStatus_04) {
+TEST_F(BoundaryTest, HandleOperStatus_04) {
key_boundary_t k;
- val_boundary_t *v = new val_boundary_t;
+ val_boundary_t v;
+ memset(&v, 0, sizeof(v));
vector<OperStatusHolder> ref_oper_status;
getKeyForKtBoundary1(k);
Kt_Boundary KtboundaryObj;
OdbcmConnectionHandler *db_conn =NULL;
- v->valid[kIdxBoundaryControllerName2]=1;
- v->valid[kIdxBoundaryControllerName1]=0;
+ v.valid[kIdxBoundaryControllerName2]=1;
+ v.valid[kIdxBoundaryControllerName1]=0;
- int ret = KtboundaryObj.HandleOperStatus(db_conn,UNC_DT_CANDIDATE,&k,v,ref_oper_status);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ int ret = KtboundaryObj.HandleOperStatus(db_conn,UNC_DT_CANDIDATE,&k,&v,ref_oper_status);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
+
//HandleOperStatus
-TEST_F(KtClassTest, HandleOperStatus_05) {
+TEST_F(BoundaryTest, HandleOperStatus_05) {
key_boundary_t k;
- val_boundary_t *v = new val_boundary_t;
+ val_boundary_t v;
+ memset(&v, 0, sizeof(v));
vector<OperStatusHolder> ref_oper_status;
getKeyForKtBoundary1(k);
Kt_Boundary KtboundaryObj;
OdbcmConnectionHandler *db_conn =NULL;
- v->valid[kIdxBoundaryControllerName2]=1;
- v->valid[kIdxBoundaryControllerName1]=1;
+ v.valid[kIdxBoundaryControllerName2]=1;
+ v.valid[kIdxBoundaryControllerName1]=1;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
- int ret = KtboundaryObj.HandleOperStatus(db_conn,UNC_DT_RUNNING,&k,v,ref_oper_status);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ int ret = KtboundaryObj.HandleOperStatus(db_conn,UNC_DT_RUNNING,&k,&v,ref_oper_status);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
+
//HandleOperStatus
-TEST_F(KtClassTest, HandleOperStatus_06) {
+TEST_F(BoundaryTest, HandleOperStatus_06) {
key_boundary_t k;
- val_boundary_t *v = new val_boundary_t;
+ val_boundary_t v;
+ memset(&v, 0, sizeof(v));
vector<OperStatusHolder> ref_oper_status;
getKeyForKtBoundary1(k);
Kt_Boundary KtboundaryObj;
OdbcmConnectionHandler *db_conn =NULL;
- v->valid[kIdxBoundaryControllerName2]=1;
- v->valid[kIdxBoundaryControllerName1]=1;
+ v.valid[kIdxBoundaryControllerName2]=1;
+ v.valid[kIdxBoundaryControllerName1]=1;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_FAILED);
- int ret = KtboundaryObj.HandleOperStatus(db_conn,UNC_DT_RUNNING,&k,v,ref_oper_status);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ int ret = KtboundaryObj.HandleOperStatus(db_conn,UNC_DT_RUNNING,&k,&v,ref_oper_status);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// FrameValidValue
-TEST_F(KtClassTest, FrameValidValue_01) {
+TEST_F(BoundaryTest, FrameValidValue_01) {
val_boundary_st v_st;
val_boundary_t v;
- string at_value = "boundary";
+ memset(&v, 0xff, sizeof(v));
+ memset(&v_st, 0xff, sizeof(v_st));
+
+ string at_value("01234567");
Kt_Boundary KtboundaryObj;
- int ret = UPPL_RC_SUCCESS;
KtboundaryObj.FrameValidValue(at_value,v_st,v);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
+
+ const uint32_t vsize(PFC_ARRAY_CAPACITY(v.valid));
+ for (uint32_t i(0); i < vsize; i++) {
+ ASSERT_EQ(i, v.valid[i]);
+ }
+
+ ASSERT_EQ(UNC_VF_VALID, v_st.valid[0]);
+ for (uint8_t i(1); i < PFC_ARRAY_CAPACITY(v_st.valid); i++) {
+ uint8_t required(static_cast<uint8_t>(vsize + i - 1));
+ ASSERT_EQ(required, v_st.valid[i]);
+ }
}
// FrameCsAttrValue
-TEST_F(KtClassTest, FrameCsAttrValue_01) {
+TEST_F(BoundaryTest, FrameCsAttrValue_01) {
val_boundary_t v;
string at_value = "boundary";
Kt_Boundary KtboundaryObj;
int ret = UPPL_RC_SUCCESS;
KtboundaryObj.FrameCsAttrValue(at_value,v);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
/********TAMIL TC's*********/
/*****getBoundaryInputOperStatus*****/
//Send controller name as empty
-TEST_F(KtClassTest, getBoundaryInputOperStatus_BadRequest) {
+TEST_F(BoundaryTest, getBoundaryInputOperStatus_BadRequest) {
OdbcmConnectionHandler *db_conn = NULL;
- uint32_t data_type;
+ uint32_t data_type(UNC_DT_STATE);
string controller_name;
string domain_name;
string logical_port_id;
vector<OperStatusHolder> ref_oper_status;
Kt_Boundary KtboundaryObj;
int ret = KtboundaryObj.getBoundaryInputOperStatus(db_conn, data_type, controller_name, domain_name, logical_port_id,ref_oper_status);
- EXPECT_EQ(ret, UPPL_BOUNDARY_OPER_UNKNOWN);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_BOUNDARY_OPER_UNKNOWN, ret);
}
//Fill the controler name and send
-TEST_F(KtClassTest, getBoundaryInputOperStatus_ctrlName_fill) {
+TEST_F(BoundaryTest, getBoundaryInputOperStatus_ctrlName_fill) {
OdbcmConnectionHandler *db_conn = NULL;
uint32_t data_type = UNC_DT_STATE;
string controller_name = "ctr1";
Kt_Boundary KtboundaryObj;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
int ret = KtboundaryObj.getBoundaryInputOperStatus(db_conn, data_type, controller_name, domain_name, logical_port_id,ref_oper_status);
- EXPECT_EQ(ret, UPPL_RC_ERR_BAD_REQUEST);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_BAD_REQUEST, ret);
}
-TEST_F(KtClassTest, getBoundaryInputOperStatus) {
+TEST_F(BoundaryTest, getBoundaryInputOperStatus) {
OdbcmConnectionHandler *db_conn = NULL;
uint32_t data_type = UNC_DT_IMPORT;
string controller_name = "ctr1";
string logical_port_id = "";
unc_key_type_t key_type = UNC_KT_CONTROLLER;
- key_ctr_t *key_struct;
+ key_ctr_t key_struct;
+ pfc_strlcpy(reinterpret_cast<char *>(key_struct.controller_name),
+ "controller1", sizeof(key_struct.controller_name));
uint8_t oper_status = 1;
- OperStatusHolder obj(key_type,key_struct,oper_status);
+ OperStatusHolder obj(key_type, &key_struct, oper_status);
vector<OperStatusHolder> ref_oper_status;
ref_oper_status.push_back(obj);
Kt_Boundary KtboundaryObj;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
int ret = KtboundaryObj.getBoundaryInputOperStatus(db_conn, data_type, controller_name, domain_name, logical_port_id,ref_oper_status);
- EXPECT_EQ(ret, UPPL_BOUNDARY_OPER_UNKNOWN);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_BOUNDARY_OPER_UNKNOWN, ret);
}
/********SetOperStatus********/
//key_struct and val_struct are NULL
//return success
-TEST_F(KtClassTest, SetOperStatus_NULL_check) {
+TEST_F(BoundaryTest, SetOperStatus_NULL_check) {
OdbcmConnectionHandler *db_conn = NULL;
- uint32_t data_type;
+ uint32_t data_type(UNC_DT_STATE);
key_boundary_t *k = NULL;
val_boundary_st_t *v = NULL;
- UpplBoundaryOperStatus oper_status;
+ UpplBoundaryOperStatus oper_status(UPPL_BOUNDARY_OPER_UP);
Kt_Boundary KtboundaryObj;
int ret = KtboundaryObj.SetOperStatus(db_conn,data_type,k,v,oper_status);
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
//controller_name1/2 flag is not valid
-TEST_F(KtClassTest, SetOperStatus_InValid_CtrName) {
+TEST_F(BoundaryTest, SetOperStatus_InValid_CtrName) {
OdbcmConnectionHandler *db_conn = NULL;
- uint32_t data_type;
+ uint32_t data_type(UNC_DT_STATE);
key_boundary_t *k = NULL;
- val_boundary_st_t *v = new val_boundary_st_t;
- UpplBoundaryOperStatus oper_status;
+ val_boundary_st_t v;
+ memset(&v, 0, sizeof(v));
+ UpplBoundaryOperStatus oper_status(UPPL_BOUNDARY_OPER_UP);
Kt_Boundary KtboundaryObj;
- int ret = KtboundaryObj.SetOperStatus(db_conn,data_type,k,v,oper_status);
- EXPECT_EQ(ret, UPPL_RC_ERR_BAD_REQUEST);
- unc::uppl::ODBCManager::clearStubData();
+ int ret = KtboundaryObj.SetOperStatus(db_conn,data_type,k,&v,oper_status);
+ EXPECT_EQ(UPPL_RC_ERR_BAD_REQUEST, ret);
}
//SetOperStatus Success_check
-TEST_F(KtClassTest, SetOperStatus_Success_check) {
+TEST_F(BoundaryTest, SetOperStatus_Success_check) {
OdbcmConnectionHandler *db_conn = NULL;
- uint32_t data_type;
+ uint32_t data_type(UNC_DT_STATE);
key_boundary_t k;
val_boundary_t v;
getKeyForKtBoundary1(k);
getValForKtBoundary1(v);
v.valid[kIdxBoundaryControllerName1] = UNC_VF_VALID;
- UpplBoundaryOperStatus oper_status;
+ UpplBoundaryOperStatus oper_status(UPPL_BOUNDARY_OPER_UP);
Kt_Boundary KtboundaryObj;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
int ret = KtboundaryObj.SetOperStatus(db_conn,data_type,&k,&v,oper_status);
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
//oper_status update operation not success
-TEST_F(KtClassTest, SetOperStatus_UPD_NotSucc_Ctr1_Valid) {
+TEST_F(BoundaryTest, SetOperStatus_UPD_NotSucc_Ctr1_Valid) {
OdbcmConnectionHandler *db_conn = NULL;
- uint32_t data_type;
+ uint32_t data_type(UNC_DT_STATE);
key_boundary_t *k = NULL;
val_boundary_t v;
//getKeyForKtBoundary1(k);
Kt_Boundary KtboundaryObj;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_SUCCESS);
int ret = KtboundaryObj.SetOperStatus(db_conn,data_type,k,&v,oper_status);
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
//oper_status update operation not success
//ctr2 name is set as Invaild
-TEST_F(KtClassTest, SetOperStatus_Ctr2_Valid) {
+TEST_F(BoundaryTest, SetOperStatus_Ctr2_Valid) {
OdbcmConnectionHandler *db_conn = NULL;
- uint32_t data_type;
+ uint32_t data_type(UNC_DT_STATE);
key_boundary_t *k = NULL;
val_boundary_t v;
//getKeyForKtBoundary1(k);
Kt_Boundary KtboundaryObj;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_SUCCESS);
int ret = KtboundaryObj.SetOperStatus(db_conn,data_type,k,&v,oper_status);
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
-
- /*
- * Copyright (c) 2012-2013 NEC Corporation
- * All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this
- * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
- */
-
+/*
+ * Copyright (c) 2012-2013 NEC Corporation
+ * All rights reserved.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this
+ * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
+ */
#include <limits.h>
#include <gtest/gtest.h>
#include <pfc/iostream.h>
#include <pfc/ipc_client.h>
#include <pfc/ipc_pfcd.h>
-#include "stub/ODBC/include/odbcm_mgr.hh"
-#include "physical_common_def.hh"
-#include "unc/uppl_common.h"
-#include "unc/keytype.h"
-#include "itc_kt_base.hh"
-#include "itc_kt_root.hh"
-#include "itc_kt_controller.hh"
-#include "itc_kt_ctr_domain.hh"
-#include "itc_kt_switch.hh"
-#include "itc_kt_port.hh"
-#include "itc_kt_link.hh"
-#include "itc_kt_boundary.hh"
-#include "itc_read_request.hh"
-#include "itc_kt_logicalport.hh"
-#include "ipct_util.hh"
+#include <odbcm_mgr.hh>
+#include <physical_common_def.hh>
+#include <unc/uppl_common.h>
+#include <unc/keytype.h>
+#include <itc_kt_base.hh>
+#include <itc_kt_root.hh>
+#include <itc_kt_controller.hh>
+#include <itc_kt_ctr_domain.hh>
+#include <itc_kt_switch.hh>
+#include <itc_kt_port.hh>
+#include <itc_kt_link.hh>
+#include <itc_kt_boundary.hh>
+#include <itc_read_request.hh>
+#include <itc_kt_logicalport.hh>
+#include <ipct_util.hh>
#include "PhysicalLayerStub.hh"
-#include "tclib_module.hh"
+#include <tclib_module.hh>
+#include "ut_util.hh"
using unc::uppl::PhysicalLayer;
using namespace pfc;
using namespace pfc::core::ipc;
using namespace std;
using namespace unc::tclib;
-ClientSession *cli_sess = NULL;
-pfc_ipcid_t service = UPPL_SVC_CONFIGREQ;
-class KtCtrlrTest : public testing::Test {
-protected:
- virtual void SetUp() {
- if (cli_sess == NULL) {
- pfc_ipcconn_t connp = 0;
- int err = pfc_ipcclnt_altopen(UPPL_IPC_CHN_NAME, &connp);
- ASSERT_EQ(0, err);
- //ASSERT_TRUE(connp != 0);
- cli_sess = new ClientSession(connp, UPPL_IPC_SVC_NAME, service, err);
- //ASSERT_EQ(0, err);
- PhysicalLayerStub::loadphysicallayer();
- unc::tclib::TcLibModule::stub_loadtcLibModule();
- } else {
- cli_sess->reset(UPPL_IPC_SVC_NAME, service);
- }
- }
- virtual void TearDown() {
- }
-};
-
-// Can be changed based on testing need
-#if 0
-char pkName1[] = "Controller1_domain_name";
-char pkName2[] = "Domain7";
-char pkName3[] = "Domain15";
-char pkName4[] = "";
-char pkName5[] = "NotExisting";
-char pkName11[] = "Domain20";
-
-char pkName6[] = "Controller1";
-char pkName7[] = "Controller7";
-char pkName8[] = "Controller15";
-char pkName9[] = "";
-char pkName10[] = "NotExisting";
-char pkName12[] = "Controller20";
-
+using namespace unc::uppl::test;
+class ControllerTest
+ : public UpplTestEnv
+{
+};
-#endif
-char pkctrName1[] = "Controller1";
-char pkDomainName2[] = "Domain1";
-char pkDomainName3[] = "(DEFAULT)";
-char valDescription[] = "description1";
+static char pkctrName1[] = "Controller1";
+static char pkDomainName2[] = "Domain1";
+static char valDescription[] = "description1";
-TEST_F(KtCtrlrTest, PerformSyntxCheck_Domainname_notFound_01) {
+TEST_F(ControllerTest, PerformSyntxCheck_Domainname_notFound_01) {
key_ctr_t k;
val_ctr_t v;
- PhysicalLayerStub::loadphysicallayer();
+ memset(&v, 0, sizeof(v));
Kt_Controller ktCtrlrObj;
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
uint32_t operation = UNC_OP_CREATE;
OdbcmConnectionHandler *db_conn =NULL;
int ret = ktCtrlrObj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SYNTAX);
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SYNTAX, ret);
}
-TEST_F(KtCtrlrTest, PerformSyntxCheck_Controllername_notFound_02) {
+
+TEST_F(ControllerTest, PerformSyntxCheck_Controllername_notFound_02) {
key_ctr_t k;
val_ctr_t v;
+ memset(&v, 0, sizeof(v));
Kt_Controller ktCtrlrObj;
memset(k.controller_name, '\0', 32);
uint32_t operation = UNC_OP_CREATE;
OdbcmConnectionHandler *db_conn =NULL;
int ret = ktCtrlrObj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SYNTAX);
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SYNTAX, ret);
}
-TEST_F(KtCtrlrTest, PerformSyntxCheck_Valstrct_without_type_03) {
+TEST_F(ControllerTest, PerformSyntxCheck_Valstrct_without_type_03) {
key_ctr_t k;
val_ctr_t v;
+ memset(&v, 0, sizeof(v));
Kt_Controller ktCtrlrObj;
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
uint32_t operation = UNC_OP_CREATE;
OdbcmConnectionHandler *db_conn =NULL;
int ret = ktCtrlrObj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SYNTAX);
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SYNTAX, ret);
}
-TEST_F(KtCtrlrTest, PerformSyntxCheck_Valstrct_04) {
+TEST_F(ControllerTest, PerformSyntxCheck_Valstrct_04) {
key_ctr_t k;
val_ctr_t v;
+ memset(&v, 0, sizeof(v));
v.type = 1;
v.valid[kIdxType] = 1;
Kt_Controller ktCtrlrObj;
uint32_t operation = UNC_OP_CREATE;
OdbcmConnectionHandler *db_conn =NULL;
int ret = ktCtrlrObj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_CANDIDATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SYNTAX);
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SYNTAX, ret);
}
-TEST_F(KtCtrlrTest, PerformSyntxCheck_Valstrct_05) {
+TEST_F(ControllerTest, PerformSyntxCheck_Valstrct_05) {
key_ctr_t k;
val_ctr_t v;
+ memset(&v, 0, sizeof(v));
v.type = 1;
v.valid[kIdxType] = 1;
Kt_Controller ktCtrlrObj;
uint32_t operation = UNC_OP_UPDATE;
OdbcmConnectionHandler *db_conn =NULL;
int ret = ktCtrlrObj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_CANDIDATE);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
-TEST_F(KtCtrlrTest, PerformSyntxCheck_Valstrct_06) {
+TEST_F(ControllerTest, PerformSyntxCheck_Valstrct_06) {
key_ctr_t k;
val_ctr_t v;
+ memset(&v, 0, sizeof(v));
v.type = 0;
v.valid[kIdxType] = 1;
Kt_Controller ktCtrlrObj;
uint32_t operation = UNC_OP_CREATE;
OdbcmConnectionHandler *db_conn =NULL;
int ret = ktCtrlrObj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_CANDIDATE);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
-TEST_F(KtCtrlrTest, PerformSyntxCheck_Valstrct_07) {
+TEST_F(ControllerTest, PerformSyntxCheck_Valstrct_07) {
key_ctr_t k;
val_ctr_t v;
+ memset(&v, 0, sizeof(v));
v.type = 1;
v.valid[kIdxType] = 1;
Kt_Controller ktCtrlrObj;
uint32_t operation = UNC_OP_CREATE;
OdbcmConnectionHandler *db_conn =NULL;
int ret = ktCtrlrObj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_CANDIDATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SYNTAX);
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SYNTAX, ret);
}
-TEST_F(KtCtrlrTest, PerformSyntxCheck_Valstrct_08) {
+TEST_F(ControllerTest, PerformSyntxCheck_Valstrct_08) {
key_ctr_t k;
val_ctr_t v;
+ memset(&v, 0, sizeof(v));
v.type = 1;
v.valid[kIdxType] = 1;
memset(v.description, '\0', 128);
uint32_t operation = UNC_OP_CREATE;
OdbcmConnectionHandler *db_conn =NULL;
int ret = ktCtrlrObj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_CANDIDATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SYNTAX);
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SYNTAX, ret);
}
// Create for unsupported datatype
-TEST_F(KtCtrlrTest, Create_01) {
+TEST_F(ControllerTest, Create_01) {
key_ctr_t k;
val_ctr_t v;
+ memset(&v, 0, sizeof(v));
uint32_t session_id = 1;
uint32_t configuration_id = 2;
v.type = 1;
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
OdbcmConnectionHandler *db_conn =NULL;
int ret = ktCtrlrObj.Create(db_conn,session_id,configuration_id,&k,&v,UNC_DT_STATE,ses);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
+
// Domain Create success
-TEST_F(KtCtrlrTest, Create_02) {
+TEST_F(ControllerTest, Create_02) {
key_ctr_t k;
val_ctr_t v;
+ memset(&v, 0, sizeof(v));
uint32_t session_id = 1;
uint32_t configuration_id = 2;
v.type = 1;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::CREATEONEROW, ODBCM_RC_SUCCESS);
OdbcmConnectionHandler *db_conn =NULL;
int ret = ktCtrlrObj.Create(db_conn,session_id,configuration_id,&k,&v,UNC_DT_CANDIDATE,ses);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
+
// get_controller_type returns failure
-TEST_F(KtCtrlrTest, Create_03) {
+TEST_F(ControllerTest, Create_03) {
key_ctr_t k;
val_ctr_t v;
+ memset(&v, 0, sizeof(v));
uint32_t session_id = 1;
uint32_t configuration_id = 2;
v.type = 1;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_CONNECTION_ERROR);
OdbcmConnectionHandler *db_conn =NULL;
int ret = ktCtrlrObj.Create(db_conn,session_id,configuration_id,&k,&v,UNC_DT_CANDIDATE,ses);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
//Create on unsupported datatype
-TEST_F(KtCtrlrTest, Create) {
+TEST_F(ControllerTest, Create) {
key_ctr_t k;
val_ctr_t v;
+ memset(&v, 0, sizeof(v));
uint32_t session_id = 1;
uint32_t configuration_id = 2;
v.type = 1;
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
OdbcmConnectionHandler *db_conn =NULL;
int ret = ktCtrlrObj.Create(db_conn,session_id,configuration_id,&k,&v,UNC_DT_STATE,ses);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
-TEST_F(KtCtrlrTest, PerformSemanticValidation_01) {
+TEST_F(ControllerTest, PerformSemanticValidation_01) {
key_ctr_t k;
val_ctr_t v;
+ memset(&v, 0, sizeof(v));
v.type = 1;
v.valid[kIdxType] = 1;
memset(v.description, '\0', 128);
uint32_t operation = UNC_OP_CREATE;
OdbcmConnectionHandler *db_conn =NULL;
int ret = ktCtrlrObj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_CANDIDATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SYNTAX);
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SYNTAX, ret);
}
// IsKeyExists with UNC_DT_CANDIDATE datatype ODBC return ODBCM_RC_CONNECTION_ERROR
-TEST_F(KtCtrlrTest, IsKeyExists_01) {
+TEST_F(ControllerTest, IsKeyExists_01) {
Kt_Controller ktCtrlrObj;
vector<string> vect_key;
vect_key.push_back(pkctrName1);
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_CONNECTION_ERROR);
int ret = ktCtrlrObj.IsKeyExists(db_conn,UNC_DT_CANDIDATE,vect_key);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
// IsKeyExists with UNC_DT_CANDIDATE datatype ODBC return ODBCM_RC_ROW_EXISTS
-TEST_F(KtCtrlrTest, IsKeyExists_02) {
+TEST_F(ControllerTest, IsKeyExists_02) {
Kt_Controller ktCtrlrObj;
vector<string> vect_key;
vect_key.push_back(pkctrName1);
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);
int ret = ktCtrlrObj.IsKeyExists(db_conn,UNC_DT_CANDIDATE,vect_key);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// IsKeyExists with UNC_DT_CANDIDATE datatype ODBC return ODBCM_RC_QUERY_TIMEOUT
-TEST_F(KtCtrlrTest, IsKeyExists_03) {
+TEST_F(ControllerTest, IsKeyExists_03) {
Kt_Controller ktCtrlrObj;
vector<string> vect_key;
vect_key.push_back(pkctrName1);
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_QUERY_TIMEOUT);
int ret = ktCtrlrObj.IsKeyExists(db_conn,UNC_DT_CANDIDATE,vect_key);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_GET);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_GET, ret);
}
// IsKeyExists with key structure empty
-TEST_F(KtCtrlrTest, IsKeyExists_04) {
+TEST_F(ControllerTest, IsKeyExists_04) {
Kt_Controller ktCtrlrObj;
vector<string> vect_key;
vect_key.clear();
OdbcmConnectionHandler *db_conn =NULL;
int ret = ktCtrlrObj.IsKeyExists(db_conn,UNC_DT_CANDIDATE,vect_key);
- EXPECT_EQ(ret,UPPL_RC_ERR_BAD_REQUEST);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_BAD_REQUEST, ret);
}
// CreateKeyInstance with UNC_DT_CANDIDATE datatype ODBC return ODBCM_RC_CONNECTION_ERROR
-TEST_F(KtCtrlrTest, CreateKeyInstance_01) {
+TEST_F(ControllerTest, CreateKeyInstance_01) {
key_ctr_t k;
val_ctr_t v;
+ memset(&v, 0, sizeof(v));
uint32_t key_type = 1;
v.type = 1;
v.valid[kIdxType] = 1;
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::CREATEONEROW, ODBCM_RC_CONNECTION_ERROR);
- //PhysicalLayer *physical_layer = new PhysicalLayer();
int ret = ktCtrlrObj.CreateKeyInstance(db_conn,&k,&v,UNC_DT_CANDIDATE,key_type);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
+
// CreateKeyInstance with UNC_DT_RUNNING datatype ODBC
-TEST_F(KtCtrlrTest, CreateKeyInstance_02) {
+TEST_F(ControllerTest, CreateKeyInstance_02) {
key_ctr_t k;
val_ctr_t v;
+ memset(&v, 0, sizeof(v));
uint32_t key_type = 1;
v.type = 1;
v.valid[kIdxType] = 1;
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::CREATEONEROW, ODBCM_RC_CONNECTION_ERROR);
- //PhysicalLayer *physical_layer = new PhysicalLayer();
int ret = ktCtrlrObj.CreateKeyInstance(db_conn,&k,&v,UNC_DT_RUNNING,key_type);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
+
// CreateKeyInstance with UNC_DT_STATE datatype ODBC return ODBCM_RC_CONNECTION_ERROR
-TEST_F(KtCtrlrTest, CreateKeyInstance_03) {
+TEST_F(ControllerTest, CreateKeyInstance_03) {
key_ctr_t k;
val_ctr_t v;
+ memset(&v, 0, sizeof(v));
uint32_t key_type = 1;
v.type = 1;
v.valid[kIdxType] = 1;
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::CREATEONEROW, ODBCM_RC_CONNECTION_ERROR);
- //PhysicalLayer *physical_layer = new PhysicalLayer();
int ret = ktCtrlrObj.CreateKeyInstance(db_conn,&k,&v,UNC_DT_STATE,key_type);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
// CreateKeyInstance with UNC_DT_IMPORT datatype ODBC return ODBCM_RC_CONNECTION_ERROR
-TEST_F(KtCtrlrTest, CreateKeyInstance_04) {
+TEST_F(ControllerTest, CreateKeyInstance_04) {
key_ctr_t k;
val_ctr_t v;
+ memset(&v, 0, sizeof(v));
uint32_t key_type = 1;
v.type = 1;
v.valid[kIdxType] = 1;
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::CREATEONEROW, ODBCM_RC_CONNECTION_ERROR);
- //PhysicalLayer *physical_layer = new PhysicalLayer();
int ret = ktCtrlrObj.CreateKeyInstance(db_conn,&k,&v,UNC_DT_IMPORT,key_type);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
// CreateKeyInstance with UNC_DT_CANDIDATE datatype ODBC return Failure
-TEST_F(KtCtrlrTest, CreateKeyInstance_05) {
+TEST_F(ControllerTest, CreateKeyInstance_05) {
key_ctr_t k;
val_ctr_t v;
+ memset(&v, 0, sizeof(v));
uint32_t key_type = 1;
v.type = 1;
v.valid[kIdxType] = 1;
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::CREATEONEROW, ODBCM_RC_TRANSACTION_ERROR);
- //PhysicalLayer *physical_layer = new PhysicalLayer();
int ret = ktCtrlrObj.CreateKeyInstance(db_conn,&k,&v,UNC_DT_CANDIDATE,key_type);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_CREATE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_CREATE, ret);
}
+
// CreateKeyInstance with UNC_DT_CANDIDATE datatype ODBC ODBCM_RC_SUCCESS
-TEST_F(KtCtrlrTest, CreateKeyInstance_06) {
+TEST_F(ControllerTest, CreateKeyInstance_06) {
key_ctr_t k;
val_ctr_t v;
+ memset(&v, 0, sizeof(v));
uint32_t key_type = 1;
v.type = 1;
v.valid[kIdxType] = 1;
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::CREATEONEROW, ODBCM_RC_SUCCESS);
- //PhysicalLayer *physical_layer = new PhysicalLayer();
int ret = ktCtrlrObj.CreateKeyInstance(db_conn,&k,&v,UNC_DT_CANDIDATE,key_type);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
+
// CreateKeyInstance with UNC_DT_STATE datatype ODBC return Failure
-TEST_F(KtCtrlrTest, CreateKeyInstance_07) {
+TEST_F(ControllerTest, CreateKeyInstance_07) {
key_ctr_t k;
val_ctr_t v;
+ memset(&v, 0, sizeof(v));
uint32_t key_type = 1;
v.type = 1;
v.valid[kIdxType] = 1;
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::CREATEONEROW, ODBCM_RC_TRANSACTION_ERROR);
- //PhysicalLayer *physical_layer = new PhysicalLayer();
int ret = ktCtrlrObj.CreateKeyInstance(db_conn,&k,&v,UNC_DT_STATE,key_type);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_CREATE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_CREATE, ret);
}
// CreateKeyInstance with UNC_DT_IMPORT datatype ODBC return Failure
-TEST_F(KtCtrlrTest, CreateKeyInstance_08) {
+TEST_F(ControllerTest, CreateKeyInstance_08) {
key_ctr_t k;
val_ctr_t v;
+ memset(&v, 0, sizeof(v));
uint32_t key_type = 1;
v.type = 1;
v.valid[kIdxType] = 1;
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::CREATEONEROW, ODBCM_RC_TRANSACTION_ERROR);
- //PhysicalLayer *physical_layer = new PhysicalLayer();
int ret = ktCtrlrObj.CreateKeyInstance(db_conn,&k,&v,UNC_DT_IMPORT,key_type);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_CREATE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_CREATE, ret);
}
// Update for unsupported datatype
-TEST_F(KtCtrlrTest, Update_01) {
+TEST_F(ControllerTest, Update_01) {
key_ctr_t k;
val_ctr_t v;
+ memset(&v, 0, sizeof(v));
uint32_t session_id = 1;
uint32_t configuration_id = 2;
v.type = 1;
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
OdbcmConnectionHandler *db_conn =NULL;
int ret = ktCtrlrObj.Update(db_conn,session_id,configuration_id,&k,&v,UNC_DT_STATE,ses);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
// Domain Update success
-TEST_F(KtCtrlrTest, Update_02) {
+TEST_F(ControllerTest, Update_02) {
key_ctr_t k;
val_ctr_t v;
+ memset(&v, 0, sizeof(v));
uint32_t session_id = 1;
uint32_t configuration_id = 2;
v.type = 1;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
OdbcmConnectionHandler *db_conn =NULL;
int ret = ktCtrlrObj.Update(db_conn,session_id,configuration_id,&k,&v,UNC_DT_CANDIDATE,ses);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
+
// get_controller_type returns failure
-TEST_F(KtCtrlrTest, Update_03) {
+TEST_F(ControllerTest, Update_03) {
key_ctr_t k;
val_ctr_t v;
+ memset(&v, 0, sizeof(v));
uint32_t session_id = 1;
uint32_t configuration_id = 2;
v.type = 1;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_CONNECTION_ERROR);
OdbcmConnectionHandler *db_conn =NULL;
int ret = ktCtrlrObj.Update(db_conn,session_id,configuration_id,&k,&v,UNC_DT_CANDIDATE,ses);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
// UpdateKeyInstance with UNC_DT_CANDIDATE ODBC retuns ODBCM_RC_CONNECTION_ERROR
-TEST_F(KtCtrlrTest, UpdateKeyInstance_01) {
+TEST_F(ControllerTest, UpdateKeyInstance_01) {
key_ctr_t k;
val_ctr_t v;
+ memset(&v, 0, sizeof(v));
uint32_t key_type = 1;
v.type = 1;
v.valid[kIdxType] = 1;
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_CONNECTION_ERROR);
- //PhysicalLayer *physical_layer = new PhysicalLayer();
int ret = ktCtrlrObj.UpdateKeyInstance(db_conn,&k,&v,UNC_DT_CANDIDATE,key_type);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
// UpdateKeyInstance on unsupported datatype
-TEST_F(KtCtrlrTest, UpdateKeyInstance_02) {
+TEST_F(ControllerTest, UpdateKeyInstance_02) {
key_ctr_t k;
val_ctr_t v;
+ memset(&v, 0, sizeof(v));
uint32_t key_type = 1;
v.type = 1;
v.valid[kIdxType] = 1;
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
OdbcmConnectionHandler *db_conn =NULL;
- //PhysicalLayer *physical_layer = new PhysicalLayer();
int ret = ktCtrlrObj.UpdateKeyInstance(db_conn,&k,&v,UNC_DT_RUNNING,key_type);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_UPDATE);
+ EXPECT_EQ(UPPL_RC_ERR_DB_UPDATE, ret);
}
// UpdateKeyInstance with UNC_DT_IMPORT ODBC retuns ODBCM_RC_CONNECTION_ERROR
-TEST_F(KtCtrlrTest, UpdateKeyInstance_03) {
+TEST_F(ControllerTest, UpdateKeyInstance_03) {
key_ctr_t k;
val_ctr_t v;
+ memset(&v, 0, sizeof(v));
uint32_t key_type = 1;
v.type = 1;
v.valid[kIdxType] = 1;
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_CONNECTION_ERROR);
- //PhysicalLayer *physical_layer = new PhysicalLayer();
int ret = ktCtrlrObj.UpdateKeyInstance(db_conn,&k,&v,UNC_DT_IMPORT,key_type);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
+
// UpdateKeyInstance with UNC_DT_IMPORT ODBC retuns ODBCM_RC_SUCCESS
-TEST_F(KtCtrlrTest, UpdateKeyInstance_04) {
+TEST_F(ControllerTest, UpdateKeyInstance_04) {
key_ctr_t k;
val_ctr_t v;
+ memset(&v, 0, sizeof(v));
uint32_t key_type = 1;
v.type = 1;
v.valid[kIdxType] = 1;
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
- //PhysicalLayer *physical_layer = new PhysicalLayer();
int ret = ktCtrlrObj.UpdateKeyInstance(db_conn,&k,&v,UNC_DT_IMPORT,key_type);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// UpdateKeyInstance with UNC_DT_IMPORT ODBC retuns
-TEST_F(KtCtrlrTest, UpdateKeyInstance_05) {
+TEST_F(ControllerTest, UpdateKeyInstance_05) {
key_ctr_t k;
val_ctr_t v;
+ memset(&v, 0, sizeof(v));
uint32_t key_type = 1;
v.type = 1;
v.valid[kIdxType] = 1;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_TRANSACTION_ERROR);
int ret = ktCtrlrObj.UpdateKeyInstance(db_conn,&k,&v,UNC_DT_IMPORT,key_type);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_UPDATE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_UPDATE, ret);
}
// Delete for unsupported datatype
-TEST_F(KtCtrlrTest, Delete_01) {
- unc::tclib::TcLibModule::stub_setTCApiCommonRetcode(TcLibModule::REGISTER, TC_API_COMMON_SUCCESS);
- unc::uppl::PhysicalLayer *physical_layer = unc::uppl::PhysicalLayer::get_instance();
- physical_layer->init();
-
+TEST_F(ControllerTest, Delete_01) {
key_ctr_t k;
val_ctr_t v;
+ memset(&v, 0, sizeof(v));
uint32_t session_id = 1;
uint32_t configuration_id = 2;
v.type = 1;
v.valid[kIdxDescription] = 0;
Kt_Controller ktCtrlrObj;
ServerSession ses;
- ServerSession ::clearStubData();
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
OdbcmConnectionHandler *db_conn =NULL;
int ret = ktCtrlrObj.Delete(db_conn,session_id,configuration_id,&k,UNC_DT_STATE,ses);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
// Domain Delete success
-TEST_F(KtCtrlrTest, Delete_02) {
+TEST_F(ControllerTest, Delete_02) {
key_ctr_t k;
val_ctr_t v;
+ memset(&v, 0, sizeof(v));
uint32_t session_id = 1;
uint32_t configuration_id = 2;
v.type = 1;
v.valid[kIdxDescription] = 0;
Kt_Controller ktCtrlrObj;
ServerSession ses;
- ServerSession ::clearStubData();
ses.stub_setAddOutput((uint32_t)configuration_id);
ses.stub_setAddOutput((uint32_t)session_id);
ses.stub_setAddOutput((uint32_t)UNC_OP_DELETE);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_SUCCESS);
OdbcmConnectionHandler *db_conn =NULL;
int ret = ktCtrlrObj.Delete(db_conn,session_id,configuration_id,&k,UNC_DT_CANDIDATE,ses);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
// get_controller_type returns failure
-TEST_F(KtCtrlrTest, Delete_03) {
+TEST_F(ControllerTest, Delete_03) {
key_ctr_t k;
val_ctr_t v;
+ memset(&v, 0, sizeof(v));
uint32_t session_id = 1;
uint32_t configuration_id = 2;
v.type = 1;
memset(v.description, '\0', 128);
v.valid[kIdxDescription] = 0;
Kt_Controller ktCtrlrObj;
- ServerSession ::clearStubData();
ServerSession ses;
ses.stub_setAddOutput((uint32_t)configuration_id);
ses.stub_setAddOutput((uint32_t)session_id);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_CONNECTION_ERROR);
OdbcmConnectionHandler *db_conn =NULL;
int ret = ktCtrlrObj.Delete(db_conn,session_id,configuration_id,&k,UNC_DT_CANDIDATE,ses);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
+
// Domain Delete With boundary referred
-TEST_F(KtCtrlrTest, Delete_04) {
+TEST_F(ControllerTest, Delete_04) {
key_ctr_t k;
val_ctr_t v;
+ memset(&v, 0, sizeof(v));
uint32_t session_id = 1;
uint32_t configuration_id = 2;
v.type = 1;
memset(v.description, '\0', 128);
v.valid[kIdxDescription] = 0;
Kt_Controller ktCtrlrObj;
- ServerSession ::clearStubData();
ServerSession ses;
ses.stub_setAddOutput((uint32_t)configuration_id);
ses.stub_setAddOutput((uint32_t)session_id);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);
OdbcmConnectionHandler *db_conn =NULL;
int ret = ktCtrlrObj.Delete(db_conn,session_id,configuration_id,&k,UNC_DT_CANDIDATE,ses);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
+
// UpdateKeyInstance with ODBC retuns ODBCM_RC_CONNECTION_ERROR
-TEST_F(KtCtrlrTest, GetModifiedRows_01) {
+TEST_F(ControllerTest, GetModifiedRows_01) {
key_ctr_t k;
val_ctr v;
+ memset(&v, 0, sizeof(v));
vector<void *> obj_key_struct;
- uint32_t key_type = 1;
v.type = 1;
v.valid[kIdxType] = 1;
memset(v.description, '\0', 128);
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETMODIFIEDROWS, ODBCM_RC_CONNECTION_ERROR);
int ret = ktCtrlrObj.GetModifiedRows(db_conn,obj_key_struct,UPDATED);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
// ODBC retuns ODBCM_RC_RECORD_NOT_FOUND
-TEST_F(KtCtrlrTest, GetModifiedRows_02) {
+TEST_F(ControllerTest, GetModifiedRows_02) {
key_ctr_t k;
val_ctr v;
+ memset(&v, 0, sizeof(v));
vector<void *> obj_key_struct;
- uint32_t key_type = 1;
v.type = 1;
v.valid[kIdxType] = 1;
memset(v.description, '\0', 128);
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETMODIFIEDROWS, ODBCM_RC_RECORD_NOT_FOUND);
int ret = ktCtrlrObj.GetModifiedRows(db_conn,obj_key_struct,UPDATED);
- EXPECT_EQ(ret,UPPL_RC_ERR_NO_SUCH_INSTANCE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
}
// ODBC retuns ODBCM_RC_SUCCESS
-TEST_F(KtCtrlrTest, GetModifiedRows_03) {
+TEST_F(ControllerTest, GetModifiedRows_03) {
key_ctr_t k;
val_ctr v;
+ memset(&v, 0, sizeof(v));
vector<void *> obj_key_struct;
- uint32_t key_type = 1;
v.type = 1;
v.valid[kIdxType] = 1;
memset(v.description, '\0', 128);
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETMODIFIEDROWS, ODBCM_RC_SUCCESS);
int ret = ktCtrlrObj.GetModifiedRows(db_conn,obj_key_struct,UPDATED);
- EXPECT_EQ(ret,ODBCM_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(ODBCM_RC_SUCCESS, ret);
}
// ODBC retuns ODBCM_RC_FAILED
-TEST_F(KtCtrlrTest, GetModifiedRows_04) {
+TEST_F(ControllerTest, GetModifiedRows_04) {
key_ctr_t k;
val_ctr v;
+ memset(&v, 0, sizeof(v));
vector<void *> obj_key_struct;
- uint32_t key_type = 1;
v.type = 1;
v.valid[kIdxType] = 1;
memset(v.description, '\0', 128);
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETMODIFIEDROWS, ODBCM_RC_FAILED);
int ret = ktCtrlrObj.GetModifiedRows(db_conn,obj_key_struct,UPDATED);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_GET);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_GET, ret);
}
-TEST_F(KtCtrlrTest, SetOperStatus_001) {
+
+TEST_F(ControllerTest, SetOperStatus_001) {
key_ctr_t k;
memset(k.controller_name, '\0', 32);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_FAILED);
int ret = ktCtrlrObj.SetOperStatus(db_conn,UNC_DT_STATE,&k,(UpplControllerOperStatus)1);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_UPDATE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_UPDATE, ret);
}
-TEST_F(KtCtrlrTest, SetOperStatus_002) {
-
+TEST_F(ControllerTest, SetOperStatus_002) {
key_ctr_t k;
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_ROW_NOT_EXISTS);
int ret = ktCtrlrObj.SetOperStatus(db_conn,UNC_DT_STATE,&k,(UpplControllerOperStatus)0);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_UPDATE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_UPDATE, ret);
}
-TEST_F(KtCtrlrTest, SetOperStatus_003) {
+
+TEST_F(ControllerTest, SetOperStatus_003) {
key_ctr_t k;
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_FAILED);
int ret = ktCtrlrObj.SetOperStatus(db_conn,UNC_DT_STATE,&k,(UpplControllerOperStatus)0);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
-TEST_F(KtCtrlrTest, SetOperStatus_004) {
+TEST_F(ControllerTest, SetOperStatus_004) {
key_ctr_t k;
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
Kt_Controller ktCtrlrObj;
OdbcmConnectionHandler *db_conn =NULL;
ServerSession ser_evt;
- ServerSession::clearStubData();
- int err;
ser_evt.addOutput((uint32_t)UNC_OP_CREATE);
ser_evt.addOutput((uint32_t)UNC_DT_STATE);
ser_evt.addOutput((uint32_t)UNC_KT_PORT);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
int ret = ktCtrlrObj.SetOperStatus(db_conn,UNC_DT_STATE,&k,(UpplControllerOperStatus)0);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// GetOperStatus ODBC returns failure
-TEST_F(KtCtrlrTest, GetOperStatus_001) {
+TEST_F(ControllerTest, GetOperStatus_001) {
key_ctr_t k;
memset(k.controller_name, '\0', 32);
uint8_t op_status;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_FAILED);
int ret = ktCtrlrObj.GetOperStatus(db_conn,UNC_DT_STATE,&k,op_status);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_GET);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_GET, ret);
}
+
// GetOperStatus ODBC returns SUCCESS
-TEST_F(KtCtrlrTest, GetOperStatus_002) {
+TEST_F(ControllerTest, GetOperStatus_002) {
key_ctr_t k;
memset(k.controller_name, '\0', 32);
uint8_t op_status;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
int ret = ktCtrlrObj.GetOperStatus(db_conn,UNC_DT_STATE,&k,op_status);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
-TEST_F(KtCtrlrTest, GetOperStatus_003) {
+
+TEST_F(ControllerTest, GetOperStatus_003) {
key_ctr_t k;
memset(k.controller_name, '\0', 32);
uint8_t op_status;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS_WITH_INFO);
int ret = ktCtrlrObj.GetOperStatus(db_conn,UNC_DT_STATE,&k,op_status);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_GET);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_GET, ret);
}
// NotifyOperStatus with NULL keystruct
-TEST_F(KtCtrlrTest, NotifyOperStatus_01) {
+TEST_F(ControllerTest, NotifyOperStatus_01) {
key_ctr_t k;
val_ctr v;
+ memset(&v, 0, sizeof(v));
v.type = 1;
v.valid[kIdxType] = 1;
memset(v.description, '\0', 128);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
Kt_Controller ktCtrlrObj;
-// PhysicalLayer *physical_layer = new PhysicalLayer(pfc_modattr_t *mattr);
OdbcmConnectionHandler *db_conn =NULL;
- uint8_t op_status;
int ret = ktCtrlrObj.NotifyOperStatus(db_conn,UNC_DT_STATE, &k, &v, oper_stat_hldr);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
+
/*
// NotifyOperStatus
-TEST_F(KtCtrlrTest, NotifyOperStatus_02) {
+TEST_F(ControllerTest, NotifyOperStatus_02) {
key_ctr_t k;
val_ctr v;
+ memset(&v, 0, sizeof(v));
v.type = 1;
v.valid[kIdxType] = 1;
memset(v.description, '\0', 128);
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
int ret = ktCtrlrObj.NotifyOperStatus(db_conn,UNC_DT_STATE,&k,&v,oper_stat_hldr );
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_UPDATE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_UPDATE, ret);
}
// NotifyOperStatus Controller oper_status retunrs failure
-TEST_F(KtCtrlrTest, NotifyOperStatus_03) {
+TEST_F(ControllerTest, NotifyOperStatus_03) {
key_ctr_t k;
val_ctr v;
+ memset(&v, 0, sizeof(v));
v.type = 1;
v.valid[kIdxType] = 1;
memset(v.description, '\0', 128);
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_FAILED);
int ret = ktCtrlrObj.NotifyOperStatus(db_conn,UNC_DT_STATE,&k,&v,oper_stat_hldr);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_UPDATE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_UPDATE, ret);
}
*/
// HandleOperStatus Controller oper_status returns success
-TEST_F(KtCtrlrTest, HandleOperStatus_01) {
+TEST_F(ControllerTest, HandleOperStatus_01) {
key_ctr_t k;
val_ctr v;
+ memset(&v, 0, sizeof(v));
v.type = 1;
v.valid[kIdxType] = 1;
memset(v.description, '\0', 128);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
int ret = ktCtrlrObj.HandleOperStatus(db_conn,UNC_DT_STATE,&k,&v);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// HandleOperStatus Controller oper_status retunrs failure
-TEST_F(KtCtrlrTest, HandleOperStatus_02) {
+TEST_F(ControllerTest, HandleOperStatus_02) {
key_ctr_t k;
val_ctr v;
+ memset(&v, 0, sizeof(v));
v.type = 1;
v.valid[kIdxType] = 1;
memset(v.description, '\0', 128);
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_FAILED);
int ret = ktCtrlrObj.HandleOperStatus(db_conn,UNC_DT_STATE,&k,&v);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_UPDATE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_UPDATE, ret);
}
// HandleOperStatus with bIsInternal false
-TEST_F(KtCtrlrTest, HandleOperStatus_03) {
+TEST_F(ControllerTest, HandleOperStatus_03) {
key_ctr_t k;
val_ctr v;
+ memset(&v, 0, sizeof(v));
v.type = 1;
v.valid[kIdxType] = 1;
memset(v.description, '\0', 128);
bool bIsInternal = false;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
int ret = ktCtrlrObj.HandleOperStatus(db_conn,UNC_DT_STATE,&k,&v,bIsInternal);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_UPDATE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_UPDATE, ret);
}
+
// HandleOperStatus with bIsInternal false and oper_status is UPPL_CONTROLLER_OPER_UP
-TEST_F(KtCtrlrTest, HandleOperStatus_04) {
+TEST_F(ControllerTest, HandleOperStatus_04) {
key_ctr_t k;
val_ctr_st_t v;
v.controller.type = 1;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
int ret = ktCtrlrObj.HandleOperStatus(db_conn,UNC_DT_STATE,&k,&v,bIsInternal);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
+
// HandleOperStatus with bIsInternal true and oper_status is UPPL_CONTROLLER_OPER_UP
-TEST_F(KtCtrlrTest, HandleOperStatus_05) {
+TEST_F(ControllerTest, HandleOperStatus_05) {
key_ctr_t k;
val_ctr_st_t v;
v.controller.type = 1;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
int ret = ktCtrlrObj.HandleOperStatus(db_conn,UNC_DT_STATE,&k,&v,bIsInternal);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
+
// HandleOperStatus with bIsInternal true and oper_status is UPPL_CONTROLLER_OPER_DOWN
-TEST_F(KtCtrlrTest, HandleOperStatus_06) {
+TEST_F(ControllerTest, HandleOperStatus_06) {
key_ctr_t k;
val_ctr_st_t v;
v.controller.type = 1;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
int ret = ktCtrlrObj.HandleOperStatus(db_conn,UNC_DT_RUNNING,&k,&v,bIsInternal);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
+
// HandleDriverAlarms with unsupported alarm type
-TEST_F(KtCtrlrTest, HandleDriverAlarms_01) {
+TEST_F(ControllerTest, HandleDriverAlarms_01) {
key_ctr_t k;
val_ctr v;
+ memset(&v, 0, sizeof(v));
uint32_t alarm_type = UNC_FLOW_ENT_FULL;
uint32_t oper_type = UNC_OP_CREATE;
vector<void *> obj_key_struct;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_FAILED);
int ret = ktCtrlrObj.HandleDriverAlarms(db_conn,UNC_DT_STATE,alarm_type,oper_type,&k,&v);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// HandleDriverAlarms with UNC_COREDOMAIN_SPLIT alarm type
-TEST_F(KtCtrlrTest, HandleDriverAlarms_02) {
+TEST_F(ControllerTest, HandleDriverAlarms_02) {
key_ctr_t k;
val_ctr v;
+ memset(&v, 0, sizeof(v));
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
uint32_t alarm_type = UNC_COREDOMAIN_SPLIT;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_FAILED);
int ret = ktCtrlrObj.HandleDriverAlarms(db_conn,UNC_DT_STATE,alarm_type,oper_type,&k,&v);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// HandleDriverAlarms with oper_type UNC_OP_CREATE
-TEST_F(KtCtrlrTest, HandleDriverAlarms_03) {
+TEST_F(ControllerTest, HandleDriverAlarms_03) {
key_ctr_t k;
val_ctr v;
+ memset(&v, 0, sizeof(v));
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
uint32_t alarm_type = UNC_COREDOMAIN_SPLIT;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
int ret = ktCtrlrObj.HandleDriverAlarms(db_conn,UNC_DT_STATE,alarm_type,oper_type,&k,&v);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// HandleDriverAlarms with oper_type UNC_OP_DELETE
-TEST_F(KtCtrlrTest, HandleDriverAlarms_04) {
+TEST_F(ControllerTest, HandleDriverAlarms_04) {
key_ctr_t k;
val_ctr v;
+ memset(&v, 0, sizeof(v));
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
uint32_t alarm_type = UNC_COREDOMAIN_SPLIT;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
int ret = ktCtrlrObj.HandleDriverAlarms(db_conn,UNC_DT_STATE,alarm_type,oper_type,&k,&v);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// PerformSemanticValidation with oper_type UNC_OP_CREATE
-TEST_F(KtCtrlrTest, PerformSemanticValidation_11) {
+TEST_F(ControllerTest, PerformSemanticValidation_11) {
key_ctr_t k;
val_ctr v;
+ memset(&v, 0, sizeof(v));
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
uint32_t oper_type = UNC_OP_CREATE;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);
int ret = ktCtrlrObj.PerformSemanticValidation(db_conn, &k, &v, oper_type, UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_INSTANCE_EXISTS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_INSTANCE_EXISTS, ret);
}
// PerformSemanticValidation with oper_type UNC_OP_CREATE
-TEST_F(KtCtrlrTest, PerformSemanticValidation_02) {
+TEST_F(ControllerTest, PerformSemanticValidation_02) {
key_ctr_t k;
val_ctr v;
+ memset(&v, 0, sizeof(v));
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
uint32_t oper_type = UNC_OP_CREATE;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_CONNECTION_ERROR);
int ret = ktCtrlrObj.PerformSemanticValidation(db_conn, &k, &v, oper_type, UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
// PerformSemanticValidation with oper_type UNC_OP_CREATE
-TEST_F(KtCtrlrTest, PerformSemanticValidation_03) {
+TEST_F(ControllerTest, PerformSemanticValidation_03) {
key_ctr_t k;
val_ctr v;
+ memset(&v, 0, sizeof(v));
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
uint32_t oper_type = UNC_OP_CREATE;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_TRANSACTION_ERROR);
int ret = ktCtrlrObj.PerformSemanticValidation(db_conn, &k, &v, oper_type, UNC_DT_IMPORT);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// PerformSemanticValidation with oper_type UNC_OP_READ
-TEST_F(KtCtrlrTest, PerformSemanticValidation_04) {
+TEST_F(ControllerTest, PerformSemanticValidation_04) {
key_ctr_t k;
val_ctr v;
+ memset(&v, 0, sizeof(v));
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
uint32_t oper_type = UNC_OP_READ;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);
int ret = ktCtrlrObj.PerformSemanticValidation(db_conn, &k, &v, oper_type, UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// PerformSemanticValidation with oper_type UNC_OP_UPDATE
-TEST_F(KtCtrlrTest, PerformSemanticValidation_05) {
+TEST_F(ControllerTest, PerformSemanticValidation_05) {
key_ctr_t k;
val_ctr v;
+ memset(&v, 0, sizeof(v));
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
uint32_t oper_type = UNC_OP_UPDATE;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_CONNECTION_ERROR);
int ret = ktCtrlrObj.PerformSemanticValidation(db_conn, &k, &v, oper_type, UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
+
// PerformSemanticValidation with oper_type UNC_OP_DELETE
-TEST_F(KtCtrlrTest, PerformSemanticValidation_06) {
+TEST_F(ControllerTest, PerformSemanticValidation_06) {
key_ctr_t k;
val_ctr v;
+ memset(&v, 0, sizeof(v));
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
uint32_t oper_type = UNC_OP_DELETE;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_QUERY_TIMEOUT);
int ret = ktCtrlrObj.PerformSemanticValidation(db_conn, &k, &v, oper_type, UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_NO_SUCH_INSTANCE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
}
/*
// ReadBulkInternal with max_count zero
-TEST_F(KtCtrlrTest, ReadBulkInternal_01) {
+TEST_F(ControllerTest, ReadBulkInternal_01) {
key_ctr_t k;
val_ctr v;
+ memset(&v, 0, sizeof(v));
vector<val_ctr_st> vect_val_ctr_st;
vector<key_ctr> vect_ctr_id;
uint32_t max_rep_ct = 0;
vector<val_boundary_st_t> &vect_val_boundary)
int ret = KtctrObj.ReadBulkInternal(db_conn, &k, &v, UNC_DT_STATE, max_rep_ct, vect_ctr_id, vect_val_ctr_st);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
+
// ReadBulkInternal with read_db_status ODBCM_RC_RECORD_NOT_FOUND
-TEST_F(KtCtrlrTest, ReadBulkInternal_02) {
+TEST_F(ControllerTest, ReadBulkInternal_02) {
key_ctr_t k;
vector<val_ctr_st> vect_val_ctr_st;
vector<key_ctr_domain> vect_domain_id;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_RECORD_NOT_FOUND);
int ret = KtctrObj.ReadBulkInternal(db_conn, &k, UNC_DT_STATE, max_rep_ct, vect_val_ctr_st, vect_domain_id);
- EXPECT_EQ(ret,UPPL_RC_ERR_NO_SUCH_INSTANCE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
}
// ReadBulkInternal with read_db_status ODBCM_RC_CONNECTION_ERROR
-TEST_F(KtCtrlrTest, ReadBulkInternal_03) {
+TEST_F(ControllerTest, ReadBulkInternal_03) {
key_ctr_t k;
vector<val_ctr_st> vect_val_ctr_st;
vector<key_ctr_domain> vect_domain_id;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_CONNECTION_ERROR);
int ret = KtctrObj.ReadBulkInternal(db_conn, &k, UNC_DT_STATE, max_rep_ct, vect_val_ctr_st, vect_domain_id);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
// ReadBulkInternal with read_db_status ODBCM_RC_TABLE_NOT_FOUND
-TEST_F(KtCtrlrTest, ReadBulkInternal_04) {
+TEST_F(ControllerTest, ReadBulkInternal_04) {
key_ctr_t k;
vector<val_ctr_st> vect_val_ctr_st;
vector<key_ctr_domain> vect_domain_id;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_TABLE_NOT_FOUND);
int ret = KtctrObj.ReadBulkInternal(db_conn, &k, UNC_DT_STATE, max_rep_ct,
vect_val_ctr_st, vect_domain_id);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_GET);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_GET, ret);
}
// ReadBulkInternal with read_db_status ODBCM_RC_SUCCESS
-TEST_F(KtCtrlrTest, ReadBulkInternal_05) {
+TEST_F(ControllerTest, ReadBulkInternal_05) {
key_ctr_t k;
vector<val_ctr_st> vect_val_ctr_st;
vector<key_ctr_domain> vect_domain_id;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_SUCCESS);
int ret = KtctrObj.ReadBulkInternal(db_conn, &k, UNC_DT_STATE, max_rep_ct,
vect_val_ctr_st, vect_domain_id);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
*/
+
// ReadBulk with get_controller_type returns failure
// MEM
-TEST_F(KtCtrlrTest, ReadBulk_02) {
+TEST_F(ControllerTest, ReadBulk_02) {
key_ctr_t k;
int child_index = 2;
- pfc_bool_t parent_call = true;
- pfc_bool_t is_read_next = false;
- ReadRequest *read_req;
+ pfc_bool_t parent_call(PFC_TRUE);
+ pfc_bool_t is_read_next(PFC_FALSE);
+ ReadRequest *read_req(NULL);
uint32_t max_rep_ct = 4;
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_SUCCESS);
int ret = KtctrObj.ReadBulk(db_conn, &k, UNC_DT_CANDIDATE, max_rep_ct,
child_index, parent_call,is_read_next, read_req);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// ReadBulk with data type UNC_DT_IMPORT
-TEST_F(KtCtrlrTest, ReadBulk_01) {
+TEST_F(ControllerTest, ReadBulk_01) {
key_ctr_t k;
int child_index = 0;
- pfc_bool_t parent_call = true;
- pfc_bool_t is_read_next = false;
- ReadRequest *read_req;
+ pfc_bool_t parent_call(PFC_TRUE);
+ pfc_bool_t is_read_next(PFC_FALSE);
+ ReadRequest *read_req(NULL);
uint32_t max_rep_ct = 4;
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtctrObj.ReadBulk(db_conn, &k, UNC_DT_IMPORT, max_rep_ct,
child_index, parent_call,is_read_next, read_req);
- EXPECT_EQ(ret,UPPL_RC_ERR_OPERATION_NOT_ALLOWED);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_OPERATION_NOT_ALLOWED, ret);
}
// ReadBulk with data type UNC_DT_IMPORT
-TEST_F(KtCtrlrTest, ReadBulk_05) {
+TEST_F(ControllerTest, ReadBulk_05) {
key_ctr_t k;
int child_index = -1;
- pfc_bool_t parent_call = true;
- pfc_bool_t is_read_next = false;
- ReadRequest *read_req;
+ pfc_bool_t parent_call(PFC_TRUE);
+ pfc_bool_t is_read_next(PFC_FALSE);
+ ReadRequest *read_req(NULL);
uint32_t max_rep_ct = 4;
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtctrObj.ReadBulk(db_conn, &k, UNC_DT_IMPORT, max_rep_ct,
child_index, parent_call,is_read_next, read_req);
- EXPECT_EQ(ret,UPPL_RC_ERR_OPERATION_NOT_ALLOWED);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_OPERATION_NOT_ALLOWED, ret);
}
// ReadBulk with data type UNC_DT_IMPORT
-TEST_F(KtCtrlrTest, ReadBulk_06) {
+TEST_F(ControllerTest, ReadBulk_06) {
key_ctr_t k;
int child_index = 2;
- pfc_bool_t parent_call = true;
- pfc_bool_t is_read_next = false;
- ReadRequest *read_req;
+ pfc_bool_t parent_call(PFC_TRUE);
+ pfc_bool_t is_read_next(PFC_FALSE);
+ ReadRequest *read_req(NULL);
uint32_t max_rep_ct = 0;
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtctrObj.ReadBulk(db_conn, &k, UNC_DT_IMPORT, max_rep_ct,
child_index, parent_call,is_read_next, read_req);
- EXPECT_EQ(ret,UPPL_RC_ERR_OPERATION_NOT_ALLOWED);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_OPERATION_NOT_ALLOWED, ret);
}
-
// DeleteKeyInstance with data type UNC_DT_RUNNING
-TEST_F(KtCtrlrTest, DeleteKeyInstance_01) {
+TEST_F(ControllerTest, DeleteKeyInstance_01) {
key_ctr_t k;
uint32_t key_type = 0;
memset(k.controller_name, '\0', 32);
OdbcmConnectionHandler *db_conn =NULL;
//unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_SUCCESS);
int ret = KtctrObj.DeleteKeyInstance(db_conn, &k, UNC_DT_STATE, key_type);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_DELETE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_DELETE, ret);
}
// DeleteKeyInstance with out child
-TEST_F(KtCtrlrTest, DeleteKeyInstance_02) {
+TEST_F(ControllerTest, DeleteKeyInstance_02) {
key_ctr_t k;
uint32_t key_type = 0;
memset(k.controller_name, '\0', 32);
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_ROW_NOT_EXISTS);
int ret = KtctrObj.DeleteKeyInstance(db_conn, &k, UNC_DT_CANDIDATE, key_type);
- EXPECT_EQ(ret,UPPL_RC_ERR_NO_SUCH_INSTANCE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
}
// DeleteKeyInstance with out child
-TEST_F(KtCtrlrTest, DeleteKeyInstance_03) {
+TEST_F(ControllerTest, DeleteKeyInstance_03) {
key_ctr_t k;
uint32_t key_type = 0;
memset(k.controller_name, '\0', 32);
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_ROW_NOT_EXISTS);
int ret = KtctrObj.DeleteKeyInstance(db_conn, &k, UNC_DT_AUDIT, key_type);
- EXPECT_EQ(ret,UPPL_RC_ERR_NO_SUCH_INSTANCE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
}
// DeleteKeyInstance with out child
-TEST_F(KtCtrlrTest, DeleteKeyInstance_04) {
+TEST_F(ControllerTest, DeleteKeyInstance_04) {
key_ctr_t k;
uint32_t key_type = 0;
memset(k.controller_name, '\0', 32);
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_TRANSACTION_ERROR);
int ret = KtctrObj.DeleteKeyInstance(db_conn, &k, UNC_DT_IMPORT, key_type);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_DELETE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_DELETE, ret);
}
// DeleteKeyInstance suceess
-TEST_F(KtCtrlrTest, DeleteKeyInstance_05) {
+TEST_F(ControllerTest, DeleteKeyInstance_05) {
key_ctr_t k;
uint32_t key_type = 0;
memset(k.controller_name, '\0', 32);
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_SUCCESS);
int ret = KtctrObj.DeleteKeyInstance(db_conn, &k, UNC_DT_IMPORT, key_type);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// FreeChildKeyStruct success
-TEST_F(KtCtrlrTest, FreeChildKeyStruct_01) {
+TEST_F(ControllerTest, FreeChildKeyStruct_01) {
void *k = new key_ctr_domain_t;
int child_class = 0;
Kt_Controller KtctrObj;
- OdbcmConnectionHandler *db_conn =NULL;
- int ret = UPPL_RC_SUCCESS;
- pfc_log_info("Test FreeChildKeyStruct_01");
KtctrObj.FreeChildKeyStruct(k, child_class);
}
// FreeChildKeyStruct suceess
-TEST_F(KtCtrlrTest, FreeChildKeyStruct_02) {
+TEST_F(ControllerTest, FreeChildKeyStruct_02) {
void *key = new key_logical_port_t;
int child_class = 1;
Kt_Controller KtctrObj;
- OdbcmConnectionHandler *db_conn =NULL;
int ret = UPPL_RC_SUCCESS;
KtctrObj.FreeChildKeyStruct(key, child_class);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// FreeChildKeyStruct suceess
-TEST_F(KtCtrlrTest, FreeChildKeyStruct_03) {
+TEST_F(ControllerTest, FreeChildKeyStruct_03) {
void *key = new key_link_t;
int child_class = 2;
Kt_Controller KtctrObj;
- OdbcmConnectionHandler *db_conn =NULL;
int ret = UPPL_RC_SUCCESS;
KtctrObj.FreeChildKeyStruct(key, child_class);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// FreeChildKeyStruct invalid index
-TEST_F(KtCtrlrTest, FreeChildKeyStruct_04) {
+TEST_F(ControllerTest, FreeChildKeyStruct_04) {
void *key = new key_logical_port_t;
int child_class = 3;
Kt_Controller KtctrObj;
- OdbcmConnectionHandler *db_conn =NULL;
int ret = UPPL_RC_SUCCESS;
KtctrObj.FreeChildKeyStruct(key, child_class);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// getChildKeyStruct success
-TEST_F(KtCtrlrTest, getChildKeyStruct_01) {
- void *k = new key_ctr_domain_t;
+TEST_F(ControllerTest, getChildKeyStruct_01) {
int child_class = 0;
Kt_Controller KtctrObj;
- OdbcmConnectionHandler *db_conn =NULL;
- int ret = UPPL_RC_SUCCESS;
- pfc_log_info("Test FreeChildKeyStruct_01");
KtctrObj.getChildKeyStruct(child_class, "controller1");
}
+
// getChildKeyStruct suceess
-TEST_F(KtCtrlrTest, getChildKeyStruct_02) {
- void *key = new key_logical_port_t;
+TEST_F(ControllerTest, getChildKeyStruct_02) {
int child_class = 1;
Kt_Controller KtctrObj;
- OdbcmConnectionHandler *db_conn =NULL;
int ret = UPPL_RC_SUCCESS;
KtctrObj.getChildKeyStruct(child_class, "controller1");
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// getChildKeyStruct suceess
-TEST_F(KtCtrlrTest, getChildKeyStruct_03) {
- void *key = new key_link_t;
+TEST_F(ControllerTest, getChildKeyStruct_03) {
int child_class = 2;
Kt_Controller KtctrObj;
- OdbcmConnectionHandler *db_conn =NULL;
int ret = UPPL_RC_SUCCESS;
KtctrObj.getChildKeyStruct(child_class, "controller1");
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
+
// getChildKeyStruct invalid index
-TEST_F(KtCtrlrTest, getChildKeyStruct_04) {
- void *key = new key_logical_port_t;
+TEST_F(ControllerTest, getChildKeyStruct_04) {
int child_class = 3;
Kt_Controller KtctrObj;
- OdbcmConnectionHandler *db_conn =NULL;
int ret = UPPL_RC_SUCCESS;
KtctrObj.getChildKeyStruct(child_class, "controller1");
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
+
//PerformRead with negative option1
-TEST_F(KtCtrlrTest, PerformRead_Neg_option1_01) {
+TEST_F(ControllerTest, PerformRead_Neg_option1_01) {
key_ctr_t k;
val_ctr v;
- uint32_t key_type = 0;
+ memset(&v, 0, sizeof(v));
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
Kt_Controller KtctrObj;
OdbcmConnectionHandler *db_conn =NULL;
ServerSession sess;
- ServerSession::clearStubData();
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)UNC_OP_READ);
sess.stub_setAddOutput((uint32_t)UNC_KT_CONTROLLER);
int ret = KtctrObj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_DETAIL,(uint32_t)UNC_OPT2_NONE,(uint32_t)1);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
+
//PerformRead with negative option1
-TEST_F(KtCtrlrTest, PerformRead_Neg_option1_02) {
+TEST_F(ControllerTest, PerformRead_Neg_option1_02) {
key_ctr_t k;
val_ctr v;
- uint32_t key_type = 0;
+ memset(&v, 0, sizeof(v));
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
Kt_Controller KtctrObj;
OdbcmConnectionHandler *db_conn =NULL;
ServerSession sess;
- ServerSession::clearStubData();
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)UNC_OP_READ);
sess.stub_setAddOutput((uint32_t)UNC_KT_CONTROLLER);
int ret = KtctrObj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_DETAIL,(uint32_t)UNC_OPT2_NONE,(uint32_t)1);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
//PerformRead with negative option2
-TEST_F(KtCtrlrTest, PerformRead_Neg_option2_03) {
+TEST_F(ControllerTest, PerformRead_Neg_option2_03) {
key_ctr_t k;
val_ctr v;
- uint32_t key_type = 0;
+ memset(&v, 0, sizeof(v));
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
Kt_Controller KtctrObj;
OdbcmConnectionHandler *db_conn =NULL;
ServerSession sess;
- ServerSession::clearStubData();
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)UNC_OP_READ);
sess.stub_setAddOutput((uint32_t)UNC_KT_CONTROLLER);
int ret = KtctrObj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_MAC_ENTRY_STATIC,(uint32_t)1);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
+
//PerformRead with negative option1
-TEST_F(KtCtrlrTest, PerformRead_Neg_option2_04) {
+TEST_F(ControllerTest, PerformRead_Neg_option2_04) {
key_ctr_t k;
val_ctr v;
- uint32_t key_type = 0;
+ memset(&v, 0, sizeof(v));
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
Kt_Controller KtctrObj;
OdbcmConnectionHandler *db_conn =NULL;
ServerSession sess;
- ServerSession::clearStubData();
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)UNC_OP_READ);
sess.stub_setAddOutput((uint32_t)UNC_KT_CONTROLLER);
int ret = KtctrObj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_MAC_ENTRY_STATIC,(uint32_t)1);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
//PerformRead with unsupported datatype
-TEST_F(KtCtrlrTest, PerformRead_Neg_datatype_05) {
+TEST_F(ControllerTest, PerformRead_Neg_datatype_05) {
key_ctr_t k;
val_ctr v;
- uint32_t key_type = 0;
+ memset(&v, 0, sizeof(v));
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
Kt_Controller KtctrObj;
OdbcmConnectionHandler *db_conn =NULL;
ServerSession sess;
- ServerSession::clearStubData();
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)UNC_OP_READ);
sess.stub_setAddOutput((uint32_t)UNC_KT_CONTROLLER);
int ret = KtctrObj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_AUDIT,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_NONE,(uint32_t)1);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
+
//PerformRead with negative dataype
-TEST_F(KtCtrlrTest, PerformRead_Neg_datatype_06) {
+TEST_F(ControllerTest, PerformRead_Neg_datatype_06) {
key_ctr_t k;
val_ctr v;
- uint32_t key_type = 0;
+ memset(&v, 0, sizeof(v));
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
Kt_Controller KtctrObj;
OdbcmConnectionHandler *db_conn =NULL;
ServerSession sess;
- ServerSession::clearStubData();
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)UNC_OP_READ);
sess.stub_setAddOutput((uint32_t)UNC_KT_CONTROLLER);
int ret = KtctrObj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_AUDIT,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_NONE,(uint32_t)1);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
//PerformRead with valid option1 and valid option2
-TEST_F(KtCtrlrTest, PerformRead_pos_07) {
+TEST_F(ControllerTest, PerformRead_pos_07) {
key_ctr_t k;
val_ctr v;
- uint32_t key_type = 0;
+ memset(&v, 0, sizeof(v));
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
Kt_Controller KtctrObj;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
ServerSession sess;
- ServerSession::clearStubData();
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)UNC_OP_READ);
sess.stub_setAddOutput((uint32_t)UNC_KT_CONTROLLER);
int ret = KtctrObj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_NONE,(uint32_t)1);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
+
//PerformRead with valid option1 and valid option2
-TEST_F(KtCtrlrTest, PerformRead_pos_db_Success_08) {
+TEST_F(ControllerTest, PerformRead_pos_db_Success_08) {
key_ctr_t k;
val_ctr_t v;
+ memset(&v, 0, sizeof(v));
vector<val_ctr_st_t> vect_val_ctr_st;
- int index;
- vect_val_ctr_st[index].controller.cs_row_status == DELETED;
- uint32_t key_type = 0;
+ val_ctr_st_t vst;
+ memset(&vst, 0, sizeof(vst));
+ vst.controller.cs_row_status = DELETED;
+ vect_val_ctr_st.push_back(vst);
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
Kt_Controller KtctrObj;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
ServerSession sess;
- ServerSession::clearStubData();
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)UNC_OP_READ);
sess.stub_setAddOutput((uint32_t)UNC_KT_CONTROLLER);
int ret = KtctrObj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_CANDIDATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_NONE,(uint32_t)0);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
-TEST_F(KtCtrlrTest, PerformRead_pos_db_fail_09) {
+
+TEST_F(ControllerTest, PerformRead_pos_db_fail_09) {
key_ctr_t k;
val_ctr v;
- uint32_t key_type = 0;
+ memset(&v, 0, sizeof(v));
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
Kt_Controller KtctrObj;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_FAILED);
ServerSession sess;
- ServerSession::clearStubData();
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)UNC_OP_READ);
sess.stub_setAddOutput((uint32_t)UNC_KT_CONTROLLER);
int ret = KtctrObj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_NONE,(uint32_t)0);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
+
//PerformRead with valid option1 and valid option2
-TEST_F(KtCtrlrTest, PerformRead_pos_db_Success_10) {
+TEST_F(ControllerTest, PerformRead_pos_db_Success_10) {
key_ctr_t k;
val_ctr_t v;
+ memset(&v, 0, sizeof(v));
vector<val_ctr_st_t> vect_val_ctr_st;
- int index;
- vect_val_ctr_st[index].controller.cs_row_status == DELETED;
- uint32_t key_type = 0;
+ val_ctr_st_t vst;
+ memset(&vst, 0, sizeof(vst));
+ vst.controller.cs_row_status = DELETED;
+ vect_val_ctr_st.push_back(vst);
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
Kt_Controller KtctrObj;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
ServerSession sess;
- ServerSession::clearStubData();
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)UNC_OP_READ);
sess.stub_setAddOutput((uint32_t)UNC_KT_CONTROLLER);
int ret = KtctrObj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_CANDIDATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_NONE,(uint32_t)0);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
//HandleDriverEvents with other than Update operation
-TEST_F(KtCtrlrTest, HandleDriverEvents_No_Update_01) {
+TEST_F(ControllerTest, HandleDriverEvents_No_Update_01) {
key_ctr_t k;
val_ctr_st_t v_old;
val_ctr_st_t v_new;
- pfc_bool_t is_events_done;
+ pfc_bool_t is_events_done(PFC_FALSE);
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtctrObj.HandleDriverEvents(db_conn,&k,oper_type,data_type,&v_old,&v_new,is_events_done);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
//HandleDriverEvents with CANDIDATE operation
-TEST_F(KtCtrlrTest, HandleDriverEvents_CANDIDATE_NegDB_02) {
+TEST_F(ControllerTest, HandleDriverEvents_CANDIDATE_NegDB_02) {
key_ctr_t k;
val_ctr_st_t v_old;
val_ctr_st_t v_new;
memset(v_new.valid, '\0', sizeof(v_new.valid));
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
- pfc_bool_t is_events_done;
+ pfc_bool_t is_events_done(PFC_FALSE);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_FAILED);
Kt_Controller KtctrObj;
uint32_t oper_type = UNC_OP_UPDATE;
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtctrObj.HandleDriverEvents(db_conn,&k,oper_type,data_type,&v_old,&v_new,is_events_done);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_GET);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_GET, ret);
}
//HandleDriverEvents with RUNNING datatype
-TEST_F(KtCtrlrTest, HandleDriverEvents_RUNNING_NegDB_03) {
+TEST_F(ControllerTest, HandleDriverEvents_RUNNING_NegDB_03) {
key_ctr_t k;
val_ctr_st_t v_old;
val_ctr_st_t v_new;
memset(v_new.valid, '\0', sizeof(v_new.valid));
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
- pfc_bool_t is_events_done;
+ pfc_bool_t is_events_done(PFC_FALSE);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_FAILED);
Kt_Controller KtctrObj;
uint32_t oper_type = UNC_OP_UPDATE;
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtctrObj.HandleDriverEvents(db_conn,&k,oper_type,data_type,&v_old,&v_new,is_events_done);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_GET);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_GET, ret);
}
+
//HandleDriverEvents with RUNNING datatype
-TEST_F(KtCtrlrTest, HandleDriverEvents_RUNNING_04) {
+TEST_F(ControllerTest, HandleDriverEvents_RUNNING_04) {
key_ctr_t k;
val_ctr_st_t v_old;
val_ctr_st_t v_new;
memset(v_new.valid, '\0', sizeof(v_new.valid));
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
- pfc_bool_t is_events_done;
+ pfc_bool_t is_events_done(PFC_FALSE);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
Kt_Controller KtctrObj;
uint32_t oper_type = UNC_OP_UPDATE;
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtctrObj.HandleDriverEvents(db_conn,&k,oper_type,data_type,&v_old,&v_new,is_events_done);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_GET);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_GET, ret);
}
+
//HandleDriverEvents with RUNNING datatype
-TEST_F(KtCtrlrTest, HandleDriverEvents_RUNNING_05) {
+TEST_F(ControllerTest, HandleDriverEvents_RUNNING_05) {
key_ctr_t k;
- val_ctr_st_t *v_old = new val_ctr_st_t;
- val_ctr_st_t *v_new = new val_ctr_st_t;
- v_new->oper_status = UPPL_CONTROLLER_OPER_UP;
- pfc_bool_t is_events_done;
+ memset(&k, 0, sizeof(k));
+
+ val_ctr_st_t v_old;
+ val_ctr_st_t v_new;
+ memset(&v_old, 0, sizeof(v_old));
+ memset(&v_new, 0, sizeof(v_new));
+ v_new.oper_status = UPPL_CONTROLLER_OPER_UP;
+
+ pfc_bool_t is_events_done(PFC_FALSE);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
Kt_Controller KtctrObj;
uint32_t data_type = UNC_DT_RUNNING;
OdbcmConnectionHandler *db_conn =NULL;
- int ret = KtctrObj.HandleDriverEvents(db_conn,&k,oper_type,data_type,v_old,v_new,is_events_done);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ int ret = KtctrObj.HandleDriverEvents(db_conn,&k,oper_type,data_type,&v_old,&v_new,is_events_done);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
+
//HandleDriverEvents with RUNNING datatype
-TEST_F(KtCtrlrTest, HandleDriverEvents_RUNNING_06) {
+TEST_F(ControllerTest, HandleDriverEvents_RUNNING_06) {
key_ctr_t k;
val_ctr_st_t v_old;
val_ctr_st_t v_new;
memset(v_old.valid, '\0', sizeof(v_old.valid));
memset(v_new.valid, '\0', sizeof(v_new.valid));
+
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
- pfc_bool_t is_events_done;
+ pfc_bool_t is_events_done(PFC_FALSE);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_FAILED);
Kt_Controller KtctrObj;
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtctrObj.HandleDriverEvents(db_conn,&k,oper_type,data_type,&v_old,&v_new,is_events_done);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_GET);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_GET, ret);
}
+
//HandleDriverEvents with RUNNING datatype
-TEST_F(KtCtrlrTest, HandleDriverEvents_RUNNING_07) {
+TEST_F(ControllerTest, HandleDriverEvents_RUNNING_07) {
key_ctr_t k;
- val_ctr_st_t *v_old = new val_ctr_st_t;
- val_ctr_st_t *v_new = new val_ctr_st_t;
- v_new->oper_status = UPPL_CONTROLLER_OPER_UP;
+ val_ctr_st_t v_old;
+ val_ctr_st_t v_new;
+ memset(v_old.valid, '\0', sizeof(v_old.valid));
+ memset(v_new.valid, '\0', sizeof(v_new.valid));
+ v_new.oper_status = UPPL_CONTROLLER_OPER_UP;
+
pfc_bool_t is_events_done=false;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
uint32_t data_type = UNC_DT_RUNNING;
OdbcmConnectionHandler *db_conn =NULL;
- int ret = KtctrObj.HandleDriverEvents(db_conn,&k,oper_type,data_type,v_old,v_new,is_events_done);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ int ret = KtctrObj.HandleDriverEvents(db_conn,&k,oper_type,data_type,&v_old,&v_new,is_events_done);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
+
//HandleDriverEvents with RUNNING datatype
-TEST_F(KtCtrlrTest, HandleDriverEvents_RUNNING_08) {
+TEST_F(ControllerTest, HandleDriverEvents_RUNNING_08) {
key_ctr_t k;
- val_ctr_st_t *v_old = new val_ctr_st_t;
- val_ctr_st_t *v_new = new val_ctr_st_t;
- v_new->oper_status = UPPL_CONTROLLER_OPER_DOWN;
- pfc_bool_t is_events_done;
+ val_ctr_st_t v_old;
+ val_ctr_st_t v_new;
+ memset(v_old.valid, '\0', sizeof(v_old.valid));
+ memset(v_new.valid, '\0', sizeof(v_new.valid));
+ v_new.oper_status = UPPL_CONTROLLER_OPER_DOWN;
+
+ pfc_bool_t is_events_done(PFC_FALSE);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
Kt_Controller KtctrObj;
uint32_t data_type = UNC_DT_RUNNING;
OdbcmConnectionHandler *db_conn =NULL;
- int ret = KtctrObj.HandleDriverEvents(db_conn,&k,oper_type,data_type,v_old,v_new,is_events_done);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ int ret = KtctrObj.HandleDriverEvents(db_conn,&k,oper_type,data_type,&v_old,&v_new,is_events_done);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
+
//HandleDriverEvents with RUNNING datatype
-TEST_F(KtCtrlrTest, HandleDriverEvents_RUNNING_09) {
+TEST_F(ControllerTest, HandleDriverEvents_RUNNING_09) {
key_ctr_t k;
- val_ctr_st_t *v_old = new val_ctr_st_t;
- val_ctr_st_t *v_new = new val_ctr_st_t;
- v_new->valid[kIdxActualVersion]=UNC_VF_VALID;
+ val_ctr_st_t v_old;
+ val_ctr_st_t v_new;
+ memset(&v_old, 0, sizeof(v_old));
+ memset(&v_new, 0, sizeof(v_new));
+ v_new.valid[kIdxActualVersion]=UNC_VF_VALID;
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
- pfc_bool_t is_events_done;
+
+ pfc_bool_t is_events_done(PFC_FALSE);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_FAILED);
Kt_Controller KtctrObj;
uint32_t data_type = UNC_DT_RUNNING;
OdbcmConnectionHandler *db_conn =NULL;
- int ret = KtctrObj.HandleDriverEvents(db_conn,&k,oper_type,data_type,v_old,v_new,is_events_done);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_GET);
- unc::uppl::ODBCManager::clearStubData();
+ int ret = KtctrObj.HandleDriverEvents(db_conn,&k,oper_type,data_type,&v_old,&v_new,is_events_done);
+ EXPECT_EQ(UPPL_RC_ERR_DB_GET, ret);
}
+
//CheckIpAndClearStateDB with DB success
-TEST_F(KtCtrlrTest, CheckIpAndClearStateDB_Db_Success_01) {
+TEST_F(ControllerTest, CheckIpAndClearStateDB_Db_Success_01) {
key_ctr_t k;
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
Kt_Controller KtctrObj;
- uint32_t oper_type = UNC_OP_READ;
- uint32_t data_type = UNC_DT_RUNNING;
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtctrObj.CheckIpAndClearStateDB(db_conn,&k);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
+
//CheckIpAndClearStateDB with DB failure
-TEST_F(KtCtrlrTest, CheckIpAndClearStateDB_Db_failure_02) {
+TEST_F(ControllerTest, CheckIpAndClearStateDB_Db_failure_02) {
key_ctr_t k;
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_FAILED);
Kt_Controller KtctrObj;
- uint32_t oper_type = UNC_OP_READ;
- uint32_t data_type = UNC_DT_RUNNING;
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtctrObj.CheckIpAndClearStateDB(db_conn,&k);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_GET);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_GET, ret);
}
-//SendOperStatusNotification with add output error
-TEST_F(KtCtrlrTest, SendOperStatusNotification_01) {
- unc::tclib::TcLibModule::stub_setTCApiCommonRetcode(TcLibModule::REGISTER, TC_API_COMMON_SUCCESS);
- unc::uppl::PhysicalLayer *physical_layer = unc::uppl::PhysicalLayer::get_instance();
- physical_layer->init();
+//SendOperStatusNotification with add output error
+TEST_F(ControllerTest, SendOperStatusNotification_01) {
key_ctr_t k;
- uint8_t old_oper_st;
- uint8_t new_oper_st;
+ uint8_t old_oper_st(0);
+ uint8_t new_oper_st(1);
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
ServerSession sess;
- ServerSession::clearStubData();
sess.stub_setAddOutput((uint32_t)UNC_OP_READ);
sess.stub_setAddOutput((uint32_t)UNC_DT_RUNNING);
sess.stub_setAddOutput((uint32_t)UNC_KT_CONTROLLER);
Kt_Controller KtctrObj;
int ret = KtctrObj.SendOperStatusNotification(k,old_oper_st,new_oper_st);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
//SendOperStatusNotification with success in add output
-TEST_F(KtCtrlrTest, SendOperStatusNotification_02) {
- unc::tclib::TcLibModule::stub_setTCApiCommonRetcode(TcLibModule::REGISTER, TC_API_COMMON_SUCCESS);
- unc::uppl::PhysicalLayer *physical_layer = unc::uppl::PhysicalLayer::get_instance();
- physical_layer->init();
-
+TEST_F(ControllerTest, SendOperStatusNotification_02) {
key_ctr_t k;
- uint8_t old_oper_st;
- uint8_t new_oper_st;
- val_ctr_st_t old_val_ctr, new_val_ctr;
+ uint8_t old_oper_st(0);
+ uint8_t new_oper_st(1);
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
ServerSession sess;
- ServerSession::clearStubData();
sess.stub_setAddOutput((uint32_t)UNC_OP_UPDATE);
sess.stub_setAddOutput((uint32_t)UNC_DT_STATE);
sess.stub_setAddOutput((uint32_t)UNC_KT_CONTROLLER);
Kt_Controller KtctrObj;
int ret = KtctrObj.SendOperStatusNotification(k,old_oper_st,new_oper_st);
- EXPECT_EQ(ret,UPPL_RC_FAILURE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_FAILURE, ret);
}
//ValidateControllerIpAddress
-TEST_F(KtCtrlrTest, ValidateControllerIpAddress_01) {
+TEST_F(ControllerTest, ValidateControllerIpAddress_01) {
key_ctr_t k;
- val_ctr_t *v = new val_ctr_t;
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
+ val_ctr_t v;
+ memset(&v, 0, sizeof(v));
+
Kt_Controller KtctrObj;
uint32_t operation = UNC_OP_UPDATE;
- uint32_t data_type;
+ uint32_t data_type(UNC_DT_STATE);
OdbcmConnectionHandler *db_conn =NULL;
- v->valid[kIdxIpAddress]=1;
- int ret = KtctrObj.ValidateControllerIpAddress(db_conn,operation,data_type,(unc_keytype_ctrtype_t)0,(UpplReturnCode)0,&k,v);
- EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SYNTAX);
- unc::uppl::ODBCManager::clearStubData();
+ v.valid[kIdxIpAddress]=1;
+ int ret = KtctrObj.ValidateControllerIpAddress(db_conn,operation,data_type,(unc_keytype_ctrtype_t)0,(UpplReturnCode)0,&k,&v);
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SYNTAX, ret);
}
//ValidateControllerIpAddress
-TEST_F(KtCtrlrTest, ValidateControllerIpAddress_02) {
+TEST_F(ControllerTest, ValidateControllerIpAddress_02) {
key_ctr_t k;
- val_ctr_t *v = new val_ctr_t;
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
+ val_ctr_t v;
+ memset(&v, 0, sizeof(v));
+
Kt_Controller KtctrObj;
uint32_t operation = UNC_OP_UPDATE;
- uint32_t data_type;
+ uint32_t data_type(UNC_DT_STATE);
OdbcmConnectionHandler *db_conn =NULL;
- v->valid[kIdxIpAddress]=2;
- int ret = KtctrObj.ValidateControllerIpAddress(db_conn,operation,data_type,(unc_keytype_ctrtype_t)1,(UpplReturnCode)0,&k,v);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ v.valid[kIdxIpAddress]=2;
+ int ret = KtctrObj.ValidateControllerIpAddress(db_conn,operation,data_type,(unc_keytype_ctrtype_t)1,(UpplReturnCode)0,&k,&v);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
//ValidateControllerIpAddress
-TEST_F(KtCtrlrTest, ValidateControllerIpAddress_03) {
+TEST_F(ControllerTest, ValidateControllerIpAddress_03) {
key_ctr_t k;
- val_ctr_t *v = new val_ctr_t;
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
+ val_ctr_t v;
+ memset(&v, 0, sizeof(v));
+
Kt_Controller KtctrObj;
uint32_t operation = UNC_OP_UPDATE;
- uint32_t data_type;
+ uint32_t data_type(UNC_DT_STATE);
OdbcmConnectionHandler *db_conn =NULL;
- v->valid[kIdxIpAddress]=1;
+ v.valid[kIdxIpAddress]=1;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_SUCCESS);
- int ret = KtctrObj.ValidateControllerIpAddress(db_conn,operation,data_type,(unc_keytype_ctrtype_t)1,(UpplReturnCode)0,&k,v);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ int ret = KtctrObj.ValidateControllerIpAddress(db_conn,operation,data_type,(unc_keytype_ctrtype_t)1,(UpplReturnCode)0,&k,&v);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
//ValidateControllerIpAddress
-TEST_F(KtCtrlrTest, ValidateControllerIpAddress_04) {
+TEST_F(ControllerTest, ValidateControllerIpAddress_04) {
key_ctr_t k;
- val_ctr_t *v = new val_ctr_t;
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
+ val_ctr_t v;
+ memset(&v, 0, sizeof(v));
+
Kt_Controller KtctrObj;
uint32_t operation = UNC_OP_UPDATE;
uint32_t data_type = UNC_DT_RUNNING;
OdbcmConnectionHandler *db_conn =NULL;
- v->valid[kIdxIpAddress]=1;
+ v.valid[kIdxIpAddress]=1;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_FAILED);
- int ret = KtctrObj.ValidateControllerIpAddress(db_conn,operation,data_type,(unc_keytype_ctrtype_t)1,(UpplReturnCode)0,&k,v);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ int ret = KtctrObj.ValidateControllerIpAddress(db_conn,operation,data_type,(unc_keytype_ctrtype_t)1,(UpplReturnCode)0,&k,&v);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
+
//ValidateUnknownCtrlrScalability
-TEST_F(KtCtrlrTest, ValidateUnknownCtrlrScalability_Neg_DB_01) {
+TEST_F(ControllerTest, ValidateUnknownCtrlrScalability_Neg_DB_01) {
key_ctr_t k;
- val_ctr_t *v = new val_ctr_t;
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
Kt_Controller KtctrObj;
- uint8_t type;
- uint32_t data_type;
+ uint8_t type(UNC_CT_PFC);
+ uint32_t data_type(UNC_DT_RUNNING);
OdbcmConnectionHandler *db_conn =NULL;
- v->valid[kIdxIpAddress]=2;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETSIBLINGCOUNT_FILTER, ODBCM_RC_FAILED);
int ret = KtctrObj.ValidateUnknownCtrlrScalability(db_conn,&k,type,data_type);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_GET);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_GET, ret);
}
+
//ValidateUnknownCtrlrScalability
-TEST_F(KtCtrlrTest, ValidateUnknownCtrlrScalability_Neg_DB_02) {
+TEST_F(ControllerTest, ValidateUnknownCtrlrScalability_Neg_DB_02) {
key_ctr_t k;
- val_ctr_t *v = new val_ctr_t;
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
Kt_Controller KtctrObj;
- uint8_t type;
- uint32_t data_type;
+ uint8_t type(UNC_CT_PFC);
+ uint32_t data_type(UNC_DT_STATE);
OdbcmConnectionHandler *db_conn =NULL;
- v->valid[kIdxIpAddress]=2;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETSIBLINGCOUNT_FILTER, ODBCM_RC_CONNECTION_ERROR);
int ret = KtctrObj.ValidateUnknownCtrlrScalability(db_conn,&k,type,data_type);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
+
//ValidateUnknownCtrlrScalability
-TEST_F(KtCtrlrTest, ValidateUnknownCtrlrScalability_Neg_DB_03) {
+TEST_F(ControllerTest, ValidateUnknownCtrlrScalability_Neg_DB_03) {
key_ctr_t k;
- val_ctr_t *v = new val_ctr_t;
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
Kt_Controller KtctrObj;
- uint8_t type;
- uint32_t data_type;
+ uint8_t type(UNC_CT_PFC);
+ uint32_t data_type(UNC_DT_STATE);
OdbcmConnectionHandler *db_conn =NULL;
- v->valid[kIdxIpAddress]=2;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETSIBLINGCOUNT_FILTER, ODBCM_RC_SUCCESS);
+ unc::uppl::ODBCManager::stub_setSiblingCount(1);
int ret = KtctrObj.ValidateUnknownCtrlrScalability(db_conn,&k,type,data_type);
- EXPECT_EQ(ret,UPPL_RC_ERR_EXCEEDS_RESOURCE_LIMIT);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_EXCEEDS_RESOURCE_LIMIT, ret);
}
+
//ValidateUnknownCtrlrScalability
-TEST_F(KtCtrlrTest, ValidateUnknownCtrlrScalability_Neg_DB_04) {
+TEST_F(ControllerTest, ValidateUnknownCtrlrScalability_Neg_DB_04) {
key_ctr_t k;
- val_ctr_t *v = new val_ctr_t;
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
Kt_Controller KtctrObj;
- uint8_t type;
- uint32_t data_type;
+ uint8_t type(UNC_CT_PFC);
+ uint32_t data_type(UNC_DT_STATE);
OdbcmConnectionHandler *db_conn =NULL;
- v->valid[kIdxIpAddress]=2;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETSIBLINGCOUNT_FILTER, ODBCM_RC_RECORD_NOT_FOUND);
+ unc::uppl::ODBCManager::stub_setSiblingCount(1);
int ret = KtctrObj.ValidateUnknownCtrlrScalability(db_conn,&k,type,data_type);
- EXPECT_EQ(ret,UPPL_RC_ERR_EXCEEDS_RESOURCE_LIMIT);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_EXCEEDS_RESOURCE_LIMIT, ret);
}
+
//FrameValidValue
-TEST_F(KtCtrlrTest, FrameValidValue_01) {
- key_ctr_t k;
+TEST_F(ControllerTest, FrameValidValue_01) {
val_ctr_t v;
val_ctr_st_t v_st;
- memset(k.controller_name, '\0', 32);
- memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
+ memset(&v, 0xff, sizeof(v));
+ memset(&v_st, 0xff, sizeof(v_st));
Kt_Controller KtctrObj;
- string abd="aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa";
- KtctrObj.FrameValidValue(abd,v_st,v);
- int ret = UPPL_RC_SUCCESS;
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ string abd("012345678");
+ KtctrObj.FrameValidValue(abd, v_st, v);
+
+ const uint32_t vsize(PFC_ARRAY_CAPACITY(v.valid));
+ for (uint32_t i(0); i < vsize; i++) {
+ ASSERT_EQ(i, v.valid[i]);
+ }
+
+ ASSERT_EQ(UNC_VF_VALID, v_st.valid[0]);
+ for (uint8_t i(1); i < PFC_ARRAY_CAPACITY(v_st.valid); i++) {
+ uint8_t required(static_cast<uint8_t>(vsize + i - 1));
+ ASSERT_EQ(required, v_st.valid[i]);
+ }
}
+
/*******TAMIL TEST CASES*******/
/********ReadBulk*******/
//ReadBulk opr returns Success for max_ct is zero
-TEST_F(KtCtrlrTest, ReadBulk_Max_Ct_Zero) {
+TEST_F(ControllerTest, ReadBulk_Max_Ct_Zero) {
key_ctr_t k;
- int child_index;
- pfc_bool_t parent_call;
- pfc_bool_t is_read_next;
- ReadRequest *read_req;
+ int child_index(0);
+ pfc_bool_t parent_call(PFC_FALSE);
+ pfc_bool_t is_read_next(PFC_FALSE);
+ ReadRequest *read_req(NULL);
uint32_t max_rep_ct = 0;
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtctrObj.ReadBulk(db_conn, &k, UNC_DT_CANDIDATE, max_rep_ct,
child_index, parent_call,is_read_next, read_req);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
//Check for controller key existence
-TEST_F(KtCtrlrTest, ReadBulk_childIndex) {
+TEST_F(ControllerTest, ReadBulk_childIndex) {
key_ctr_t k;
int child_index = -1;
- pfc_bool_t parent_call;
- pfc_bool_t is_read_next;
+ pfc_bool_t parent_call(PFC_FALSE);
+ pfc_bool_t is_read_next(PFC_FALSE);
ReadRequest *read_req = NULL;
uint32_t max_rep_ct = 0;
memset(k.controller_name, '\0', 32);
//unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
int ret = KtctrObj.ReadBulk(db_conn, &k, UNC_DT_CANDIDATE, max_rep_ct,
child_index, parent_call,is_read_next, read_req);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
-
/*************ReadBulkInternal**********/
// ReadBulkInternal: No record to read
-TEST_F(KtCtrlrTest, ReadBulkInternal_NoRecordFound) {
+TEST_F(ControllerTest, ReadBulkInternal_NoRecordFound) {
key_ctr_t k;
val_ctr_t v;
+ memset(&v, 0, sizeof(v));
vector<val_ctr_st> vect_val_ctr_st;
vector<string> vect_ctr_id;
- uint32_t max_rep_ct;
+ uint32_t max_rep_ct(1);
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
Kt_Controller KtctrObj;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_RECORD_NOT_FOUND);
int ret = KtctrObj.ReadBulkInternal(db_conn, &k, &v,UNC_DT_STATE, max_rep_ct, vect_val_ctr_st, vect_ctr_id);
- EXPECT_EQ(ret,UPPL_RC_ERR_NO_SUCH_INSTANCE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
}
-
// ReadBulkInternal with read_db_status ODBCM_RC_CONNECTION_ERROR
-TEST_F(KtCtrlrTest, ReadBulkInternal_Db_Connxn_Error) {
+TEST_F(ControllerTest, ReadBulkInternal_Db_Connxn_Error) {
key_ctr_t k;
val_ctr_t v;
+ memset(&v, 0, sizeof(v));
vector<val_ctr_st> vect_val_ctr_st;
- vector<string> vect_ctr_id;
- uint32_t max_rep_ct;
+ vector<string> vect_ctr_id;
+ uint32_t max_rep_ct(1);
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
Kt_Controller KtctrObj;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_CONNECTION_ERROR);
int ret = KtctrObj.ReadBulkInternal(db_conn, &k, &v,UNC_DT_STATE, max_rep_ct, vect_val_ctr_st, vect_ctr_id);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
// ReadBulkInternal with read_db_status ODBCM_RC_TABLE_NOT_FOUND
-TEST_F(KtCtrlrTest, ReadBulkInternal_Err_DB_Get) {
+TEST_F(ControllerTest, ReadBulkInternal_Err_DB_Get) {
key_ctr_t k;
val_ctr_t v;
+ memset(&v, 0, sizeof(v));
vector<val_ctr_st> vect_val_ctr_st;
vector<string> vect_ctr_id;
- uint32_t max_rep_ct;
+ uint32_t max_rep_ct(1);
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
Kt_Controller KtctrObj;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_TABLE_NOT_FOUND);
int ret = KtctrObj.ReadBulkInternal(db_conn, &k, &v,UNC_DT_STATE, max_rep_ct,
vect_val_ctr_st, vect_ctr_id);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_GET);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_GET, ret);
}
// ReadBulkInternal with read_db_status ODBCM_RC_SUCCESS
-TEST_F(KtCtrlrTest, ReadBulkInternal_Success) {
+TEST_F(ControllerTest, ReadBulkInternal_Success) {
key_ctr_t k;
val_ctr_t v;
+ memset(&v, 0, sizeof(v));
vector<val_ctr_st> vect_val_ctr_st;
vector<string> vect_ctr_id;
- uint32_t max_rep_ct;
+ uint32_t max_rep_ct(1);
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
Kt_Controller KtctrObj;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_SUCCESS);
int ret = KtctrObj.ReadBulkInternal(db_conn, &k, &v,UNC_DT_STATE, max_rep_ct,
vect_val_ctr_st, vect_ctr_id);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
/*********ValidateCtrlrValueCapability*******/
//returns config syntax error
-TEST_F(KtCtrlrTest, ValidateCtrlrValueCapability_Err_CFG_SYNTAX) {
- key_ctr_t k;
- val_ctr_st_t v;
+TEST_F(ControllerTest, ValidateCtrlrValueCapability_Err_CFG_SYNTAX) {
string version;
- uint32_t key_type;
+ uint32_t key_type(UNC_KT_CONTROLLER);
Kt_Controller KtctrObj;
int ret = KtctrObj.ValidateCtrlrValueCapability(version, key_type);
- EXPECT_EQ(ret, UPPL_RC_ERR_CFG_SYNTAX);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SYNTAX, ret);
}
/*******ValidateCtrlrScalability****/
//Returns Connxn Error
-TEST_F(KtCtrlrTest, ValidateCtrlrScalability_Err_DB_Access) {
+TEST_F(ControllerTest, ValidateCtrlrScalability_Err_DB_Access) {
OdbcmConnectionHandler *db_conn =NULL;
string version;
uint32_t key_type = UNC_KT_CONTROLLER;
Kt_Controller KtctrObj;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETROWCOUNT, ODBCM_RC_CONNECTION_ERROR);
int ret = KtctrObj.ValidateCtrlrScalability(db_conn, version, key_type, data_type);
- EXPECT_EQ(ret, UPPL_RC_ERR_DB_ACCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
//Unable to get scalability number from system
-TEST_F(KtCtrlrTest, ValidateCtrlrScalability_System_Error) {
+TEST_F(ControllerTest, ValidateCtrlrScalability_System_Error) {
OdbcmConnectionHandler *db_conn =NULL;
string version;
uint32_t key_type = UNC_KT_CONTROLLER;
Kt_Controller KtctrObj;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETROWCOUNT, ODBCM_RC_SUCCESS);
int ret = KtctrObj.ValidateCtrlrScalability(db_conn, version, key_type, data_type);
- EXPECT_EQ(ret, UPPL_RC_ERR_DB_GET);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_GET, ret);
}
//Unable to get scalability number from DB
-TEST_F(KtCtrlrTest, ValidateCtrlrScalability_DB_Err) {
+TEST_F(ControllerTest, ValidateCtrlrScalability_DB_Err) {
OdbcmConnectionHandler *db_conn =NULL;
string version;
uint32_t key_type = UNC_KT_CONTROLLER;
Kt_Controller KtctrObj;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETROWCOUNT, ODBCM_RC_FAILED);
int ret = KtctrObj.ValidateCtrlrScalability(db_conn, version, key_type, data_type);
- EXPECT_EQ(ret, UPPL_RC_ERR_DB_GET);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_GET, ret);
}
/******ValidateTypeIpAddress*******/
//Not required to validate type and ip
-TEST_F(KtCtrlrTest, ValidateTypeIpAddress_NoValidation) {
+TEST_F(ControllerTest, ValidateTypeIpAddress_NoValidation) {
OdbcmConnectionHandler *db_conn =NULL;
key_ctr_t k;
val_ctr_st_t *v = NULL;
uint32_t data_type = UNC_DT_STATE;
- uint32_t ctrl_type;
+ uint32_t ctrl_type(UNC_CT_PFC);
Kt_Controller KtctrObj;
int ret = KtctrObj.ValidateTypeIpAddress(db_conn,&k,v,data_type,ctrl_type);
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
-TEST_F(KtCtrlrTest, ValidateTypeIpAddress) {
+TEST_F(ControllerTest, ValidateTypeIpAddress) {
OdbcmConnectionHandler *db_conn =NULL;
key_ctr_t k;
- val_ctr_st_t *v = new val_ctr_st_t;
+ pfc_strlcpy(reinterpret_cast<char *>(k.controller_name), pkctrName1,
+ sizeof(k.controller_name));
+
+ val_ctr_st_t v;
+ memset(&v, 0, sizeof(v));
//v->valid[kIdxIpAddress] = UNC_VF_INVALID;
+
uint32_t data_type = UNC_DT_STATE;
- uint32_t ctrl_type;
+ uint32_t ctrl_type(UNC_CT_PFC);
Kt_Controller KtctrObj;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_FAILED);
- int ret = KtctrObj.ValidateTypeIpAddress(db_conn,&k,v,data_type,ctrl_type);
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ int ret = KtctrObj.ValidateTypeIpAddress(db_conn,&k,&v,data_type,ctrl_type);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
/*******HandleDriverAlarms*********/
-TEST_F(KtCtrlrTest, HandleDriverAlarms) {
+TEST_F(ControllerTest, HandleDriverAlarms) {
OdbcmConnectionHandler *db_conn =NULL;
uint32_t data_type = UNC_DT_STATE;
uint32_t alarm_type = UNC_PHYS_PATH_FAULT;
- uint32_t oper_type;
+ uint32_t oper_type(UNC_OP_UPDATE);
key_ctr_t k;
- val_ctr_st_t v;
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
+
+ val_phys_path_fault_alarm_t v;
+ memset(&v, 0, sizeof(v));
+ pfc_strlcpy(reinterpret_cast<char *>(v.ingress_ofs_dpid),
+ "00:11:22:33:44:55:66:77", sizeof(v.ingress_ofs_dpid));
+ pfc_strlcpy(reinterpret_cast<char *>(v.egress_ofs_dpid),
+ "aa:bb:cc:dd:ee:ff:00:11", sizeof(v.egress_ofs_dpid));
+
Kt_Controller KtctrObj;
int ret = KtctrObj.HandleDriverAlarms(db_conn,data_type,alarm_type,oper_type,&k,&v);
- EXPECT_EQ(ret, UPPL_RC_ERR_IPC_WRITE_ERROR);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
/******SendSemanticRequestToUPLL*******/
-TEST_F(KtCtrlrTest, SendSemanticRequestToUPLL) {
- unc::tclib::TcLibModule::stub_loadtcLibModule();
- unc::tclib::TcLibModule::stub_setTCApiCommonRetcode(TcLibModule::REGISTER, TC_API_COMMON_SUCCESS);
- unc::uppl::PhysicalLayer *physical_layer = unc::uppl::PhysicalLayer::get_instance();
- physical_layer->init();
+TEST_F(ControllerTest, SendSemanticRequestToUPLL) {
key_ctr_t k;
uint32_t data_type = UNC_DT_STATE;
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
Kt_Controller KtctrObj;
int ret = KtctrObj.SendSemanticRequestToUPLL(&k, data_type);
- EXPECT_EQ(ret, UPPL_RC_ERR_LOGICAL_COMMUNICATION_FAILURE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_LOGICAL_COMMUNICATION_FAILURE, ret);
}
//GetChildClassPointer
-TEST_F(KtCtrlrTest, GetChildClassPointer_01) {
+TEST_F(ControllerTest, GetChildClassPointer_01) {
int kIndex = 0;
- Kt_Base *child[KT_CONTROLLER_CHILD_COUNT];
Kt_Controller KtctrObj;
- child[kIndex] = KtctrObj.GetChildClassPointer((KtControllerChildClass)kIndex);
- int ret = UPPL_RC_SUCCESS;
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
+ Kt_Base *child(KtctrObj.GetChildClassPointer((KtControllerChildClass)kIndex));
+ ASSERT_TRUE(child != NULL);
}
-TEST_F(KtCtrlrTest, GetChildClassPointer_02) {
+TEST_F(ControllerTest, GetChildClassPointer_02) {
int kIndex = 1;
- Kt_Base *child[KT_CONTROLLER_CHILD_COUNT];
Kt_Controller KtctrObj;
- child[kIndex] = KtctrObj.GetChildClassPointer((KtControllerChildClass)kIndex);
- int ret = UPPL_RC_SUCCESS;
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
+ Kt_Base *child(KtctrObj.GetChildClassPointer((KtControllerChildClass)kIndex));
+ ASSERT_TRUE(child != NULL);
}
-TEST_F(KtCtrlrTest, GetChildClassPointer_03) {
+TEST_F(ControllerTest, GetChildClassPointer_03) {
int kIndex = 2;
- Kt_Base *child[KT_CONTROLLER_CHILD_COUNT];
Kt_Controller KtctrObj;
- child[kIndex] = KtctrObj.GetChildClassPointer((KtControllerChildClass)kIndex);
- int ret = UPPL_RC_SUCCESS;
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
+ Kt_Base *child(KtctrObj.GetChildClassPointer((KtControllerChildClass)kIndex));
+ ASSERT_TRUE(child != NULL);
}
/****ReadBulk Continuation******/
-TEST_F(KtCtrlrTest, ReadBulk) {
+TEST_F(ControllerTest, ReadBulk) {
key_ctr_t k;
int child_index = 0;
- pfc_bool_t parent_call;
- pfc_bool_t is_read_next;
+ pfc_bool_t parent_call(PFC_FALSE);
+ pfc_bool_t is_read_next(PFC_FALSE);
ReadRequest *read_req = NULL;
uint32_t max_rep_ct = 1;
memset(k.controller_name, '\0', 32);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
int ret = KtctrObj.ReadBulk(db_conn, &k, UNC_DT_CANDIDATE, max_rep_ct,
child_index, parent_call,is_read_next, read_req);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
-TEST_F(KtCtrlrTest, ReadBulk_ReadBuffer) {
+TEST_F(ControllerTest, ReadBulk_ReadBuffer) {
key_ctr_t k;
int child_index = 0;
- pfc_bool_t parent_call;
- pfc_bool_t is_read_next;
- ReadRequest *read_req = new ReadRequest;
+ pfc_bool_t parent_call(PFC_FALSE);
+ pfc_bool_t is_read_next(PFC_FALSE);
+ ReadRequest read_req;
uint32_t max_rep_ct = 1;
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
//unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
int ret = KtctrObj.ReadBulk(db_conn, &k, UNC_DT_CANDIDATE, max_rep_ct,
- child_index, parent_call,is_read_next, read_req);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ child_index, parent_call,is_read_next, &read_req);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
-TEST_F(KtCtrlrTest, ReadBulk_child_ind) {
+TEST_F(ControllerTest, ReadBulk_child_ind) {
key_ctr_t k;
int child_index = -1;
- pfc_bool_t parent_call;
- pfc_bool_t is_read_next;
- ReadRequest *read_req = new ReadRequest;
+ pfc_bool_t parent_call(PFC_FALSE);
+ pfc_bool_t is_read_next(PFC_FALSE);
+ ReadRequest read_req;
uint32_t max_rep_ct = 1;
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);
//unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
int ret = KtctrObj.ReadBulk(db_conn, &k, UNC_DT_STATE, max_rep_ct,
- child_index, parent_call,is_read_next, read_req);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ child_index, parent_call, is_read_next,
+ &read_req);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
-TEST_F(KtCtrlrTest, ReadBulk_ctr_exists_FALSE) {
+TEST_F(ControllerTest, ReadBulk_ctr_exists_FALSE) {
key_ctr_t k;
memset(&k,0,sizeof(key_ctr_t));
- int child_index;
- pfc_bool_t parent_call = false;
- pfc_bool_t is_read_next;
- ReadRequest *read_req = new ReadRequest;
+ int child_index(0);
+ pfc_bool_t parent_call(PFC_FALSE);
+ pfc_bool_t is_read_next(PFC_FALSE);
+ ReadRequest read_req;
uint32_t max_rep_ct = 1;
//memset(k.controller_name, '\0', 32);
//memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
//unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_CONNECTION_ERROR);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_RECORD_NOT_FOUND);
int ret = KtctrObj.ReadBulk(db_conn, &k, UNC_DT_STATE, max_rep_ct,
- child_index, parent_call,is_read_next, read_req);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ child_index, parent_call,is_read_next,
+ &read_req);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
-
// DeleteKeyInstance:returns DB error
-TEST_F(KtCtrlrTest, DeleteKeyInstan_Err_DB_ACCESS) {
+TEST_F(ControllerTest, DeleteKeyInstan_Err_DB_ACCESS) {
key_ctr_t k;
- uint32_t key_type ;
+ uint32_t key_type(UNC_KT_CONTROLLER);
memset(k.controller_name, '\0', 32);
memcpy(k.controller_name, pkctrName1, strlen(pkctrName1));
Kt_Controller KtctrObj;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_CONNECTION_ERROR);
int ret = KtctrObj.DeleteKeyInstance(db_conn, &k, UNC_DT_STATE, key_type);
- EXPECT_EQ(ret, UPPL_RC_ERR_DB_ACCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
//ReadBulkInternal:Reaturns success for max_ct zero
-TEST_F(KtCtrlrTest,ReadBulkInternal_MaxCt_LessThan_Zero) {
+TEST_F(ControllerTest,ReadBulkInternal_MaxCt_LessThan_Zero) {
OdbcmConnectionHandler *db_conn =NULL;
key_ctr_t k;
val_ctr_st_t v;
vector<string> vect_ctr_id;
Kt_Controller KtctrObj;
int ret = KtctrObj.ReadBulkInternal(db_conn,&k,&v,data_type,max_rep_ct,vect_val_ctr,vect_ctr_id);
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
//HandleDriverEvents
-TEST_F(KtCtrlrTest, HandleDriverEvents) {
+TEST_F(ControllerTest, HandleDriverEvents) {
OdbcmConnectionHandler *db_conn =NULL;
key_ctr_t k;
+ pfc_strlcpy(reinterpret_cast<char *>(k.controller_name), pkctrName1,
+ sizeof(k.controller_name));
+
uint32_t oper_type = UNC_OP_UPDATE;
uint32_t data_type = UNC_DT_STATE;
- val_ctr_st_t *old_val_struct = NULL;
- val_ctr_st_t *new_val_struct;
- pfc_bool_t is_events_done;
+ val_ctr_st_t *old_val_struct(NULL);
+ val_ctr_st_t *new_val_struct(NULL);
+ pfc_bool_t is_events_done(PFC_FALSE);
Kt_Controller KtctrObj;
int ret = KtctrObj.HandleDriverEvents(db_conn,&k,oper_type,data_type,old_val_struct,new_val_struct,is_events_done);
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
/***8*ReadCtrValFromDb****/
//Unsuported opr type....Returns Success
-TEST_F(KtCtrlrTest, ReadCtrValFromDB) {
+TEST_F(ControllerTest, ReadCtrValFromDB) {
OdbcmConnectionHandler *db_conn =NULL;
key_ctr_t k;
val_ctr_st_t v;
vector<string> controller_id;
Kt_Controller KtctrObj;
int ret = KtctrObj.ReadCtrValFromDB(db_conn,&k,&v,data_type,operation_type,max_rep_ct,vect_val_ctr_st,controller_id);
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
-
-
- /*
- * Copyright (c) 2012-2013 NEC Corporation
- * All rights reserved
- *
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this
- * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
- */
-
-
+/*
+ * Copyright (c) 2012-2013 NEC Corporation
+ * All rights reserved
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this
+ * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
+ */
#include <limits.h>
#include <gtest/gtest.h>
#include <pfc/iostream.h>
#include <pfc/ipc_client.h>
#include <pfc/ipc_pfcd.h>
-#include "stub/ODBC/include/odbcm_mgr.hh"
-#include "physical_common_def.hh"
-#include "unc/uppl_common.h"
-#include "unc/keytype.h"
-#include "itc_kt_base.hh"
-#include "itc_kt_root.hh"
-#include "itc_kt_controller.hh"
-#include "itc_kt_ctr_domain.hh"
-#include "itc_kt_switch.hh"
-#include "itc_kt_port.hh"
-#include "itc_kt_link.hh"
-#include "itc_kt_boundary.hh"
-#include "itc_kt_logicalport.hh"
-#include "ipct_util.hh"
+#include <odbcm_mgr.hh>
+#include <physical_common_def.hh>
+#include <unc/uppl_common.h>
+#include <unc/keytype.h>
+#include <itc_kt_base.hh>
+#include <itc_kt_root.hh>
+#include <itc_kt_controller.hh>
+#include <itc_kt_ctr_domain.hh>
+#include <itc_kt_switch.hh>
+#include <itc_kt_port.hh>
+#include <itc_kt_link.hh>
+#include <itc_kt_boundary.hh>
+#include <itc_kt_logicalport.hh>
+#include <ipct_util.hh>
+#include <itc_read_request.hh>
+#include <tclib_module.hh>
#include "PhysicalLayerStub.hh"
-#include "itc_read_request.hh"
-#include "tclib_module.hh"
+#include "ut_util.hh"
using namespace pfc;
using namespace pfc::core;
using namespace pfc::core::ipc;
using namespace std;
using namespace unc::tclib;
+using namespace unc::uppl::test;
-ClientSession *cli_sess = NULL;
-pfc_ipcid_t service = UPPL_SVC_CONFIGREQ;
-class KtClassTest : public testing::Test {
-protected:
- virtual void SetUp() {
- unc::tclib::TcLibModule::stub_loadtcLibModule();
- if (cli_sess == NULL) {
- pfc_ipcconn_t connp = 0;
- int err = pfc_ipcclnt_altopen(UPPL_IPC_CHN_NAME, &connp);
- ASSERT_EQ(0, err);
- //ASSERT_TRUE(connp != 0);
- cli_sess = new ClientSession(connp, UPPL_IPC_SVC_NAME, service, err);
- //ASSERT_EQ(0, err);
- } else {
- cli_sess->reset(UPPL_IPC_SVC_NAME, service);
- }
- }
- virtual void TearDown() {
- }
+class DomainTest
+ : public UpplTestEnv
+{
};
-// Can be changed based on testing need
-#if 0
-char pkName1[] = "Controller1_domain_name";
-char pkName2[] = "Domain7";
-char pkName3[] = "Domain15";
-char pkName4[] = "";
-char pkName5[] = "NotExisting";
-char pkName11[] = "Domain20";
-
-char pkName6[] = "Controller1";
-char pkName7[] = "Controller7";
-char pkName8[] = "Controller15";
-char pkName9[] = "";
-char pkName10[] = "NotExisting";
-char pkName12[] = "Controller20";
-
-
-
-#endif
-char pkctrName1[] = "Controller1";
-char pkDomainName2[] = "Domain1";
-char pkDomainName3[] = "(DEFAULT)";
-char valDescription[] = "description1";
+static char pkctrName1[] = "Controller1";
+static char pkDomainName2[] = "Domain1";
+static char pkDomainName3[] = "(DEFAULT)";
+static char valDescription[] = "description1";
-TEST_F(KtClassTest, PerformSyntxCheck_Domainname_notFound_01) {
+TEST_F(DomainTest, PerformSyntxCheck_Domainname_notFound_01) {
key_ctr_domain_t k;
val_ctr_domain v;
- PhysicalLayerStub::loadphysicallayer();
Kt_Ctr_Domain KtdomianObj;
memset(k.ctr_key.controller_name, '\0', 32);
memcpy(k.ctr_key.controller_name, pkctrName1, strlen(pkctrName1));
uint32_t operation = UNC_OP_CREATE;
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtdomianObj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SYNTAX);
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SYNTAX, ret);
}
-TEST_F(KtClassTest, PerformSyntxCheck_Controllername_notFound_02) {
+TEST_F(DomainTest, PerformSyntxCheck_Controllername_notFound_02) {
key_ctr_domain_t k;
val_ctr_domain v;
Kt_Ctr_Domain KtdomianObj;
uint32_t operation = UNC_OP_CREATE;
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtdomianObj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SYNTAX);
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SYNTAX, ret);
}
-TEST_F(KtClassTest, PerformSyntxCheck_Valstrct_without_type_03) {
+TEST_F(DomainTest, PerformSyntxCheck_Valstrct_without_type_03) {
key_ctr_domain_t k;
val_ctr_domain v;
+ memset(&v, 0, sizeof(v));
+
Kt_Ctr_Domain KtdomianObj;
memset(k.ctr_key.controller_name, '\0', 32);
memcpy(k.ctr_key.controller_name, pkctrName1, strlen(pkctrName1));
uint32_t operation = UNC_OP_CREATE;
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtdomianObj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SYNTAX);
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SYNTAX, ret);
}
-TEST_F(KtClassTest, PerformSyntxCheck_Valstrct_04) {
+TEST_F(DomainTest, PerformSyntxCheck_Valstrct_04) {
key_ctr_domain_t k;
val_ctr_domain v;
+ memset(&v, 0, sizeof(v));
v.type = 1;
v.valid[kIdxDomainType] = 1;
+
Kt_Ctr_Domain KtdomianObj;
memset(k.ctr_key.controller_name, '\0', 32);
memcpy(k.ctr_key.controller_name, pkctrName1, strlen(pkctrName1));
uint32_t operation = UNC_OP_CREATE;
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtdomianObj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_CANDIDATE);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
-TEST_F(KtClassTest, PerformSyntxCheck_Valstrct_05) {
+TEST_F(DomainTest, PerformSyntxCheck_Valstrct_05) {
key_ctr_domain_t k;
val_ctr_domain v;
+ memset(&v, 0, sizeof(v));
v.type = 1;
v.valid[kIdxDomainType] = 1;
+
Kt_Ctr_Domain KtdomianObj;
memset(k.ctr_key.controller_name, '\0', 32);
memcpy(k.ctr_key.controller_name, pkctrName1, strlen(pkctrName1));
uint32_t operation = UNC_OP_UPDATE;
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtdomianObj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_CANDIDATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SYNTAX);
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SYNTAX, ret);
}
-TEST_F(KtClassTest, PerformSyntxCheck_Valstrct_06) {
+TEST_F(DomainTest, PerformSyntxCheck_Valstrct_06) {
key_ctr_domain_t k;
val_ctr_domain v;
+ memset(&v, 0, sizeof(v));
v.type = 0;
v.valid[kIdxDomainType] = 1;
+
Kt_Ctr_Domain KtdomianObj;
memset(k.ctr_key.controller_name, '\0', 32);
memcpy(k.ctr_key.controller_name, pkctrName1, strlen(pkctrName1));
uint32_t operation = UNC_OP_CREATE;
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtdomianObj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_CANDIDATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SYNTAX);
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SYNTAX, ret);
}
-TEST_F(KtClassTest, PerformSyntxCheck_Valstrct_07) {
+TEST_F(DomainTest, PerformSyntxCheck_Valstrct_07) {
key_ctr_domain_t k;
val_ctr_domain v;
+ memset(&v, 0, sizeof(v));
v.type = 1;
v.valid[kIdxDomainType] = 1;
+
Kt_Ctr_Domain KtdomianObj;
memset(k.ctr_key.controller_name, '\0', 32);
memcpy(k.ctr_key.controller_name, pkctrName1, strlen(pkctrName1));
uint32_t operation = UNC_OP_CREATE;
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtdomianObj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_CANDIDATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SYNTAX);
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SYNTAX, ret);
}
-TEST_F(KtClassTest, PerformSyntxCheck_Valstrct_08) {
+TEST_F(DomainTest, PerformSyntxCheck_Valstrct_08) {
key_ctr_domain_t k;
val_ctr_domain v;
+ memset(&v, 0, sizeof(v));
v.type = 1;
v.valid[kIdxDomainType] = 1;
- memset(v.description, '\0', 128);
v.valid[kIdxDomainDescription] = 0;
+
Kt_Ctr_Domain KtdomianObj;
memset(k.ctr_key.controller_name, '\0', 32);
memcpy(k.ctr_key.controller_name, pkctrName1, strlen(pkctrName1));
uint32_t operation = UNC_OP_CREATE;
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtdomianObj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_CANDIDATE);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
-TEST_F(KtClassTest, PerformSyntxCheck_val_struct_empty_09) {
+TEST_F(DomainTest, PerformSyntxCheck_val_struct_empty_09) {
key_ctr_domain_t k;
val_ctr_domain *v;
v = NULL;
uint32_t operation = UNC_OP_CREATE;
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtdomianObj.PerformSyntaxValidation(db_conn,&k,v,operation,UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// Create for unsupported datatype
-TEST_F(KtClassTest, Create_01) {
+TEST_F(DomainTest, Create_01) {
key_ctr_domain_t k;
val_ctr_domain v;
- uint32_t session_id = 1;
- uint32_t configuration_id = 2;
+ memset(&v, 0, sizeof(v));
v.type = 1;
v.valid[kIdxDomainType] = 1;
- memset(v.description, '\0', 128);
v.valid[kIdxDomainDescription] = 0;
+
+ uint32_t session_id = 1;
+ uint32_t configuration_id = 2;
Kt_Ctr_Domain KtdomianObj;
ServerSession ses;
memset(k.ctr_key.controller_name, '\0', 32);
memcpy(k.domain_name, pkDomainName2, strlen(pkDomainName2));
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtdomianObj.Create(db_conn,session_id,configuration_id,&k,&v,UNC_DT_STATE,ses);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
// Domain Create success
-TEST_F(KtClassTest, Create_02) {
+TEST_F(DomainTest, Create_02) {
key_ctr_domain_t k;
val_ctr_domain v;
- uint32_t session_id = 1;
- uint32_t configuration_id = 2;
+ memset(&v, 0, sizeof(v));
v.type = 1;
v.valid[kIdxDomainType] = 1;
- memset(v.description, '\0', 128);
v.valid[kIdxDomainDescription] = 0;
+
+ uint32_t session_id = 1;
+ uint32_t configuration_id = 2;
Kt_Ctr_Domain KtdomianObj;
ServerSession ses;
ses.stub_setAddOutput((uint32_t)configuration_id);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::CREATEONEROW, ODBCM_RC_SUCCESS);
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtdomianObj.Create(db_conn,session_id,configuration_id,&k,&v,UNC_DT_CANDIDATE,ses);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
+
// get_controller_type returns failure
-TEST_F(KtClassTest, Create_03) {
+TEST_F(DomainTest, Create_03) {
key_ctr_domain_t k;
val_ctr_domain v;
- uint32_t session_id = 1;
- uint32_t configuration_id = 2;
+ memset(&v, 0, sizeof(v));
v.type = 1;
v.valid[kIdxDomainType] = 1;
- memset(v.description, '\0', 128);
v.valid[kIdxDomainDescription] = 0;
+
+ uint32_t session_id = 1;
+ uint32_t configuration_id = 2;
Kt_Ctr_Domain KtdomianObj;
ServerSession ses;
ses.stub_setAddOutput((uint32_t)configuration_id);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_CONNECTION_ERROR);
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtdomianObj.Create(db_conn,session_id,configuration_id,&k,&v,UNC_DT_CANDIDATE,ses);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
+
/*
//Create on unsupported datatype
-TEST_F(KtClassTest, Create) {
+TEST_F(DomainTest, Create) {
key_ctr_domain_t k;
val_ctr_domain v;
uint32_t session_id = 1;
memcpy(k.domain_name, pkDomainName2, strlen(pkDomainName2));
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtdomianObj.Create(db_conn,session_id,configuration_id,&k,&v,UNC_DT_STATE,ses);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
-TEST_F(KtClassTest, PerformSemanticValidation_01) {
+TEST_F(DomainTest, PerformSemanticValidation_01) {
key_ctr_domain_t k;
val_ctr_domain v;
v.type = 1;
uint32_t operation = UNC_OP_CREATE;
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtdomianObj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_CANDIDATE);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}*/
// IsKeyExists with UNC_DT_CANDIDATE datatype ODBC return ODBCM_RC_CONNECTION_ERROR
-TEST_F(KtClassTest, IsKeyExists_01) {
+TEST_F(DomainTest, IsKeyExists_01) {
Kt_Ctr_Domain KtdomianObj;
vector<string> vect_key;
vect_key.push_back(pkctrName1);
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_CONNECTION_ERROR);
int ret = KtdomianObj.IsKeyExists(db_conn,UNC_DT_CANDIDATE,vect_key);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
// IsKeyExists with UNC_DT_CANDIDATE datatype ODBC return ODBCM_RC_ROW_EXISTS
-TEST_F(KtClassTest, IsKeyExists_02) {
+TEST_F(DomainTest, IsKeyExists_02) {
Kt_Ctr_Domain KtdomianObj;
vector<string> vect_key;
vect_key.push_back(pkctrName1);
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);
int ret = KtdomianObj.IsKeyExists(db_conn,UNC_DT_CANDIDATE,vect_key);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// IsKeyExists with UNC_DT_CANDIDATE datatype ODBC return ODBCM_RC_QUERY_TIMEOUT
-TEST_F(KtClassTest, IsKeyExists_03) {
+TEST_F(DomainTest, IsKeyExists_03) {
Kt_Ctr_Domain KtdomianObj;
vector<string> vect_key;
vect_key.push_back(pkctrName1);
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_QUERY_TIMEOUT);
int ret = KtdomianObj.IsKeyExists(db_conn,UNC_DT_CANDIDATE,vect_key);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_GET);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_GET, ret);
}
// IsKeyExists with key structure empty
-TEST_F(KtClassTest, IsKeyExists_04) {
+TEST_F(DomainTest, IsKeyExists_04) {
Kt_Ctr_Domain KtdomianObj;
vector<string> vect_key;
vect_key.clear();
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtdomianObj.IsKeyExists(db_conn,UNC_DT_CANDIDATE,vect_key);
- EXPECT_EQ(ret,UPPL_RC_ERR_BAD_REQUEST);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_BAD_REQUEST, ret);
}
// CreateKeyInstance with UNC_DT_CANDIDATE datatype ODBC return ODBCM_RC_CONNECTION_ERROR
-TEST_F(KtClassTest, CreateKeyInstance_01) {
+TEST_F(DomainTest, CreateKeyInstance_01) {
key_ctr_domain_t k;
val_ctr_domain v;
uint32_t key_type = 1;
memcpy(k.domain_name, pkDomainName2, strlen(pkDomainName2));
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::CREATEONEROW, ODBCM_RC_CONNECTION_ERROR);
- //PhysicalLayer *physical_layer = new PhysicalLayer();
int ret = KtdomianObj.CreateKeyInstance(db_conn,&k,&v,UNC_DT_CANDIDATE,key_type);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
+
// CreateKeyInstance with UNC_DT_RUNNING datatype ODBC
-TEST_F(KtClassTest, CreateKeyInstance_02) {
+TEST_F(DomainTest, CreateKeyInstance_02) {
key_ctr_domain_t k;
val_ctr_domain v;
- uint32_t key_type = 1;
+ memset(&v, 0, sizeof(v));
v.type = 1;
v.valid[kIdxDomainType] = 1;
- memset(v.description, '\0', 128);
memcpy(v.description, valDescription, strlen(valDescription));
v.valid[kIdxDomainDescription] = 1;
+
+ uint32_t key_type = 1;
Kt_Ctr_Domain KtdomianObj;
memset(k.ctr_key.controller_name, '\0', 32);
memcpy(k.ctr_key.controller_name, pkctrName1, strlen(pkctrName1));
memcpy(k.domain_name, pkDomainName2, strlen(pkDomainName2));
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::CREATEONEROW, ODBCM_RC_CONNECTION_ERROR);
- //PhysicalLayer *physical_layer = new PhysicalLayer();
int ret = KtdomianObj.CreateKeyInstance(db_conn,&k,&v,UNC_DT_RUNNING,key_type);
- EXPECT_EQ(ret,UPPL_RC_ERR_OPERATION_NOT_ALLOWED);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_OPERATION_NOT_ALLOWED, ret);
}
+
// CreateKeyInstance with UNC_DT_STATE datatype ODBC return ODBCM_RC_CONNECTION_ERROR
-TEST_F(KtClassTest, CreateKeyInstance_03) {
+TEST_F(DomainTest, CreateKeyInstance_03) {
key_ctr_domain_t k;
- val_ctr_domain v;
+ val_ctr_domain_st v;
+ memset(&v, 0, sizeof(v));
+ v.domain.type = 1;
+ v.domain.valid[kIdxDomainType] = 1;
+ memcpy(v.domain.description, valDescription, strlen(valDescription));
+ v.domain.valid[kIdxDomainDescription] = 1;
+
uint32_t key_type = 1;
- v.type = 1;
- v.valid[kIdxDomainType] = 1;
- memset(v.description, '\0', 128);
- memcpy(v.description, valDescription, strlen(valDescription));
- v.valid[kIdxDomainDescription] = 1;
Kt_Ctr_Domain KtdomianObj;
memset(k.ctr_key.controller_name, '\0', 32);
memcpy(k.ctr_key.controller_name, pkctrName1, strlen(pkctrName1));
memcpy(k.domain_name, pkDomainName2, strlen(pkDomainName2));
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::CREATEONEROW, ODBCM_RC_CONNECTION_ERROR);
- //PhysicalLayer *physical_layer = new PhysicalLayer();
int ret = KtdomianObj.CreateKeyInstance(db_conn,&k,&v,UNC_DT_STATE,key_type);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
// CreateKeyInstance with UNC_DT_IMPORT datatype ODBC return ODBCM_RC_CONNECTION_ERROR
-TEST_F(KtClassTest, CreateKeyInstance_04) {
+TEST_F(DomainTest, CreateKeyInstance_04) {
key_ctr_domain_t k;
- val_ctr_domain v;
+ val_ctr_domain_st v;
+ memset(&v, 0, sizeof(v));
+ v.domain.type = 1;
+ v.domain.valid[kIdxDomainType] = 1;
+ memcpy(v.domain.description, valDescription, strlen(valDescription));
+ v.domain.valid[kIdxDomainDescription] = 1;
+
uint32_t key_type = 1;
- v.type = 1;
- v.valid[kIdxDomainType] = 1;
- memset(v.description, '\0', 128);
- memcpy(v.description, valDescription, strlen(valDescription));
- v.valid[kIdxDomainDescription] = 1;
Kt_Ctr_Domain KtdomianObj;
memset(k.ctr_key.controller_name, '\0', 32);
memcpy(k.ctr_key.controller_name, pkctrName1, strlen(pkctrName1));
memcpy(k.domain_name, pkDomainName2, strlen(pkDomainName2));
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::CREATEONEROW, ODBCM_RC_CONNECTION_ERROR);
- //PhysicalLayer *physical_layer = new PhysicalLayer();
int ret = KtdomianObj.CreateKeyInstance(db_conn,&k,&v,UNC_DT_IMPORT,key_type);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
// CreateKeyInstance with UNC_DT_CANDIDATE datatype ODBC return Failure
-TEST_F(KtClassTest, CreateKeyInstance_05) {
+TEST_F(DomainTest, CreateKeyInstance_05) {
key_ctr_domain_t k;
val_ctr_domain v;
- uint32_t key_type = 1;
+ memset(&v, 0, sizeof(v));
v.type = 1;
v.valid[kIdxDomainType] = 1;
- memset(v.description, '\0', 128);
memcpy(v.description, valDescription, strlen(valDescription));
v.valid[kIdxDomainDescription] = 1;
+
+ uint32_t key_type = 1;
Kt_Ctr_Domain KtdomianObj;
memset(k.ctr_key.controller_name, '\0', 32);
memcpy(k.ctr_key.controller_name, pkctrName1, strlen(pkctrName1));
memcpy(k.domain_name, pkDomainName2, strlen(pkDomainName2));
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::CREATEONEROW, ODBCM_RC_TRANSACTION_ERROR);
- //PhysicalLayer *physical_layer = new PhysicalLayer();
int ret = KtdomianObj.CreateKeyInstance(db_conn,&k,&v,UNC_DT_CANDIDATE,key_type);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_CREATE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_CREATE, ret);
}
+
// CreateKeyInstance with UNC_DT_CANDIDATE datatype ODBC ODBCM_RC_SUCCESS
-TEST_F(KtClassTest, CreateKeyInstance_06) {
+TEST_F(DomainTest, CreateKeyInstance_06) {
key_ctr_domain_t k;
val_ctr_domain v;
- uint32_t key_type = 1;
+ memset(&v, 0, sizeof(v));
v.type = 1;
v.valid[kIdxDomainType] = 1;
- memset(v.description, '\0', 128);
memcpy(v.description, valDescription, strlen(valDescription));
v.valid[kIdxDomainDescription] = 1;
+
+ uint32_t key_type = 1;
Kt_Ctr_Domain KtdomianObj;
memset(k.ctr_key.controller_name, '\0', 32);
memcpy(k.ctr_key.controller_name, pkctrName1, strlen(pkctrName1));
memcpy(k.domain_name, pkDomainName2, strlen(pkDomainName2));
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::CREATEONEROW, ODBCM_RC_SUCCESS);
- //PhysicalLayer *physical_layer = new PhysicalLayer();
int ret = KtdomianObj.CreateKeyInstance(db_conn,&k,&v,UNC_DT_CANDIDATE,key_type);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
+
// CreateKeyInstance with UNC_DT_STATE datatype ODBC return Failure
-TEST_F(KtClassTest, CreateKeyInstance_07) {
+TEST_F(DomainTest, CreateKeyInstance_07) {
key_ctr_domain_t k;
- val_ctr_domain v;
+ val_ctr_domain_st v;
+ memset(&v, 0, sizeof(v));
+ v.domain.type = 1;
+ v.domain.valid[kIdxDomainType] = 1;
+ memcpy(v.domain.description, valDescription, strlen(valDescription));
+ v.domain.valid[kIdxDomainDescription] = 1;
+
uint32_t key_type = 1;
- v.type = 1;
- v.valid[kIdxDomainType] = 1;
- memset(v.description, '\0', 128);
- memcpy(v.description, valDescription, strlen(valDescription));
- v.valid[kIdxDomainDescription] = 1;
Kt_Ctr_Domain KtdomianObj;
memset(k.ctr_key.controller_name, '\0', 32);
memcpy(k.ctr_key.controller_name, pkctrName1, strlen(pkctrName1));
memcpy(k.domain_name, pkDomainName2, strlen(pkDomainName2));
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::CREATEONEROW, ODBCM_RC_TRANSACTION_ERROR);
- //PhysicalLayer *physical_layer = new PhysicalLayer();
int ret = KtdomianObj.CreateKeyInstance(db_conn,&k,&v,UNC_DT_STATE,key_type);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_CREATE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_CREATE, ret);
}
// CreateKeyInstance with UNC_DT_IMPORT datatype ODBC return Failure
-TEST_F(KtClassTest, CreateKeyInstance_08) {
+TEST_F(DomainTest, CreateKeyInstance_08) {
key_ctr_domain_t k;
- val_ctr_domain v;
+ val_ctr_domain_st v;
+ memset(&v, 0, sizeof(v));
+ v.domain.type = 1;
+ v.domain.valid[kIdxDomainType] = 1;
+ memcpy(v.domain.description, valDescription, strlen(valDescription));
+ v.domain.valid[kIdxDomainDescription] = 1;
+
uint32_t key_type = 1;
- v.type = 1;
- v.valid[kIdxDomainType] = 1;
- memset(v.description, '\0', 128);
- memcpy(v.description, valDescription, strlen(valDescription));
- v.valid[kIdxDomainDescription] = 1;
Kt_Ctr_Domain KtdomianObj;
memset(k.ctr_key.controller_name, '\0', 32);
memcpy(k.ctr_key.controller_name, pkctrName1, strlen(pkctrName1));
memcpy(k.domain_name, pkDomainName2, strlen(pkDomainName2));
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::CREATEONEROW, ODBCM_RC_TRANSACTION_ERROR);
- //PhysicalLayer *physical_layer = new PhysicalLayer();
int ret = KtdomianObj.CreateKeyInstance(db_conn,&k,&v,UNC_DT_IMPORT,key_type);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_CREATE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_CREATE, ret);
}
// Update for unsupported datatype
-TEST_F(KtClassTest, Update_01) {
+TEST_F(DomainTest, Update_01) {
key_ctr_domain_t k;
val_ctr_domain v;
- uint32_t session_id = 1;
- uint32_t configuration_id = 2;
+ memset(&v, 0, sizeof(v));
v.type = 1;
v.valid[kIdxDomainType] = 1;
- memset(v.description, '\0', 128);
v.valid[kIdxDomainDescription] = 0;
+
+ uint32_t session_id = 1;
+ uint32_t configuration_id = 2;
Kt_Ctr_Domain KtdomianObj;
ServerSession ses;
memset(k.ctr_key.controller_name, '\0', 32);
memcpy(k.domain_name, pkDomainName2, strlen(pkDomainName2));
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtdomianObj.Update(db_conn,session_id,configuration_id,&k,&v,UNC_DT_STATE,ses);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
// Domain Update success
-TEST_F(KtClassTest, Update_02) {
+TEST_F(DomainTest, Update_02) {
key_ctr_domain_t k;
val_ctr_domain v;
- uint32_t session_id = 1;
- uint32_t configuration_id = 2;
+ memset(&v, 0, sizeof(v));
v.type = 1;
v.valid[kIdxDomainType] = 1;
- memset(v.description, '\0', 128);
v.valid[kIdxDomainDescription] = 0;
+
+ uint32_t session_id = 1;
+ uint32_t configuration_id = 2;
Kt_Ctr_Domain KtdomianObj;
ServerSession ses;
ses.stub_setAddOutput((uint32_t)configuration_id);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtdomianObj.Update(db_conn,session_id,configuration_id,&k,&v,UNC_DT_CANDIDATE,ses);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
+
// get_controller_type returns failure
-TEST_F(KtClassTest, Update_03) {
+TEST_F(DomainTest, Update_03) {
key_ctr_domain_t k;
val_ctr_domain v;
- uint32_t session_id = 1;
- uint32_t configuration_id = 2;
+ memset(&v, 0, sizeof(v));
v.type = 1;
v.valid[kIdxDomainType] = 1;
- memset(v.description, '\0', 128);
v.valid[kIdxDomainDescription] = 0;
+
+ uint32_t session_id = 1;
+ uint32_t configuration_id = 2;
Kt_Ctr_Domain KtdomianObj;
ServerSession ses;
ses.stub_setAddOutput((uint32_t)configuration_id);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_CONNECTION_ERROR);
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtdomianObj.Update(db_conn,session_id,configuration_id,&k,&v,UNC_DT_CANDIDATE,ses);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
// UpdateKeyInstance with UNC_DT_CANDIDATE ODBC retuns ODBCM_RC_CONNECTION_ERROR
-TEST_F(KtClassTest, UpdateKeyInstance_01) {
+TEST_F(DomainTest, UpdateKeyInstance_01) {
key_ctr_domain_t k;
val_ctr_domain v;
- uint32_t key_type = 1;
+ memset(&v, 0, sizeof(v));
v.type = 1;
v.valid[kIdxDomainType] = 1;
- memset(v.description, '\0', 128);
memcpy(v.description, valDescription, strlen(valDescription));
v.valid[kIdxDomainDescription] = 1;
+
+ uint32_t key_type = 1;
Kt_Ctr_Domain KtdomianObj;
memset(k.ctr_key.controller_name, '\0', 32);
memcpy(k.ctr_key.controller_name, pkctrName1, strlen(pkctrName1));
memcpy(k.domain_name, pkDomainName2, strlen(pkDomainName2));
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_CONNECTION_ERROR);
- //PhysicalLayer *physical_layer = new PhysicalLayer();
int ret = KtdomianObj.UpdateKeyInstance(db_conn,&k,&v,UNC_DT_CANDIDATE,key_type);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
// UpdateKeyInstance on unsupported datatype
-TEST_F(KtClassTest, UpdateKeyInstance_02) {
+TEST_F(DomainTest, UpdateKeyInstance_02) {
key_ctr_domain_t k;
val_ctr_domain v;
- uint32_t key_type = 1;
+ memset(&v, 0, sizeof(v));
v.type = 1;
v.valid[kIdxDomainType] = 1;
- memset(v.description, '\0', 128);
memcpy(v.description, valDescription, strlen(valDescription));
v.valid[kIdxDomainDescription] = 1;
+
+ uint32_t key_type = 1;
Kt_Ctr_Domain KtdomianObj;
memset(k.ctr_key.controller_name, '\0', 32);
memcpy(k.ctr_key.controller_name, pkctrName1, strlen(pkctrName1));
memset(k.domain_name, '\0', sizeof(k.domain_name));
memcpy(k.domain_name, pkDomainName2, strlen(pkDomainName2));
OdbcmConnectionHandler *db_conn =NULL;
- //PhysicalLayer *physical_layer = new PhysicalLayer();
int ret = KtdomianObj.UpdateKeyInstance(db_conn,&k,&v,UNC_DT_RUNNING,key_type);
- EXPECT_EQ(ret,UPPL_RC_ERR_OPERATION_NOT_ALLOWED);
+ EXPECT_EQ(UPPL_RC_ERR_OPERATION_NOT_ALLOWED, ret);
}
+
// UpdateKeyInstance with UNC_DT_IMPORT ODBC retuns ODBCM_RC_CONNECTION_ERROR
-TEST_F(KtClassTest, UpdateKeyInstance_03) {
+TEST_F(DomainTest, UpdateKeyInstance_03) {
key_ctr_domain_t k;
- val_ctr_domain v;
+ val_ctr_domain_st v;
+ memset(&v, 0, sizeof(v));
+ v.domain.type = 1;
+ v.domain.valid[kIdxDomainType] = 1;
+ memcpy(v.domain.description, valDescription, strlen(valDescription));
+ v.domain.valid[kIdxDomainDescription] = 1;
+
uint32_t key_type = 1;
- v.type = 1;
- v.valid[kIdxDomainType] = 1;
- memset(v.description, '\0', 128);
- memcpy(v.description, valDescription, strlen(valDescription));
- v.valid[kIdxDomainDescription] = 1;
Kt_Ctr_Domain KtdomianObj;
memset(k.ctr_key.controller_name, '\0', 32);
memcpy(k.ctr_key.controller_name, pkctrName1, strlen(pkctrName1));
memcpy(k.domain_name, pkDomainName2, strlen(pkDomainName2));
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_CONNECTION_ERROR);
- //PhysicalLayer *physical_layer = new PhysicalLayer();
int ret = KtdomianObj.UpdateKeyInstance(db_conn,&k,&v,UNC_DT_IMPORT,key_type);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
+
// UpdateKeyInstance with UNC_DT_IMPORT ODBC retuns ODBCM_RC_SUCCESS
-TEST_F(KtClassTest, UpdateKeyInstance_04) {
+TEST_F(DomainTest, UpdateKeyInstance_04) {
key_ctr_domain_t k;
- val_ctr_domain v;
+ val_ctr_domain_st v;
+ memset(&v, 0, sizeof(v));
+ v.domain.type = 1;
+ v.domain.valid[kIdxDomainType] = 1;
+ memcpy(v.domain.description, valDescription, strlen(valDescription));
+ v.domain.valid[kIdxDomainDescription] = 1;
+
uint32_t key_type = 1;
- v.type = 1;
- v.valid[kIdxDomainType] = 1;
- memset(v.description, '\0', 128);
- memcpy(v.description, valDescription, strlen(valDescription));
- v.valid[kIdxDomainDescription] = 1;
Kt_Ctr_Domain KtdomianObj;
memset(k.ctr_key.controller_name, '\0', 32);
memcpy(k.ctr_key.controller_name, pkctrName1, strlen(pkctrName1));
memcpy(k.domain_name, pkDomainName2, strlen(pkDomainName2));
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
- //PhysicalLayer *physical_layer = new PhysicalLayer();
int ret = KtdomianObj.UpdateKeyInstance(db_conn,&k,&v,UNC_DT_IMPORT,key_type);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
+
// UpdateKeyInstance with UNC_DT_IMPORT ODBC retuns
-TEST_F(KtClassTest, UpdateKeyInstance_05) {
+TEST_F(DomainTest, UpdateKeyInstance_05) {
key_ctr_domain_t k;
- val_ctr_domain v;
+ val_ctr_domain_st v;
+ memset(&v, 0, sizeof(v));
+ v.domain.type = 1;
+ v.domain.valid[kIdxDomainType] = 1;
+ memcpy(v.domain.description, valDescription, strlen(valDescription));
+ v.domain.valid[kIdxDomainDescription] = 1;
+
uint32_t key_type = 1;
- v.type = 1;
- v.valid[kIdxDomainType] = 1;
- memset(v.description, '\0', 128);
- memcpy(v.description, valDescription, strlen(valDescription));
- v.valid[kIdxDomainDescription] = 1;
Kt_Ctr_Domain KtdomianObj;
memset(k.ctr_key.controller_name, '\0', 32);
memcpy(k.ctr_key.controller_name, pkctrName1, strlen(pkctrName1));
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_TRANSACTION_ERROR);
int ret = KtdomianObj.UpdateKeyInstance(db_conn,&k,&v,UNC_DT_IMPORT,key_type);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_UPDATE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_UPDATE, ret);
}
+
// Delete for unsupported datatype
-TEST_F(KtClassTest, Delete_01) {
+TEST_F(DomainTest, Delete_01) {
key_ctr_domain_t k;
- val_ctr_domain v;
+ val_ctr_domain_st v;
+ memset(&v, 0, sizeof(v));
+ v.domain.type = 1;
+ v.domain.valid[kIdxDomainType] = 1;
+ v.domain.valid[kIdxDomainDescription] = 0;
+
uint32_t session_id = 1;
uint32_t configuration_id = 2;
- v.type = 1;
- v.valid[kIdxDomainType] = 1;
- memset(v.description, '\0', 128);
- v.valid[kIdxDomainDescription] = 0;
Kt_Ctr_Domain KtdomianObj;
ServerSession ses;
memset(k.ctr_key.controller_name, '\0', 32);
memcpy(k.domain_name, pkDomainName2, strlen(pkDomainName2));
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtdomianObj.Delete(db_conn,session_id,configuration_id,&k,UNC_DT_STATE,ses);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
// Domain Delete success
-TEST_F(KtClassTest, Delete_02) {
+TEST_F(DomainTest, Delete_02) {
key_ctr_domain_t k;
val_ctr_domain v;
- uint32_t session_id = 1;
- uint32_t configuration_id = 2;
+ memset(&v, 0, sizeof(v));
v.type = 1;
v.valid[kIdxDomainType] = 1;
- memset(v.description, '\0', 128);
v.valid[kIdxDomainDescription] = 0;
+
+ uint32_t session_id = 1;
+ uint32_t configuration_id = 2;
Kt_Ctr_Domain KtdomianObj;
ServerSession ses;
ses.stub_setAddOutput((uint32_t)configuration_id);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_SUCCESS);
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtdomianObj.Delete(db_conn,session_id,configuration_id,&k,UNC_DT_CANDIDATE,ses);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
+
// get_controller_type returns failure
-TEST_F(KtClassTest, Delete_03) {
+TEST_F(DomainTest, Delete_03) {
key_ctr_domain_t k;
val_ctr_domain v;
- uint32_t session_id = 1;
- uint32_t configuration_id = 2;
+ memset(&v, 0, sizeof(v));
v.type = 1;
v.valid[kIdxDomainType] = 1;
- memset(v.description, '\0', 128);
v.valid[kIdxDomainDescription] = 0;
+
+ uint32_t session_id = 1;
+ uint32_t configuration_id = 2;
Kt_Ctr_Domain KtdomianObj;
ServerSession ses;
ses.stub_setAddOutput((uint32_t)configuration_id);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_CONNECTION_ERROR);
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtdomianObj.Delete(db_conn,session_id,configuration_id,&k,UNC_DT_CANDIDATE,ses);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
+
// Domain Delete With boundary referred
-TEST_F(KtClassTest, Delete_04) {
+TEST_F(DomainTest, Delete_04) {
key_ctr_domain_t k;
val_ctr_domain v;
- uint32_t session_id = 1;
- uint32_t configuration_id = 2;
+ memset(&v, 0, sizeof(v));
v.type = 1;
v.valid[kIdxDomainType] = 1;
- memset(v.description, '\0', 128);
v.valid[kIdxDomainDescription] = 0;
+
+ uint32_t session_id = 1;
+ uint32_t configuration_id = 2;
Kt_Ctr_Domain KtdomianObj;
ServerSession ses;
ses.stub_setAddOutput((uint32_t)configuration_id);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtdomianObj.Delete(db_conn,session_id,configuration_id,&k,UNC_DT_CANDIDATE,ses);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
+
// UpdateKeyInstance with ODBC retuns ODBCM_RC_CONNECTION_ERROR
-TEST_F(KtClassTest, GetModifiedRows_01) {
+TEST_F(DomainTest, GetModifiedRows_01) {
key_ctr_domain_t k;
val_ctr_domain v;
- vector<void *> obj_key_struct;
- uint32_t key_type = 1;
+ memset(&v, 0, sizeof(v));
v.type = 1;
v.valid[kIdxDomainType] = 1;
- memset(v.description, '\0', 128);
memcpy(v.description, valDescription, strlen(valDescription));
v.valid[kIdxDomainDescription] = 1;
- PhysicalLayerStub::loadphysicallayer();
+
+ vector<void *> obj_key_struct;
Kt_Ctr_Domain KtdomianObj;
memset(k.ctr_key.controller_name, '\0', 32);
memcpy(k.ctr_key.controller_name, pkctrName1, strlen(pkctrName1));
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETMODIFIEDROWS, ODBCM_RC_CONNECTION_ERROR);
int ret = KtdomianObj.GetModifiedRows(db_conn,obj_key_struct,UPDATED);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
// ODBC retuns ODBCM_RC_RECORD_NOT_FOUND
-TEST_F(KtClassTest, GetModifiedRows_02) {
+TEST_F(DomainTest, GetModifiedRows_02) {
key_ctr_domain_t k;
val_ctr_domain v;
- vector<void *> obj_key_struct;
- uint32_t key_type = 1;
+ memset(&v, 0, sizeof(v));
v.type = 1;
v.valid[kIdxDomainType] = 1;
- memset(v.description, '\0', 128);
memcpy(v.description, valDescription, strlen(valDescription));
v.valid[kIdxDomainDescription] = 1;
- PhysicalLayerStub::loadphysicallayer();
+
+ vector<void *> obj_key_struct;
Kt_Ctr_Domain KtdomianObj;
memset(k.ctr_key.controller_name, '\0', 32);
memcpy(k.ctr_key.controller_name, pkctrName1, strlen(pkctrName1));
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETMODIFIEDROWS, ODBCM_RC_RECORD_NOT_FOUND);
int ret = KtdomianObj.GetModifiedRows(db_conn,obj_key_struct,UPDATED);
- EXPECT_EQ(ret,UPPL_RC_ERR_NO_SUCH_INSTANCE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
}
// ODBC retuns ODBCM_RC_SUCCESS
-TEST_F(KtClassTest, GetModifiedRows_03) {
+TEST_F(DomainTest, GetModifiedRows_03) {
key_ctr_domain_t k;
val_ctr_domain v;
- vector<void *> obj_key_struct;
- uint32_t key_type = 1;
+ memset(&v, 0, sizeof(v));
v.type = 1;
v.valid[kIdxDomainType] = 1;
- memset(v.description, '\0', 128);
memcpy(v.description, valDescription, strlen(valDescription));
v.valid[kIdxDomainDescription] = 1;
- PhysicalLayerStub::loadphysicallayer();
+
+ vector<void *> obj_key_struct;
Kt_Ctr_Domain KtdomianObj;
memset(k.ctr_key.controller_name, '\0', 32);
memcpy(k.ctr_key.controller_name, pkctrName1, strlen(pkctrName1));
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETMODIFIEDROWS, ODBCM_RC_SUCCESS);
int ret = KtdomianObj.GetModifiedRows(db_conn,obj_key_struct,UPDATED);
- EXPECT_EQ(ret,ODBCM_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(ODBCM_RC_SUCCESS, ret);
}
// ODBC retuns ODBCM_RC_FAILED
-TEST_F(KtClassTest, GetModifiedRows_04) {
+TEST_F(DomainTest, GetModifiedRows_04) {
key_ctr_domain_t k;
val_ctr_domain v;
- vector<void *> obj_key_struct;
- uint32_t key_type = 1;
+ memset(&v, 0, sizeof(v));
v.type = 1;
v.valid[kIdxDomainType] = 1;
- memset(v.description, '\0', 128);
memcpy(v.description, valDescription, strlen(valDescription));
v.valid[kIdxDomainDescription] = 1;
- PhysicalLayerStub::loadphysicallayer();
+
+ vector<void *> obj_key_struct;
Kt_Ctr_Domain KtdomianObj;
memset(k.ctr_key.controller_name, '\0', 32);
memcpy(k.ctr_key.controller_name, pkctrName1, strlen(pkctrName1));
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETMODIFIEDROWS, ODBCM_RC_FAILED);
int ret = KtdomianObj.GetModifiedRows(db_conn,obj_key_struct,UPDATED);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_GET);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_GET, ret);
}
-TEST_F(KtClassTest, SetOperStatus_001) {
-
+TEST_F(DomainTest, SetOperStatus_001) {
key_ctr_domain_t k;
memset(k.ctr_key.controller_name, '\0', 32);
memcpy(k.ctr_key.controller_name, pkctrName1, strlen(pkctrName1));
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_FAILED);
int ret = KtdomianObj.SetOperStatus(db_conn,UNC_DT_STATE,&k,(UpplDomainOperStatus)1);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_UPDATE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_UPDATE, ret);
}
-TEST_F(KtClassTest, SetOperStatus_002) {
-
+TEST_F(DomainTest, SetOperStatus_002) {
key_ctr_domain_t k;
memset(k.ctr_key.controller_name, '\0', 32);
memcpy(k.ctr_key.controller_name, pkctrName1, strlen(pkctrName1));
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_ROW_NOT_EXISTS);
int ret = KtdomianObj.SetOperStatus(db_conn,UNC_DT_STATE,&k,(UpplDomainOperStatus)0);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
-TEST_F(KtClassTest, SetOperStatus_003) {
+
+TEST_F(DomainTest, SetOperStatus_003) {
key_ctr_domain_t k;
memset(k.ctr_key.controller_name, '\0', 32);
memcpy(k.ctr_key.controller_name, pkctrName1, strlen(pkctrName1));
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_FAILED);
int ret = KtdomianObj.SetOperStatus(db_conn,UNC_DT_STATE,&k,(UpplDomainOperStatus)0);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
-TEST_F(KtClassTest, SetOperStatus_004) {
+TEST_F(DomainTest, SetOperStatus_004) {
key_ctr_domain_t k;
memset(k.ctr_key.controller_name, '\0', 32);
memcpy(k.ctr_key.controller_name, pkctrName1, strlen(pkctrName1));
Kt_Ctr_Domain KtdomianObj;
OdbcmConnectionHandler *db_conn =NULL;
ServerSession ser_evt;
- ServerSession::clearStubData();
- int err;
ser_evt.addOutput((uint32_t)UNC_OP_CREATE);
ser_evt.addOutput((uint32_t)UNC_DT_STATE);
ser_evt.addOutput((uint32_t)UNC_KT_PORT);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
int ret = KtdomianObj.SetOperStatus(db_conn,UNC_DT_STATE,&k,(UpplDomainOperStatus)0);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
-TEST_F(KtClassTest, SetOperStatus_005) {
+
+TEST_F(DomainTest, SetOperStatus_005) {
key_ctr_domain_t k;
memset(k.ctr_key.controller_name, '\0', 32);
memcpy(k.ctr_key.controller_name, pkctrName1, strlen(pkctrName1));
memset(k.domain_name, '\0', sizeof(k.domain_name));
memcpy(k.domain_name, pkDomainName2, strlen(pkDomainName2));
- unc::tclib::TcLibModule::stub_setTCApiCommonRetcode(TcLibModule::REGISTER, TC_API_COMMON_SUCCESS);
- unc::uppl::PhysicalLayer *physical_layer = unc::uppl::PhysicalLayer::get_instance();
- physical_layer->init();
Kt_Ctr_Domain KtdomianObj;
OdbcmConnectionHandler *db_conn =NULL;
ServerSession ser_evt;
- ServerSession::clearStubData();
- int err;
ser_evt.stub_setAddOutput((uint32_t)UNC_OP_UPDATE);
ser_evt.stub_setAddOutput((uint32_t)UNC_DT_STATE);
ser_evt.stub_setAddOutput((uint32_t)UNC_KT_CTR_DOMAIN);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
int ret = KtdomianObj.SetOperStatus(db_conn,UNC_DT_STATE,&k,(UpplDomainOperStatus)0);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
+
// GetOperStatus ODBC returns failure
-TEST_F(KtClassTest, GetOperStatus_001) {
+TEST_F(DomainTest, GetOperStatus_001) {
key_ctr_domain_t k;
memset(k.ctr_key.controller_name, '\0', 32);
uint8_t op_status;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_FAILED);
int ret = KtdomianObj.GetOperStatus(db_conn,UNC_DT_STATE,&k,op_status);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_GET);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_GET, ret);
}
+
// GetOperStatus ODBC returns SUCCESS
-TEST_F(KtClassTest, GetOperStatus_002) {
+TEST_F(DomainTest, GetOperStatus_002) {
key_ctr_domain_t k;
memset(k.ctr_key.controller_name, '\0', 32);
uint8_t op_status;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
int ret = KtdomianObj.GetOperStatus(db_conn,UNC_DT_STATE,&k,op_status);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
+
// HandleOperStatus with NULL keystruct
-TEST_F(KtClassTest, HandleOperStatus_01) {
+TEST_F(DomainTest, HandleOperStatus_01) {
key_ctr_domain_t *k;
val_ctr_domain v;
k = NULL;
Kt_Ctr_Domain KtdomianObj;
OdbcmConnectionHandler *db_conn =NULL;
- uint8_t op_status;
int ret = KtdomianObj.HandleOperStatus(db_conn,UNC_DT_STATE,k,&v);
- EXPECT_EQ(ret,UPPL_RC_ERR_BAD_REQUEST);
+ EXPECT_EQ(UPPL_RC_ERR_BAD_REQUEST, ret);
}
// HandleOperStatus
-TEST_F(KtClassTest, HandleOperStatus_02) {
+TEST_F(DomainTest, HandleOperStatus_02) {
key_ctr_domain_t k;
val_ctr_domain v;
v.type = 1;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
int ret = KtdomianObj.HandleOperStatus(db_conn,UNC_DT_STATE,&k,&v);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_UPDATE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_UPDATE, ret);
}
// HandleOperStatus Controller oper_status retunrs failure
-TEST_F(KtClassTest, HandleOperStatus_03) {
+TEST_F(DomainTest, HandleOperStatus_03) {
key_ctr_domain_t k;
val_ctr_domain v;
v.type = 1;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_FAILED);
int ret = KtdomianObj.HandleOperStatus(db_conn,UNC_DT_STATE,&k,&v);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_UPDATE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_UPDATE, ret);
}
// HandleDriverAlarms with unsupported alarm type
-TEST_F(KtClassTest, HandleDriverAlarms_01) {
+TEST_F(DomainTest, HandleDriverAlarms_01) {
key_ctr_domain_t k;
val_ctr_domain v;
uint32_t alarm_type = UNC_FLOW_ENT_FULL;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_FAILED);
int ret = KtdomianObj.HandleDriverAlarms(db_conn,UNC_DT_STATE,alarm_type,oper_type,&k,&v);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// HandleDriverAlarms with UNC_COREDOMAIN_SPLIT alarm type
-TEST_F(KtClassTest, HandleDriverAlarms_02) {
+TEST_F(DomainTest, HandleDriverAlarms_02) {
key_ctr_domain_t k;
val_ctr_domain v;
memset(k.ctr_key.controller_name, '\0', 32);
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_FAILED);
int ret = KtdomianObj.HandleDriverAlarms(db_conn,UNC_DT_STATE,alarm_type,oper_type,&k,&v);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_GET);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_GET, ret);
}
// HandleDriverAlarms with oper_type UNC_OP_CREATE
-TEST_F(KtClassTest, HandleDriverAlarms_03) {
+TEST_F(DomainTest, HandleDriverAlarms_03) {
key_ctr_domain_t k;
val_ctr_domain v;
memset(k.ctr_key.controller_name, '\0', 32);
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
int ret = KtdomianObj.HandleDriverAlarms(db_conn,UNC_DT_STATE,alarm_type,oper_type,&k,&v);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// HandleDriverAlarms with oper_type UNC_OP_DELETE
-TEST_F(KtClassTest, HandleDriverAlarms_04) {
+TEST_F(DomainTest, HandleDriverAlarms_04) {
key_ctr_domain_t k;
val_ctr_domain v;
memset(k.ctr_key.controller_name, '\0', 32);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
int ret = KtdomianObj.HandleDriverAlarms(db_conn,UNC_DT_STATE,alarm_type,oper_type,&k,&v);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// PerformSemanticValidation with oper_type UNC_OP_CREATE
-TEST_F(KtClassTest, PerformSemanticValidation_01) {
+TEST_F(DomainTest, PerformSemanticValidation_01) {
key_ctr_domain_t k;
val_ctr_domain v;
memset(k.ctr_key.controller_name, '\0', 32);
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);
int ret = KtdomianObj.PerformSemanticValidation(db_conn, &k, &v, oper_type, UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_INSTANCE_EXISTS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_INSTANCE_EXISTS, ret);
}
// PerformSemanticValidation with oper_type UNC_OP_CREATE
-TEST_F(KtClassTest, PerformSemanticValidation_02) {
+TEST_F(DomainTest, PerformSemanticValidation_02) {
key_ctr_domain_t k;
val_ctr_domain v;
memset(k.ctr_key.controller_name, '\0', 32);
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_CONNECTION_ERROR);
int ret = KtdomianObj.PerformSemanticValidation(db_conn, &k, &v, oper_type, UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
// PerformSemanticValidation with oper_type UNC_OP_CREATE
-TEST_F(KtClassTest, PerformSemanticValidation_03) {
+TEST_F(DomainTest, PerformSemanticValidation_03) {
key_ctr_domain_t k;
val_ctr_domain v;
memset(k.ctr_key.controller_name, '\0', 32);
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_TRANSACTION_ERROR);
int ret = KtdomianObj.PerformSemanticValidation(db_conn, &k, &v, oper_type, UNC_DT_IMPORT);
- EXPECT_EQ(ret,UPPL_RC_ERR_PARENT_DOES_NOT_EXIST);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_PARENT_DOES_NOT_EXIST, ret);
}
// PerformSemanticValidation with oper_type UNC_OP_READ
-TEST_F(KtClassTest, PerformSemanticValidation_04) {
+TEST_F(DomainTest, PerformSemanticValidation_04) {
key_ctr_domain_t k;
val_ctr_domain v;
memset(k.ctr_key.controller_name, '\0', 32);
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);
int ret = KtdomianObj.PerformSemanticValidation(db_conn, &k, &v, oper_type, UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// PerformSemanticValidation with oper_type UNC_OP_UPDATE
-TEST_F(KtClassTest, PerformSemanticValidation_05) {
+TEST_F(DomainTest, PerformSemanticValidation_05) {
key_ctr_domain_t k;
val_ctr_domain v;
memset(k.ctr_key.controller_name, '\0', 32);
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_CONNECTION_ERROR);
int ret = KtdomianObj.PerformSemanticValidation(db_conn, &k, &v, oper_type, UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
// PerformSemanticValidation with oper_type UNC_OP_DELETE
-TEST_F(KtClassTest, PerformSemanticValidation_06) {
+TEST_F(DomainTest, PerformSemanticValidation_06) {
key_ctr_domain_t k;
val_ctr_domain v;
memset(k.ctr_key.controller_name, '\0', 32);
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_QUERY_TIMEOUT);
int ret = KtdomianObj.PerformSemanticValidation(db_conn, &k, &v, oper_type, UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_NO_SUCH_INSTANCE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
}
// ReadBulkInternal with max_count zero
-TEST_F(KtClassTest, ReadBulkInternal_01) {
+TEST_F(DomainTest, ReadBulkInternal_01) {
key_ctr_domain_t k;
vector<val_ctr_domain_st> vect_val_ctr_domain_st;
vector<key_ctr_domain> vect_domain_id;
Kt_Ctr_Domain KtdomianObj;
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtdomianObj.ReadBulkInternal(db_conn, &k, UNC_DT_STATE, max_rep_ct, vect_val_ctr_domain_st, vect_domain_id);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// ReadBulkInternal with read_db_status ODBCM_RC_RECORD_NOT_FOUND
-TEST_F(KtClassTest, ReadBulkInternal_02) {
+TEST_F(DomainTest, ReadBulkInternal_02) {
key_ctr_domain_t k;
vector<val_ctr_domain_st> vect_val_ctr_domain_st;
vector<key_ctr_domain> vect_domain_id;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_RECORD_NOT_FOUND);
int ret = KtdomianObj.ReadBulkInternal(db_conn, &k, UNC_DT_STATE, max_rep_ct, vect_val_ctr_domain_st, vect_domain_id);
- EXPECT_EQ(ret,UPPL_RC_ERR_NO_SUCH_INSTANCE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
}
// ReadBulkInternal with read_db_status ODBCM_RC_CONNECTION_ERROR
-TEST_F(KtClassTest, ReadBulkInternal_03) {
+TEST_F(DomainTest, ReadBulkInternal_03) {
key_ctr_domain_t k;
vector<val_ctr_domain_st> vect_val_ctr_domain_st;
vector<key_ctr_domain> vect_domain_id;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_CONNECTION_ERROR);
int ret = KtdomianObj.ReadBulkInternal(db_conn, &k, UNC_DT_STATE, max_rep_ct, vect_val_ctr_domain_st, vect_domain_id);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
// ReadBulkInternal with read_db_status ODBCM_RC_TABLE_NOT_FOUND
-TEST_F(KtClassTest, ReadBulkInternal_04) {
+TEST_F(DomainTest, ReadBulkInternal_04) {
key_ctr_domain_t k;
vector<val_ctr_domain_st> vect_val_ctr_domain_st;
vector<key_ctr_domain> vect_domain_id;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_TABLE_NOT_FOUND);
int ret = KtdomianObj.ReadBulkInternal(db_conn, &k, UNC_DT_STATE, max_rep_ct,
vect_val_ctr_domain_st, vect_domain_id);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_GET);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_GET, ret);
}
// ReadBulkInternal with read_db_status ODBCM_RC_SUCCESS
-TEST_F(KtClassTest, ReadBulkInternal_05) {
+TEST_F(DomainTest, ReadBulkInternal_05) {
key_ctr_domain_t k;
vector<val_ctr_domain_st> vect_val_ctr_domain_st;
vector<key_ctr_domain> vect_domain_id;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_SUCCESS);
int ret = KtdomianObj.ReadBulkInternal(db_conn, &k, UNC_DT_STATE, max_rep_ct,
vect_val_ctr_domain_st, vect_domain_id);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// ReadBulk with get_controller_type returns failure
// MEM
-TEST_F(KtClassTest, ReadBulk_02) {
+TEST_F(DomainTest, ReadBulk_02) {
key_ctr_domain_t k;
int child_index = 2;
pfc_bool_t parent_call = true;
pfc_bool_t is_read_next = false;
- ReadRequest *read_req = new ReadRequest;
+ ReadRequest read_req;
uint32_t max_rep_ct = 4;
memset(k.ctr_key.controller_name, '\0', 32);
memcpy(k.ctr_key.controller_name, pkctrName1, strlen(pkctrName1));
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_SUCCESS);
int ret = KtdomianObj.ReadBulk(db_conn, &k, UNC_DT_CANDIDATE, max_rep_ct,
- child_index, parent_call,is_read_next, read_req);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ child_index, parent_call,is_read_next,
+ &read_req);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// ReadBulk with data type UNC_DT_IMPORT
-TEST_F(KtClassTest, ReadBulk_01) {
+TEST_F(DomainTest, ReadBulk_01) {
key_ctr_domain_t k;
int child_index = 0;
pfc_bool_t parent_call = true;
pfc_bool_t is_read_next = false;
- ReadRequest *read_req;
+ ReadRequest read_req;
uint32_t max_rep_ct = 4;
memset(k.ctr_key.controller_name, '\0', 32);
memcpy(k.ctr_key.controller_name, pkctrName1, strlen(pkctrName1));
Kt_Ctr_Domain KtdomianObj;
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtdomianObj.ReadBulk(db_conn, &k, UNC_DT_IMPORT, max_rep_ct,
- child_index, parent_call,is_read_next, read_req);
- EXPECT_EQ(ret,UPPL_RC_ERR_OPERATION_NOT_ALLOWED);
- unc::uppl::ODBCManager::clearStubData();
+ child_index, parent_call,is_read_next, &read_req);
+ EXPECT_EQ(UPPL_RC_ERR_OPERATION_NOT_ALLOWED, ret);
}
// DeleteKeyInstance with data type UNC_DT_RUNNING
-TEST_F(KtClassTest, DeleteKeyInstance_01) {
+TEST_F(DomainTest, DeleteKeyInstance_01) {
key_ctr_domain_t k;
uint32_t key_type = 0;
memset(k.ctr_key.controller_name, '\0', 32);
OdbcmConnectionHandler *db_conn =NULL;
//unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_SUCCESS);
int ret = KtdomianObj.DeleteKeyInstance(db_conn, &k, UNC_DT_RUNNING, key_type);
- EXPECT_EQ(ret,UPPL_RC_ERR_OPERATION_NOT_ALLOWED);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_OPERATION_NOT_ALLOWED, ret);
}
// DeleteKeyInstance with out child
-TEST_F(KtClassTest, DeleteKeyInstance_02) {
+TEST_F(DomainTest, DeleteKeyInstance_02) {
key_ctr_domain_t k;
uint32_t key_type = 0;
memset(k.ctr_key.controller_name, '\0', 32);
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_ROW_NOT_EXISTS);
int ret = KtdomianObj.DeleteKeyInstance(db_conn, &k, UNC_DT_CANDIDATE, key_type);
- EXPECT_EQ(ret,UPPL_RC_ERR_NO_SUCH_INSTANCE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
}
// DeleteKeyInstance with out child
-TEST_F(KtClassTest, DeleteKeyInstance_03) {
+TEST_F(DomainTest, DeleteKeyInstance_03) {
key_ctr_domain_t k;
uint32_t key_type = 0;
memset(k.ctr_key.controller_name, '\0', 32);
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_ROW_NOT_EXISTS);
int ret = KtdomianObj.DeleteKeyInstance(db_conn, &k, UNC_DT_IMPORT, key_type);
- EXPECT_EQ(ret,UPPL_RC_ERR_NO_SUCH_INSTANCE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
}
// DeleteKeyInstance with out child
-TEST_F(KtClassTest, DeleteKeyInstance_04) {
+TEST_F(DomainTest, DeleteKeyInstance_04) {
key_ctr_domain_t k;
uint32_t key_type = 0;
memset(k.ctr_key.controller_name, '\0', 32);
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_TRANSACTION_ERROR);
int ret = KtdomianObj.DeleteKeyInstance(db_conn, &k, UNC_DT_IMPORT, key_type);
- EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SEMANTIC);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SEMANTIC, ret);
}
// DeleteKeyInstance suceess
-TEST_F(KtClassTest, DeleteKeyInstance_05) {
+TEST_F(DomainTest, DeleteKeyInstance_05) {
key_ctr_domain_t k;
uint32_t key_type = 0;
memset(k.ctr_key.controller_name, '\0', 32);
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_SUCCESS);
int ret = KtdomianObj.DeleteKeyInstance(db_conn, &k, UNC_DT_IMPORT, key_type);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// FreeChildKeyStruct invalid index
-TEST_F(KtClassTest, FreeChildKeyStruct_01) {
- key_ctr_domain_t k;
+TEST_F(DomainTest, FreeChildKeyStruct_01) {
+ key_ctr_domain_t *k(new key_ctr_domain_t);
int child_class = 1;
Kt_Ctr_Domain KtdomianObj;
- OdbcmConnectionHandler *db_conn =NULL;
int ret = UPPL_RC_SUCCESS;
- KtdomianObj.FreeChildKeyStruct(child_class, &k);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
+ KtdomianObj.FreeChildKeyStruct(child_class, k);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// FreeChildKeyStruct suceess
-TEST_F(KtClassTest, FreeChildKeyStruct_02) {
+TEST_F(DomainTest, FreeChildKeyStruct_02) {
void *key = new key_logical_port_t;
int child_class = 0;
Kt_Ctr_Domain KtdomianObj;
- OdbcmConnectionHandler *db_conn =NULL;
int ret = UPPL_RC_SUCCESS;
KtdomianObj.FreeChildKeyStruct(child_class, key);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// InvokeBoundaryNotifyOperStatus suceess
-TEST_F(KtClassTest, InvokeBoundaryNotifyOperStatus_01) {
+TEST_F(DomainTest, InvokeBoundaryNotifyOperStatus_01) {
key_ctr_domain_t k;
- uint32_t key_type = 0;
memset(k.ctr_key.controller_name, '\0', 32);
memcpy(k.ctr_key.controller_name, pkctrName1, strlen(pkctrName1));
memset(k.domain_name, '\0', sizeof(k.domain_name));
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_SUCCESS);
int ret = KtdomianObj.InvokeBoundaryNotifyOperStatus(db_conn, UNC_DT_IMPORT, &k);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// PerformRead invalid option and session failure
-TEST_F(KtClassTest, PerformRead_01) {
+TEST_F(DomainTest, PerformRead_01) {
key_ctr_domain_t k;
val_ctr_domain v;
uint32_t session_id = 1;
memset(v.description, '\0', 128);
v.valid[kIdxDomainDescription] = 0;
Kt_Ctr_Domain KtdomianObj;
- ServerSession::clearStubData();
ServerSession ses;
ses.stub_setAddOutput((uint32_t)configuration_id);
ses.stub_setAddOutput((uint32_t)session_id);
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtdomianObj.PerformRead(db_conn,session_id,configuration_id,&k,&v,UNC_DT_CANDIDATE,operation_type,
ses, option1, option2,max_rep_ct);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
// PerformRead invalid option
-TEST_F(KtClassTest, PerformRead_02) {
+TEST_F(DomainTest, PerformRead_02) {
key_ctr_domain_t k;
val_ctr_domain v;
uint32_t session_id = 1;
memset(v.description, '\0', 128);
v.valid[kIdxDomainDescription] = 0;
Kt_Ctr_Domain KtdomianObj;
- ServerSession::clearStubData();
ServerSession ses;
ses.stub_setAddOutput((uint32_t)configuration_id);
ses.stub_setAddOutput((uint32_t)session_id);
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtdomianObj.PerformRead(db_conn,session_id,configuration_id,&k,&v,UNC_DT_CANDIDATE,operation_type,
ses, option1, option2,max_rep_ct);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// PerformRead invalid data type and session failure
-TEST_F(KtClassTest, PerformRead_03) {
+TEST_F(DomainTest, PerformRead_03) {
key_ctr_domain_t k;
val_ctr_domain v;
uint32_t session_id = 1;
memset(v.description, '\0', 128);
v.valid[kIdxDomainDescription] = 0;
Kt_Ctr_Domain KtdomianObj;
- ServerSession::clearStubData();
ServerSession ses;
ses.stub_setAddOutput((uint32_t)configuration_id);
ses.stub_setAddOutput((uint32_t)session_id);
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtdomianObj.PerformRead(db_conn,session_id,configuration_id,&k,&v,UNC_DT_AUDIT,operation_type,
ses, option1, option2,max_rep_ct);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
// PerformRead invalid data type
-TEST_F(KtClassTest, PerformRead_04) {
+TEST_F(DomainTest, PerformRead_04) {
key_ctr_domain_t k;
val_ctr_domain v;
uint32_t session_id = 1;
memset(v.description, '\0', 128);
v.valid[kIdxDomainDescription] = 0;
Kt_Ctr_Domain KtdomianObj;
- ServerSession::clearStubData();
ServerSession ses;
ses.stub_setAddOutput((uint32_t)configuration_id);
ses.stub_setAddOutput((uint32_t)session_id);
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtdomianObj.PerformRead(db_conn,session_id,configuration_id,&k,&v,UNC_DT_AUDIT,operation_type,
ses, option1, option2,max_rep_ct);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// PerformRead invalid data type
-TEST_F(KtClassTest, PerformRead_05) {
+TEST_F(DomainTest, PerformRead_05) {
key_ctr_domain_t k;
val_ctr_domain v;
uint32_t session_id = 1;
memset(v.description, '\0', 128);
v.valid[kIdxDomainDescription] = 0;
Kt_Ctr_Domain KtdomianObj;
- ServerSession::clearStubData();
ServerSession ses;
ses.stub_setAddOutput((uint32_t)configuration_id);
ses.stub_setAddOutput((uint32_t)session_id);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
int ret = KtdomianObj.PerformRead(db_conn,session_id,configuration_id,&k,&v,UNC_DT_CANDIDATE,operation_type,
ses, option1, option2,max_rep_ct);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
// PerformRead invalid data type
-TEST_F(KtClassTest, PerformRead_06) {
+TEST_F(DomainTest, PerformRead_06) {
key_ctr_domain_t k;
val_ctr_domain v;
uint32_t session_id = 1;
memset(v.description, '\0', 128);
v.valid[kIdxDomainDescription] = 0;
Kt_Ctr_Domain KtdomianObj;
- ServerSession::clearStubData();
ServerSession ses;
ses.stub_setAddOutput((uint32_t)configuration_id);
ses.stub_setAddOutput((uint32_t)session_id);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_CONNECTION_ERROR);
int ret = KtdomianObj.PerformRead(db_conn,session_id,configuration_id,&k,&v,UNC_DT_CANDIDATE,operation_type,
ses, option1, option2,max_rep_ct);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
// PerformRead invalid data type
-TEST_F(KtClassTest, PerformRead_07) {
+TEST_F(DomainTest, PerformRead_07) {
key_ctr_domain_t k;
val_ctr_domain v;
uint32_t session_id = 1;
memset(v.description, '\0', 128);
v.valid[kIdxDomainDescription] = 0;
Kt_Ctr_Domain KtdomianObj;
- ServerSession::clearStubData();
ServerSession ses;
ses.stub_setAddOutput((uint32_t)configuration_id);
ses.stub_setAddOutput((uint32_t)session_id);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
int ret = KtdomianObj.PerformRead(db_conn,session_id,configuration_id,&k,&v,UNC_DT_CANDIDATE,operation_type,
ses, option1, option2,max_rep_ct);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// ReadDomainValFromDB with operation type UNC_OP_INVALID
-TEST_F(KtClassTest, ReadDomainValFromDB_01) {
+TEST_F(DomainTest, ReadDomainValFromDB_01) {
key_ctr_domain_t k;
val_ctr_domain v;
v.type = 1;
memcpy(k.ctr_key.controller_name, pkctrName1, strlen(pkctrName1));
memset(k.domain_name, '\0', sizeof(k.domain_name));
memcpy(k.domain_name, pkDomainName2, strlen(pkDomainName2));
- uint32_t alarm_type = UNC_COREDOMAIN_SPLIT;
uint32_t oper_type = UNC_OP_INVALID;
vector<void *> obj_key_struct;
Kt_Ctr_Domain KtdomianObj;
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtdomianObj.ReadDomainValFromDB(db_conn,&k,&v,UNC_DT_CANDIDATE,oper_type,
max_rep_ct,vect_val_ctr_domain_st,domain_id);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// ReadDomainValFromDB with operation type UNC_OP_READ
-TEST_F(KtClassTest, ReadDomainValFromDB_02) {
+TEST_F(DomainTest, ReadDomainValFromDB_02) {
key_ctr_domain_t k;
val_ctr_domain v;
+ memset(&v, 0, sizeof(v));
v.type = 1;
v.valid[kIdxDomainType] = 1;
+
uint32_t max_rep_ct = 1;
vector<val_ctr_domain_st> vect_val_ctr_domain_st;
vector<key_ctr_domain> domain_id;
memcpy(k.ctr_key.controller_name, pkctrName1, strlen(pkctrName1));
memset(k.domain_name, '\0', sizeof(k.domain_name));
memcpy(k.domain_name, pkDomainName2, strlen(pkDomainName2));
- uint32_t alarm_type = UNC_COREDOMAIN_SPLIT;
uint32_t oper_type = UNC_OP_READ;
vector<void *> obj_key_struct;
Kt_Ctr_Domain KtdomianObj;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_RECORD_NOT_FOUND);
int ret = KtdomianObj.ReadDomainValFromDB(db_conn,&k,&v,UNC_DT_CANDIDATE,oper_type,
max_rep_ct,vect_val_ctr_domain_st,domain_id);
- EXPECT_EQ(ret,UPPL_RC_ERR_NO_SUCH_INSTANCE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
}
// ReadDomainValFromDB with operation type UNC_OP_READ_BULK
-TEST_F(KtClassTest, ReadDomainValFromDB_03) {
+TEST_F(DomainTest, ReadDomainValFromDB_03) {
key_ctr_domain_t k;
val_ctr_domain v;
+ memset(&v, 0, sizeof(v));
v.type = 1;
v.valid[kIdxDomainType] = 1;
+
uint32_t max_rep_ct = 1;
vector<val_ctr_domain_st> vect_val_ctr_domain_st;
vector<key_ctr_domain> domain_id;
memcpy(k.ctr_key.controller_name, pkctrName1, strlen(pkctrName1));
memset(k.domain_name, '\0', sizeof(k.domain_name));
memcpy(k.domain_name, pkDomainName2, strlen(pkDomainName2));
- uint32_t alarm_type = UNC_COREDOMAIN_SPLIT;
uint32_t oper_type = UNC_OP_READ_BULK;
vector<void *> obj_key_struct;
Kt_Ctr_Domain KtdomianObj;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_CONNECTION_ERROR);
int ret = KtdomianObj.ReadDomainValFromDB(db_conn,&k,&v,UNC_DT_CANDIDATE,oper_type,
max_rep_ct,vect_val_ctr_domain_st,domain_id);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
-TEST_F(KtClassTest, ReadDomainValFromDB_04) {
+TEST_F(DomainTest, ReadDomainValFromDB_04) {
key_ctr_domain_t k;
val_ctr_domain v;
+ memset(&v, 0, sizeof(v));
v.type = 1;
v.valid[kIdxDomainType] = 1;
+
uint32_t max_rep_ct = 1;
vector<val_ctr_domain_st> vect_val_ctr_domain_st;
vector<key_ctr_domain> domain_id;
memcpy(k.ctr_key.controller_name, pkctrName1, strlen(pkctrName1));
memset(k.domain_name, '\0', sizeof(k.domain_name));
memcpy(k.domain_name, pkDomainName2, strlen(pkDomainName2));
- uint32_t alarm_type = UNC_COREDOMAIN_SPLIT;
uint32_t oper_type = UNC_OP_READ_BULK;
vector<void *> obj_key_struct;
Kt_Ctr_Domain KtdomianObj;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_QUERY_TIMEOUT);
int ret = KtdomianObj.ReadDomainValFromDB(db_conn,&k,&v,UNC_DT_CANDIDATE,oper_type,
max_rep_ct,vect_val_ctr_domain_st,domain_id);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_GET);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_GET, ret);
}
-TEST_F(KtClassTest, ReadDomainValFromDB_05) {
+TEST_F(DomainTest, ReadDomainValFromDB_05) {
key_ctr_domain_t k;
val_ctr_domain v;
+ memset(&v, 0, sizeof(v));
v.type = 1;
v.valid[kIdxDomainType] = 1;
+
uint32_t max_rep_ct = 1;
vector<val_ctr_domain_st> vect_val_ctr_domain_st;
vector<key_ctr_domain> domain_id;
memcpy(k.ctr_key.controller_name, pkctrName1, strlen(pkctrName1));
memset(k.domain_name, '\0', sizeof(k.domain_name));
memcpy(k.domain_name, pkDomainName2, strlen(pkDomainName2));
- uint32_t alarm_type = UNC_COREDOMAIN_SPLIT;
uint32_t oper_type = UNC_OP_READ_BULK;
vector<void *> obj_key_struct;
Kt_Ctr_Domain KtdomianObj;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_SUCCESS);
int ret = KtdomianObj.ReadDomainValFromDB(db_conn,&k,&v,UNC_DT_CANDIDATE,oper_type,
max_rep_ct,vect_val_ctr_domain_st,domain_id);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
// GetChildClassPointer invalid index
-TEST_F(KtClassTest, GetChildClassPointer_01) {
+TEST_F(DomainTest, GetChildClassPointer_01) {
int KIndex = 1;
Kt_Ctr_Domain KtdomianObj;
- Kt_Base *child[KT_CTR_DOMAIN_CHILD_COUNT];
- //Kt_Base *base_obj;
- int ret = UPPL_RC_SUCCESS;
- child[KIndex] = KtdomianObj.GetChildClassPointer((KtDomainChildClass)KIndex);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
+ Kt_Base *child(KtdomianObj.GetChildClassPointer((KtDomainChildClass)KIndex));
+ ASSERT_TRUE(child == NULL);
}
// GetChildClassPointer suceess
-TEST_F(KtClassTest, GetChildClassPointer_02) {
+TEST_F(DomainTest, GetChildClassPointer_02) {
int KIndex = 0;
Kt_Ctr_Domain KtdomianObj;
- // Kt_Base *base_obj;
- Kt_Base *child[KT_CTR_DOMAIN_CHILD_COUNT];
- int ret = UPPL_RC_SUCCESS;
- child[KIndex] = KtdomianObj.GetChildClassPointer((KtDomainChildClass)KIndex);
- //delete child[KIndex];
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
+ Kt_Base *child(KtdomianObj.GetChildClassPointer((KtDomainChildClass)KIndex));
+ ASSERT_TRUE(child != NULL);
}
#include <pfc/ipc_client.h>
#include <pfc/ipc_pfcd.h>
#include <pfc/ipc_struct.h>
-#include "stub/ODBC/include/odbcm_mgr.hh"
-#include "physical_common_def.hh"
-#include "unc/uppl_common.h"
-#include "unc/keytype.h"
-#include "itc_kt_base.hh"
-#include "itc_kt_root.hh"
-#include "itc_kt_controller.hh"
-#include "itc_kt_ctr_domain.hh"
-#include "itc_kt_switch.hh"
-#include "itc_kt_port.hh"
-#include "itc_kt_link.hh"
-#include "itc_kt_boundary.hh"
-#include "itc_kt_logical_member_port.hh"
-#include "itc_kt_logicalport.hh"
-#include "ipct_util.hh"
-#include "itc_kt_logical_member_port.hh"
-#include "physicallayer.hh"
+#include <odbcm_mgr.hh>
+#include <physical_common_def.hh>
+#include <unc/uppl_common.h>
+#include <unc/keytype.h>
+#include <itc_kt_base.hh>
+#include <itc_kt_root.hh>
+#include <itc_kt_controller.hh>
+#include <itc_kt_ctr_domain.hh>
+#include <itc_kt_switch.hh>
+#include <itc_kt_port.hh>
+#include <itc_kt_link.hh>
+#include <itc_kt_boundary.hh>
+#include <itc_kt_logical_member_port.hh>
+#include <itc_kt_logicalport.hh>
+#include <ipct_util.hh>
+#include <itc_kt_logical_member_port.hh>
+#include <physicallayer.hh>
#include "PhysicalLayerStub.hh"
-#include "tclib_module.hh"
-#include "itc_read_request.hh"
+#include <tclib_module.hh>
+#include <itc_read_request.hh>
+#include "ut_util.hh"
using namespace pfc;
using namespace pfc::core;
using namespace pfc::core::ipc;
using namespace std;
+using namespace unc::uppl::test;
-ClientSession *cli_sess = NULL;
-ClientSession *cli_sess_notify = NULL;
-pfc_ipcid_t service = UPPL_SVC_CONFIGREQ;
-
-class KtClassTest : public testing::Test {
- protected:
-
- virtual void SetUp() {
- if(cli_sess == NULL) {
- pfc_ipcconn_t connp = 0;
- int err = pfc_ipcclnt_altopen(UPPL_IPC_CHN_NAME, &connp);
- //ASSERT_EQ(0, err);
- cli_sess = new ClientSession(connp, UPPL_IPC_SVC_NAME, service, err);
- //ASSERT_EQ(0, err);
- connp = 0;
- err = pfc_ipcclnt_altopen("phynwd", &connp);
- ASSERT_EQ(0, err); cli_sess = new ClientSession(connp, UPPL_IPC_SVC_NAME, service, err);
- // ASSERT_EQ(0, err);
- connp = 0;
- err = pfc_ipcclnt_altopen("phynwd", &connp);
- //ASSERT_EQ(0, err);
- cli_sess_notify = new ClientSession(connp, "sample2", 0, err);
-
- PhysicalLayerStub::loadphysicallayer();
- }
- }
- virtual void TearDown() {
- if (cli_sess != NULL) {
- cli_sess->cancel();
- delete cli_sess;
- cli_sess = NULL;
- }
- if (cli_sess_notify != NULL) {
- cli_sess_notify->cancel();
- delete cli_sess_notify;
- cli_sess_notify = NULL;
- }
- }
-
-
+class LinkTest
+ : public UpplTestEnv
+{
};
+
// Can be changed based on testing need
-char pkName1_ctr[] = "controller1";
-char pkName1_switchid1[] = "{0x10,0xbc}";
-char pkName1_portid1[] = "controller1 port";
-char pkName1_switchid2[] = "{0x11,0xab}";
-char pkName1_portid2[] = "controller1 port 4";
-char pkName2_ctr[] = "controller2";
-char pkName2_switchid1[] = "{0x12,0xdb}";
-char pkName2_portid1[] = "controller2 port 3";
-char pkName2_switchid2[] = "{0x21,0xcb}";
-char pkName2_portid2[] = "controller2 port 5";
-char pkName3_ctr[] = "controller3";
-char pkName3_switchid1[] = "{0x23,0xab}";
-char pkName3_portid1[] = "controller3 port";
-char pkName3_switchid2[] = "{0x11,0xcb}";
-char pkName3_portid2[] = "controller3 port 5";
-char pkName4_ctr[] = "";
-char pkName4_switchid1[] = "";
-char pkName4_portid1[] = "";
-char pkName4_switchid2[] = "";
-char pkName4_portid2[] = "";
-char pkName5_ctr[] = "NotExisting";
-char pkName5_switchid1[] = "NotExisting";
-char pkName5_portid1[] = "NotExisting";
-char pkName5_switchid2[] = "NotExisting";
-char pkName5_portid2[] = "NotExisting";
-
-void getKeyForKtLink1(key_link_t& k,std::vector<string>& sw_vect_key_value) {
+static char pkName1_ctr[] = "controller1";
+static char pkName1_switchid1[] = "{0x10,0xbc}";
+static char pkName1_portid1[] = "controller1 port";
+static char pkName1_switchid2[] = "{0x11,0xab}";
+static char pkName1_portid2[] = "controller1 port 4";
+static char pkName4_ctr[] = "";
+static char pkName4_switchid1[] = "";
+static char pkName4_portid1[] = "";
+static char pkName4_switchid2[] = "";
+static char pkName4_portid2[] = "";
+
+static void getKeyForKtLink1(key_link_t& k,
+ std::vector<string>& sw_vect_key_value) {
memset(k.ctr_key.controller_name, '\0', 32);
memcpy(k.ctr_key.controller_name, pkName1_ctr, strlen(pkName1_ctr));
memset(k.switch_id1, '\0', 256);
}
-void getKeyForKtLink1(key_link_t& k) {
+static void getKeyForKtLink1(key_link_t& k) {
memset(k.ctr_key.controller_name, '\0', 32);
memcpy(k.ctr_key.controller_name, pkName1_ctr, strlen(pkName1_ctr));
memset(k.switch_id1, '\0', 256);
memcpy(k.port_id2, pkName1_portid2, strlen(pkName1_portid2));
}
+static void getValForKtLink1(val_link_st_t& v) {
+ // uint8_t description[128];
+ memset(v.link.description, '\0', 128);
+ memcpy(v.link.description, "linkdescription", strlen("linkdescription"));
-
-void getKeyForKtLink2(key_link_t& k) {
- memset(k.ctr_key.controller_name, '\0', 32);
- memcpy(k.ctr_key.controller_name, pkName2_ctr, strlen(pkName2_ctr));
- memset(k.switch_id1, '\0', 256);
- memcpy(k.switch_id1, pkName2_switchid1, strlen(pkName2_switchid1));
- memset(k.port_id1, '\0', 32);
- memcpy(k.port_id1, pkName2_portid1, strlen(pkName2_portid1));
- memset(k.switch_id2, '\0', 256);
- memcpy(k.switch_id2, pkName2_switchid2, strlen(pkName2_switchid2));
- memset(k.port_id2, '\0', 32);
- memcpy(k.port_id2, pkName2_portid2, strlen(pkName2_portid2));
-}
-
-void getKeyForKtLink3(key_link_t& k) {
- memset(k.ctr_key.controller_name, '\0', 32);
- memcpy(k.ctr_key.controller_name, pkName3_ctr, strlen(pkName3_ctr));
- memset(k.switch_id1, '\0', 256);
- memcpy(k.switch_id1, pkName3_switchid1, strlen(pkName3_switchid1));
- memset(k.port_id1, '\0', 32);
- memcpy(k.port_id1, pkName3_portid1, strlen(pkName3_portid1));
- memset(k.switch_id2, '\0', 256);
- memcpy(k.switch_id2, pkName3_switchid2, strlen(pkName3_switchid2));
- memset(k.port_id2, '\0', 32);
- memcpy(k.port_id2, pkName3_portid2, strlen(pkName3_portid2));
-}
-
-void getKeyForKtLink4(key_link_t& k) {
- memset(k.ctr_key.controller_name, '\0', 32);
- memcpy(k.ctr_key.controller_name, pkName4_ctr, strlen(pkName4_ctr));
- memset(k.switch_id1, '\0', 256);
- memcpy(k.switch_id1, pkName4_switchid1, strlen(pkName4_switchid1));
- memset(k.port_id1, '\0', 32);
- memcpy(k.port_id1, pkName4_portid1, strlen(pkName4_portid1));
- memset(k.switch_id2, '\0', 256);
- memcpy(k.switch_id2, pkName4_switchid2, strlen(pkName4_switchid2));
- memset(k.port_id2, '\0', 32);
- memcpy(k.port_id2, pkName4_portid2, strlen(pkName4_portid2));
-}
-
-void getKeyForKtLink5(key_link_t& k) {
- memset(k.ctr_key.controller_name, '\0', 32);
- memcpy(k.ctr_key.controller_name, pkName5_ctr, strlen(pkName5_ctr));
- memset(k.switch_id1, '\0', 256);
- memcpy(k.switch_id1, pkName5_switchid1, strlen(pkName5_switchid1));
- memset(k.port_id1, '\0', 32);
- memcpy(k.port_id1, pkName5_portid1, strlen(pkName5_portid1));
- memset(k.switch_id2, '\0', 256);
- memcpy(k.switch_id2, pkName5_switchid2, strlen(pkName5_switchid2));
- memset(k.port_id2, '\0', 32);
- memcpy(k.port_id2, pkName5_portid2, strlen(pkName5_portid2));
-}
-void getValForKtLink1(val_link_st_t& v) {
- memset(v.link.description, '\0', 128);
- memcpy(v.link.description, "linkdescription", strlen("linkdescription"));
- // uint8_t description[128];
// uint8_t oper_status
v.oper_status = 0;
- memset(v.valid, 1, 2); // uint8_t valid[2];
+
+ // uint8_t valid[2];
+ memset(v.valid, 1, 2);
}
-void getKeyForLinkNoKeyNotify(key_link_t& k) {
+static void getKeyForLinkNoKeyNotify(key_link_t& k) {
memset(k.ctr_key.controller_name, '\0', 32);
memcpy(k.ctr_key.controller_name, pkName4_ctr, strlen(pkName4_ctr));
memset(k.switch_id1, '\0', 256);
memcpy(k.port_id2, pkName4_portid2, strlen(pkName4_portid2));
}
-void getKeyForLinkNotify(key_link_t& k) {
- memset(k.ctr_key.controller_name, '\0', 32);
- memcpy(k.ctr_key.controller_name, pkName5_ctr, strlen(pkName5_ctr));
- memset(k.switch_id1, '\0', 256);
- memcpy(k.switch_id1, pkName5_switchid1, strlen(pkName5_switchid1));
- memset(k.port_id1, '\0', 32);
- memcpy(k.port_id1, pkName5_portid1, strlen(pkName5_portid1));
- memset(k.switch_id2, '\0', 256);
- memcpy(k.switch_id2, pkName5_switchid2, strlen(pkName5_switchid2));
- memset(k.port_id2, '\0', 32);
- memcpy(k.port_id2, pkName5_portid2, strlen(pkName5_portid2));
-}
-
-void getNewValForLinkNotify(val_link_st_t& v) {
- uint32_t VALID = 1;
- memcpy(v.link.description, "link description", 13);
- // uint8_t description[128];
- v.link.description[13] = '\0';
- v.oper_status = 1;
- memset(v.valid, VALID, 7); // uint8_t valid[7];
- memset(v.link.valid, VALID, 5);
-}
-
-void getOldValForLinkNotify(val_link_st_t& v) {
- uint32_t VALID = 1;
- memcpy(v.link.description, "link description", 13);
- // uint8_t description[128];
- v.link.description[13] = '\0';
- v.oper_status = 1;
- memset(v.valid, VALID, 7); // uint8_t valid[7];
- memset(v.link.valid, VALID, 5);
-}
-
-void getInvalidValForKtLink1(val_link_st_t& v) {
- memset(v.link.description, '\0', 128);
- memcpy(v.link.description, "link description", strlen("link description"));
- // uint8_t description[128];
- v.oper_status = 1;
- memset(v.valid, '1', 12); // uint8_t valid[12];
-}
-
-void getNewValForLink(val_link_st& v) {
- memcpy(v.link.description, "link descr", 10);
- v.link.description[10] = '\0';
- v.oper_status = 1;
- memset(v.link.valid, VALID, 8);
-}
-
-void getOldValForLink(val_link_st_t& v) {
- memcpy(v.link.description, "link descr", 10);
- v.link.description[10] = '\0';
- v.oper_status = 2;
- memset(v.link.valid, VALID, 8);
-}
-
-int compare(val_link_st_t v1, val_link_st_t v2) {
- if (strcmp(reinterpret_cast<char *>(v1.link.description),
- reinterpret_cast<char *>(v2.link.description)))
- // return 1;
- if (v1.valid!= v2.valid)
- return 1;
- return 0;
-}
-
-void getReqHeader(physical_request_header& rh, unc_keytype_operation_t opern,
- unc_keytype_datatype_t dtype) {
+static void getReqHeader(physical_request_header& rh,
+ unc_keytype_operation_t opern,
+ unc_keytype_datatype_t dtype) {
rh.client_sess_id = 1;
rh.config_id = 1;
rh.operation = opern;
rh.key_type = UNC_KT_LINK;
}
-int sessOutReqHeader(ClientSession *cli_sess, physical_request_header rh) {
- int err = cli_sess->addOutput(rh.client_sess_id);
- err |= cli_sess->addOutput(rh.config_id);
- err |= cli_sess->addOutput(rh.operation);
- err |= cli_sess->addOutput(rh.max_rep_count);
- err |= cli_sess->addOutput(rh.option1);
- err |= cli_sess->addOutput(rh.option2);
- err |= cli_sess->addOutput(rh.data_type);
- err |= cli_sess->addOutput(rh.key_type);
- return err;
-}
-
-
-int sessGetRespHeader(ClientSession *cli_sess, physical_response_header& rsh) {
- int err = cli_sess->getResponse(0, rsh.client_sess_id);
- err |= cli_sess->getResponse(1, rsh.config_id);
- err |= cli_sess->getResponse(2, rsh.operation);
- err |= cli_sess->getResponse(3, rsh.max_rep_count);
- err |= cli_sess->getResponse(4, rsh.option1);
- err |= cli_sess->getResponse(5, rsh.option2);
- err |= cli_sess->getResponse(6, rsh.data_type);
- err |= cli_sess->getResponse(7, rsh.result_code);
- return err;
-}
-
-TEST_F(KtClassTest, PerformSyntxCheck_01) {
+TEST_F(LinkTest, PerformSyntxCheck_01) {
key_link_t k;
val_link_st v;
+ memset(&v, 0, sizeof(v));
Kt_Link ktlinkobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.link.valid, '\0', sizeof(v.link.valid));
physical_request_header rh;
getKeyForKtLink1(k);
getReqHeader(rh, UNC_OP_READ, UNC_DT_STATE);
uint32_t operation = UNC_OP_CREATE;
int ret = ktlinkobj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
+
//Key Empty
-TEST_F(KtClassTest, PerformSyntxCheck_02) {
+TEST_F(LinkTest, PerformSyntxCheck_02) {
key_link_t k;
val_link_st v;
Kt_Link ktlinkobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.link.valid, '\0', sizeof(v.link.valid));
+ memset(&v, 0, sizeof(v));
+ getKeyForKtLink1(k);
+
physical_request_header rh;
- //getKeyForKtLink1(k);
getReqHeader(rh, UNC_OP_READ_SIBLING_COUNT, UNC_DT_STATE);
uint32_t operation = UNC_OP_CREATE;
OdbcmConnectionHandler *db_conn =NULL;
int ret = ktlinkobj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
//indfividual Attributes havin mepty values
-TEST_F(KtClassTest, PerformSyntxCheck_03) {
+TEST_F(LinkTest, PerformSyntxCheck_03) {
key_link_t k;
val_link_st v;
OdbcmConnectionHandler *db_conn =NULL;
int ret = ktlinkobj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SYNTAX);
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SYNTAX, ret);
}
//Setting controller name as empty
-TEST_F(KtClassTest, PerformSyntxCheck_04) {
+TEST_F(LinkTest, PerformSyntxCheck_04) {
key_link_t k;
val_link_st v;
OdbcmConnectionHandler *db_conn =NULL;
int ret = ktlinkobj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SYNTAX);
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SYNTAX, ret);
}
//Setting switchID1 name as empty
-TEST_F(KtClassTest, PerformSyntxCheck_05) {
+TEST_F(LinkTest, PerformSyntxCheck_05) {
key_link_t k;
val_link_st v;
OdbcmConnectionHandler *db_conn =NULL;
int ret = ktlinkobj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SYNTAX);
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SYNTAX, ret);
}
//Setting switchID2 name as empty
-TEST_F(KtClassTest, PerformSyntxCheck_06) {
+TEST_F(LinkTest, PerformSyntxCheck_06) {
key_link_t k;
val_link_st v;
OdbcmConnectionHandler *db_conn =NULL;
int ret = ktlinkobj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SYNTAX);
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SYNTAX, ret);
}
//Setting portID1 name as empty
-TEST_F(KtClassTest, PerformSyntxCheck_07) {
+TEST_F(LinkTest, PerformSyntxCheck_07) {
key_link_t k;
val_link_st v;
OdbcmConnectionHandler *db_conn =NULL;
int ret = ktlinkobj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SYNTAX);
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SYNTAX, ret);
}
//Setting portID2 name as empty
-TEST_F(KtClassTest, PerformSyntxCheck_08) {
+TEST_F(LinkTest, PerformSyntxCheck_08) {
key_link_t k;
val_link_st v;
OdbcmConnectionHandler *db_conn =NULL;
int ret = ktlinkobj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SYNTAX);
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SYNTAX, ret);
}
//Setting description as empty
-TEST_F(KtClassTest, PerformSyntxCheck_09) {
+TEST_F(LinkTest, PerformSyntxCheck_09) {
key_link_t k;
val_link_st v;
OdbcmConnectionHandler *db_conn =NULL;
int ret = ktlinkobj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
- //EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SYNTAX);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
+ //EXPECT_EQ(UPPL_RC_ERR_CFG_SYNTAX, ret);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
//Setting description length more than 128
-TEST_F(KtClassTest, PerformSyntxCheck_10) {
+TEST_F(LinkTest, PerformSyntxCheck_10) {
key_link_t k;
val_link_st v;
int ret = ktlinkobj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
//Setting oper status as invalid
-TEST_F(KtClassTest, PerformSyntxCheck_11) {
+TEST_F(LinkTest, PerformSyntxCheck_11) {
key_link_t k;
val_link_st v;
int ret = ktlinkobj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
//key as Empty
-TEST_F(KtClassTest, Link_IsKeyExists_01) {
+TEST_F(LinkTest, Link_IsKeyExists_01) {
key_link_t k;
- val_link_st v;
Kt_Link ktlinkobj;
getKeyForKtLink1(k);
vector<string> sw_vect_key_value;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);
int ret = ktlinkobj.IsKeyExists(db_conn,UNC_DT_STATE,sw_vect_key_value);
- EXPECT_EQ(ret,UPPL_RC_ERR_BAD_REQUEST);
- ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_BAD_REQUEST, ret);
}
-TEST_F(KtClassTest, Link_IsKeyExists_FailureIsrowexist02) {
+
+TEST_F(LinkTest, Link_IsKeyExists_FailureIsrowexist02) {
key_link_t k;
- val_link_st v;
Kt_Link ktlinkobj;
vector<string> sw_vect_key_value;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_MORE_ROWS_FOUND);
int ret = ktlinkobj.IsKeyExists(db_conn,UNC_DT_STATE,sw_vect_key_value);
- EXPECT_EQ(ret,UPPL_RC_ERR_NO_SUCH_INSTANCE);
- ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
}
-TEST_F(KtClassTest, Link_IsKeyExists_SuccessIsrowexist03) {
+TEST_F(LinkTest, Link_IsKeyExists_SuccessIsrowexist03) {
key_link_t k;
- val_link_st v;
Kt_Link ktlinkobj;
physical_request_header rh;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);
int ret = ktlinkobj.IsKeyExists(db_conn,UNC_DT_STATE,sw_vect_key_value);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
-TEST_F(KtClassTest, Link_IsKeyExists_FailConnectionErr04) {
+TEST_F(LinkTest, Link_IsKeyExists_FailConnectionErr04) {
key_link_t k;
- val_link_st v;
Kt_Link ktlinkobj;
vector<string> sw_vect_key_value;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_CONNECTION_ERROR);
int ret = ktlinkobj.IsKeyExists(db_conn,UNC_DT_STATE,sw_vect_key_value);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);
- ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
-TEST_F(KtClassTest, PerformSemanticValidation_InstanceExist_create05) {
+TEST_F(LinkTest, PerformSemanticValidation_InstanceExist_create05) {
key_link_t k;
val_link_st v;
uint32_t operation = UNC_OP_CREATE;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);
int ret = ktlinkobj.PerformSemanticValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_INSTANCE_EXISTS);
- ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_INSTANCE_EXISTS, ret);
}
-TEST_F(KtClassTest, PerformSemanticValidation_ConnectionErr_create06) {
+TEST_F(LinkTest, PerformSemanticValidation_ConnectionErr_create06) {
key_link_t k;
val_link_st v;
uint32_t operation = UNC_OP_CREATE;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_CONNECTION_ERROR);
int ret = ktlinkobj.PerformSemanticValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);
- ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
-
-TEST_F(KtClassTest, PerformSemanticValidation_InstanceNOtExist_update07) {
+TEST_F(LinkTest, PerformSemanticValidation_InstanceNOtExist_update07) {
key_link_t k;
val_link_st v;
Kt_Link ktlinkobj;
uint32_t operation = UNC_OP_UPDATE;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_MORE_ROWS_FOUND);
int ret = ktlinkobj.PerformSemanticValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_NO_SUCH_INSTANCE);
- ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
}
-TEST_F(KtClassTest, PerformSemanticValidation_ConnectionErr_update08) {
+TEST_F(LinkTest, PerformSemanticValidation_ConnectionErr_update08) {
key_link_t k;
val_link_st v;
Kt_Link ktlinkobj;
uint32_t operation = UNC_OP_UPDATE;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_CONNECTION_ERROR);
int ret = ktlinkobj.PerformSemanticValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);
- ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
-TEST_F(KtClassTest, PerformSemanticValidation_InstanceNOtExist_delete09) {
+TEST_F(LinkTest, PerformSemanticValidation_InstanceNOtExist_delete09) {
key_link_t k;
val_link_st v;
Kt_Link ktlinkobj;
uint32_t operation = UNC_OP_DELETE;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_MORE_ROWS_FOUND);
int ret = ktlinkobj.PerformSemanticValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_NO_SUCH_INSTANCE);
- ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
}
-TEST_F(KtClassTest, PerformSemanticValidation_ConnectionErr_delete10) {
+TEST_F(LinkTest, PerformSemanticValidation_ConnectionErr_delete10) {
key_link_t k;
val_link_st v;
Kt_Link ktlinkobj;
uint32_t operation = UNC_OP_DELETE;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_CONNECTION_ERROR);
int ret = ktlinkobj.PerformSemanticValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);
- ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
-TEST_F(KtClassTest, PerformSemanticValidation_InstanceNOtExist_read11) {
+TEST_F(LinkTest, PerformSemanticValidation_InstanceNOtExist_read11) {
key_link_t k;
val_link_st v;
Kt_Link ktlinkobj;
uint32_t operation = UNC_OP_READ;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_MORE_ROWS_FOUND);
int ret = ktlinkobj.PerformSemanticValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_NO_SUCH_INSTANCE);
- ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
}
-TEST_F(KtClassTest, PerformSemanticValidation_ConnectionErr_Read12) {
+TEST_F(LinkTest, PerformSemanticValidation_ConnectionErr_Read12) {
key_link_t k;
val_link_st v;
Kt_Link ktlinkobj;
uint32_t operation = UNC_OP_READ;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_CONNECTION_ERROR);
int ret = ktlinkobj.PerformSemanticValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);
- ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
-TEST_F(KtClassTest, PerformSemanticValidation_InstanceNOtExist_create13) {
+TEST_F(LinkTest, PerformSemanticValidation_InstanceNOtExist_create13) {
key_link_t k;
val_link_st v;
Kt_Link ktlinkobj;
uint32_t operation = UNC_OP_CREATE;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_MORE_ROWS_FOUND);
int ret = ktlinkobj.PerformSemanticValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_PARENT_DOES_NOT_EXIST);
- ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_PARENT_DOES_NOT_EXIST, ret);
}
-TEST_F(KtClassTest, LinkDeleteKeyInstance_UnsupportedForSTARTUP_14) {
+TEST_F(LinkTest, LinkDeleteKeyInstance_UnsupportedForSTARTUP_14) {
key_link_t k;
memset(&k, 0, sizeof(key_link_t));
Kt_Link ktlinkobj;
getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);
OdbcmConnectionHandler *db_conn =NULL;
int ret = ktlinkobj.DeleteKeyInstance(db_conn, &k, UNC_DT_STARTUP, UNC_KT_LINK);
- EXPECT_EQ(ret, UPPL_RC_ERR_OPERATION_NOT_ALLOWED);
+ EXPECT_EQ(UPPL_RC_ERR_OPERATION_NOT_ALLOWED, ret);
}
-TEST_F(KtClassTest, LinkDeleteKeyInstance_UnsupportedForSTARTUP_15) {
+TEST_F(LinkTest, LinkDeleteKeyInstance_UnsupportedForSTARTUP_15) {
key_link_t k;
memset(&k, 0, sizeof(key_link_t));
Kt_Link ktlinkobj;
getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);
OdbcmConnectionHandler *db_conn =NULL;
int ret = ktlinkobj.DeleteKeyInstance(db_conn, &k, UNC_DT_CANDIDATE, UNC_KT_LINK);
- EXPECT_EQ(ret, UPPL_RC_ERR_OPERATION_NOT_ALLOWED);
+ EXPECT_EQ(UPPL_RC_ERR_OPERATION_NOT_ALLOWED, ret);
}
-TEST_F(KtClassTest, LinkDeleteKeyInstance_UnsupportedForSTARTUP_16) {
+TEST_F(LinkTest, LinkDeleteKeyInstance_UnsupportedForSTARTUP_16) {
key_link_t k;
memset(&k, 0, sizeof(key_link_t));
Kt_Link ktlinkobj;
getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);
OdbcmConnectionHandler *db_conn =NULL;
int ret = ktlinkobj.DeleteKeyInstance(db_conn, &k, UNC_DT_RUNNING, UNC_KT_LINK);
- EXPECT_EQ(ret, UPPL_RC_ERR_OPERATION_NOT_ALLOWED);
+ EXPECT_EQ(UPPL_RC_ERR_OPERATION_NOT_ALLOWED, ret);
}
-TEST_F(KtClassTest, LinkDeleteKeyInstance_Support_17) {
+TEST_F(LinkTest, LinkDeleteKeyInstance_Support_17) {
key_link_t k;
memset(&k, 0, sizeof(key_link_t));
Kt_Link ktlinkobj;
getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);
OdbcmConnectionHandler *db_conn =NULL;
int ret = ktlinkobj.DeleteKeyInstance(db_conn, &k, UNC_DT_STATE, UNC_KT_LINK);
- EXPECT_EQ(ret, UPPL_RC_ERR_DB_DELETE);
+ EXPECT_EQ(UPPL_RC_ERR_DB_DELETE, ret);
}
-TEST_F(KtClassTest, DeleteKeyInstance_Support_18) {
+TEST_F(LinkTest, DeleteKeyInstance_Support_18) {
key_link_t k;
memset(&k, 0, sizeof(key_link_t));
Kt_Link ktlinkobj;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_CONNECTION_ERROR);
int ret = ktlinkobj.DeleteKeyInstance(db_conn, &k, UNC_DT_STATE, UNC_KT_LINK);
- EXPECT_EQ(ret, UPPL_RC_ERR_DB_ACCESS);
- ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
-TEST_F(KtClassTest, DeleteKeyInstance_Support_19) {
+
+TEST_F(LinkTest, DeleteKeyInstance_Support_19) {
key_link_t k;
memset(&k, 0, sizeof(key_link_t));
Kt_Link ktlinkobj;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_ROW_NOT_EXISTS);
int ret = ktlinkobj.DeleteKeyInstance(db_conn, &k, UNC_DT_STATE, UNC_KT_LINK);
- EXPECT_EQ(ret, UPPL_RC_ERR_NO_SUCH_INSTANCE);
- ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
}
-TEST_F(KtClassTest, LinkDeleteKeyInstance_Support_20) {
+
+TEST_F(LinkTest, LinkDeleteKeyInstance_Support_20) {
key_link_t k;
memset(&k, 0, sizeof(key_link_t));
Kt_Link ktlinkobj;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_SUCCESS);
int ret = ktlinkobj.DeleteKeyInstance(db_conn, &k, UNC_DT_STATE, UNC_KT_LINK);
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);
- ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
-TEST_F(KtClassTest, LinkPerformRead_incorrectoption1_21) {
+TEST_F(LinkTest, LinkPerformRead_incorrectoption1_21) {
key_link_t k;
val_link_st v;
memset(&k, 0, sizeof(key_link_t));
sess.stub_setAddOutput((uint32_t)UNC_KT_LINK);
int ret = ktlinkobj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_DETAIL,(uint32_t)UNC_OPT2_NONE,(uint32_t)1);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
-TEST_F(KtClassTest, LinkPerformRead_incorrectDT_22) {
+TEST_F(LinkTest, LinkPerformRead_incorrectDT_22) {
key_link_t k;
val_link_st v;
memset(&k, 0, sizeof(key_link_t));
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)UNC_KT_LINK);
int ret = ktlinkobj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_L2DOMAIN,(uint32_t)1);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
-TEST_F(KtClassTest, LinkPerformRead_incorrectoption2_23) {
+TEST_F(LinkTest, LinkPerformRead_incorrectoption2_23) {
key_link_t k;
val_link_st v;
memset(&k, 0, sizeof(key_link_t));
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)UNC_KT_LINK);
int ret = ktlinkobj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_L2DOMAIN,(uint32_t)1);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
-TEST_F(KtClassTest, LinkSetOperStatus_24) {
+TEST_F(LinkTest, LinkSetOperStatus_24) {
key_link_t k;
val_link_st v;
memset(&k, 0, sizeof(key_link_t));
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_FAILED);
int ret = ktlinkobj.SetOperStatus(db_conn,UNC_DT_STATE,&k,(UpplLinkOperStatus)1);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_UPDATE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_UPDATE, ret);
}
-TEST_F(KtClassTest, LinkSetOperStatus_25) {
+
+TEST_F(LinkTest, LinkSetOperStatus_25) {
key_link_t k;
val_link_st v;
memset(&k, 0, sizeof(key_link_t));
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_ROW_NOT_EXISTS);
int ret = ktlinkobj.SetOperStatus(db_conn,UNC_DT_STATE,&k,(UpplLinkOperStatus)0);
- EXPECT_EQ(ret,UPPL_RC_ERR_NO_SUCH_INSTANCE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
}
-TEST_F(KtClassTest, LinkSetOperStatus_26) {
+TEST_F(LinkTest, LinkSetOperStatus_26) {
key_link_t k;
val_link_st v;
memset(&k, 0, sizeof(key_link_t));
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
int ret = ktlinkobj.SetOperStatus(db_conn,UNC_DT_STATE,&k,(UpplLinkOperStatus)1);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
-TEST_F(KtClassTest, LinkSetOperStatus_27) {
+TEST_F(LinkTest, LinkSetOperStatus_27) {
key_link_t k;
val_link_st v;
memset(&k, 0, sizeof(key_link_t));
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
int ret = ktlinkobj.SetOperStatus(db_conn,UNC_DT_STATE,&k,(UpplLinkOperStatus)1);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
-TEST_F(KtClassTest, LinkSetOperStatus_28) {
+TEST_F(LinkTest, LinkSetOperStatus_28) {
key_link_t k;
val_link_st v;
memset(&k, 0, sizeof(key_link_t));
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
int ret = ktlinkobj.SetOperStatus(db_conn,UNC_DT_STATE,&k,(UpplLinkOperStatus)2);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
-TEST_F(KtClassTest, LinkReadBulk_Opnt_allow_29) {
+TEST_F(LinkTest, LinkReadBulk_Opnt_allow_29) {
key_link_t k;
val_link_st v;
memset(&k, 0, sizeof(key_link_t));
memset(&v, 0, sizeof(val_link_st));
Kt_Link ktlinkobj;
- uint32_t operation_type = UNC_OP_READ_BULK;
uint32_t max_rep_ct=1;
int child_index=0;
pfc_bool_t parent_call=true;
OdbcmConnectionHandler *db_conn = NULL;
ReadRequest *read_req = NULL;
int ret = ktlinkobj.ReadBulk(db_conn, &k, UNC_DT_CANDIDATE, max_rep_ct, child_index, parent_call, is_read_next,read_req);
- EXPECT_EQ(ret, UPPL_RC_ERR_OPERATION_NOT_ALLOWED);
+ EXPECT_EQ(UPPL_RC_ERR_OPERATION_NOT_ALLOWED, ret);
}
-TEST_F(KtClassTest, LinkReadBulk_Success_30) {
+TEST_F(LinkTest, LinkReadBulk_Success_30) {
key_link_t k;
val_link_st v;
memset(&k, 0, sizeof(key_link_t));
memset(&v, 0, sizeof(val_link_st));
Kt_Link ktlinkobj;
- uint32_t operation_type = UNC_OP_READ_BULK;
uint32_t max_rep_ct=0;
int child_index=-1;
pfc_bool_t parent_call=true;
OdbcmConnectionHandler *db_conn = NULL;
ReadRequest *read_req = NULL;
int ret = ktlinkobj.ReadBulk(db_conn, &k, UNC_DT_STATE, max_rep_ct, child_index, parent_call, is_read_next,read_req);
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
-TEST_F(KtClassTest, LinkReadBulk_MaxCntSuccess_31) {
+TEST_F(LinkTest, LinkReadBulk_MaxCntSuccess_31) {
key_link_t k;
val_link_st v;
memset(&k, 0, sizeof(key_link_t));
memset(&v, 0, sizeof(val_link_st));
Kt_Link ktlinkobj;
- uint32_t operation_type = UNC_OP_READ_BULK;
uint32_t max_rep_ct=0;
int child_index=-1;
pfc_bool_t parent_call=true;
OdbcmConnectionHandler *db_conn = NULL;
ReadRequest *read_req = NULL;
int ret = ktlinkobj.ReadBulk(db_conn, &k, UNC_DT_STATE, max_rep_ct, child_index, parent_call, is_read_next,read_req);
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
-TEST_F(KtClassTest, LinkReadBulk_DBFail_32) {
+TEST_F(LinkTest, LinkReadBulk_DBFail_32) {
key_link_t k;
val_link_st v;
memset(&k, 0, sizeof(key_link_t));
memset(&v, 0, sizeof(val_link_st));
Kt_Link ktlinkobj;
- uint32_t operation_type = UNC_OP_READ_BULK;
uint32_t max_rep_ct=0;
int child_index=-1;
pfc_bool_t parent_call=true;
ReadRequest *read_req = NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_CONNECTION_ERROR);
int ret = ktlinkobj.ReadBulk(db_conn, &k, UNC_DT_STATE, max_rep_ct, child_index, parent_call, is_read_next,read_req);
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
-TEST_F(KtClassTest, LinkReadBulk_DBSuccess) {
+TEST_F(LinkTest, LinkReadBulk_DBSuccess) {
key_link_t k;
val_link_st v;
memset(&k, 0, sizeof(key_link_t));
memset(&v, 0, sizeof(val_link_st));
Kt_Link ktlinkobj;
- uint32_t operation_type = UNC_OP_READ_BULK;
uint32_t max_rep_ct=0;
int child_index=-1;
pfc_bool_t parent_call=true;
ReadRequest *read_req = NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_SUCCESS);
int ret = ktlinkobj.ReadBulk(db_conn, &k, UNC_DT_STATE, max_rep_ct, child_index, parent_call, is_read_next,read_req);
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);
- //EXPECT_EQ(ret, UPPL_RC_ERR_DB_ACCESS);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
-TEST_F(KtClassTest, LinkReadBulkInternal_Success_33) {
+TEST_F(LinkTest, LinkReadBulkInternal_Success_33) {
key_link_t k;
val_link_st v;
memset(&k, 0, sizeof(key_link_t));
memset(&v, 0, sizeof(val_link_st));
Kt_Link ktlinkobj;
- uint32_t operation_type = UNC_OP_READ_BULK;
uint32_t max_rep_ct=0;
- int child_index=-1;
- pfc_bool_t parent_call=true;
- pfc_bool_t is_read_next=true;
OdbcmConnectionHandler *db_conn = NULL;
- ReadRequest *read_req = NULL;
vector<val_link_st_t> vec_val_link;
vector<key_link_t> vec_key_link_t;
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_CONNECTION_ERROR);
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_CONNECTION_ERROR);
int ret = ktlinkobj.ReadBulkInternal(db_conn, &k, UNC_DT_STATE, max_rep_ct, vec_val_link, vec_key_link_t);
- EXPECT_EQ(ret, UPPL_RC_ERR_DB_ACCESS);
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
-TEST_F(KtClassTest, LinkReadBulkInternal_Success_34) {
+TEST_F(LinkTest, LinkReadBulkInternal_Success_34) {
key_link_t k;
val_link_st v;
memset(&k, 0, sizeof(key_link_t));
memset(&v, 0, sizeof(val_link_st));
Kt_Link ktlinkobj;
- uint32_t operation_type = UNC_OP_READ_BULK;
uint32_t max_rep_ct=0;
- int child_index=-1;
- pfc_bool_t parent_call=true;
- pfc_bool_t is_read_next=true;
OdbcmConnectionHandler *db_conn = NULL;
- ReadRequest *read_req = NULL;
getKeyForKtLink1(k);
vector<key_link_t> vec_key_link_t;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_RECORD_NOT_FOUND);
int ret = ktlinkobj.ReadBulkInternal(db_conn, &k, UNC_DT_STATE, max_rep_ct, vec_val_link, vec_key_link_t);
- EXPECT_EQ(ret, UPPL_RC_ERR_DB_ACCESS);
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
}
-TEST_F(KtClassTest, HandleOperStatus_KeyStruct_NULL_Handdle) {
+TEST_F(LinkTest, HandleOperStatus_KeyStruct_NULL_Handdle) {
key_link_t k;
val_link_st v;
memset(&k, 0, sizeof(key_link_t));
OdbcmConnectionHandler *db_conn =NULL;
// unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
int ret = ktlinkobj.HandleOperStatus(db_conn,UNC_DT_STATE,&k,&v);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
-TEST_F(KtClassTest, GetLinkValidFlag_ConnError) {
+TEST_F(LinkTest, GetLinkValidFlag_ConnError) {
key_link_t k;
val_link_st_t v;
memset(&k, 0, sizeof(key_link_t));
OdbcmConnectionHandler *db_conn = NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_CONNECTION_ERROR);
int ret = ktlinkobj.GetLinkValidFlag(db_conn, &k, v, UNC_DT_STATE);
- EXPECT_EQ(ret, UPPL_RC_ERR_DB_ACCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
-TEST_F(KtClassTest, GetLinkValidFlag_DBGetErr) {
+TEST_F(LinkTest, GetLinkValidFlag_DBGetErr) {
key_link_t k;
val_link_st_t v;
memset(&k, 0, sizeof(key_link_t));
OdbcmConnectionHandler *db_conn = NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_DATA_ERROR);
int ret = ktlinkobj.GetLinkValidFlag(db_conn, &k, v, UNC_DT_STATE);
- EXPECT_EQ(ret, UPPL_RC_ERR_DB_GET);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_GET, ret);
}
-TEST_F(KtClassTest, GetLinkValidFlag_Success) {
+
+TEST_F(LinkTest, GetLinkValidFlag_Success) {
key_link_t k;
val_link_st_t v;
memset(&k, 0, sizeof(key_link_t));
OdbcmConnectionHandler *db_conn = NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
int ret = ktlinkobj.GetLinkValidFlag(db_conn, &k, v, UNC_DT_STATE);
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
-TEST_F(KtClassTest, LinkGetOperStatus_DBErr) {
+
+TEST_F(LinkTest, LinkGetOperStatus_DBErr) {
key_link_t k;
val_link_st v;
memset(&k, 0, sizeof(key_link_t));
Kt_Link ktlinkobj;
uint8_t operstat = 0;
- UpplLinkOperStatus new_oper_status = UPPL_LINK_OPER_UNKNOWN;
OdbcmConnectionHandler *db_conn = NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_FAILED);
int ret = ktlinkobj.GetOperStatus(db_conn,(uint32_t)UNC_DT_STATE,&k,operstat);
- EXPECT_EQ(ret, UPPL_RC_ERR_DB_GET);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_GET, ret);
}
-TEST_F(KtClassTest, LinkGetOperStatus_success) {
+
+TEST_F(LinkTest, LinkGetOperStatus_success) {
key_link_t k;
val_link_st v;
memset(&k, 0, sizeof(key_link_t));
Kt_Link ktlinkobj;
uint8_t operstat = 0;
- UpplLinkOperStatus new_oper_status = UPPL_LINK_OPER_UNKNOWN;
OdbcmConnectionHandler *db_conn = NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
int ret = ktlinkobj.GetOperStatus(db_conn,(uint32_t)UNC_DT_STATE,&k,operstat);
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
-TEST_F(KtClassTest, LinkReadInternal_Create) {
- key_link_t *k = new key_link_t;
- //getKeyForKtLink1(k);
+
+TEST_F(LinkTest, LinkReadInternal_Create) {
+ key_link_t k;
vector<void *> vecVal_link;
vector<void *> veckey_link;
- veckey_link.push_back(k);
- Kt_Link ktlinkobj;
-
+ memset(&k, 0, sizeof(k));
+ veckey_link.push_back(&k);
+ Kt_Link ktlinkobj;
OdbcmConnectionHandler *db_conn =NULL;
int ret = ktlinkobj.ReadInternal(db_conn,veckey_link,vecVal_link,UNC_DT_STATE,UNC_OP_CREATE);
//int ret = ktlinkobj.ReadInternal(db_conn,veckey_link,vecVal_link,UNC_DT_STATE,UNC_OP_READ);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
-TEST_F(KtClassTest, LinkReadInternal_Read) {
- key_link_t *k = new key_link_t;
+TEST_F(LinkTest, LinkReadInternal_Read) {
+ key_link_t k;
vector<void *> vecVal_link;
vector<void *> veckey_link;
- veckey_link.push_back(k);
- Kt_Link ktlinkobj;
-
+ memset(&k, 0, sizeof(k));
+ veckey_link.push_back(&k);
+ Kt_Link ktlinkobj;
OdbcmConnectionHandler *db_conn =NULL;
int ret = ktlinkobj.ReadInternal(db_conn,veckey_link,vecVal_link,UNC_DT_STATE,UNC_OP_READ);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_GET);
+ EXPECT_EQ(UPPL_RC_ERR_DB_GET, ret);
}
-TEST_F(KtClassTest, LinkReadInternal_Val_empty) {
- key_link_t *k = new key_link_t;
+TEST_F(LinkTest, LinkReadInternal_Val_empty) {
+ key_link_t k;
vector<void *> vecVal_link;
vector<void *> veckey_link;
- veckey_link.push_back(k);
+ memset(&k, 0, sizeof(k));
+ veckey_link.push_back(&k);
+
Kt_Link ktlinkobj;
-
vecVal_link.clear();
OdbcmConnectionHandler *db_conn =NULL;
int ret = ktlinkobj.ReadInternal(db_conn,veckey_link,vecVal_link,UNC_DT_STATE,UNC_OP_READ);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_GET);
+ EXPECT_EQ(UPPL_RC_ERR_DB_GET, ret);
}
-TEST_F(KtClassTest, LinkReadInternal_Val_nonempty) {
- key_link_t *k = new key_link_t;
+
+TEST_F(LinkTest, LinkReadInternal_Val_nonempty) {
+ key_link_t k;
vector<void *> vecVal_link;
vector<void *> veckey_link;
- veckey_link.push_back(k);
+ memset(&k, 0, sizeof(k));
+ veckey_link.push_back(&k);
+
Kt_Link ktlinkobj;
-
val_link_st_t v;
- veckey_link[0] = &v;
+ memset(&v, 0, sizeof(v));
+ vecVal_link.push_back(&v);
getValForKtLink1(v);
- vecVal_link.clear();
OdbcmConnectionHandler *db_conn =NULL;
int ret = ktlinkobj.ReadInternal(db_conn,veckey_link,veckey_link,UNC_DT_STATE,UNC_OP_READ);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_GET);
+ EXPECT_EQ(UPPL_RC_ERR_DB_GET, ret);
}
-TEST_F(KtClassTest, PerformSemanticValidation_Import) {
+
+TEST_F(LinkTest, PerformSemanticValidation_Import) {
key_link_t k;
val_link_st v;
Kt_Link ktlinkobj;
uint32_t operation = UNC_OP_CREATE;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_MORE_ROWS_FOUND);
int ret = ktlinkobj.PerformSemanticValidation(db_conn,&k,&v,operation,UNC_DT_IMPORT);
- EXPECT_EQ(ret,UPPL_RC_ERR_PARENT_DOES_NOT_EXIST);
- ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_PARENT_DOES_NOT_EXIST, ret);
}
-TEST_F(KtClassTest, ReadLinkValFromDB_Success) {
+
+TEST_F(LinkTest, ReadLinkValFromDB_Success) {
key_link_t k;
- val_link_st v;
- void *key_struct;
+ void *key_struct(NULL);
void *void_val_struct = NULL;
- pfc_bool_t bflag =true;
-
Kt_Link ktlinkobj;
vector<string> sw_vect_key_value;
getKeyForKtLink1(k,sw_vect_key_value);
vect_link_id, option,
option);
- EXPECT_EQ(read_status,UPPL_RC_SUCCESS);
- ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, read_status);
}
-TEST_F(KtClassTest, ReadLinkValFromDB_Success_Read) {
- key_link_t k;
- val_link_st v;
- void *key_struct;
+TEST_F(LinkTest, ReadLinkValFromDB_Success_Read) {
+ key_link_t k;
void *void_val_struct = NULL;
- pfc_bool_t bflag =true;
-
Kt_Link ktlinkobj;
vector<string> sw_vect_key_value;
- getKeyForKtLink1(k,sw_vect_key_value);
+ getKeyForKtLink1(k, sw_vect_key_value);
vector<val_link_st_t> vect_val_link_st;
vector<key_link_t> vect_link_id;
uint32_t option = 0;
OdbcmConnectionHandler *db_conn =NULL;
- uint32_t operation = UNC_OP_CREATE;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_MORE_ROWS_FOUND);
- UpplReturnCode read_status = ktlinkobj.ReadLinkValFromDB(db_conn, key_struct,
+ UpplReturnCode read_status = ktlinkobj.ReadLinkValFromDB(db_conn, &k,
void_val_struct,
data_type,
operation_type,
vect_link_id, option,
option);
- EXPECT_EQ(read_status,UPPL_RC_ERR_DB_GET);
- ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_GET, read_status);
}
-TEST_F(KtClassTest, ReadLinkValFromDB_Success_option1_sibling) {
- key_link_t k;
- val_link_st v;
- void *key_struct;
+TEST_F(LinkTest, ReadLinkValFromDB_Success_option1_sibling) {
+ key_link_t k;
void *void_val_struct = NULL;
- pfc_bool_t bflag =true;
-
Kt_Link ktlinkobj;
vector<string> sw_vect_key_value;
getKeyForKtLink1(k,sw_vect_key_value);
uint32_t option = 0;
OdbcmConnectionHandler *db_conn =NULL;
- uint32_t operation = UNC_OP_CREATE;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_CONNECTION_ERROR);
- UpplReturnCode read_status = ktlinkobj.ReadLinkValFromDB(db_conn, key_struct,
+ UpplReturnCode read_status = ktlinkobj.ReadLinkValFromDB(db_conn, &k,
void_val_struct,
data_type,
operation_type,
vect_link_id, option,
option);
- EXPECT_EQ(read_status,UPPL_RC_ERR_DB_ACCESS);
- ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, read_status);
}
-TEST_F(KtClassTest, HandleOperStatus_Success) {
+TEST_F(LinkTest, HandleOperStatus_Success) {
key_link_t k;
val_link_st v;
memset(&k, 0, sizeof(key_link_t));
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
int ret = ktlinkobj.HandleOperStatus(db_conn,UNC_DT_STATE,&k,&v);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);
- ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
-TEST_F(KtClassTest, ReadBulk_ADDTOBUFFER_maxrepCT0) {
+TEST_F(LinkTest, ReadBulk_ADDTOBUFFER_maxrepCT0) {
key_link_t k;
val_link_st v;
memset(&k, 0, sizeof(key_link_t));
getKeyForKtLink1(k);
- uint32_t operation_type = UNC_OP_READ_BULK;
uint32_t max_rep_ct = 0;
int child_index = 1;
pfc_bool_t parent_call=true;
pfc_bool_t is_read_next=true;
OdbcmConnectionHandler *db_conn = NULL;
- ReadRequest *read_req = new ReadRequest;
+ ReadRequest read_req;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_SUCCESS);
- int ret = ktlinkobj.ReadBulk(db_conn, &k, UNC_DT_STATE, max_rep_ct, child_index, parent_call, is_read_next,read_req);
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ int ret = ktlinkobj.ReadBulk(db_conn, &k, UNC_DT_STATE, max_rep_ct,
+ child_index, parent_call, is_read_next,
+ &read_req);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
-TEST_F(KtClassTest, ReadBulk_ADDTOBUFFER_maxrepCT1) {
+TEST_F(LinkTest, ReadBulk_ADDTOBUFFER_maxrepCT1) {
key_link_t k;
val_link_st v;
memset(&k, 0, sizeof(key_link_t));
getKeyForKtLink1(k);
- uint32_t operation_type = UNC_OP_READ_BULK;
uint32_t max_rep_ct = 1;
int child_index = 1;
pfc_bool_t parent_call=true;
pfc_bool_t is_read_next=true;
OdbcmConnectionHandler *db_conn = NULL;
- ReadRequest *read_req = new ReadRequest;
+ ReadRequest read_req;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_SUCCESS);
- int ret = ktlinkobj.ReadBulk(db_conn, &k, UNC_DT_STATE, max_rep_ct, child_index, parent_call, is_read_next,read_req);
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ int ret = ktlinkobj.ReadBulk(db_conn, &k, UNC_DT_STATE, max_rep_ct,
+ child_index, parent_call, is_read_next,
+ &read_req);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
-
-TEST_F(KtClassTest, ReadBulk_readreq) {
+TEST_F(LinkTest, ReadBulk_readreq) {
key_link_t k;
val_link_st v;
memset(&k, 0, sizeof(key_link_t));
getKeyForKtLink1(k);
- uint32_t operation_type = UNC_OP_READ_BULK;
uint32_t max_rep_ct = 1;
int child_index = 1;
pfc_bool_t parent_call=false;
pfc_bool_t is_read_next=true;
OdbcmConnectionHandler *db_conn = NULL;
- ReadRequest *read_req = new ReadRequest;
+ ReadRequest read_req;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_SUCCESS);
- int ret = ktlinkobj.ReadBulk(db_conn, &k, UNC_DT_STATE, max_rep_ct, child_index, parent_call, is_read_next,read_req);
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ int ret = ktlinkobj.ReadBulk(db_conn, &k, UNC_DT_STATE, max_rep_ct,
+ child_index, parent_call, is_read_next,
+ &read_req);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
-TEST_F(KtClassTest, ReadBulk_DBErr) {
+TEST_F(LinkTest, ReadBulk_DBErr) {
key_link_t k;
val_link_st v;
memset(&k, 0, sizeof(key_link_t));
getKeyForKtLink1(k);
- uint32_t operation_type = UNC_OP_READ_BULK;
uint32_t max_rep_ct = 1;
int child_index = 1;
pfc_bool_t parent_call=false;
pfc_bool_t is_read_next=true;
OdbcmConnectionHandler *db_conn = NULL;
- ReadRequest *read_req = new ReadRequest;
+ ReadRequest read_req;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_CONNECTION_ERROR);
- int ret = ktlinkobj.ReadBulk(db_conn, &k, UNC_DT_STATE, max_rep_ct, child_index, parent_call, is_read_next,read_req);
- EXPECT_EQ(ret, UPPL_RC_ERR_DB_ACCESS);
- unc::uppl::ODBCManager::clearStubData();
+ int ret = ktlinkobj.ReadBulk(db_conn, &k, UNC_DT_STATE, max_rep_ct,
+ child_index, parent_call, is_read_next,
+ &read_req);
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
-
-TEST_F(KtClassTest, ReadBulkInternal_RecordNotFound) {
+TEST_F(LinkTest, ReadBulkInternal_RecordNotFound) {
key_link_t k;
val_link_st v;
memset(&k, 0, sizeof(key_link_t));
Kt_Link ktlinkobj;
getKeyForKtLink1(k);
- uint32_t operation_type = UNC_OP_READ_BULK;
uint32_t max_rep_ct=1;
- int child_index=-1;
- pfc_bool_t parent_call=true;
- pfc_bool_t is_read_next=true;
OdbcmConnectionHandler *db_conn = NULL;
- ReadRequest *read_req = NULL;
vector<val_link_st_t> vect_val_link_st;
vector<key_link_t> vect_link_key;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_RECORD_NOT_FOUND);
int ret = ktlinkobj.ReadBulkInternal(db_conn, &k, UNC_DT_STATE, max_rep_ct, vect_val_link_st, vect_link_key);
- EXPECT_EQ(ret, UPPL_RC_ERR_NO_SUCH_INSTANCE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
}
-TEST_F(KtClassTest, LinkPerformRead_DBErr) {
+
+TEST_F(LinkTest, LinkPerformRead_DBErr) {
key_link_t k;
val_link_st v;
memset(&k, 0, sizeof(key_link_t));
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_RECORD_NOT_FOUND);
int ret = ktlinkobj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_DETAIL,(uint32_t)UNC_OPT2_NONE,(uint32_t)1);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
-TEST_F(KtClassTest, ReadLinkValFromDB_Success_Update) {
+TEST_F(LinkTest, ReadLinkValFromDB_Success_Update) {
key_link_t k;
- val_link_st v;
- void *key_struct;
+ void *key_struct(NULL);
void *void_val_struct = NULL;
- pfc_bool_t bflag =true;
-
Kt_Link ktlinkobj;
vector<string> sw_vect_key_value;
getKeyForKtLink1(k,sw_vect_key_value);
uint32_t option = 0;
OdbcmConnectionHandler *db_conn =NULL;
- uint32_t operation = UNC_OP_CREATE;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_MORE_ROWS_FOUND);
UpplReturnCode read_status = ktlinkobj.ReadLinkValFromDB(db_conn, key_struct,
void_val_struct,
vect_link_id, option,
option);
- EXPECT_EQ(read_status,UPPL_RC_SUCCESS);
- ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, read_status);
}
#if 0
-TEST_F(KtClassTest, ReadLinkValFromDB_Success_option1_sibling) {
+TEST_F(LinkTest, ReadLinkValFromDB_Success_option1_sibling) {
key_link_t k;
val_link_st v;
vect_link_id, option,
option2);
- EXPECT_EQ(read_status,UPPL_RC_ERR_DB_ACCESS);
- ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, read_status);
}
#endif
- /*\r
- * Copyright (c) 2012-2013 NEC Corporation\r
- * * All rights reserved.\r
- *\r
- * This program and the accompanying materials are made available under the\r
- * terms of the Eclipse Public License v1.0 which accompanies this\r
- * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html\r
- */\r
-\r
-\r
-\r
-\r
-#include <limits.h>\r
-#include <gtest/gtest.h>\r
-\r
-#include <pfcxx/ipc_client.hh>\r
-#include <pfc/ipc_struct.h>\r
-\r
-#include <stdio.h>\r
-#include <sys/stat.h>\r
-#include <sys/mman.h>\r
-#include <arpa/inet.h>\r
-\r
-#include <time.h>\r
-#include <pfc/base.h>\r
-#include <pfc/ipc.h>\r
-#include <pfc/config.h>\r
-\r
-#include <pfc/conf.h>\r
-#include <pfc/log.h>\r
-#include <pfc/util.h>\r
-#include <pfc/event.h>\r
-#include <pfc/path.h>\r
-#include <pfc/hash.h>\r
-#include <pfc/thread.h>\r
-#include <pfc/refptr.h>\r
-#include <pfc/listmodel.h>\r
-#include <pfc/iostream.h>\r
-#include <pfc/ipc_client.h>\r
-#include <pfc/ipc_pfcd.h>\r
-#include <pfc/ipc_struct.h>\r
-#include "stub/ODBC/include/odbcm_mgr.hh"\r
-#include "physical_common_def.hh"\r
-#include "unc/uppl_common.h"\r
-#include "unc/keytype.h"\r
-#include "itc_kt_base.hh"\r
-#include "itc_kt_root.hh"\r
-#include "itc_kt_controller.hh"\r
-#include "itc_kt_ctr_domain.hh"\r
-#include "itc_kt_switch.hh"\r
-#include "itc_kt_port.hh"\r
-#include "itc_kt_link.hh"\r
-#include "itc_kt_boundary.hh"\r
-#include "itc_kt_logicalport.hh"\r
-#include "ipct_util.hh"\r
-#include "PhysicalLayerStub.hh"\r
-#include "itc_read_request.hh"\r
-#include "itc_kt_logical_member_port.hh"\r
-\r
-\r
-using namespace pfc;\r
-using namespace pfc::core;\r
-using namespace pfc::core::ipc;\r
-using namespace std;\r
-pfc_ipcid_t service = UPPL_SVC_CONFIGREQ;\r
-ClientSession *cli_sess = NULL;\r
-class KtClassTest : public testing::Test {\r
- protected:\r
- virtual void SetUp() {\r
- if (cli_sess == NULL) {\r
- pfc_ipcconn_t connp = 0;\r
- int err = pfc_ipcclnt_altopen(UPPL_IPC_CHN_NAME, &connp);\r
- ASSERT_EQ(0, err);\r
- //ASSERT_TRUE(connp != 0);\r
- cli_sess = new ClientSession(connp, UPPL_IPC_SVC_NAME, service, err);\r
- //ASSERT_EQ(0, err);\r
- } else {\r
- cli_sess->reset(UPPL_IPC_SVC_NAME, service);\r
- }\r
- }\r
- virtual void TearDown() {\r
- }\r
-};\r
-\r
-\r
-void getKeyForKtLogicalMemberPort1(key_logical_member_port_t& k) {\r
- memset(k.switch_id, '\0', 256);\r
- memcpy(k.switch_id, "{0x10,0xbc}", strlen("{0x10,0xbc}"));\r
- memset(k.physical_port_id, '\0', 32);\r
- memcpy(k.physical_port_id, "controller1 pord id:1",\r
- strlen("controller1 pord id:1"));\r
- memset(k.logical_port_key.port_id, '\0', 320);\r
- memcpy(k.logical_port_key.port_id, "{0x00,0xa}", strlen("{0x00,0xa}"));\r
- memset(k.logical_port_key.domain_key.domain_name, '\0', 32);\r
- memcpy(k.logical_port_key.domain_key.domain_name, "controller1 domain_name",\r
- strlen("controller1 domain_name"));\r
- memset(k.logical_port_key.domain_key.ctr_key.controller_name, '\0', 32);\r
- memcpy(k.logical_port_key.domain_key.ctr_key.controller_name, "controller1" ,\r
- strlen("controller1"));\r
-}\r
-\r
-void getKeyForKtLogicalMemberPort2(key_logical_member_port_t& k) {\r
- memset(k.switch_id, '\0', 256);\r
- memcpy(k.switch_id, "{0x11,0xac}", strlen("{0x11,0xac}"));\r
- memset(k.physical_port_id, '\0', 32);\r
- memcpy(k.physical_port_id, "controller3 pord id:1",\r
- strlen("controller3 pord id:1"));\r
- memset(k.logical_port_key.port_id, '\0', 291);\r
- memcpy(k.logical_port_key.port_id, "{0xab,0xc}", strlen("{0xab,0xc}"));\r
- memset(k.logical_port_key.domain_key.domain_name, '\0', 32);\r
- memcpy(k.logical_port_key.domain_key.domain_name, "controller3_domain_name" ,\r
- strlen("controller3_domain_name"));\r
- memset(k.logical_port_key.domain_key.ctr_key.controller_name, '\0', 32);\r
- memcpy(k.logical_port_key.domain_key.ctr_key.controller_name, "controller3" ,\r
- strlen("controller3"));\r
-}\r
-\r
-void getKeyForKtLogicalMemberPort3(key_logical_member_port_t& k) {\r
- memset(k.switch_id, '\0', 256);\r
- memcpy(k.switch_id, "switch1", strlen("switch1"));\r
- memset(k.physical_port_id, '\0', 32);\r
- memcpy(k.physical_port_id, "phy_port1", strlen("phy_port1"));\r
- memset(k.logical_port_key.port_id, '\0', 291);\r
- memcpy(k.logical_port_key.port_id, "log_port1", strlen("log_port1"));\r
- memset(k.logical_port_key.domain_key.domain_name, '\0', 32);\r
- memcpy(k.logical_port_key.domain_key.domain_name, "Domain1" ,\r
- strlen("Domain1"));\r
- memset(k.logical_port_key.domain_key.ctr_key.controller_name, '\0', 32);\r
- memcpy(k.logical_port_key.domain_key.ctr_key.controller_name, "controller4" ,\r
- strlen("controller4"));\r
-}\r
-\r
-void getKeyForKtLogicalMemberPort4(key_logical_member_port_t& k) {\r
- memset(k.switch_id, '\0', 256);\r
- memcpy(k.switch_id, "", strlen(""));\r
- memset(k.physical_port_id, '\0', 32);\r
- memcpy(k.physical_port_id, "phy_port1", strlen("phy_port1"));\r
- memset(k.logical_port_key.port_id, '\0', 291);\r
- memcpy(k.logical_port_key.port_id, "log_port1", strlen("log_port1"));\r
- memset(k.logical_port_key.domain_key.domain_name, '\0', 32);\r
- memcpy(k.logical_port_key.domain_key.domain_name, "Domain1" ,\r
- strlen("Domain1"));\r
- memset(k.logical_port_key.domain_key.ctr_key.controller_name, '\0', 32);\r
- memcpy(k.logical_port_key.domain_key.ctr_key.controller_name, "Controller1" ,\r
- strlen("Controller1"));\r
-}\r
-\r
-\r
-TEST_F(KtClassTest, IsKeyExists_01) {\r
-PhysicalLayerStub::loadphysicallayer();\r
- string controller_name = "Controller1";\r
- string domain_name = "Domain1";\r
- string port_id = "log_port1";\r
- string switch_id = "switch1";\r
- string physical_port_id = "phy_port1";\r
- vector<string> key_values;\r
- key_values.push_back(controller_name);\r
- key_values.push_back(domain_name);\r
- key_values.push_back(port_id);\r
- key_values.push_back(switch_id);\r
- key_values.push_back(physical_port_id);\r
- Kt_LogicalMemberPort lmp_obj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);\r
- int ret = lmp_obj.IsKeyExists(db_conn,UNC_DT_STATE,key_values);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
- ODBCManager::clearStubData();\r
-}\r
-\r
-TEST_F(KtClassTest, IsKeyExists_02) {\r
- string controller_name = "Controller1";\r
- string domain_name = "Domain1";\r
- string port_id = "log_port1";\r
- string switch_id = "switch1";\r
- string physical_port_id = "phy_port1";\r
- vector<string> key_values;\r
- key_values.push_back(controller_name);\r
- key_values.push_back(domain_name);\r
- key_values.push_back(port_id);\r
- key_values.push_back(switch_id);\r
- key_values.push_back(physical_port_id);\r
- Kt_LogicalMemberPort lmp_obj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_CONNECTION_ERROR);\r
- int ret = lmp_obj.IsKeyExists(db_conn,UNC_DT_STATE,key_values);\r
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);\r
- ODBCManager::clearStubData();\r
-}\r
-\r
-TEST_F(KtClassTest, IsKeyExists_03) {\r
- string controller_name = "Controller1";\r
- string domain_name = "Domain1";\r
- string port_id = "log_port1";\r
- string switch_id = "switch1";\r
- string physical_port_id = "phy_port1";\r
- vector<string> key_values;\r
- key_values.push_back(controller_name);\r
- key_values.push_back(domain_name);\r
- key_values.push_back(port_id);\r
- key_values.push_back(switch_id);\r
- key_values.push_back(physical_port_id);\r
- Kt_LogicalMemberPort lmp_obj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_NOT_EXISTS);\r
- int ret = lmp_obj.IsKeyExists(db_conn,UNC_DT_STATE,key_values);\r
- EXPECT_EQ(ret,UPPL_RC_ERR_NO_SUCH_INSTANCE);\r
- ODBCManager::clearStubData();\r
-}\r
-\r
-TEST_F(KtClassTest, IsKeyExists_04) {\r
- vector<string> key_values;\r
- key_values.clear();\r
- Kt_LogicalMemberPort lmp_obj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_NOT_EXISTS);\r
- int ret = lmp_obj.IsKeyExists(db_conn,UNC_DT_STATE,key_values);\r
- EXPECT_EQ(ret,UPPL_RC_ERR_BAD_REQUEST);\r
- ODBCManager::clearStubData();\r
-}\r
-// PerformSyntaxValidation with value structure\r
-TEST_F(KtClassTest, PerformSyntaxValidation_01) {\r
- key_logical_member_port k;\r
- getKeyForKtLogicalMemberPort2(k);\r
- void* val =new key_logical_member_port;\r
- uint32_t operation = UNC_OP_READ;\r
- Kt_LogicalMemberPort lmp_obj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- int ret = lmp_obj.PerformSyntaxValidation(db_conn,&k,val,operation,UNC_DT_STATE);\r
- EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SYNTAX);\r
-}\r
-\r
-// PerformSyntaxValidation success\r
-TEST_F(KtClassTest, PerformSyntaxValidation_02) {\r
- key_logical_member_port k;\r
- getKeyForKtLogicalMemberPort2(k);\r
- void* val = NULL;\r
- uint32_t operation = UNC_OP_READ;\r
- Kt_LogicalMemberPort lmp_obj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- int ret = lmp_obj.PerformSyntaxValidation(db_conn,&k,val,operation,UNC_DT_STATE);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
-}\r
-\r
-// PerformSyntaxValidation without switch id\r
-TEST_F(KtClassTest, PerformSyntaxValidation_03) {\r
- key_logical_member_port k;\r
- memset(k.switch_id, '\0', 256);\r
- memset(k.physical_port_id, '\0', 32);\r
- memcpy(k.physical_port_id, "phy_port1", strlen("phy_port1"));\r
- memset(k.logical_port_key.port_id, '\0', 291);\r
- memcpy(k.logical_port_key.port_id, "log_port1", strlen("log_port1"));\r
- memset(k.logical_port_key.domain_key.domain_name, '\0', 32);\r
- memcpy(k.logical_port_key.domain_key.domain_name, "Domain1" ,\r
- strlen("Domain1"));\r
- memset(k.logical_port_key.domain_key.ctr_key.controller_name, '\0', 32);\r
- memcpy(k.logical_port_key.domain_key.ctr_key.controller_name, "controller4" ,\r
- strlen("controller4"));\r
- void* val = NULL;\r
- uint32_t operation = UNC_OP_READ;\r
- Kt_LogicalMemberPort lmp_obj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- int ret = lmp_obj.PerformSyntaxValidation(db_conn,&k,val,operation,UNC_DT_STATE);\r
- EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SYNTAX);\r
-}\r
-// PerformSyntaxValidation without physical port id\r
-TEST_F(KtClassTest, PerformSyntaxValidation_04) {\r
- key_logical_member_port k;\r
- memset(k.switch_id, '\0', 256);\r
- memcpy(k.switch_id, "switch1", strlen("switch1"));\r
- memset(k.physical_port_id, '\0', 32);\r
- memset(k.logical_port_key.port_id, '\0', 320);\r
- memcpy(k.logical_port_key.port_id, "log_port1", strlen("log_port1"));\r
- memset(k.logical_port_key.domain_key.domain_name, '\0', 32);\r
- memcpy(k.logical_port_key.domain_key.domain_name, "Domain1" ,\r
- strlen("Domain1"));\r
- memset(k.logical_port_key.domain_key.ctr_key.controller_name, '\0', 32);\r
- memcpy(k.logical_port_key.domain_key.ctr_key.controller_name, "controller4" ,\r
- strlen("controller4"));\r
- void* val = NULL;\r
- uint32_t operation = UNC_OP_READ;\r
- Kt_LogicalMemberPort lmp_obj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- int ret = lmp_obj.PerformSyntaxValidation(db_conn,&k,val,operation,UNC_DT_STATE);\r
- EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SYNTAX);\r
-}\r
-// PerformSyntaxValidation without logical_port_id\r
-TEST_F(KtClassTest, PerformSyntaxValidation_05) {\r
- key_logical_member_port k;\r
- memset(k.switch_id, '\0', 256);\r
- memcpy(k.switch_id, "switch1", strlen("switch1"));\r
- memset(k.physical_port_id, '\0', 32);\r
- memcpy(k.physical_port_id, "phy_port1", strlen("phy_port1"));\r
- memset(k.logical_port_key.port_id, '\0', 320);\r
- memset(k.logical_port_key.domain_key.domain_name, '\0', 32);\r
- memcpy(k.logical_port_key.domain_key.domain_name, "Domain1" ,\r
- strlen("Domain1"));\r
- memset(k.logical_port_key.domain_key.ctr_key.controller_name, '\0', 32);\r
- memcpy(k.logical_port_key.domain_key.ctr_key.controller_name, "controller4" ,\r
- strlen("controller4"));\r
- void* val = NULL;\r
- uint32_t operation = UNC_OP_READ;\r
- Kt_LogicalMemberPort lmp_obj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- int ret = lmp_obj.PerformSyntaxValidation(db_conn,&k,val,operation,UNC_DT_STATE);\r
- EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SYNTAX);\r
-}\r
-// PerformSyntaxValidation without domain name \r
-TEST_F(KtClassTest, PerformSyntaxValidation_06) {\r
- key_logical_member_port k;\r
- memset(k.switch_id, '\0', 256);\r
- memcpy(k.switch_id, "switch1", strlen("switch1"));\r
- memset(k.physical_port_id, '\0', 32);\r
- memcpy(k.physical_port_id, "phy_port1", strlen("phy_port1"));\r
- memset(k.logical_port_key.port_id, '\0', 320);\r
- memcpy(k.logical_port_key.port_id, "log_port1", strlen("log_port1"));\r
- memset(k.logical_port_key.domain_key.domain_name, '\0', 32);\r
- memset(k.logical_port_key.domain_key.ctr_key.controller_name, '\0', 32);\r
- memcpy(k.logical_port_key.domain_key.ctr_key.controller_name, "controller4" ,\r
- strlen("controller4"));\r
- void* val = NULL;\r
- uint32_t operation = UNC_OP_READ;\r
- Kt_LogicalMemberPort lmp_obj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- int ret = lmp_obj.PerformSyntaxValidation(db_conn,&k,val,operation,UNC_DT_STATE);\r
- EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SYNTAX);\r
-}\r
-// PerformSyntaxValidation without controller name\r
-TEST_F(KtClassTest, PerformSyntaxValidation_07) {\r
- key_logical_member_port k;\r
- memset(k.switch_id, '\0', 256);\r
- memcpy(k.switch_id, "switch1", strlen("switch1"));\r
- memset(k.physical_port_id, '\0', 32);\r
- memcpy(k.physical_port_id, "phy_port1", strlen("phy_port1"));\r
- memset(k.logical_port_key.port_id, '\0', 291);\r
- memcpy(k.logical_port_key.port_id, "log_port1", strlen("log_port1"));\r
- memset(k.logical_port_key.domain_key.domain_name, '\0', 32);\r
- memcpy(k.logical_port_key.domain_key.domain_name, "Domain1" ,\r
- strlen("Domain1"));\r
- memset(k.logical_port_key.domain_key.ctr_key.controller_name, '\0', 32);\r
- void* val = NULL;\r
- uint32_t operation = UNC_OP_READ;\r
- Kt_LogicalMemberPort lmp_obj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- int ret = lmp_obj.PerformSyntaxValidation(db_conn,&k,val,operation,UNC_DT_STATE);\r
- EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SYNTAX);\r
-}\r
-\r
-// DeleteKeyInstance success\r
-TEST_F(KtClassTest, DeleteKeyInstance_01) {\r
- key_logical_member_port k;\r
- uint32_t key_type = 1;\r
- getKeyForKtLogicalMemberPort1(k);\r
- Kt_LogicalMemberPort lmp_obj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_SUCCESS);\r
- int ret = lmp_obj.DeleteKeyInstance(db_conn,&k,UNC_DT_STATE,key_type);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
- ODBCManager::clearStubData();\r
-}\r
-\r
-TEST_F(KtClassTest, DeleteKeyInstance_02) {\r
- key_logical_member_port k;\r
- uint32_t key_type = 1;\r
- getKeyForKtLogicalMemberPort1(k);\r
- Kt_LogicalMemberPort lmp_obj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_CONNECTION_ERROR);\r
- int ret = lmp_obj.DeleteKeyInstance(db_conn,&k,UNC_DT_STATE,key_type);\r
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);\r
- ODBCManager::clearStubData();\r
-}\r
-\r
-TEST_F(KtClassTest, DeleteKeyInstance_03) {\r
- key_logical_member_port k;\r
- uint32_t key_type = 1;\r
- getKeyForKtLogicalMemberPort1(k);\r
- Kt_LogicalMemberPort lmp_obj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_ROW_NOT_EXISTS);\r
- int ret = lmp_obj.DeleteKeyInstance(db_conn,&k,UNC_DT_STATE,key_type);\r
- EXPECT_EQ(ret,UPPL_RC_ERR_NO_SUCH_INSTANCE);\r
- ODBCManager::clearStubData();\r
-}\r
-\r
-TEST_F(KtClassTest, DeleteKeyInstance_04) {\r
- key_logical_member_port k;\r
- uint32_t key_type = 1;\r
- getKeyForKtLogicalMemberPort1(k);\r
- Kt_LogicalMemberPort lmp_obj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_FAILED);\r
- int ret = lmp_obj.DeleteKeyInstance(db_conn,&k,UNC_DT_STATE,key_type);\r
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_DELETE);\r
- ODBCManager::clearStubData();\r
-}\r
-\r
-TEST_F(KtClassTest, DeleteKeyInstance_05) {\r
- key_logical_member_port k;\r
- uint32_t key_type = 1;\r
- getKeyForKtLogicalMemberPort1(k);\r
- Kt_LogicalMemberPort lmp_obj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_FAILED);\r
- int ret = lmp_obj.DeleteKeyInstance(db_conn,&k,UNC_DT_CANDIDATE,key_type);\r
- EXPECT_EQ(ret,UPPL_RC_ERR_OPERATION_NOT_ALLOWED);\r
- ODBCManager::clearStubData();\r
-}\r
-\r
-// DeleteKeyInstance without switch id\r
-TEST_F(KtClassTest, DeleteKeyInstance_06) {\r
- key_logical_member_port k;\r
- uint32_t key_type = 1;\r
- memset(k.switch_id, '\0', 256);\r
- memset(k.physical_port_id, '\0', 32);\r
- memcpy(k.physical_port_id, "phy_port1", strlen("phy_port1"));\r
- memset(k.logical_port_key.port_id, '\0', 291);\r
- memcpy(k.logical_port_key.port_id, "log_port1", strlen("log_port1"));\r
- memset(k.logical_port_key.domain_key.domain_name, '\0', 32);\r
- memcpy(k.logical_port_key.domain_key.domain_name, "Domain1" ,\r
- strlen("Domain1"));\r
- memset(k.logical_port_key.domain_key.ctr_key.controller_name, '\0', 32);\r
- memcpy(k.logical_port_key.domain_key.ctr_key.controller_name, "controller4" ,\r
- strlen("controller4"));\r
- Kt_LogicalMemberPort lmp_obj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_SUCCESS);\r
- int ret = lmp_obj.DeleteKeyInstance(db_conn,&k,UNC_DT_STATE,key_type);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
-}\r
-// DeleteKeyInstance without physical port id\r
-TEST_F(KtClassTest, DeleteKeyInstance_07) {\r
- key_logical_member_port k;\r
- uint32_t key_type = 1;\r
- memset(k.switch_id, '\0', 256);\r
- memcpy(k.switch_id, "switch1", strlen("switch1"));\r
- memset(k.physical_port_id, '\0', 32);\r
- memset(k.logical_port_key.port_id, '\0', 320);\r
- memcpy(k.logical_port_key.port_id, "log_port1", strlen("log_port1"));\r
- memset(k.logical_port_key.domain_key.domain_name, '\0', 32);\r
- memcpy(k.logical_port_key.domain_key.domain_name, "Domain1" ,\r
- strlen("Domain1"));\r
- memset(k.logical_port_key.domain_key.ctr_key.controller_name, '\0', 32);\r
- memcpy(k.logical_port_key.domain_key.ctr_key.controller_name, "controller4" ,\r
- strlen("controller4"));\r
- Kt_LogicalMemberPort lmp_obj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_SUCCESS);\r
- int ret = lmp_obj.DeleteKeyInstance(db_conn,&k,UNC_DT_STATE,key_type);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
-}\r
-// DeleteKeyInstance without logical_port_id\r
-TEST_F(KtClassTest, DeleteKeyInstance_08) {\r
- key_logical_member_port k;\r
- uint32_t key_type = 1;\r
- memset(k.switch_id, '\0', 256);\r
- memcpy(k.switch_id, "switch1", strlen("switch1"));\r
- memset(k.physical_port_id, '\0', 32);\r
- memcpy(k.physical_port_id, "phy_port1", strlen("phy_port1"));\r
- memset(k.logical_port_key.port_id, '\0', 320);\r
- memset(k.logical_port_key.domain_key.domain_name, '\0', 32);\r
- memcpy(k.logical_port_key.domain_key.domain_name, "Domain1" ,\r
- strlen("Domain1"));\r
- memset(k.logical_port_key.domain_key.ctr_key.controller_name, '\0', 32);\r
- memcpy(k.logical_port_key.domain_key.ctr_key.controller_name, "controller4" ,\r
- strlen("controller4"));\r
- Kt_LogicalMemberPort lmp_obj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_SUCCESS);\r
- int ret = lmp_obj.DeleteKeyInstance(db_conn,&k,UNC_DT_STATE,key_type);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
-}\r
-// DeleteKeyInstance without domain name \r
-TEST_F(KtClassTest, DeleteKeyInstance_09) {\r
- key_logical_member_port k;\r
- uint32_t key_type = 1;\r
- memset(k.switch_id, '\0', 256);\r
- memcpy(k.switch_id, "switch1", strlen("switch1"));\r
- memset(k.physical_port_id, '\0', 32);\r
- memcpy(k.physical_port_id, "phy_port1", strlen("phy_port1"));\r
- memset(k.logical_port_key.port_id, '\0', 320);\r
- memcpy(k.logical_port_key.port_id, "log_port1", strlen("log_port1"));\r
- memset(k.logical_port_key.domain_key.domain_name, '\0', 32);\r
- memset(k.logical_port_key.domain_key.ctr_key.controller_name, '\0', 32);\r
- memcpy(k.logical_port_key.domain_key.ctr_key.controller_name, "controller4" ,\r
- strlen("controller4"));\r
- Kt_LogicalMemberPort lmp_obj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_SUCCESS);\r
- int ret = lmp_obj.DeleteKeyInstance(db_conn,&k,UNC_DT_STATE,key_type);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
-}\r
-// DeleteKeyInstance without controller name\r
-TEST_F(KtClassTest, DeleteKeyInstance_10) {\r
- key_logical_member_port k;\r
- uint32_t key_type = 1;\r
- memset(k.switch_id, '\0', 256);\r
- memcpy(k.switch_id, "switch1", strlen("switch1"));\r
- memset(k.physical_port_id, '\0', 32);\r
- memcpy(k.physical_port_id, "phy_port1", strlen("phy_port1"));\r
- memset(k.logical_port_key.port_id, '\0', 291);\r
- memcpy(k.logical_port_key.port_id, "log_port1", strlen("log_port1"));\r
- memset(k.logical_port_key.domain_key.domain_name, '\0', 32);\r
- memcpy(k.logical_port_key.domain_key.domain_name, "Domain1" ,\r
- strlen("Domain1"));\r
- memset(k.logical_port_key.domain_key.ctr_key.controller_name, '\0', 32);\r
- Kt_LogicalMemberPort lmp_obj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_SUCCESS);\r
- int ret = lmp_obj.DeleteKeyInstance(db_conn,&k,UNC_DT_STATE,key_type);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
-}\r
-\r
-// ReadBulkInternal success\r
-TEST_F(KtClassTest, ReadBulkInternal_01) {\r
- key_logical_member_port k;\r
- uint32_t key_type = 1;\r
- uint32_t max_rep_ct = 2;\r
- vector<key_logical_member_port_t> vect_logical_mem_port;\r
- getKeyForKtLogicalMemberPort1(k);\r
- Kt_LogicalMemberPort lmp_obj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_SUCCESS);\r
- int ret = lmp_obj.ReadBulkInternal(db_conn,&k,UNC_DT_STATE,max_rep_ct,vect_logical_mem_port);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
- ODBCManager::clearStubData();\r
-}\r
-\r
-TEST_F(KtClassTest, ReadBulkInternal_02) {\r
- key_logical_member_port k;\r
- uint32_t key_type = 1;\r
- uint32_t max_rep_ct = 2;\r
- vector<key_logical_member_port_t> vect_logical_mem_port;\r
- getKeyForKtLogicalMemberPort1(k);\r
- Kt_LogicalMemberPort lmp_obj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_SUCCESS);\r
- int ret = lmp_obj.ReadBulkInternal(db_conn,&k,UNC_DT_STATE,max_rep_ct,vect_logical_mem_port);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
- ODBCManager::clearStubData();\r
-}\r
-\r
-TEST_F(KtClassTest, ReadBulkInternal_03) {\r
- key_logical_member_port k;\r
- uint32_t key_type = 1;\r
- uint32_t max_rep_ct = 2;\r
- vector<key_logical_member_port_t> vect_logical_mem_port;\r
- getKeyForKtLogicalMemberPort1(k);\r
- Kt_LogicalMemberPort lmp_obj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_RECORD_NOT_FOUND);\r
- int ret = lmp_obj.ReadBulkInternal(db_conn,&k,UNC_DT_STATE,max_rep_ct,vect_logical_mem_port);\r
- EXPECT_EQ(ret,UPPL_RC_ERR_NO_SUCH_INSTANCE);\r
- ODBCManager::clearStubData();\r
-}\r
-\r
-TEST_F(KtClassTest, ReadBulkInternal_04) {\r
- key_logical_member_port k;\r
- uint32_t key_type = 1;\r
- uint32_t max_rep_ct = 2;\r
- vector<key_logical_member_port_t> vect_logical_mem_port;\r
- getKeyForKtLogicalMemberPort1(k);\r
- Kt_LogicalMemberPort lmp_obj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_CONNECTION_ERROR);\r
- int ret = lmp_obj.ReadBulkInternal(db_conn,&k,UNC_DT_STATE,max_rep_ct,vect_logical_mem_port);\r
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);\r
- ODBCManager::clearStubData();\r
-}\r
-\r
-TEST_F(KtClassTest, ReadBulkInternal_05) {\r
- key_logical_member_port k;\r
- uint32_t key_type = 1;\r
- uint32_t max_rep_ct = 0;\r
- vector<key_logical_member_port_t> vect_logical_mem_port;\r
- getKeyForKtLogicalMemberPort1(k);\r
- Kt_LogicalMemberPort lmp_obj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_FAILED);\r
- int ret = lmp_obj.ReadBulkInternal(db_conn,&k,UNC_DT_STATE,max_rep_ct,vect_logical_mem_port);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
- ODBCManager::clearStubData();\r
-}\r
-\r
-TEST_F(KtClassTest, ReadBulkInternal_06) {\r
- key_logical_member_port k;\r
- uint32_t key_type = 1;\r
- uint32_t max_rep_ct = 2;\r
- vector<key_logical_member_port_t> vect_logical_mem_port;\r
- getKeyForKtLogicalMemberPort1(k);\r
- Kt_LogicalMemberPort lmp_obj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_FAILED);\r
- int ret = lmp_obj.ReadBulkInternal(db_conn,&k,UNC_DT_STATE,max_rep_ct,vect_logical_mem_port);\r
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_GET);\r
- ODBCManager::clearStubData();\r
-}\r
-\r
-/*ReadInternal function when operation is lessthan READ */\r
-TEST_F(KtClassTest, ReadInternal_No_Read_01) {\r
- key_logical_member_port_t *k=new key_logical_member_port_t;\r
- vector<void *> vectVal_logicalmemberport;\r
- vector<void *> vectkey_logicalmemberport;\r
- vectkey_logicalmemberport.push_back(k);\r
- Kt_LogicalMemberPort ktlmportobj;\r
- uint32_t operation = UNC_OP_UPDATE;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- int ret = ktlmportobj.ReadInternal(db_conn,vectkey_logicalmemberport,vectVal_logicalmemberport,UNC_DT_STATE,UNC_OP_CREATE);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-\r
-/*ReadInternal function where value struct is NULL */\r
-TEST_F(KtClassTest, ReadInternal_VAlStructNull_02) {\r
- key_logical_member_port_t *k=new key_logical_member_port_t;\r
- vector<void *> vectVal_logicalmemberport;\r
- vector<void *> vectkey_logicalmemberport;\r
- vectkey_logicalmemberport.push_back(k);\r
- Kt_LogicalMemberPort ktlmportobj;\r
- uint32_t operation = UNC_OP_UPDATE;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- int ret = ktlmportobj.ReadInternal(db_conn,vectkey_logicalmemberport,vectVal_logicalmemberport,UNC_DT_STATE,UNC_OP_READ);\r
- EXPECT_EQ(ret,ODBCM_RC_MORE_ROWS_FOUND);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-\r
-/*PerformRead function which has invalid option1 */\r
-TEST_F(KtClassTest, PerformRead_01) {\r
- key_logical_member_port_t k;\r
- memset(&k, 0, sizeof(key_logical_member_port_t));\r
- Kt_LogicalMemberPort ktlmportobj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- ServerSession sess;\r
- ServerSession::clearStubData();\r
- sess.stub_setAddOutput((uint32_t)0);\r
- sess.stub_setAddOutput((uint32_t)0);\r
- sess.stub_setAddOutput((uint32_t)UNC_OP_READ);\r
- sess.stub_setAddOutput((uint32_t)1);\r
- sess.stub_setAddOutput((uint32_t)UNC_OPT1_DETAIL);\r
- sess.stub_setAddOutput((uint32_t)UNC_OPT2_NONE);\r
- sess.stub_setAddOutput((uint32_t)UNC_DT_STATE);\r
- sess.stub_setAddOutput((uint32_t)0);\r
- sess.stub_setAddOutput((uint32_t)UNC_KT_LOGICAL_MEMBER_PORT);\r
-\r
- int ret = ktlmportobj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,NULL,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_DETAIL,(uint32_t)UNC_OPT2_NONE,(uint32_t)1);\r
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-\r
-/*PerformRead function which has invalid option1 */\r
-TEST_F(KtClassTest, PerformRead_02) {\r
- key_logical_member_port_t k;\r
- memset(&k, 0, sizeof(key_logical_member_port_t));\r
- Kt_LogicalMemberPort ktlmportobj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- ServerSession sess;\r
- ServerSession::clearStubData();\r
- sess.stub_setAddOutput((uint32_t)0);\r
- sess.stub_setAddOutput((uint32_t)0);\r
- sess.stub_setAddOutput((uint32_t)UNC_OP_READ);\r
- sess.stub_setAddOutput((uint32_t)1);\r
- sess.stub_setAddOutput((uint32_t)UNC_OPT1_DETAIL);\r
- sess.stub_setAddOutput((uint32_t)UNC_OPT2_NONE);\r
- sess.stub_setAddOutput((uint32_t)UNC_DT_STATE);\r
- sess.stub_setAddOutput((uint32_t)UPPL_RC_ERR_INVALID_OPTION1);\r
- sess.stub_setAddOutput((uint32_t)UNC_KT_LOGICAL_MEMBER_PORT);\r
-\r
- int ret = ktlmportobj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,NULL,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_DETAIL,(uint32_t)UNC_OPT2_NONE,(uint32_t)1);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-\r
-/*PerformRead function which has invalid datatype */\r
-TEST_F(KtClassTest, PerformRead_03) {\r
- key_logical_member_port_t k;\r
- memset(&k, 0, sizeof(key_logical_member_port_t));\r
- Kt_LogicalMemberPort ktlmportobj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- ServerSession sess;\r
- ServerSession::clearStubData();\r
- sess.stub_setAddOutput((uint32_t)0);\r
- sess.stub_setAddOutput((uint32_t)0);\r
- sess.stub_setAddOutput((uint32_t)UNC_OP_READ);\r
- sess.stub_setAddOutput((uint32_t)1);\r
- sess.stub_setAddOutput((uint32_t)UNC_OPT1_DETAIL);\r
- sess.stub_setAddOutput((uint32_t)UNC_OPT2_NONE);\r
- sess.stub_setAddOutput((uint32_t)UNC_DT_CANDIDATE);\r
- sess.stub_setAddOutput((uint32_t)0);\r
- sess.stub_setAddOutput((uint32_t)UNC_KT_LOGICAL_MEMBER_PORT);\r
-\r
- int ret = ktlmportobj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,NULL,(uint32_t)UNC_DT_CANDIDATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_NONE,(uint32_t)1);\r
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-\r
-/*PerformRead function which has valid option2 */\r
-TEST_F(KtClassTest, PerformRead_04) {\r
- key_logical_member_port_t k;\r
- memset(&k, 0, sizeof(key_logical_member_port_t));\r
- Kt_LogicalMemberPort ktlmportobj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- ServerSession sess;\r
- ServerSession::clearStubData();\r
- sess.stub_setAddOutput((uint32_t)0);\r
- sess.stub_setAddOutput((uint32_t)0);\r
- sess.stub_setAddOutput((uint32_t)UNC_OP_READ);\r
- sess.stub_setAddOutput((uint32_t)1);\r
- sess.stub_setAddOutput((uint32_t)UNC_OPT1_NORMAL);\r
- sess.stub_setAddOutput((uint32_t)UNC_OPT2_NONE);\r
- sess.stub_setAddOutput((uint32_t)UNC_DT_STATE);\r
- sess.stub_setAddOutput((uint32_t)0);\r
- sess.stub_setAddOutput((uint32_t)UNC_KT_LOGICAL_MEMBER_PORT);\r
-\r
- int ret = ktlmportobj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,NULL,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_NONE,(uint32_t)1);\r
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-\r
-/*PerformRead function which has invalid datatype */\r
-TEST_F(KtClassTest, PerformRead_05) {\r
- key_logical_member_port_t k;\r
- memset(&k, 0, sizeof(key_logical_member_port_t));\r
- Kt_LogicalMemberPort ktlmportobj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- ServerSession sess;\r
- ServerSession::clearStubData();\r
- sess.stub_setAddOutput((uint32_t)0);\r
- sess.stub_setAddOutput((uint32_t)0);\r
- sess.stub_setAddOutput((uint32_t)UNC_OP_READ);\r
- sess.stub_setAddOutput((uint32_t)1);\r
- sess.stub_setAddOutput((uint32_t)UNC_OPT1_NORMAL);\r
- sess.stub_setAddOutput((uint32_t)UNC_OPT2_NONE);\r
- sess.stub_setAddOutput((uint32_t)UNC_DT_CANDIDATE);\r
- sess.stub_setAddOutput((uint32_t)UPPL_RC_ERR_OPERATION_NOT_ALLOWED);\r
- sess.stub_setAddOutput((uint32_t)UNC_KT_LOGICAL_MEMBER_PORT);\r
-\r
- int ret = ktlmportobj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,NULL,(uint32_t)UNC_DT_CANDIDATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_NONE,(uint32_t)1);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-\r
-/*PerformRead function which has invalid option2 */\r
-TEST_F(KtClassTest, PerformRead_06) {\r
- key_logical_member_port_t k;\r
- memset(&k, 0, sizeof(key_logical_member_port_t));\r
- Kt_LogicalMemberPort ktlmportobj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- ServerSession sess;\r
- ServerSession::clearStubData();\r
- sess.stub_setAddOutput((uint32_t)0);\r
- sess.stub_setAddOutput((uint32_t)0);\r
- sess.stub_setAddOutput((uint32_t)UNC_OP_READ);\r
- sess.stub_setAddOutput((uint32_t)1);\r
- sess.stub_setAddOutput((uint32_t)UNC_OPT1_NORMAL);\r
- sess.stub_setAddOutput((uint32_t)UNC_OPT2_NONE);\r
- sess.stub_setAddOutput((uint32_t)UNC_DT_STATE);\r
- sess.stub_setAddOutput((uint32_t)0);\r
- sess.stub_setAddOutput((uint32_t)UNC_KT_LOGICAL_MEMBER_PORT);\r
-\r
- int ret = ktlmportobj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,NULL,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_MAC_ENTRY,(uint32_t)1);\r
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-\r
-/*PerformRead function which has invalid option2 */\r
-TEST_F(KtClassTest, PerformRead_07) {\r
- key_logical_member_port_t k;\r
- memset(&k, 0, sizeof(key_logical_member_port_t));\r
- Kt_LogicalMemberPort ktlmportobj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- ServerSession sess;\r
- ServerSession::clearStubData();\r
- sess.stub_setAddOutput((uint32_t)0);\r
- sess.stub_setAddOutput((uint32_t)0);\r
- sess.stub_setAddOutput((uint32_t)UNC_OP_READ);\r
- sess.stub_setAddOutput((uint32_t)1);\r
- sess.stub_setAddOutput((uint32_t)UNC_OPT1_NORMAL);\r
- sess.stub_setAddOutput((uint32_t)UNC_OPT2_MAC_ENTRY);\r
- sess.stub_setAddOutput((uint32_t)UNC_DT_STATE);\r
- sess.stub_setAddOutput((uint32_t)UPPL_RC_ERR_INVALID_OPTION2);\r
- sess.stub_setAddOutput((uint32_t)UNC_KT_LOGICAL_MEMBER_PORT);\r
-\r
- int ret = ktlmportobj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,NULL,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_MAC_ENTRY,(uint32_t)1);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-\r
-/*PerformRead function with valid option1 and option2 */\r
-TEST_F(KtClassTest, PerformRead_08) {\r
- key_logical_member_port_t k;\r
- memset(&k, 0, sizeof(key_logical_member_port_t));\r
- Kt_LogicalMemberPort ktlmportobj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- ServerSession sess;\r
- ServerSession::clearStubData();\r
- sess.stub_setAddOutput((uint32_t)0);\r
- sess.stub_setAddOutput((uint32_t)0);\r
- sess.stub_setAddOutput((uint32_t)UNC_OP_READ);\r
- sess.stub_setAddOutput((uint32_t)1);\r
- sess.stub_setAddOutput((uint32_t)UNC_OPT1_NORMAL);\r
- sess.stub_setAddOutput((uint32_t)UNC_OPT2_NONE);\r
- sess.stub_setAddOutput((uint32_t)UNC_DT_STATE);\r
- sess.stub_setAddOutput((uint32_t)UPPL_RC_SUCCESS);\r
- sess.stub_setAddOutput((uint32_t)UNC_KT_LOGICAL_MEMBER_PORT);\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);\r
-\r
- int ret = ktlmportobj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,NULL,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_NONE,(uint32_t)1);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-\r
-/*PerformRead function with valid option1 and option2 */\r
-TEST_F(KtClassTest, PerformRead_09) {\r
- key_logical_member_port_t k;\r
- memset(&k, 0, sizeof(key_logical_member_port_t));\r
- Kt_LogicalMemberPort ktlmportobj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- ServerSession sess;\r
- ServerSession::clearStubData();\r
- sess.stub_setAddOutput((uint32_t)0);\r
- sess.stub_setAddOutput((uint32_t)0);\r
- sess.stub_setAddOutput((uint32_t)UNC_OP_READ);\r
- sess.stub_setAddOutput((uint32_t)1);\r
- sess.stub_setAddOutput((uint32_t)UNC_OPT1_NORMAL);\r
- sess.stub_setAddOutput((uint32_t)UNC_OPT2_NONE);\r
- sess.stub_setAddOutput((uint32_t)UNC_DT_STATE);\r
- sess.stub_setAddOutput((uint32_t)UPPL_RC_ERR_DB_GET);\r
- sess.stub_setAddOutput((uint32_t)UNC_KT_LOGICAL_MEMBER_PORT);\r
-\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_FAILED);\r
- int ret = ktlmportobj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,NULL,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_NONE,(uint32_t)1);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-\r
-//DB Access failure for UPDATE opr\r
-\r
-TEST_F(KtClassTest, PerformSemanticValid_UPD_DBFail) {\r
- PhysicalLayerStub::loadphysicallayer();\r
- key_logical_member_port_t k ;\r
- memset(&k,0,sizeof(key_logical_member_port_t));\r
- Kt_LogicalMemberPort KtObj;\r
- getKeyForKtLogicalMemberPort1(k);\r
- OdbcmConnectionHandler *db_conn = NULL;\r
- void *v = NULL;\r
- uint32_t operation = UNC_OP_UPDATE;\r
- uint32_t data_type = UNC_DT_STATE;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_CONNECTION_ERROR);\r
- int ret = KtObj.PerformSemanticValidation(db_conn, &k, v, operation, data_type);\r
- EXPECT_EQ(ret, UPPL_RC_ERR_DB_ACCESS);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-\r
-//DB Access failure for DEL opr \r
-TEST_F(KtClassTest, PerformSemanticValid_DEL_DBFail) {\r
- key_logical_member_port_t k ;\r
- memset(&k,0,sizeof(key_logical_member_port_t));\r
- Kt_LogicalMemberPort KtObj;\r
- getKeyForKtLogicalMemberPort1(k);\r
- OdbcmConnectionHandler *db_conn = NULL;\r
- void *v = NULL;\r
- uint32_t operation = UNC_OP_DELETE;\r
- uint32_t data_type = UNC_DT_STATE;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_CONNECTION_ERROR);\r
- int ret = KtObj.PerformSemanticValidation(db_conn, &k, v, operation, data_type);\r
- EXPECT_EQ(ret, UPPL_RC_ERR_DB_ACCESS);\r
- unc::uppl::ODBCManager::clearStubData();\r
-} \r
-\r
-//DB Access failure for READ opr\r
-TEST_F(KtClassTest, PerformSemanticValid_READ_DBFail) {\r
- key_logical_member_port_t k ;\r
- memset(&k,0,sizeof(key_logical_member_port_t));\r
- Kt_LogicalMemberPort KtObj;\r
- getKeyForKtLogicalMemberPort1(k);\r
- OdbcmConnectionHandler *db_conn = NULL;\r
- void *v = NULL;\r
- uint32_t operation = UNC_OP_READ;\r
- uint32_t data_type = UNC_DT_STATE;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_CONNECTION_ERROR);\r
- int ret = KtObj.PerformSemanticValidation(db_conn, &k, v, operation, data_type);\r
- EXPECT_EQ(ret, UPPL_RC_ERR_DB_ACCESS);\r
- unc::uppl::ODBCManager::clearStubData();\r
-} \r
-\r
-\r
-//key does not exist.\r
-//update operation not allowed\r
-TEST_F(KtClassTest, PerformSemanticValid_KeyNotExists_For_UPD) {\r
- key_logical_member_port_t k ;\r
- memset(&k,0,sizeof(key_logical_member_port_t));\r
- Kt_LogicalMemberPort KtObj;\r
- getKeyForKtLogicalMemberPort1(k);\r
- OdbcmConnectionHandler *db_conn = NULL;\r
- void *v = NULL;\r
- uint32_t operation = UNC_OP_UPDATE;\r
- uint32_t data_type = UNC_DT_STATE;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_FAILED);\r
- int ret = KtObj.PerformSemanticValidation(db_conn, &k, v, operation, data_type);\r
- EXPECT_EQ(ret, UPPL_RC_ERR_NO_SUCH_INSTANCE);\r
- unc::uppl::ODBCManager::clearStubData();\r
-} \r
-\r
-//key does not exist.\r
-//Delete operation not allowed\r
-TEST_F(KtClassTest, PerformSemanticValid_KeyNotExists_For_DEL) {\r
- key_logical_member_port_t k ;\r
- memset(&k,0,sizeof(key_logical_member_port_t));\r
- Kt_LogicalMemberPort KtObj;\r
- getKeyForKtLogicalMemberPort1(k);\r
- OdbcmConnectionHandler *db_conn = NULL;\r
- void *v = NULL;\r
- uint32_t operation = UNC_OP_DELETE;\r
- uint32_t data_type = UNC_DT_STATE;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_FAILED);\r
- int ret = KtObj.PerformSemanticValidation(db_conn, &k, v, operation, data_type);\r
- EXPECT_EQ(ret, UPPL_RC_ERR_NO_SUCH_INSTANCE);\r
- unc::uppl::ODBCManager::clearStubData();\r
-} \r
-\r
-//key does not exist.\r
-//Read operation not allowed\r
-TEST_F(KtClassTest, PerformSemanticValid_KeyNotExists_For_READ) {\r
- key_logical_member_port_t k ;\r
- memset(&k,0,sizeof(key_logical_member_port_t));\r
- Kt_LogicalMemberPort KtObj;\r
- getKeyForKtLogicalMemberPort1(k);\r
- OdbcmConnectionHandler *db_conn = NULL;\r
- void *v = NULL;\r
- uint32_t operation = UNC_OP_READ;\r
- uint32_t data_type = UNC_DT_STATE;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_FAILED);\r
- int ret = KtObj.PerformSemanticValidation(db_conn, &k, v, operation, data_type);\r
- EXPECT_EQ(ret, UPPL_RC_ERR_NO_SUCH_INSTANCE);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
- \r
-//key instance exist.\r
-//update operation allowed\r
-TEST_F(KtClassTest, PerformSemanticValid_KeyExists_UPD_Allow) {\r
- key_logical_member_port_t k ;\r
- memset(&k,0,sizeof(key_logical_member_port_t));\r
- Kt_LogicalMemberPort KtObj;\r
- getKeyForKtLogicalMemberPort1(k);\r
- OdbcmConnectionHandler *db_conn = NULL;\r
- void *v = NULL;\r
- uint32_t operation = UNC_OP_UPDATE;\r
- uint32_t data_type = UNC_DT_STATE;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);\r
- int ret = KtObj.PerformSemanticValidation(db_conn, &k, v, operation, data_type);\r
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);\r
- unc::uppl::ODBCManager::clearStubData();\r
-} \r
-\r
-//key instance exist.\r
-//Delete operation allowed\r
-TEST_F(KtClassTest, PerformSemanticValid_KeyExists_Del_Allow) {\r
- key_logical_member_port_t k ;\r
- memset(&k,0,sizeof(key_logical_member_port_t));\r
- Kt_LogicalMemberPort KtObj;\r
- getKeyForKtLogicalMemberPort1(k);\r
- OdbcmConnectionHandler *db_conn = NULL;\r
- void *v = NULL;\r
- uint32_t operation = UNC_OP_DELETE;\r
- uint32_t data_type = UNC_DT_STATE;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);\r
- int ret = KtObj.PerformSemanticValidation(db_conn, &k, v, operation, data_type);\r
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);\r
- unc::uppl::ODBCManager::clearStubData();\r
-} \r
-\r
-//key instance exist.\r
-//Read operation allowed\r
-TEST_F(KtClassTest, PerformSemanticValid_KeyExists_Read_Allow) {\r
- key_logical_member_port_t k ;\r
- memset(&k,0,sizeof(key_logical_member_port_t));\r
- Kt_LogicalMemberPort KtObj;\r
- getKeyForKtLogicalMemberPort1(k);\r
- OdbcmConnectionHandler *db_conn = NULL;\r
- void *v = NULL;\r
- uint32_t operation = UNC_OP_READ;\r
- uint32_t data_type = UNC_DT_STATE;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);\r
- int ret = KtObj.PerformSemanticValidation(db_conn, &k, v, operation, data_type);\r
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);\r
- unc::uppl::ODBCManager::clearStubData();\r
-} \r
-\r
-//key already exist\r
-//create operation not allowed\r
-TEST_F(KtClassTest, PerformSemanticValid_KeyExist_CREATE_NotAllow) {\r
- key_logical_member_port_t k;\r
- memset(&k,0,sizeof(key_logical_member_port_t));\r
- Kt_LogicalMemberPort KtObj;\r
- OdbcmConnectionHandler *db_conn = NULL;\r
- void *v = NULL;\r
- uint32_t operation = UNC_OP_CREATE;\r
- uint32_t data_type = UNC_DT_STATE;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);\r
- int ret = KtObj.PerformSemanticValidation(db_conn, &k, v, operation, data_type);\r
- EXPECT_EQ(ret, UPPL_RC_ERR_INSTANCE_EXISTS);\r
- unc::uppl::ODBCManager::clearStubData();\r
-} \r
-\r
-//IsRowExits:DB Access failure\r
-TEST_F(KtClassTest, PerformSemanticValid_KeyExist_CREATE_DB_Error) {\r
- key_logical_member_port_t k;\r
- memset(&k,0,sizeof(key_logical_member_port_t));\r
- Kt_LogicalMemberPort KtObj;\r
- OdbcmConnectionHandler *db_conn = NULL;\r
- void *v = NULL;\r
- uint32_t operation = UNC_OP_CREATE;\r
- uint32_t data_type = UNC_DT_STATE;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_CONNECTION_ERROR);\r
- int ret = KtObj.PerformSemanticValidation(db_conn, &k, v, operation, data_type);\r
- EXPECT_EQ(ret, UPPL_RC_ERR_DB_ACCESS);\r
- unc::uppl::ODBCManager::clearStubData();\r
-} \r
-\r
-//Error:ParentKey does not exist\r
-TEST_F(KtClassTest, PerformSemanticValid_KeyExist_CREATE_ParentKeyNotExist) {\r
- key_logical_member_port_t k;\r
- memset(&k,0,sizeof(key_logical_member_port_t));\r
- Kt_LogicalMemberPort KtObj;\r
- OdbcmConnectionHandler *db_conn = NULL;\r
- void *v = NULL;\r
- uint32_t operation = UNC_OP_CREATE;\r
- uint32_t data_type = UNC_DT_STATE;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_SUCCESS);\r
- int ret = KtObj.PerformSemanticValidation(db_conn, &k, v, operation, data_type);\r
- EXPECT_EQ(ret, UPPL_RC_ERR_PARENT_DOES_NOT_EXIST);\r
- unc::uppl::ODBCManager::clearStubData();\r
-} \r
-\r
-/********ReadLogicalMemberPortValFromDB*********/\r
-//Unsupported operation type returns Success\r
-TEST_F(KtClassTest, ReadLogicalMemberPortValFromDB_UnSupport_Opr) {\r
- key_logical_member_port_t k;\r
- memset(&k,0,sizeof(key_logical_member_port_t));\r
- Kt_LogicalMemberPort KtObj;\r
- OdbcmConnectionHandler *db_conn = NULL;\r
- uint32_t operation = UNC_OP_CREATE;\r
- uint32_t data_type = UNC_DT_STATE;\r
- uint32_t max_rep_ct;\r
- vector<key_logical_member_port_t> logical_mem_port;\r
- pfc_bool_t is_state;\r
- int ret = KtObj.ReadLogicalMemberPortValFromDB(db_conn, &k, data_type, operation, max_rep_ct, logical_mem_port);\r
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-\r
-//Read Error:No record found\r
- TEST_F(KtClassTest, ReadLogicalMemberPortValFromDB_READ_NoRecordFound) {\r
- key_logical_member_port_t k;\r
- memset(&k,0,sizeof(key_logical_member_port_t));\r
- Kt_LogicalMemberPort KtObj;\r
- OdbcmConnectionHandler *db_conn = NULL;\r
- uint32_t operation = UNC_OP_READ;\r
- uint32_t data_type = UNC_DT_STATE;\r
- uint32_t max_rep_ct;\r
- vector<key_logical_member_port_t> logical_mem_port;\r
- pfc_bool_t is_state;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_RECORD_NOT_FOUND);\r
- int ret = KtObj.ReadLogicalMemberPortValFromDB(db_conn, &k, data_type, operation, max_rep_ct, logical_mem_port);\r
- EXPECT_EQ(ret, UPPL_RC_ERR_NO_SUCH_INSTANCE);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-\r
-//Read :DB Connxn Error\r
-TEST_F(KtClassTest, ReadLogicalMemberPortValFromDB_READ_Db_Connxn_Error) {\r
- key_logical_member_port_t k;\r
- memset(&k,0,sizeof(key_logical_member_port_t));\r
- Kt_LogicalMemberPort KtObj;\r
- OdbcmConnectionHandler *db_conn = NULL;\r
- uint32_t operation = UNC_OP_READ;\r
- uint32_t data_type = UNC_DT_STATE;\r
- uint32_t max_rep_ct;\r
- vector<key_logical_member_port_t> logical_mem_port;\r
- pfc_bool_t is_state;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW,ODBCM_RC_CONNECTION_ERROR);\r
- int ret = KtObj.ReadLogicalMemberPortValFromDB(db_conn, &k, data_type, operation, max_rep_ct, logical_mem_port);\r
- EXPECT_EQ(ret, UPPL_RC_ERR_DB_ACCESS);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-\r
-//Read :Error returning DB_GET\r
-TEST_F(KtClassTest, ReadLogicalMemberPortValFromDB_READ_Db_GetError) {\r
- key_logical_member_port_t k;\r
- memset(&k,0,sizeof(key_logical_member_port_t));\r
- Kt_LogicalMemberPort KtObj;\r
- OdbcmConnectionHandler *db_conn = NULL;\r
- uint32_t operation = UNC_OP_READ;\r
- uint32_t data_type = UNC_DT_STATE;\r
- uint32_t max_rep_ct;\r
- vector<key_logical_member_port_t> logical_mem_port;\r
- pfc_bool_t is_state;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW,ODBCM_RC_FAILED);\r
- int ret = KtObj.ReadLogicalMemberPortValFromDB(db_conn, &k, data_type, operation, max_rep_ct, logical_mem_port);\r
- EXPECT_EQ(ret, UPPL_RC_ERR_DB_GET);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-\r
- //Read:GetOneRow Success\r
-TEST_F(KtClassTest, ReadLogicalMemberPortValFromDB_READ_GetOneRow_Success) {\r
- key_logical_member_port_t k;\r
- memset(&k,0,sizeof(key_logical_member_port_t));\r
- Kt_LogicalMemberPort KtObj;\r
- OdbcmConnectionHandler *db_conn = NULL;\r
- uint32_t operation = UNC_OP_READ;\r
- uint32_t data_type = UNC_DT_STATE;\r
- uint32_t max_rep_ct;\r
- vector<key_logical_member_port_t> logical_mem_port;\r
- pfc_bool_t is_state;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW,ODBCM_RC_SUCCESS);\r
- int ret = KtObj.ReadLogicalMemberPortValFromDB(db_conn, &k, data_type, operation, max_rep_ct, logical_mem_port);\r
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-\r
-/******ReadBulk**********/\r
-//ReadBulk Not allowed for UNC_DT_CANDIDATE\r
-TEST_F(KtClassTest, ReadBulk_DB_NoMatch) {\r
- PhysicalLayerStub::loadphysicallayer();\r
- key_logical_member_port_t k;\r
- Kt_LogicalMemberPort KtObj;\r
- getKeyForKtLogicalMemberPort1(k);\r
- uint32_t data_type;\r
- OdbcmConnectionHandler *db_conn = NULL;\r
- uint32_t max_rep_ct;\r
- int child_index;\r
- pfc_bool_t parent_call;\r
- pfc_bool_t is_read_next;\r
- ReadRequest *read_req = NULL;\r
- int ret = KtObj.ReadBulk(db_conn, &k, UNC_DT_RUNNING, max_rep_ct, child_index,parent_call, is_read_next,read_req);\r
- EXPECT_EQ(ret, UPPL_RC_ERR_OPERATION_NOT_ALLOWED);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-\r
-//If max_rep_count is 0,return success\r
-TEST_F(KtClassTest, ReadBulk_MaxCt_Zero) {\r
- key_logical_member_port_t k;\r
- Kt_LogicalMemberPort KtObj;\r
- getKeyForKtLogicalMemberPort1(k);\r
- uint32_t data_type;\r
- OdbcmConnectionHandler *db_conn = NULL;\r
- uint32_t max_rep_ct = 0;\r
- int child_index;\r
- pfc_bool_t parent_call;\r
- pfc_bool_t is_read_next;\r
- ReadRequest *read_req = NULL;\r
- int ret = KtObj.ReadBulk(db_conn, &k, UNC_DT_STATE, max_rep_ct, child_index,parent_call, is_read_next,read_req);\r
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-\r
-//GetBulkRows Read Status Success\r
-TEST_F(KtClassTest, ReadBulk__Success) {\r
- key_logical_member_port_t k;\r
- Kt_LogicalMemberPort KtObj;\r
- getKeyForKtLogicalMemberPort1(k);\r
- uint32_t data_type;\r
- OdbcmConnectionHandler *db_conn = NULL;\r
- uint32_t max_rep_ct = 1;\r
- int child_index;\r
- pfc_bool_t parent_call = false;\r
- pfc_bool_t is_read_next;\r
- ReadRequest *read_req = new ReadRequest;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS,ODBCM_RC_SUCCESS);\r
- int ret = KtObj.ReadBulk(db_conn, &k, UNC_DT_STATE, max_rep_ct, child_index,parent_call, is_read_next,read_req);\r
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-\r
-//GetBulkRows Returns DB Access Error\r
-TEST_F(KtClassTest, ReadBulk_Db_Access_Error) {\r
- key_logical_member_port_t k;\r
- Kt_LogicalMemberPort KtObj;\r
- getKeyForKtLogicalMemberPort1(k);\r
- uint32_t data_type;\r
- OdbcmConnectionHandler *db_conn = NULL;\r
- uint32_t max_rep_ct = 1;\r
- int child_index;\r
- pfc_bool_t parent_call = false;\r
- pfc_bool_t is_read_next;\r
- ReadRequest *read_req = new ReadRequest;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_CONNECTION_ERROR);\r
- int ret = KtObj.ReadBulk(db_conn, &k, UNC_DT_STATE, max_rep_ct, child_index,parent_call, is_read_next,read_req);\r
- EXPECT_EQ(ret, UPPL_RC_ERR_DB_ACCESS);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-\r
-//Read Status for next Kin Success\r
-TEST_F(KtClassTest, ReadBulk_Next_Kin_Success) {\r
- key_logical_port_t k;\r
- Kt_LogicalMemberPort KtObj;\r
- //getKeyForKtLogicalMemberPort1(k);\r
- uint32_t data_type;\r
- OdbcmConnectionHandler *db_conn = NULL;\r
- uint32_t max_rep_ct = 1;\r
- int child_index;\r
- pfc_bool_t parent_call = false;\r
- pfc_bool_t is_read_next;\r
- ReadRequest *read_req = new ReadRequest;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_SUCCESS);\r
- int ret = KtObj.ReadBulk(db_conn, &k, UNC_DT_STATE, max_rep_ct, child_index,parent_call, is_read_next,read_req);\r
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-\r
-//Read Status Success for no such instance\r
-TEST_F(KtClassTest, ReadBulk_Succes__For_NoInstance) {\r
- key_logical_port_t k;\r
- Kt_LogicalMemberPort KtObj;\r
- //getKeyForKtLogicalMemberPort1(k);\r
- uint32_t data_type;\r
- OdbcmConnectionHandler *db_conn = NULL;\r
- uint32_t max_rep_ct = 1;\r
- int child_index;\r
- pfc_bool_t parent_call = false;\r
- pfc_bool_t is_read_next;\r
- ReadRequest *read_req = new ReadRequest;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_RECORD_NOT_FOUND);\r
- int ret = KtObj.ReadBulk(db_conn, &k, UNC_DT_STATE, max_rep_ct, child_index,parent_call, is_read_next,read_req);\r
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-\r
-TEST_F(KtClassTest, ReadBulk_Succes_NOSUCHINSTANCE) {\r
- key_logical_member_port_t k;\r
- Kt_LogicalMemberPort KtObj;\r
- //getKeyForKtLogicalMemberPort1(k);\r
- uint32_t data_type;\r
- OdbcmConnectionHandler *db_conn = NULL;\r
- uint32_t max_rep_ct = 1;\r
- int child_index;\r
- pfc_bool_t parent_call = false;\r
- pfc_bool_t is_read_next;\r
- ReadRequest *read_req = new ReadRequest;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_RECORD_NOT_FOUND);\r
- int ret = KtObj.ReadBulk(db_conn, &k, UNC_DT_STATE, max_rep_ct, child_index,parent_call, is_read_next,read_req);\r
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
+/*
+ * Copyright (c) 2012-2013 NEC Corporation
+ * * All rights reserved.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this
+ * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
+ */
+
+#include <limits.h>
+#include <gtest/gtest.h>
+
+#include <pfcxx/ipc_client.hh>
+#include <pfc/ipc_struct.h>
+
+#include <stdio.h>
+#include <sys/stat.h>
+#include <sys/mman.h>
+#include <arpa/inet.h>
+
+#include <time.h>
+#include <pfc/base.h>
+#include <pfc/ipc.h>
+#include <pfc/config.h>
+
+#include <pfc/conf.h>
+#include <pfc/log.h>
+#include <pfc/util.h>
+#include <pfc/event.h>
+#include <pfc/path.h>
+#include <pfc/hash.h>
+#include <pfc/thread.h>
+#include <pfc/refptr.h>
+#include <pfc/listmodel.h>
+#include <pfc/iostream.h>
+#include <pfc/ipc_client.h>
+#include <pfc/ipc_pfcd.h>
+#include <pfc/ipc_struct.h>
+#include <odbcm_mgr.hh>
+#include <physical_common_def.hh>
+#include <unc/uppl_common.h>
+#include <unc/keytype.h>
+#include <itc_kt_base.hh>
+#include <itc_kt_root.hh>
+#include <itc_kt_controller.hh>
+#include <itc_kt_ctr_domain.hh>
+#include <itc_kt_switch.hh>
+#include <itc_kt_port.hh>
+#include <itc_kt_link.hh>
+#include <itc_kt_boundary.hh>
+#include <itc_kt_logicalport.hh>
+#include <ipct_util.hh>
+#include "PhysicalLayerStub.hh"
+#include <itc_read_request.hh>
+#include <itc_kt_logical_member_port.hh>
+#include "ut_util.hh"
+
+using namespace pfc;
+using namespace pfc::core;
+using namespace pfc::core::ipc;
+using namespace std;
+using namespace unc::uppl::test;
+
+class LogicalMemberPortTest
+ : public UpplTestEnv
+{
+};
+
+static void getKeyForKtLogicalMemberPort1(key_logical_member_port_t& k) {
+ memset(k.switch_id, '\0', 256);
+ memcpy(k.switch_id, "{0x10,0xbc}", strlen("{0x10,0xbc}"));
+ memset(k.physical_port_id, '\0', 32);
+ memcpy(k.physical_port_id, "controller1 pord id:1",
+ strlen("controller1 pord id:1"));
+ memset(k.logical_port_key.port_id, '\0', 320);
+ memcpy(k.logical_port_key.port_id, "{0x00,0xa}", strlen("{0x00,0xa}"));
+ memset(k.logical_port_key.domain_key.domain_name, '\0', 32);
+ memcpy(k.logical_port_key.domain_key.domain_name, "controller1 domain_name",
+ strlen("controller1 domain_name"));
+ memset(k.logical_port_key.domain_key.ctr_key.controller_name, '\0', 32);
+ memcpy(k.logical_port_key.domain_key.ctr_key.controller_name, "controller1" ,
+ strlen("controller1"));
+}
+
+static void getKeyForKtLogicalMemberPort2(key_logical_member_port_t& k) {
+ memset(k.switch_id, '\0', 256);
+ memcpy(k.switch_id, "{0x11,0xac}", strlen("{0x11,0xac}"));
+ memset(k.physical_port_id, '\0', 32);
+ memcpy(k.physical_port_id, "controller3 pord id:1",
+ strlen("controller3 pord id:1"));
+ memset(k.logical_port_key.port_id, '\0', 291);
+ memcpy(k.logical_port_key.port_id, "{0xab,0xc}", strlen("{0xab,0xc}"));
+ memset(k.logical_port_key.domain_key.domain_name, '\0', 32);
+ memcpy(k.logical_port_key.domain_key.domain_name, "controller3_domain_name" ,
+ strlen("controller3_domain_name"));
+ memset(k.logical_port_key.domain_key.ctr_key.controller_name, '\0', 32);
+ memcpy(k.logical_port_key.domain_key.ctr_key.controller_name, "controller3" ,
+ strlen("controller3"));
+}
+
+TEST_F(LogicalMemberPortTest, IsKeyExists_01) {
+ string controller_name = "Controller1";
+ string domain_name = "Domain1";
+ string port_id = "log_port1";
+ string switch_id = "switch1";
+ string physical_port_id = "phy_port1";
+ vector<string> key_values;
+ key_values.push_back(controller_name);
+ key_values.push_back(domain_name);
+ key_values.push_back(port_id);
+ key_values.push_back(switch_id);
+ key_values.push_back(physical_port_id);
+ Kt_LogicalMemberPort lmp_obj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);
+ int ret = lmp_obj.IsKeyExists(db_conn,UNC_DT_STATE,key_values);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalMemberPortTest, IsKeyExists_02) {
+ string controller_name = "Controller1";
+ string domain_name = "Domain1";
+ string port_id = "log_port1";
+ string switch_id = "switch1";
+ string physical_port_id = "phy_port1";
+ vector<string> key_values;
+ key_values.push_back(controller_name);
+ key_values.push_back(domain_name);
+ key_values.push_back(port_id);
+ key_values.push_back(switch_id);
+ key_values.push_back(physical_port_id);
+ Kt_LogicalMemberPort lmp_obj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_CONNECTION_ERROR);
+ int ret = lmp_obj.IsKeyExists(db_conn,UNC_DT_STATE,key_values);
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
+}
+
+TEST_F(LogicalMemberPortTest, IsKeyExists_03) {
+ string controller_name = "Controller1";
+ string domain_name = "Domain1";
+ string port_id = "log_port1";
+ string switch_id = "switch1";
+ string physical_port_id = "phy_port1";
+ vector<string> key_values;
+ key_values.push_back(controller_name);
+ key_values.push_back(domain_name);
+ key_values.push_back(port_id);
+ key_values.push_back(switch_id);
+ key_values.push_back(physical_port_id);
+ Kt_LogicalMemberPort lmp_obj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_NOT_EXISTS);
+ int ret = lmp_obj.IsKeyExists(db_conn,UNC_DT_STATE,key_values);
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
+}
+
+TEST_F(LogicalMemberPortTest, IsKeyExists_04) {
+ vector<string> key_values;
+ key_values.clear();
+ Kt_LogicalMemberPort lmp_obj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_NOT_EXISTS);
+ int ret = lmp_obj.IsKeyExists(db_conn,UNC_DT_STATE,key_values);
+ EXPECT_EQ(UPPL_RC_ERR_BAD_REQUEST, ret);
+}
+
+// PerformSyntaxValidation with value structure
+TEST_F(LogicalMemberPortTest, PerformSyntaxValidation_01) {
+ key_logical_member_port k;
+ getKeyForKtLogicalMemberPort2(k);
+ key_logical_member_port val;
+ memset(&val, 0, sizeof(val));
+ uint32_t operation = UNC_OP_READ;
+ Kt_LogicalMemberPort lmp_obj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ int ret = lmp_obj.PerformSyntaxValidation(db_conn,&k,&val,operation,UNC_DT_STATE);
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SYNTAX, ret);
+}
+
+// PerformSyntaxValidation success
+TEST_F(LogicalMemberPortTest, PerformSyntaxValidation_02) {
+ key_logical_member_port k;
+ getKeyForKtLogicalMemberPort2(k);
+ void* val = NULL;
+ uint32_t operation = UNC_OP_READ;
+ Kt_LogicalMemberPort lmp_obj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ int ret = lmp_obj.PerformSyntaxValidation(db_conn,&k,val,operation,UNC_DT_STATE);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+// PerformSyntaxValidation without switch id
+TEST_F(LogicalMemberPortTest, PerformSyntaxValidation_03) {
+ key_logical_member_port k;
+ memset(k.switch_id, '\0', 256);
+ memset(k.physical_port_id, '\0', 32);
+ memcpy(k.physical_port_id, "phy_port1", strlen("phy_port1"));
+ memset(k.logical_port_key.port_id, '\0', 291);
+ memcpy(k.logical_port_key.port_id, "log_port1", strlen("log_port1"));
+ memset(k.logical_port_key.domain_key.domain_name, '\0', 32);
+ memcpy(k.logical_port_key.domain_key.domain_name, "Domain1" ,
+ strlen("Domain1"));
+ memset(k.logical_port_key.domain_key.ctr_key.controller_name, '\0', 32);
+ memcpy(k.logical_port_key.domain_key.ctr_key.controller_name, "controller4" ,
+ strlen("controller4"));
+ void* val = NULL;
+ uint32_t operation = UNC_OP_READ;
+ Kt_LogicalMemberPort lmp_obj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ int ret = lmp_obj.PerformSyntaxValidation(db_conn,&k,val,operation,UNC_DT_STATE);
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SYNTAX, ret);
+}
+// PerformSyntaxValidation without physical port id
+TEST_F(LogicalMemberPortTest, PerformSyntaxValidation_04) {
+ key_logical_member_port k;
+ memset(k.switch_id, '\0', 256);
+ memcpy(k.switch_id, "switch1", strlen("switch1"));
+ memset(k.physical_port_id, '\0', 32);
+ memset(k.logical_port_key.port_id, '\0', 320);
+ memcpy(k.logical_port_key.port_id, "log_port1", strlen("log_port1"));
+ memset(k.logical_port_key.domain_key.domain_name, '\0', 32);
+ memcpy(k.logical_port_key.domain_key.domain_name, "Domain1" ,
+ strlen("Domain1"));
+ memset(k.logical_port_key.domain_key.ctr_key.controller_name, '\0', 32);
+ memcpy(k.logical_port_key.domain_key.ctr_key.controller_name, "controller4" ,
+ strlen("controller4"));
+ void* val = NULL;
+ uint32_t operation = UNC_OP_READ;
+ Kt_LogicalMemberPort lmp_obj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ int ret = lmp_obj.PerformSyntaxValidation(db_conn,&k,val,operation,UNC_DT_STATE);
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SYNTAX, ret);
+}
+// PerformSyntaxValidation without logical_port_id
+TEST_F(LogicalMemberPortTest, PerformSyntaxValidation_05) {
+ key_logical_member_port k;
+ memset(k.switch_id, '\0', 256);
+ memcpy(k.switch_id, "switch1", strlen("switch1"));
+ memset(k.physical_port_id, '\0', 32);
+ memcpy(k.physical_port_id, "phy_port1", strlen("phy_port1"));
+ memset(k.logical_port_key.port_id, '\0', 320);
+ memset(k.logical_port_key.domain_key.domain_name, '\0', 32);
+ memcpy(k.logical_port_key.domain_key.domain_name, "Domain1" ,
+ strlen("Domain1"));
+ memset(k.logical_port_key.domain_key.ctr_key.controller_name, '\0', 32);
+ memcpy(k.logical_port_key.domain_key.ctr_key.controller_name, "controller4" ,
+ strlen("controller4"));
+ void* val = NULL;
+ uint32_t operation = UNC_OP_READ;
+ Kt_LogicalMemberPort lmp_obj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ int ret = lmp_obj.PerformSyntaxValidation(db_conn,&k,val,operation,UNC_DT_STATE);
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SYNTAX, ret);
+}
+// PerformSyntaxValidation without domain name
+TEST_F(LogicalMemberPortTest, PerformSyntaxValidation_06) {
+ key_logical_member_port k;
+ memset(k.switch_id, '\0', 256);
+ memcpy(k.switch_id, "switch1", strlen("switch1"));
+ memset(k.physical_port_id, '\0', 32);
+ memcpy(k.physical_port_id, "phy_port1", strlen("phy_port1"));
+ memset(k.logical_port_key.port_id, '\0', 320);
+ memcpy(k.logical_port_key.port_id, "log_port1", strlen("log_port1"));
+ memset(k.logical_port_key.domain_key.domain_name, '\0', 32);
+ memset(k.logical_port_key.domain_key.ctr_key.controller_name, '\0', 32);
+ memcpy(k.logical_port_key.domain_key.ctr_key.controller_name, "controller4" ,
+ strlen("controller4"));
+ void* val = NULL;
+ uint32_t operation = UNC_OP_READ;
+ Kt_LogicalMemberPort lmp_obj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ int ret = lmp_obj.PerformSyntaxValidation(db_conn,&k,val,operation,UNC_DT_STATE);
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SYNTAX, ret);
+}
+// PerformSyntaxValidation without controller name
+TEST_F(LogicalMemberPortTest, PerformSyntaxValidation_07) {
+ key_logical_member_port k;
+ memset(k.switch_id, '\0', 256);
+ memcpy(k.switch_id, "switch1", strlen("switch1"));
+ memset(k.physical_port_id, '\0', 32);
+ memcpy(k.physical_port_id, "phy_port1", strlen("phy_port1"));
+ memset(k.logical_port_key.port_id, '\0', 291);
+ memcpy(k.logical_port_key.port_id, "log_port1", strlen("log_port1"));
+ memset(k.logical_port_key.domain_key.domain_name, '\0', 32);
+ memcpy(k.logical_port_key.domain_key.domain_name, "Domain1" ,
+ strlen("Domain1"));
+ memset(k.logical_port_key.domain_key.ctr_key.controller_name, '\0', 32);
+ void* val = NULL;
+ uint32_t operation = UNC_OP_READ;
+ Kt_LogicalMemberPort lmp_obj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ int ret = lmp_obj.PerformSyntaxValidation(db_conn,&k,val,operation,UNC_DT_STATE);
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SYNTAX, ret);
+}
+
+// DeleteKeyInstance success
+TEST_F(LogicalMemberPortTest, DeleteKeyInstance_01) {
+ key_logical_member_port k;
+ uint32_t key_type = 1;
+ getKeyForKtLogicalMemberPort1(k);
+ Kt_LogicalMemberPort lmp_obj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_SUCCESS);
+ int ret = lmp_obj.DeleteKeyInstance(db_conn,&k,UNC_DT_STATE,key_type);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalMemberPortTest, DeleteKeyInstance_02) {
+ key_logical_member_port k;
+ uint32_t key_type = 1;
+ getKeyForKtLogicalMemberPort1(k);
+ Kt_LogicalMemberPort lmp_obj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_CONNECTION_ERROR);
+ int ret = lmp_obj.DeleteKeyInstance(db_conn,&k,UNC_DT_STATE,key_type);
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
+}
+
+TEST_F(LogicalMemberPortTest, DeleteKeyInstance_03) {
+ key_logical_member_port k;
+ uint32_t key_type = 1;
+ getKeyForKtLogicalMemberPort1(k);
+ Kt_LogicalMemberPort lmp_obj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_ROW_NOT_EXISTS);
+ int ret = lmp_obj.DeleteKeyInstance(db_conn,&k,UNC_DT_STATE,key_type);
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
+}
+
+TEST_F(LogicalMemberPortTest, DeleteKeyInstance_04) {
+ key_logical_member_port k;
+ uint32_t key_type = 1;
+ getKeyForKtLogicalMemberPort1(k);
+ Kt_LogicalMemberPort lmp_obj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_FAILED);
+ int ret = lmp_obj.DeleteKeyInstance(db_conn,&k,UNC_DT_STATE,key_type);
+ EXPECT_EQ(UPPL_RC_ERR_DB_DELETE, ret);
+}
+
+TEST_F(LogicalMemberPortTest, DeleteKeyInstance_05) {
+ key_logical_member_port k;
+ uint32_t key_type = 1;
+ getKeyForKtLogicalMemberPort1(k);
+ Kt_LogicalMemberPort lmp_obj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_FAILED);
+ int ret = lmp_obj.DeleteKeyInstance(db_conn,&k,UNC_DT_CANDIDATE,key_type);
+ EXPECT_EQ(UPPL_RC_ERR_OPERATION_NOT_ALLOWED, ret);
+}
+
+// DeleteKeyInstance without switch id
+TEST_F(LogicalMemberPortTest, DeleteKeyInstance_06) {
+ key_logical_member_port k;
+ uint32_t key_type = 1;
+ memset(k.switch_id, '\0', 256);
+ memset(k.physical_port_id, '\0', 32);
+ memcpy(k.physical_port_id, "phy_port1", strlen("phy_port1"));
+ memset(k.logical_port_key.port_id, '\0', 291);
+ memcpy(k.logical_port_key.port_id, "log_port1", strlen("log_port1"));
+ memset(k.logical_port_key.domain_key.domain_name, '\0', 32);
+ memcpy(k.logical_port_key.domain_key.domain_name, "Domain1" ,
+ strlen("Domain1"));
+ memset(k.logical_port_key.domain_key.ctr_key.controller_name, '\0', 32);
+ memcpy(k.logical_port_key.domain_key.ctr_key.controller_name, "controller4" ,
+ strlen("controller4"));
+ Kt_LogicalMemberPort lmp_obj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_SUCCESS);
+ int ret = lmp_obj.DeleteKeyInstance(db_conn,&k,UNC_DT_STATE,key_type);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+// DeleteKeyInstance without physical port id
+TEST_F(LogicalMemberPortTest, DeleteKeyInstance_07) {
+ key_logical_member_port k;
+ uint32_t key_type = 1;
+ memset(k.switch_id, '\0', 256);
+ memcpy(k.switch_id, "switch1", strlen("switch1"));
+ memset(k.physical_port_id, '\0', 32);
+ memset(k.logical_port_key.port_id, '\0', 320);
+ memcpy(k.logical_port_key.port_id, "log_port1", strlen("log_port1"));
+ memset(k.logical_port_key.domain_key.domain_name, '\0', 32);
+ memcpy(k.logical_port_key.domain_key.domain_name, "Domain1" ,
+ strlen("Domain1"));
+ memset(k.logical_port_key.domain_key.ctr_key.controller_name, '\0', 32);
+ memcpy(k.logical_port_key.domain_key.ctr_key.controller_name, "controller4" ,
+ strlen("controller4"));
+ Kt_LogicalMemberPort lmp_obj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_SUCCESS);
+ int ret = lmp_obj.DeleteKeyInstance(db_conn,&k,UNC_DT_STATE,key_type);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+// DeleteKeyInstance without logical_port_id
+TEST_F(LogicalMemberPortTest, DeleteKeyInstance_08) {
+ key_logical_member_port k;
+ uint32_t key_type = 1;
+ memset(k.switch_id, '\0', 256);
+ memcpy(k.switch_id, "switch1", strlen("switch1"));
+ memset(k.physical_port_id, '\0', 32);
+ memcpy(k.physical_port_id, "phy_port1", strlen("phy_port1"));
+ memset(k.logical_port_key.port_id, '\0', 320);
+ memset(k.logical_port_key.domain_key.domain_name, '\0', 32);
+ memcpy(k.logical_port_key.domain_key.domain_name, "Domain1" ,
+ strlen("Domain1"));
+ memset(k.logical_port_key.domain_key.ctr_key.controller_name, '\0', 32);
+ memcpy(k.logical_port_key.domain_key.ctr_key.controller_name, "controller4" ,
+ strlen("controller4"));
+ Kt_LogicalMemberPort lmp_obj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_SUCCESS);
+ int ret = lmp_obj.DeleteKeyInstance(db_conn,&k,UNC_DT_STATE,key_type);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+// DeleteKeyInstance without domain name
+TEST_F(LogicalMemberPortTest, DeleteKeyInstance_09) {
+ key_logical_member_port k;
+ uint32_t key_type = 1;
+ memset(k.switch_id, '\0', 256);
+ memcpy(k.switch_id, "switch1", strlen("switch1"));
+ memset(k.physical_port_id, '\0', 32);
+ memcpy(k.physical_port_id, "phy_port1", strlen("phy_port1"));
+ memset(k.logical_port_key.port_id, '\0', 320);
+ memcpy(k.logical_port_key.port_id, "log_port1", strlen("log_port1"));
+ memset(k.logical_port_key.domain_key.domain_name, '\0', 32);
+ memset(k.logical_port_key.domain_key.ctr_key.controller_name, '\0', 32);
+ memcpy(k.logical_port_key.domain_key.ctr_key.controller_name, "controller4" ,
+ strlen("controller4"));
+ Kt_LogicalMemberPort lmp_obj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_SUCCESS);
+ int ret = lmp_obj.DeleteKeyInstance(db_conn,&k,UNC_DT_STATE,key_type);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+// DeleteKeyInstance without controller name
+TEST_F(LogicalMemberPortTest, DeleteKeyInstance_10) {
+ key_logical_member_port k;
+ uint32_t key_type = 1;
+ memset(k.switch_id, '\0', 256);
+ memcpy(k.switch_id, "switch1", strlen("switch1"));
+ memset(k.physical_port_id, '\0', 32);
+ memcpy(k.physical_port_id, "phy_port1", strlen("phy_port1"));
+ memset(k.logical_port_key.port_id, '\0', 291);
+ memcpy(k.logical_port_key.port_id, "log_port1", strlen("log_port1"));
+ memset(k.logical_port_key.domain_key.domain_name, '\0', 32);
+ memcpy(k.logical_port_key.domain_key.domain_name, "Domain1" ,
+ strlen("Domain1"));
+ memset(k.logical_port_key.domain_key.ctr_key.controller_name, '\0', 32);
+ Kt_LogicalMemberPort lmp_obj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_SUCCESS);
+ int ret = lmp_obj.DeleteKeyInstance(db_conn,&k,UNC_DT_STATE,key_type);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+// ReadBulkInternal success
+TEST_F(LogicalMemberPortTest, ReadBulkInternal_01) {
+ key_logical_member_port k;
+ uint32_t max_rep_ct = 2;
+ vector<key_logical_member_port_t> vect_logical_mem_port;
+ getKeyForKtLogicalMemberPort1(k);
+ Kt_LogicalMemberPort lmp_obj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_SUCCESS);
+ int ret = lmp_obj.ReadBulkInternal(db_conn,&k,UNC_DT_STATE,max_rep_ct,vect_logical_mem_port);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalMemberPortTest, ReadBulkInternal_02) {
+ key_logical_member_port k;
+ uint32_t max_rep_ct = 2;
+ vector<key_logical_member_port_t> vect_logical_mem_port;
+ getKeyForKtLogicalMemberPort1(k);
+ Kt_LogicalMemberPort lmp_obj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_SUCCESS);
+ int ret = lmp_obj.ReadBulkInternal(db_conn,&k,UNC_DT_STATE,max_rep_ct,vect_logical_mem_port);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalMemberPortTest, ReadBulkInternal_03) {
+ key_logical_member_port k;
+ uint32_t max_rep_ct = 2;
+ vector<key_logical_member_port_t> vect_logical_mem_port;
+ getKeyForKtLogicalMemberPort1(k);
+ Kt_LogicalMemberPort lmp_obj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_RECORD_NOT_FOUND);
+ int ret = lmp_obj.ReadBulkInternal(db_conn,&k,UNC_DT_STATE,max_rep_ct,vect_logical_mem_port);
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
+}
+
+TEST_F(LogicalMemberPortTest, ReadBulkInternal_04) {
+ key_logical_member_port k;
+ uint32_t max_rep_ct = 2;
+ vector<key_logical_member_port_t> vect_logical_mem_port;
+ getKeyForKtLogicalMemberPort1(k);
+ Kt_LogicalMemberPort lmp_obj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_CONNECTION_ERROR);
+ int ret = lmp_obj.ReadBulkInternal(db_conn,&k,UNC_DT_STATE,max_rep_ct,vect_logical_mem_port);
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
+}
+
+TEST_F(LogicalMemberPortTest, ReadBulkInternal_05) {
+ key_logical_member_port k;
+ uint32_t max_rep_ct = 0;
+ vector<key_logical_member_port_t> vect_logical_mem_port;
+ getKeyForKtLogicalMemberPort1(k);
+ Kt_LogicalMemberPort lmp_obj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_FAILED);
+ int ret = lmp_obj.ReadBulkInternal(db_conn,&k,UNC_DT_STATE,max_rep_ct,vect_logical_mem_port);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalMemberPortTest, ReadBulkInternal_06) {
+ key_logical_member_port k;
+ uint32_t max_rep_ct = 2;
+ vector<key_logical_member_port_t> vect_logical_mem_port;
+ getKeyForKtLogicalMemberPort1(k);
+ Kt_LogicalMemberPort lmp_obj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_FAILED);
+ int ret = lmp_obj.ReadBulkInternal(db_conn,&k,UNC_DT_STATE,max_rep_ct,vect_logical_mem_port);
+ EXPECT_EQ(UPPL_RC_ERR_DB_GET, ret);
+}
+
+/*ReadInternal function when operation is lessthan READ */
+TEST_F(LogicalMemberPortTest, ReadInternal_No_Read_01) {
+ key_logical_member_port_t k;
+ memset(&k, 0, sizeof(k));
+
+ vector<void *> vectVal_logicalmemberport;
+ vector<void *> vectkey_logicalmemberport;
+ vectkey_logicalmemberport.push_back(&k);
+ Kt_LogicalMemberPort ktlmportobj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ int ret = ktlmportobj.ReadInternal(db_conn,vectkey_logicalmemberport,vectVal_logicalmemberport,UNC_DT_STATE,UNC_OP_CREATE);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+/*ReadInternal function where value struct is NULL */
+TEST_F(LogicalMemberPortTest, ReadInternal_VAlStructNull_02) {
+ key_logical_member_port_t k;
+ memset(&k, 0, sizeof(k));
+
+ vector<void *> vectVal_logicalmemberport;
+ vector<void *> vectkey_logicalmemberport;
+ vectkey_logicalmemberport.push_back(&k);
+ Kt_LogicalMemberPort ktlmportobj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ int ret = ktlmportobj.ReadInternal(db_conn,vectkey_logicalmemberport,vectVal_logicalmemberport,UNC_DT_STATE,UNC_OP_READ);
+ EXPECT_EQ(ODBCM_RC_MORE_ROWS_FOUND, ret);
+}
+
+/*PerformRead function which has invalid option1 */
+TEST_F(LogicalMemberPortTest, PerformRead_01) {
+ key_logical_member_port_t k;
+ memset(&k, 0, sizeof(key_logical_member_port_t));
+ Kt_LogicalMemberPort ktlmportobj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ ServerSession sess;
+ sess.stub_setAddOutput((uint32_t)0);
+ sess.stub_setAddOutput((uint32_t)0);
+ sess.stub_setAddOutput((uint32_t)UNC_OP_READ);
+ sess.stub_setAddOutput((uint32_t)1);
+ sess.stub_setAddOutput((uint32_t)UNC_OPT1_DETAIL);
+ sess.stub_setAddOutput((uint32_t)UNC_OPT2_NONE);
+ sess.stub_setAddOutput((uint32_t)UNC_DT_STATE);
+ sess.stub_setAddOutput((uint32_t)0);
+ sess.stub_setAddOutput((uint32_t)UNC_KT_LOGICAL_MEMBER_PORT);
+
+ int ret = ktlmportobj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,NULL,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_DETAIL,(uint32_t)UNC_OPT2_NONE,(uint32_t)1);
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
+}
+
+/*PerformRead function which has invalid option1 */
+TEST_F(LogicalMemberPortTest, PerformRead_02) {
+ key_logical_member_port_t k;
+ memset(&k, 0, sizeof(key_logical_member_port_t));
+ Kt_LogicalMemberPort ktlmportobj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ ServerSession sess;
+ sess.stub_setAddOutput((uint32_t)0);
+ sess.stub_setAddOutput((uint32_t)0);
+ sess.stub_setAddOutput((uint32_t)UNC_OP_READ);
+ sess.stub_setAddOutput((uint32_t)1);
+ sess.stub_setAddOutput((uint32_t)UNC_OPT1_DETAIL);
+ sess.stub_setAddOutput((uint32_t)UNC_OPT2_NONE);
+ sess.stub_setAddOutput((uint32_t)UNC_DT_STATE);
+ sess.stub_setAddOutput((uint32_t)UPPL_RC_ERR_INVALID_OPTION1);
+ sess.stub_setAddOutput((uint32_t)UNC_KT_LOGICAL_MEMBER_PORT);
+
+ int ret = ktlmportobj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,NULL,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_DETAIL,(uint32_t)UNC_OPT2_NONE,(uint32_t)1);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+/*PerformRead function which has invalid datatype */
+TEST_F(LogicalMemberPortTest, PerformRead_03) {
+ key_logical_member_port_t k;
+ memset(&k, 0, sizeof(key_logical_member_port_t));
+ Kt_LogicalMemberPort ktlmportobj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ ServerSession sess;
+ sess.stub_setAddOutput((uint32_t)0);
+ sess.stub_setAddOutput((uint32_t)0);
+ sess.stub_setAddOutput((uint32_t)UNC_OP_READ);
+ sess.stub_setAddOutput((uint32_t)1);
+ sess.stub_setAddOutput((uint32_t)UNC_OPT1_DETAIL);
+ sess.stub_setAddOutput((uint32_t)UNC_OPT2_NONE);
+ sess.stub_setAddOutput((uint32_t)UNC_DT_CANDIDATE);
+ sess.stub_setAddOutput((uint32_t)0);
+ sess.stub_setAddOutput((uint32_t)UNC_KT_LOGICAL_MEMBER_PORT);
+
+ int ret = ktlmportobj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,NULL,(uint32_t)UNC_DT_CANDIDATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_NONE,(uint32_t)1);
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
+}
+
+/*PerformRead function which has valid option2 */
+TEST_F(LogicalMemberPortTest, PerformRead_04) {
+ key_logical_member_port_t k;
+ memset(&k, 0, sizeof(key_logical_member_port_t));
+ Kt_LogicalMemberPort ktlmportobj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ ServerSession sess;
+ sess.stub_setAddOutput((uint32_t)0);
+ sess.stub_setAddOutput((uint32_t)0);
+ sess.stub_setAddOutput((uint32_t)UNC_OP_READ);
+ sess.stub_setAddOutput((uint32_t)1);
+ sess.stub_setAddOutput((uint32_t)UNC_OPT1_NORMAL);
+ sess.stub_setAddOutput((uint32_t)UNC_OPT2_NONE);
+ sess.stub_setAddOutput((uint32_t)UNC_DT_STATE);
+ sess.stub_setAddOutput((uint32_t)0);
+ sess.stub_setAddOutput((uint32_t)UNC_KT_LOGICAL_MEMBER_PORT);
+
+ int ret = ktlmportobj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,NULL,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_NONE,(uint32_t)1);
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
+}
+
+/*PerformRead function which has invalid datatype */
+TEST_F(LogicalMemberPortTest, PerformRead_05) {
+ key_logical_member_port_t k;
+ memset(&k, 0, sizeof(key_logical_member_port_t));
+ Kt_LogicalMemberPort ktlmportobj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ ServerSession sess;
+ sess.stub_setAddOutput((uint32_t)0);
+ sess.stub_setAddOutput((uint32_t)0);
+ sess.stub_setAddOutput((uint32_t)UNC_OP_READ);
+ sess.stub_setAddOutput((uint32_t)1);
+ sess.stub_setAddOutput((uint32_t)UNC_OPT1_NORMAL);
+ sess.stub_setAddOutput((uint32_t)UNC_OPT2_NONE);
+ sess.stub_setAddOutput((uint32_t)UNC_DT_CANDIDATE);
+ sess.stub_setAddOutput((uint32_t)UPPL_RC_ERR_OPERATION_NOT_ALLOWED);
+ sess.stub_setAddOutput((uint32_t)UNC_KT_LOGICAL_MEMBER_PORT);
+
+ int ret = ktlmportobj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,NULL,(uint32_t)UNC_DT_CANDIDATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_NONE,(uint32_t)1);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+/*PerformRead function which has invalid option2 */
+TEST_F(LogicalMemberPortTest, PerformRead_06) {
+ key_logical_member_port_t k;
+ memset(&k, 0, sizeof(key_logical_member_port_t));
+ Kt_LogicalMemberPort ktlmportobj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ ServerSession sess;
+ sess.stub_setAddOutput((uint32_t)0);
+ sess.stub_setAddOutput((uint32_t)0);
+ sess.stub_setAddOutput((uint32_t)UNC_OP_READ);
+ sess.stub_setAddOutput((uint32_t)1);
+ sess.stub_setAddOutput((uint32_t)UNC_OPT1_NORMAL);
+ sess.stub_setAddOutput((uint32_t)UNC_OPT2_NONE);
+ sess.stub_setAddOutput((uint32_t)UNC_DT_STATE);
+ sess.stub_setAddOutput((uint32_t)0);
+ sess.stub_setAddOutput((uint32_t)UNC_KT_LOGICAL_MEMBER_PORT);
+
+ int ret = ktlmportobj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,NULL,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_MAC_ENTRY,(uint32_t)1);
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
+}
+
+/*PerformRead function which has invalid option2 */
+TEST_F(LogicalMemberPortTest, PerformRead_07) {
+ key_logical_member_port_t k;
+ memset(&k, 0, sizeof(key_logical_member_port_t));
+ Kt_LogicalMemberPort ktlmportobj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ ServerSession sess;
+ sess.stub_setAddOutput((uint32_t)0);
+ sess.stub_setAddOutput((uint32_t)0);
+ sess.stub_setAddOutput((uint32_t)UNC_OP_READ);
+ sess.stub_setAddOutput((uint32_t)1);
+ sess.stub_setAddOutput((uint32_t)UNC_OPT1_NORMAL);
+ sess.stub_setAddOutput((uint32_t)UNC_OPT2_MAC_ENTRY);
+ sess.stub_setAddOutput((uint32_t)UNC_DT_STATE);
+ sess.stub_setAddOutput((uint32_t)UPPL_RC_ERR_INVALID_OPTION2);
+ sess.stub_setAddOutput((uint32_t)UNC_KT_LOGICAL_MEMBER_PORT);
+
+ int ret = ktlmportobj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,NULL,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_MAC_ENTRY,(uint32_t)1);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+/*PerformRead function with valid option1 and option2 */
+TEST_F(LogicalMemberPortTest, PerformRead_08) {
+ key_logical_member_port_t k;
+ memset(&k, 0, sizeof(key_logical_member_port_t));
+ Kt_LogicalMemberPort ktlmportobj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ ServerSession sess;
+ sess.stub_setAddOutput((uint32_t)0);
+ sess.stub_setAddOutput((uint32_t)0);
+ sess.stub_setAddOutput((uint32_t)UNC_OP_READ);
+ sess.stub_setAddOutput((uint32_t)1);
+ sess.stub_setAddOutput((uint32_t)UNC_OPT1_NORMAL);
+ sess.stub_setAddOutput((uint32_t)UNC_OPT2_NONE);
+ sess.stub_setAddOutput((uint32_t)UNC_DT_STATE);
+ sess.stub_setAddOutput((uint32_t)UPPL_RC_SUCCESS);
+ sess.stub_setAddOutput((uint32_t)UNC_KT_LOGICAL_MEMBER_PORT);
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
+
+ int ret = ktlmportobj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,NULL,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_NONE,(uint32_t)1);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+/*PerformRead function with valid option1 and option2 */
+TEST_F(LogicalMemberPortTest, PerformRead_09) {
+ key_logical_member_port_t k;
+ memset(&k, 0, sizeof(key_logical_member_port_t));
+ Kt_LogicalMemberPort ktlmportobj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ ServerSession sess;
+ sess.stub_setAddOutput((uint32_t)0);
+ sess.stub_setAddOutput((uint32_t)0);
+ sess.stub_setAddOutput((uint32_t)UNC_OP_READ);
+ sess.stub_setAddOutput((uint32_t)1);
+ sess.stub_setAddOutput((uint32_t)UNC_OPT1_NORMAL);
+ sess.stub_setAddOutput((uint32_t)UNC_OPT2_NONE);
+ sess.stub_setAddOutput((uint32_t)UNC_DT_STATE);
+ sess.stub_setAddOutput((uint32_t)UPPL_RC_ERR_DB_GET);
+ sess.stub_setAddOutput((uint32_t)UNC_KT_LOGICAL_MEMBER_PORT);
+
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_FAILED);
+ int ret = ktlmportobj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,NULL,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_NONE,(uint32_t)1);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+//DB Access failure for UPDATE opr
+
+TEST_F(LogicalMemberPortTest, PerformSemanticValid_UPD_DBFail) {
+ key_logical_member_port_t k ;
+ memset(&k,0,sizeof(key_logical_member_port_t));
+ Kt_LogicalMemberPort KtObj;
+ getKeyForKtLogicalMemberPort1(k);
+ OdbcmConnectionHandler *db_conn = NULL;
+ void *v = NULL;
+ uint32_t operation = UNC_OP_UPDATE;
+ uint32_t data_type = UNC_DT_STATE;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_CONNECTION_ERROR);
+ int ret = KtObj.PerformSemanticValidation(db_conn, &k, v, operation, data_type);
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
+}
+
+//DB Access failure for DEL opr
+TEST_F(LogicalMemberPortTest, PerformSemanticValid_DEL_DBFail) {
+ key_logical_member_port_t k ;
+ memset(&k,0,sizeof(key_logical_member_port_t));
+ Kt_LogicalMemberPort KtObj;
+ getKeyForKtLogicalMemberPort1(k);
+ OdbcmConnectionHandler *db_conn = NULL;
+ void *v = NULL;
+ uint32_t operation = UNC_OP_DELETE;
+ uint32_t data_type = UNC_DT_STATE;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_CONNECTION_ERROR);
+ int ret = KtObj.PerformSemanticValidation(db_conn, &k, v, operation, data_type);
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
+}
+
+//DB Access failure for READ opr
+TEST_F(LogicalMemberPortTest, PerformSemanticValid_READ_DBFail) {
+ key_logical_member_port_t k ;
+ memset(&k,0,sizeof(key_logical_member_port_t));
+ Kt_LogicalMemberPort KtObj;
+ getKeyForKtLogicalMemberPort1(k);
+ OdbcmConnectionHandler *db_conn = NULL;
+ void *v = NULL;
+ uint32_t operation = UNC_OP_READ;
+ uint32_t data_type = UNC_DT_STATE;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_CONNECTION_ERROR);
+ int ret = KtObj.PerformSemanticValidation(db_conn, &k, v, operation, data_type);
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
+}
+
+//key does not exist.
+//update operation not allowed
+TEST_F(LogicalMemberPortTest, PerformSemanticValid_KeyNotExists_For_UPD) {
+ key_logical_member_port_t k ;
+ memset(&k,0,sizeof(key_logical_member_port_t));
+ Kt_LogicalMemberPort KtObj;
+ getKeyForKtLogicalMemberPort1(k);
+ OdbcmConnectionHandler *db_conn = NULL;
+ void *v = NULL;
+ uint32_t operation = UNC_OP_UPDATE;
+ uint32_t data_type = UNC_DT_STATE;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_FAILED);
+ int ret = KtObj.PerformSemanticValidation(db_conn, &k, v, operation, data_type);
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
+}
+
+//key does not exist.
+//Delete operation not allowed
+TEST_F(LogicalMemberPortTest, PerformSemanticValid_KeyNotExists_For_DEL) {
+ key_logical_member_port_t k ;
+ memset(&k,0,sizeof(key_logical_member_port_t));
+ Kt_LogicalMemberPort KtObj;
+ getKeyForKtLogicalMemberPort1(k);
+ OdbcmConnectionHandler *db_conn = NULL;
+ void *v = NULL;
+ uint32_t operation = UNC_OP_DELETE;
+ uint32_t data_type = UNC_DT_STATE;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_FAILED);
+ int ret = KtObj.PerformSemanticValidation(db_conn, &k, v, operation, data_type);
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
+}
+
+//key does not exist.
+//Read operation not allowed
+TEST_F(LogicalMemberPortTest, PerformSemanticValid_KeyNotExists_For_READ) {
+ key_logical_member_port_t k ;
+ memset(&k,0,sizeof(key_logical_member_port_t));
+ Kt_LogicalMemberPort KtObj;
+ getKeyForKtLogicalMemberPort1(k);
+ OdbcmConnectionHandler *db_conn = NULL;
+ void *v = NULL;
+ uint32_t operation = UNC_OP_READ;
+ uint32_t data_type = UNC_DT_STATE;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_FAILED);
+ int ret = KtObj.PerformSemanticValidation(db_conn, &k, v, operation, data_type);
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
+}
+
+//key instance exist.
+//update operation allowed
+TEST_F(LogicalMemberPortTest, PerformSemanticValid_KeyExists_UPD_Allow) {
+ key_logical_member_port_t k ;
+ memset(&k,0,sizeof(key_logical_member_port_t));
+ Kt_LogicalMemberPort KtObj;
+ getKeyForKtLogicalMemberPort1(k);
+ OdbcmConnectionHandler *db_conn = NULL;
+ void *v = NULL;
+ uint32_t operation = UNC_OP_UPDATE;
+ uint32_t data_type = UNC_DT_STATE;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);
+ int ret = KtObj.PerformSemanticValidation(db_conn, &k, v, operation, data_type);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+//key instance exist.
+//Delete operation allowed
+TEST_F(LogicalMemberPortTest, PerformSemanticValid_KeyExists_Del_Allow) {
+ key_logical_member_port_t k ;
+ memset(&k,0,sizeof(key_logical_member_port_t));
+ Kt_LogicalMemberPort KtObj;
+ getKeyForKtLogicalMemberPort1(k);
+ OdbcmConnectionHandler *db_conn = NULL;
+ void *v = NULL;
+ uint32_t operation = UNC_OP_DELETE;
+ uint32_t data_type = UNC_DT_STATE;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);
+ int ret = KtObj.PerformSemanticValidation(db_conn, &k, v, operation, data_type);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+//key instance exist.
+//Read operation allowed
+TEST_F(LogicalMemberPortTest, PerformSemanticValid_KeyExists_Read_Allow) {
+ key_logical_member_port_t k ;
+ memset(&k,0,sizeof(key_logical_member_port_t));
+ Kt_LogicalMemberPort KtObj;
+ getKeyForKtLogicalMemberPort1(k);
+ OdbcmConnectionHandler *db_conn = NULL;
+ void *v = NULL;
+ uint32_t operation = UNC_OP_READ;
+ uint32_t data_type = UNC_DT_STATE;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);
+ int ret = KtObj.PerformSemanticValidation(db_conn, &k, v, operation, data_type);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+//key already exist
+//create operation not allowed
+TEST_F(LogicalMemberPortTest, PerformSemanticValid_KeyExist_CREATE_NotAllow) {
+ key_logical_member_port_t k;
+ memset(&k,0,sizeof(key_logical_member_port_t));
+ Kt_LogicalMemberPort KtObj;
+ OdbcmConnectionHandler *db_conn = NULL;
+ void *v = NULL;
+ uint32_t operation = UNC_OP_CREATE;
+ uint32_t data_type = UNC_DT_STATE;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);
+ int ret = KtObj.PerformSemanticValidation(db_conn, &k, v, operation, data_type);
+ EXPECT_EQ(UPPL_RC_ERR_INSTANCE_EXISTS, ret);
+}
+
+//IsRowExits:DB Access failure
+TEST_F(LogicalMemberPortTest, PerformSemanticValid_KeyExist_CREATE_DB_Error) {
+ key_logical_member_port_t k;
+ memset(&k,0,sizeof(key_logical_member_port_t));
+ Kt_LogicalMemberPort KtObj;
+ OdbcmConnectionHandler *db_conn = NULL;
+ void *v = NULL;
+ uint32_t operation = UNC_OP_CREATE;
+ uint32_t data_type = UNC_DT_STATE;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_CONNECTION_ERROR);
+ int ret = KtObj.PerformSemanticValidation(db_conn, &k, v, operation, data_type);
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
+}
+
+//Error:ParentKey does not exist
+TEST_F(LogicalMemberPortTest, PerformSemanticValid_KeyExist_CREATE_ParentKeyNotExist) {
+ key_logical_member_port_t k;
+ memset(&k,0,sizeof(key_logical_member_port_t));
+ Kt_LogicalMemberPort KtObj;
+ OdbcmConnectionHandler *db_conn = NULL;
+ void *v = NULL;
+ uint32_t operation = UNC_OP_CREATE;
+ uint32_t data_type = UNC_DT_STATE;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_SUCCESS);
+ int ret = KtObj.PerformSemanticValidation(db_conn, &k, v, operation, data_type);
+ EXPECT_EQ(UPPL_RC_ERR_PARENT_DOES_NOT_EXIST, ret);
+}
+
+/********ReadLogicalMemberPortValFromDB*********/
+//Unsupported operation type returns Success
+TEST_F(LogicalMemberPortTest, ReadLogicalMemberPortValFromDB_UnSupport_Opr) {
+ key_logical_member_port_t k;
+ memset(&k,0,sizeof(key_logical_member_port_t));
+ Kt_LogicalMemberPort KtObj;
+ OdbcmConnectionHandler *db_conn = NULL;
+ uint32_t operation = UNC_OP_CREATE;
+ uint32_t data_type = UNC_DT_STATE;
+ uint32_t max_rep_ct;
+ vector<key_logical_member_port_t> logical_mem_port;
+ int ret = KtObj.ReadLogicalMemberPortValFromDB(db_conn, &k, data_type, operation, max_rep_ct, logical_mem_port);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+//Read Error:No record found
+ TEST_F(LogicalMemberPortTest, ReadLogicalMemberPortValFromDB_READ_NoRecordFound) {
+ key_logical_member_port_t k;
+ memset(&k,0,sizeof(key_logical_member_port_t));
+ Kt_LogicalMemberPort KtObj;
+ OdbcmConnectionHandler *db_conn = NULL;
+ uint32_t operation = UNC_OP_READ;
+ uint32_t data_type = UNC_DT_STATE;
+ uint32_t max_rep_ct;
+ vector<key_logical_member_port_t> logical_mem_port;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_RECORD_NOT_FOUND);
+ int ret = KtObj.ReadLogicalMemberPortValFromDB(db_conn, &k, data_type, operation, max_rep_ct, logical_mem_port);
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
+}
+
+//Read :DB Connxn Error
+TEST_F(LogicalMemberPortTest, ReadLogicalMemberPortValFromDB_READ_Db_Connxn_Error) {
+ key_logical_member_port_t k;
+ memset(&k,0,sizeof(key_logical_member_port_t));
+ Kt_LogicalMemberPort KtObj;
+ OdbcmConnectionHandler *db_conn = NULL;
+ uint32_t operation = UNC_OP_READ;
+ uint32_t data_type = UNC_DT_STATE;
+ uint32_t max_rep_ct;
+ vector<key_logical_member_port_t> logical_mem_port;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW,ODBCM_RC_CONNECTION_ERROR);
+ int ret = KtObj.ReadLogicalMemberPortValFromDB(db_conn, &k, data_type, operation, max_rep_ct, logical_mem_port);
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
+}
+
+//Read :Error returning DB_GET
+TEST_F(LogicalMemberPortTest, ReadLogicalMemberPortValFromDB_READ_Db_GetError) {
+ key_logical_member_port_t k;
+ memset(&k,0,sizeof(key_logical_member_port_t));
+ Kt_LogicalMemberPort KtObj;
+ OdbcmConnectionHandler *db_conn = NULL;
+ uint32_t operation = UNC_OP_READ;
+ uint32_t data_type = UNC_DT_STATE;
+ uint32_t max_rep_ct;
+ vector<key_logical_member_port_t> logical_mem_port;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW,ODBCM_RC_FAILED);
+ int ret = KtObj.ReadLogicalMemberPortValFromDB(db_conn, &k, data_type, operation, max_rep_ct, logical_mem_port);
+ EXPECT_EQ(UPPL_RC_ERR_DB_GET, ret);
+}
+
+ //Read:GetOneRow Success
+TEST_F(LogicalMemberPortTest, ReadLogicalMemberPortValFromDB_READ_GetOneRow_Success) {
+ key_logical_member_port_t k;
+ memset(&k,0,sizeof(key_logical_member_port_t));
+ Kt_LogicalMemberPort KtObj;
+ OdbcmConnectionHandler *db_conn = NULL;
+ uint32_t operation = UNC_OP_READ;
+ uint32_t data_type = UNC_DT_STATE;
+ uint32_t max_rep_ct;
+ vector<key_logical_member_port_t> logical_mem_port;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW,ODBCM_RC_SUCCESS);
+ int ret = KtObj.ReadLogicalMemberPortValFromDB(db_conn, &k, data_type, operation, max_rep_ct, logical_mem_port);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+/******ReadBulk**********/
+//ReadBulk Not allowed for UNC_DT_CANDIDATE
+TEST_F(LogicalMemberPortTest, ReadBulk_DB_NoMatch) {
+ key_logical_member_port_t k;
+ Kt_LogicalMemberPort KtObj;
+ getKeyForKtLogicalMemberPort1(k);
+ OdbcmConnectionHandler *db_conn = NULL;
+ uint32_t max_rep_ct(1);
+ int child_index(0);
+ pfc_bool_t parent_call(PFC_FALSE);
+ pfc_bool_t is_read_next(PFC_FALSE);
+ ReadRequest *read_req = NULL;
+ int ret = KtObj.ReadBulk(db_conn, &k, UNC_DT_RUNNING, max_rep_ct, child_index,parent_call, is_read_next,read_req);
+ EXPECT_EQ(UPPL_RC_ERR_OPERATION_NOT_ALLOWED, ret);
+}
+
+//If max_rep_count is 0,return success
+TEST_F(LogicalMemberPortTest, ReadBulk_MaxCt_Zero) {
+ key_logical_member_port_t k;
+ Kt_LogicalMemberPort KtObj;
+ getKeyForKtLogicalMemberPort1(k);
+ OdbcmConnectionHandler *db_conn = NULL;
+ uint32_t max_rep_ct = 0;
+ int child_index(0);
+ pfc_bool_t parent_call(PFC_FALSE);
+ pfc_bool_t is_read_next(PFC_FALSE);
+ ReadRequest *read_req = NULL;
+ int ret = KtObj.ReadBulk(db_conn, &k, UNC_DT_STATE, max_rep_ct, child_index,parent_call, is_read_next,read_req);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+//GetBulkRows Read Status Success
+TEST_F(LogicalMemberPortTest, ReadBulk__Success) {
+ key_logical_member_port_t k;
+ Kt_LogicalMemberPort KtObj;
+ getKeyForKtLogicalMemberPort1(k);
+ OdbcmConnectionHandler *db_conn = NULL;
+ uint32_t max_rep_ct = 1;
+ int child_index(0);
+ pfc_bool_t parent_call(PFC_FALSE);
+ pfc_bool_t is_read_next(PFC_FALSE);
+ ReadRequest read_req;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS,ODBCM_RC_SUCCESS);
+ int ret = KtObj.ReadBulk(db_conn, &k, UNC_DT_STATE, max_rep_ct, child_index,
+ parent_call, is_read_next, &read_req);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+//GetBulkRows Returns DB Access Error
+TEST_F(LogicalMemberPortTest, ReadBulk_Db_Access_Error) {
+ key_logical_member_port_t k;
+ Kt_LogicalMemberPort KtObj;
+ getKeyForKtLogicalMemberPort1(k);
+ OdbcmConnectionHandler *db_conn = NULL;
+ uint32_t max_rep_ct = 1;
+ int child_index(0);
+ pfc_bool_t parent_call(PFC_FALSE);
+ pfc_bool_t is_read_next(PFC_FALSE);
+ ReadRequest read_req;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_CONNECTION_ERROR);
+ int ret = KtObj.ReadBulk(db_conn, &k, UNC_DT_STATE, max_rep_ct, child_index,
+ parent_call, is_read_next, &read_req);
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
+}
+
+//Read Status for next Kin Success
+TEST_F(LogicalMemberPortTest, ReadBulk_Next_Kin_Success) {
+ key_logical_member_port_t k;
+ memset(&k, 0, sizeof(k));
+ Kt_LogicalMemberPort KtObj;
+ OdbcmConnectionHandler *db_conn = NULL;
+ uint32_t max_rep_ct = 1;
+ int child_index(0);
+ pfc_bool_t parent_call(PFC_FALSE);
+ pfc_bool_t is_read_next(PFC_FALSE);
+ ReadRequest read_req;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_SUCCESS);
+ int ret = KtObj.ReadBulk(db_conn, &k, UNC_DT_STATE, max_rep_ct, child_index,
+ parent_call, is_read_next, &read_req);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+//Read Status Success for no such instance
+TEST_F(LogicalMemberPortTest, ReadBulk_Succes__For_NoInstance) {
+ key_logical_member_port_t k;
+ memset(&k, 0, sizeof(k));
+
+ Kt_LogicalMemberPort KtObj;
+ OdbcmConnectionHandler *db_conn = NULL;
+ uint32_t max_rep_ct = 1;
+ int child_index(0);
+ pfc_bool_t parent_call(PFC_FALSE);
+ pfc_bool_t is_read_next(PFC_FALSE);
+ ReadRequest read_req;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_RECORD_NOT_FOUND);
+ int ret = KtObj.ReadBulk(db_conn, &k, UNC_DT_STATE, max_rep_ct, child_index,
+ parent_call, is_read_next, &read_req);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalMemberPortTest, ReadBulk_Succes_NOSUCHINSTANCE) {
+ key_logical_member_port_t k;
+ memset(&k, 0, sizeof(k));
+
+ Kt_LogicalMemberPort KtObj;
+ OdbcmConnectionHandler *db_conn = NULL;
+ uint32_t max_rep_ct = 1;
+ int child_index(0);
+ pfc_bool_t parent_call(PFC_FALSE);
+ pfc_bool_t is_read_next(PFC_FALSE);
+ ReadRequest read_req;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_RECORD_NOT_FOUND);
+ int ret = KtObj.ReadBulk(db_conn, &k, UNC_DT_STATE, max_rep_ct, child_index,
+ parent_call, is_read_next, &read_req);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
- /*\r
- * Copyright (c) 2012-2013 NEC Corporation\r
- * All rights reserved.\r
- *\r
- * This program and the accompanying materials are made available under the\r
- * terms of the Eclipse Public License v1.0 which accompanies this\r
- * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html\r
- */\r
-\r
-#include <limits.h>\r
-#include <gtest/gtest.h>\r
-\r
-#include <pfcxx/ipc_client.hh>\r
-#include <pfc/ipc_struct.h>\r
-\r
-#include <stdio.h>\r
-#include <sys/stat.h>\r
-#include <sys/mman.h>\r
-#include <arpa/inet.h>\r
-\r
-#include <time.h>\r
-#include <pfc/base.h>\r
-#include <pfc/ipc.h>\r
-#include <pfc/config.h>\r
-\r
-#include <pfc/conf.h>\r
-#include <pfc/log.h>\r
-#include <pfc/util.h>\r
-#include <pfc/event.h>\r
-#include <pfc/path.h>\r
-#include <pfc/hash.h>\r
-#include <pfc/thread.h>\r
-#include <pfc/refptr.h>\r
-#include <pfc/listmodel.h>\r
-#include <pfc/iostream.h>\r
-#include <pfc/ipc_client.h>\r
-#include <pfc/ipc_pfcd.h>\r
-#include <pfc/ipc_struct.h>\r
-#include "stub/ODBC/include/odbcm_mgr.hh"\r
-#include "physical_common_def.hh"\r
-#include "unc/uppl_common.h"\r
-#include "unc/keytype.h"\r
-#include "itc_kt_base.hh"\r
-#include "itc_kt_root.hh"\r
-#include "itc_kt_controller.hh"\r
-#include "itc_kt_ctr_domain.hh"\r
-#include "itc_kt_switch.hh"\r
-#include "itc_kt_port.hh"\r
-#include "itc_kt_link.hh"\r
-#include "itc_kt_boundary.hh"\r
-#include "itc_kt_logical_member_port.hh"\r
-#include "itc_kt_logicalport.hh"\r
-#include "ipct_util.hh"\r
-#include "itc_kt_logical_member_port.hh"\r
-#include "physicallayer.hh"\r
-#include "PhysicalLayerStub.hh"\r
-#include "tclib_module.hh"\r
-#include "itc_read_request.hh"\r
-using namespace pfc;\r
-using namespace pfc::core;\r
-using namespace pfc::core::ipc;\r
-using namespace unc::uppl;\r
-using namespace std;\r
-\r
-ClientSession *cli_sess = NULL;\r
-ClientSession *cli_sess_notify = NULL;\r
-pfc_ipcid_t service = UPPL_SVC_READREQ;\r
-class KtClassTest : public testing::Test {\r
- protected:\r
- virtual void SetUp() {\r
- if(cli_sess == NULL) {\r
- pfc_ipcconn_t connp = 0;\r
- int err = pfc_ipcclnt_altopen(UPPL_IPC_CHN_NAME, &connp);\r
- ASSERT_EQ(0, err);\r
- cli_sess = new ClientSession(connp, UPPL_IPC_SVC_NAME, service, err);\r
- ASSERT_EQ(0, err);\r
- connp = 0;\r
- err = pfc_ipcclnt_altopen("phynwd", &connp);\r
- ASSERT_EQ(0, err); cli_sess = new ClientSession(connp, UPPL_IPC_SVC_NAME, service, err);\r
- ASSERT_EQ(0, err);\r
- connp = 0;\r
- err = pfc_ipcclnt_altopen("phynwd", &connp);\r
- ASSERT_EQ(0, err);\r
- cli_sess_notify = new ClientSession(connp, "sample2", 0, err);\r
- \r
- PhysicalLayerStub::loadphysicallayer();\r
- }\r
- }\r
- virtual void TearDown() {\r
- if (cli_sess != NULL) {\r
- cli_sess->cancel();\r
- delete cli_sess;\r
- cli_sess = NULL;\r
- }\r
- if (cli_sess_notify != NULL) {\r
- cli_sess_notify->cancel();\r
- delete cli_sess_notify;\r
- cli_sess_notify = NULL;\r
- }\r
- }\r
-\r
-};\r
-\r
-void getReqHeader(physical_request_header& rh,\r
- unc_keytype_operation_t opern,\r
- unc_keytype_datatype_t dtype) {\r
- rh.client_sess_id = 1;\r
- rh.config_id = 1;\r
- rh.operation = opern;\r
- rh.max_rep_count = 0;\r
- rh.option1 = 0;\r
- rh.option2 = 0;\r
- rh.data_type = dtype;\r
- rh.key_type = UNC_KT_LOGICAL_PORT;\r
-}\r
-// Can be changed based on testing need\r
- char pkName1_ctr[] = "controller1";\r
- char pkName1_domain[] = "controller1 domain name";\r
- char pkName1_logicalport[] = "{0x00,0xa}";\r
- char pkName2_ctr[] = "controller2";\r
- char pkName2_domain[] = "domainName2";\r
- char pkName2_logicalport[] = "logicalport2";\r
- char pkName3_ctr[] = "controller22";\r
- char pkName3_domain[] = "domainName3";\r
- char pkName3_logicalport[] = "logicalport3";\r
- char pkName4_ctr[] = "";\r
- char pkName4_domain[] = "";\r
- char pkName4_logicalport[] = "";\r
- char pkName5_ctr[] = "controller2";\r
- char pkName5_domain[] = "controller2 domain name";\r
- char pkName5_logicalport[] = "{0x00,0xa1}";\r
- char pkName6_ctr[] = "controller1";\r
- char pkName6_domain[] = "controller1 domain name";\r
- char pkName6_logicalport[] = "{0x00,0xa}";\r
- char Desription[] = "create demo";\r
- char SWitchID[] = "switch01";\r
- char PhyPortID[] = "PhyPort01";\r
- char controller_name[] = "Controller1";\r
- char switch_id[] = "Switch1";\r
- char phy_port_id[] = "port1";\r
-TEST_F(KtClassTest, PerformSyntaxValidation_ControllernameNotFound_01) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- Kt_LogicalPort ktlinkobj;\r
- physical_request_header rh;\r
- getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);\r
- uint32_t operation = UNC_OP_CREATE;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- int ret = ktlinkobj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_STATE);\r
- EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SYNTAX);\r
-}\r
-TEST_F(KtClassTest, PerformSyntaxValidation_DomainNameNotFound_02) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- Kt_LogicalPort ktlinkobj;\r
- memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));\r
- physical_request_header rh;\r
- getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);\r
- uint32_t operation = UNC_OP_CREATE;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- int ret = ktlinkobj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_STATE);\r
- EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SYNTAX);\r
-}\r
-TEST_F(KtClassTest, PerformSyntaxValidation_PortIDNNotFound_03) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));\r
- memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));\r
- Kt_LogicalPort ktlinkobj;\r
- physical_request_header rh;\r
- getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);\r
- uint32_t operation = UNC_OP_CREATE;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- int ret = ktlinkobj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_STATE);\r
- EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SYNTAX);\r
-\r
-}\r
-TEST_F(KtClassTest, PerformSyntaxValidation_SyntaxValidation_Success_04) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));\r
- memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));\r
- memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));\r
- Kt_LogicalPort ktlinkobj;\r
- physical_request_header rh;\r
- getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);\r
- uint32_t operation = UNC_OP_CREATE;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- int ret = ktlinkobj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_STATE);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
-}\r
-\r
-TEST_F(KtClassTest, PerformSyntaxValidation_OptionalValPass_Success_05) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));\r
- memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));\r
- memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));\r
- memcpy(v.logical_port.description,Desription,strlen(Desription));\r
- Kt_LogicalPort ktlinkobj;\r
- physical_request_header rh;\r
- getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);\r
- uint32_t operation = UNC_OP_CREATE;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- int ret = ktlinkobj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_STATE);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
-}\r
-TEST_F(KtClassTest, IsKeyExists_01) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- Kt_LogicalPort ktlinkobj;\r
- physical_request_header rh;\r
- memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));\r
- memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));\r
- memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));\r
- getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);\r
- rh.key_type = UNC_KT_LOGICAL_PORT;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- vector<string> sw_vect_key_value;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);\r
- int ret = ktlinkobj.IsKeyExists(db_conn,UNC_DT_STATE,sw_vect_key_value);\r
- EXPECT_EQ(ret,UPPL_RC_ERR_BAD_REQUEST);\r
- ODBCManager::clearStubData();\r
-}\r
-TEST_F(KtClassTest, IsKeyExists_FailureIsrowexist02) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));\r
- memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));\r
- memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));\r
- Kt_LogicalPort ktlinkobj;\r
- physical_request_header rh;\r
- getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);\r
- rh.key_type = UNC_KT_LOGICAL_PORT;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- vector<string> sw_vect_key_value;\r
- sw_vect_key_value.push_back(pkName1_ctr);\r
- sw_vect_key_value.push_back(pkName1_domain);\r
- sw_vect_key_value.push_back(pkName1_logicalport);\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_MORE_ROWS_FOUND);\r
- int ret = ktlinkobj.IsKeyExists(db_conn,UNC_DT_STATE,sw_vect_key_value);\r
- EXPECT_EQ(ret,UPPL_RC_ERR_NO_SUCH_INSTANCE);\r
- ODBCManager::clearStubData();\r
-}\r
-TEST_F(KtClassTest, IsKeyExists_SuccessIsrowexist03) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));\r
- memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));\r
- memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));\r
- Kt_LogicalPort ktlinkobj;\r
- physical_request_header rh;\r
- getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);\r
- rh.key_type = UNC_KT_LOGICAL_PORT;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- vector<string> sw_vect_key_value;\r
- sw_vect_key_value.push_back(pkName1_ctr);\r
- sw_vect_key_value.push_back(pkName1_domain);\r
- sw_vect_key_value.push_back(pkName1_logicalport);\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);\r
- int ret = ktlinkobj.IsKeyExists(db_conn,UNC_DT_STATE,sw_vect_key_value);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
- ODBCManager::clearStubData();\r
-}\r
-\r
-TEST_F(KtClassTest, PerformSemanticValidation_InstanceExist_create01) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));\r
- memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));\r
- memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));\r
- Kt_LogicalPort ktlinkobj;\r
- physical_request_header rh;\r
- getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);\r
- rh.key_type = UNC_KT_LOGICAL_PORT;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- uint32_t operation = UNC_OP_CREATE;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);\r
- int ret = ktlinkobj.PerformSemanticValidation(db_conn,&k,&v,operation,UNC_DT_STATE);\r
- EXPECT_EQ(ret,UPPL_RC_ERR_INSTANCE_EXISTS);\r
- ODBCManager::clearStubData();\r
-}\r
-\r
-TEST_F(KtClassTest, PerformSemanticValidation_InstanceNOtExist_create02) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));\r
- memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));\r
- memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));\r
- Kt_LogicalPort ktlinkobj;\r
- physical_request_header rh;\r
- getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);\r
- rh.key_type = UNC_KT_LOGICAL_PORT;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- uint32_t operation = UNC_OP_CREATE;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_MORE_ROWS_FOUND);\r
- int ret = ktlinkobj.PerformSemanticValidation(db_conn,&k,&v,operation,UNC_DT_STATE);\r
- EXPECT_EQ(ret,UPPL_RC_ERR_PARENT_DOES_NOT_EXIST);\r
- ODBCManager::clearStubData();\r
-}\r
-TEST_F(KtClassTest, PerformSemanticValidation_InstanceNOtExist_update03) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));\r
- memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));\r
- memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));\r
- Kt_LogicalPort ktlinkobj;\r
- physical_request_header rh;\r
- getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);\r
- rh.key_type = UNC_KT_LOGICAL_PORT;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- uint32_t operation = UNC_OP_UPDATE;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_MORE_ROWS_FOUND);\r
- int ret = ktlinkobj.PerformSemanticValidation(db_conn,&k,&v,operation,UNC_DT_STATE);\r
- EXPECT_EQ(ret,UPPL_RC_ERR_NO_SUCH_INSTANCE);\r
- ODBCManager::clearStubData();\r
-}\r
-\r
-TEST_F(KtClassTest, PerformSemanticValidation_InstanceNOtExist_delete04) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));\r
- memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));\r
- memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));\r
- Kt_LogicalPort ktlinkobj;\r
- physical_request_header rh;\r
- getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);\r
- rh.key_type = UNC_KT_LOGICAL_PORT;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- uint32_t operation = UNC_OP_DELETE;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_MORE_ROWS_FOUND);\r
- int ret = ktlinkobj.PerformSemanticValidation(db_conn,&k,&v,operation,UNC_DT_STATE);\r
- EXPECT_EQ(ret,UPPL_RC_ERR_NO_SUCH_INSTANCE);\r
- ODBCManager::clearStubData();\r
-}\r
-\r
-TEST_F(KtClassTest, PerformSemanticValidation_InstanceNOtExist_read03) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));\r
- memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));\r
- memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));\r
- Kt_LogicalPort ktlinkobj;\r
- physical_request_header rh;\r
- getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);\r
- rh.key_type = UNC_KT_LOGICAL_PORT;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- uint32_t operation = UNC_OP_READ;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_MORE_ROWS_FOUND);\r
- int ret = ktlinkobj.PerformSemanticValidation(db_conn,&k,&v,operation,UNC_DT_STATE);\r
- EXPECT_EQ(ret,UPPL_RC_ERR_NO_SUCH_INSTANCE);\r
- ODBCManager::clearStubData();\r
-}\r
-TEST_F(KtClassTest, PerformSemanticValidation_InstanceNOtExist_read_InstanceExist04) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));\r
- memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));\r
- memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));\r
- Kt_LogicalPort ktlinkobj;\r
- physical_request_header rh;\r
- getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);\r
- rh.key_type = UNC_KT_LOGICAL_PORT;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- uint32_t operation = UNC_OP_READ;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);\r
- int ret = ktlinkobj.PerformSemanticValidation(db_conn,&k,&v,operation,UNC_DT_STATE);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
- ODBCManager::clearStubData();\r
-}\r
-TEST_F(KtClassTest, PerformSemanticValidation_InstanceNOtExist_update_InstanceExist04) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));\r
- memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));\r
- memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));\r
- Kt_LogicalPort ktlinkobj;\r
- physical_request_header rh;\r
- getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);\r
- rh.key_type = UNC_KT_LOGICAL_PORT;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- uint32_t operation = UNC_OP_UPDATE;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);\r
- int ret = ktlinkobj.PerformSemanticValidation(db_conn,&k,&v,operation,UNC_DT_STATE);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
- ODBCManager::clearStubData();\r
-}\r
-TEST_F(KtClassTest, PerformSemanticValidation_InstanceNOtExist_delete_InstanceExist04) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));\r
- memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));\r
- memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));\r
- Kt_LogicalPort ktlinkobj;\r
- physical_request_header rh;\r
- getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);\r
- rh.key_type = UNC_KT_LOGICAL_PORT;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- uint32_t operation = UNC_OP_DELETE;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);\r
- int ret = ktlinkobj.PerformSemanticValidation(db_conn,&k,&v,operation,UNC_DT_STATE);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
- ODBCManager::clearStubData();\r
-}\r
-TEST_F(KtClassTest, DeleteKeyInstance_UnsupportedForSTARTUP_01) {\r
- key_logical_port_t k;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- Kt_LogicalPort ktlinkobj;\r
- physical_request_header rh;\r
- getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- int ret = ktlinkobj.DeleteKeyInstance(db_conn, &k, UNC_DT_STARTUP, UNC_KT_LOGICAL_PORT);\r
- EXPECT_EQ(ret, UPPL_RC_ERR_OPERATION_NOT_ALLOWED);\r
-}\r
-TEST_F(KtClassTest, DeleteKeyInstance_UnsupportedForCANDIDATE_01) {\r
- key_logical_port_t k;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- Kt_LogicalPort ktlinkobj;\r
- physical_request_header rh;\r
- getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- int ret = ktlinkobj.DeleteKeyInstance(db_conn, &k, UNC_DT_CANDIDATE, UNC_KT_LOGICAL_PORT);\r
- EXPECT_EQ(ret, UPPL_RC_ERR_OPERATION_NOT_ALLOWED);\r
-}\r
-TEST_F(KtClassTest, DeleteKeyInstance_UnsupportedForRUNNING_01) {\r
- key_logical_port_t k;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- Kt_LogicalPort ktlinkobj;\r
- physical_request_header rh;\r
- getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- int ret = ktlinkobj.DeleteKeyInstance(db_conn, &k, UNC_DT_RUNNING, UNC_KT_LOGICAL_PORT);\r
- EXPECT_EQ(ret, UPPL_RC_ERR_OPERATION_NOT_ALLOWED);\r
-}\r
-TEST_F(KtClassTest, DeleteKeyInstance_UnsupportedForAUDIT_01) {\r
- key_logical_port_t k;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- Kt_LogicalPort ktlinkobj;\r
- physical_request_header rh;\r
- getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- int ret = ktlinkobj.DeleteKeyInstance(db_conn, &k, UNC_DT_AUDIT, UNC_KT_LOGICAL_PORT);\r
- EXPECT_EQ(ret, UPPL_RC_ERR_OPERATION_NOT_ALLOWED);\r
-}\r
-TEST_F(KtClassTest, DeleteKeyInstance_Support_03) { //return code not handle from HandleOperDownCriteriaFromPortStatus function\r
- key_logical_port_t k;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- Kt_LogicalPort ktlinkobj;\r
- physical_request_header rh;\r
- getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- int ret = ktlinkobj.DeleteKeyInstance(db_conn, &k, UNC_DT_STATE, UNC_KT_LOGICAL_PORT);\r
- EXPECT_EQ(ret, UPPL_RC_ERR_DB_DELETE);\r
-}\r
-\r
-\r
-TEST_F(KtClassTest, DeleteKeyInstance_Support_04) { //return code not handle from HandleOperDownCriteriaFromPortStatus function\r
- key_logical_port_t k;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- Kt_LogicalPort ktlinkobj;\r
- physical_request_header rh;\r
- getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_CONNECTION_ERROR);\r
- int ret = ktlinkobj.DeleteKeyInstance(db_conn, &k, UNC_DT_STATE, UNC_KT_LOGICAL_PORT);\r
- EXPECT_EQ(ret, UPPL_RC_ERR_DB_ACCESS);\r
- ODBCManager::clearStubData();\r
-}\r
-TEST_F(KtClassTest, DeleteKeyInstance_Support_05) { //return code not handle from HandleOperDownCriteriaFromPortStatus function\r
- key_logical_port_t k;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- Kt_LogicalPort ktlinkobj;\r
- physical_request_header rh;\r
- getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_ROW_NOT_EXISTS);\r
- int ret = ktlinkobj.DeleteKeyInstance(db_conn, &k, UNC_DT_STATE, UNC_KT_LOGICAL_PORT);\r
- EXPECT_EQ(ret, UPPL_RC_ERR_NO_SUCH_INSTANCE);\r
- ODBCManager::clearStubData();\r
-}\r
-\r
-TEST_F(KtClassTest, DeleteKeyInstance_Support_06) { //return code not handle from HandleOperDownCriteriaFromPortStatus function\r
- key_logical_port_t k;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- Kt_LogicalPort ktlinkobj;\r
- physical_request_header rh;\r
- getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_SUCCESS);\r
- int ret = ktlinkobj.DeleteKeyInstance(db_conn, &k, UNC_DT_STATE, UNC_KT_LOGICAL_PORT);\r
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);\r
- ODBCManager::clearStubData();\r
-}\r
-\r
-\r
-TEST_F(KtClassTest, PerformRead_001) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- Kt_LogicalPort ktlinkobj;\r
- physical_request_header rh;\r
- getReqHeader(rh, UNC_OP_READ, UNC_DT_STATE);\r
- rh.key_type = UNC_KT_PORT;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- ServerSession sess;\r
- sess.stub_setAddOutput((uint32_t)0);\r
- sess.stub_setAddOutput((uint32_t)0);\r
- sess.stub_setAddOutput((uint32_t)UNC_OP_READ);\r
- sess.stub_setAddOutput((uint32_t)1);\r
- sess.stub_setAddOutput((uint32_t)UNC_OPT1_DETAIL);\r
- sess.stub_setAddOutput((uint32_t)UNC_OPT2_NONE);\r
- sess.stub_setAddOutput((uint32_t)UNC_DT_STATE);\r
- sess.stub_setAddOutput((uint32_t)0);\r
- sess.stub_setAddOutput((uint32_t)UNC_KT_PORT);\r
-\r
- int ret = ktlinkobj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_DETAIL,(uint32_t)UNC_OPT2_NONE,(uint32_t)1);\r
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);\r
-}\r
-\r
-\r
-\r
-TEST_F(KtClassTest, PerformRead_002) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- Kt_LogicalPort ktlinkobj;\r
- physical_request_header rh;\r
- getReqHeader(rh, UNC_OP_READ, UNC_DT_CANDIDATE);\r
- rh.key_type = UNC_KT_PORT;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- ServerSession sess;\r
- sess.stub_setAddOutput((uint32_t)0);\r
- sess.stub_setAddOutput((uint32_t)0);\r
- sess.stub_setAddOutput((uint32_t)UNC_OP_READ);\r
- sess.stub_setAddOutput((uint32_t)1);\r
- sess.stub_setAddOutput((uint32_t)UNC_OPT1_NORMAL);\r
- sess.stub_setAddOutput((uint32_t)UNC_OPT1_NORMAL);\r
- sess.stub_setAddOutput((uint32_t)UNC_DT_CANDIDATE);\r
- sess.stub_setAddOutput((uint32_t)0);\r
- sess.stub_setAddOutput((uint32_t)UNC_KT_PORT);\r
-int ret = ktlinkobj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_L2DOMAIN,(uint32_t)1);\r
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);\r
-}\r
-\r
-TEST_F(KtClassTest, PerformRead_003) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- Kt_LogicalPort ktlinkobj;\r
- physical_request_header rh;\r
- getReqHeader(rh, UNC_OP_READ, UNC_DT_CANDIDATE);\r
- rh.key_type = UNC_KT_PORT;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- ServerSession sess;\r
- sess.stub_setAddOutput((uint32_t)0);\r
- sess.stub_setAddOutput((uint32_t)0);\r
- sess.stub_setAddOutput((uint32_t)UNC_OP_READ);\r
- sess.stub_setAddOutput((uint32_t)1);\r
- sess.stub_setAddOutput((uint32_t)UNC_OPT1_NORMAL);\r
- sess.stub_setAddOutput((uint32_t)UNC_OPT1_NORMAL);\r
- sess.stub_setAddOutput((uint32_t)UNC_DT_CANDIDATE);\r
- sess.stub_setAddOutput((uint32_t)0);\r
- sess.stub_setAddOutput((uint32_t)UNC_KT_PORT);\r
-int ret = ktlinkobj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_RUNNING,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_NONE,(uint32_t)1);\r
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);\r
-}\r
-TEST_F(KtClassTest, PerformRead_004) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- Kt_LogicalPort ktlinkobj;\r
- physical_request_header rh;\r
- getReqHeader(rh, UNC_OP_READ, UNC_DT_CANDIDATE);\r
- rh.key_type = UNC_KT_PORT;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- ServerSession sess;\r
- sess.stub_setAddOutput((uint32_t)0);\r
- sess.stub_setAddOutput((uint32_t)0);\r
- sess.stub_setAddOutput((uint32_t)UNC_OP_READ);\r
- sess.stub_setAddOutput((uint32_t)1);\r
- sess.stub_setAddOutput((uint32_t)UNC_OPT1_NORMAL);\r
- sess.stub_setAddOutput((uint32_t)UNC_OPT1_NORMAL);\r
- sess.stub_setAddOutput((uint32_t)UNC_DT_CANDIDATE);\r
- sess.stub_setAddOutput((uint32_t)0);\r
- sess.stub_setAddOutput((uint32_t)UNC_KT_PORT);\r
-int ret = ktlinkobj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_INVALID,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_NONE,(uint32_t)1);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
-}\r
-\r
-TEST_F(KtClassTest, PerformRead_GetOneRow_005) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- Kt_LogicalPort ktlinkobj;\r
- physical_request_header rh;\r
- getReqHeader(rh, UNC_OP_READ, UNC_DT_CANDIDATE);\r
- rh.key_type = UNC_KT_PORT;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- ServerSession sess;\r
- sess.stub_setAddOutput((uint32_t)0);\r
- sess.stub_setAddOutput((uint32_t)0);\r
- sess.stub_setAddOutput((uint32_t)UNC_OP_READ);\r
- sess.stub_setAddOutput((uint32_t)1);\r
- sess.stub_setAddOutput((uint32_t)UNC_OPT1_NORMAL);\r
- sess.stub_setAddOutput((uint32_t)UNC_OPT1_NORMAL);\r
- sess.stub_setAddOutput((uint32_t)UNC_DT_CANDIDATE);\r
- sess.stub_setAddOutput((uint32_t)0);\r
- sess.stub_setAddOutput((uint32_t)UNC_KT_PORT);\r
-int ret = ktlinkobj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_NONE,(uint32_t)1);\r
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);\r
-}\r
-\r
-\r
-TEST_F(KtClassTest, SetOperStatus_001) {\r
-\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- Kt_LogicalPort ktlinkobj;\r
- //getKeyForKtPort2(k);\r
- physical_request_header rh;\r
- getReqHeader(rh, UNC_OP_UPDATE, UNC_DT_STATE);\r
- OdbcmConnectionHandler *db_conn =NULL;\r
-\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_FAILED);\r
- int ret = ktlinkobj.SetOperStatus(db_conn,UNC_DT_STATE,&k,&v,(UpplLogicalPortOperStatus)1);\r
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_UPDATE);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-TEST_F(KtClassTest, SetOperStatus_002) {\r
-\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- Kt_LogicalPort ktlinkobj;\r
- //getKeyForKtPort2(k);\r
- physical_request_header rh;\r
- getReqHeader(rh, UNC_OP_UPDATE, UNC_DT_STATE);\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_ROW_NOT_EXISTS);\r
- int ret = ktlinkobj.SetOperStatus(db_conn,UNC_DT_STATE,&k,&v,(UpplLogicalPortOperStatus)0);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-\r
-TEST_F(KtClassTest, SetOperStatus_003) {\r
-\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- Kt_LogicalPort ktlinkobj;\r
- //getKeyForKtPort2(k);\r
- physical_request_header rh;\r
- getReqHeader(rh, UNC_OP_UPDATE, UNC_DT_STATE);\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);\r
- int ret = ktlinkobj.SetOperStatus(db_conn,UNC_DT_STATE,&k,&v,(UpplLogicalPortOperStatus)0);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-TEST_F(KtClassTest, SetOperStatus_004) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- Kt_LogicalPort ktlinkobj;\r
- physical_request_header rh;\r
- getReqHeader(rh, UNC_OP_UPDATE, UNC_DT_STATE);\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);\r
- int ret = ktlinkobj.SetOperStatus(db_conn,UNC_DT_STATE,&k,&v,(UpplLogicalPortOperStatus)0);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-\r
-\r
-TEST_F(KtClassTest, SetOperStatus_005) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- Kt_LogicalPort ktlinkobj;\r
- physical_request_header rh;\r
- getReqHeader(rh, UNC_OP_UPDATE, UNC_DT_STATE);\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);\r
- int ret = ktlinkobj.SetOperStatus(db_conn,UNC_DT_STATE,&k,&v,(UpplLogicalPortOperStatus)0);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-TEST_F(KtClassTest, SetOperStatus_006) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));\r
- memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));\r
- memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));\r
- memcpy(v.logical_port.switch_id,SWitchID,strlen(SWitchID));\r
- memcpy(v.logical_port.physical_port_id,PhyPortID,strlen(PhyPortID));\r
- Kt_LogicalPort ktlinkobj;\r
- physical_request_header rh;\r
- getReqHeader(rh, UNC_OP_UPDATE, UNC_DT_STATE);\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);\r
- int ret = ktlinkobj.SetOperStatus(db_conn,UNC_DT_STATE,&k,&v,(UpplLogicalPortOperStatus)0);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-\r
-\r
-TEST_F(KtClassTest, SetOperStatus_007) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));\r
- memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));\r
- memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));\r
- memcpy(v.logical_port.switch_id,SWitchID,strlen(SWitchID));\r
- memcpy(v.logical_port.physical_port_id,PhyPortID,strlen(PhyPortID));\r
- Kt_LogicalPort ktlinkobj;\r
- physical_request_header rh;\r
- getReqHeader(rh, UNC_OP_UPDATE, UNC_DT_STATE);\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);\r
- int ret = ktlinkobj.SetOperStatus(db_conn,UNC_DT_STATE,&k,&v,(UpplLogicalPortOperStatus)2);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-\r
-TEST_F(KtClassTest, ReadBulk_NotAllowOperation_01) {\r
- key_logical_port_t k;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- Kt_LogicalPort ktlinkobj;\r
- uint32_t operation_type = UNC_OP_READ_BULK;\r
- uint32_t max_rep_ct=1;\r
- int child_index=0;\r
- pfc_bool_t parent_call=true;\r
- pfc_bool_t is_read_next=true;\r
- OdbcmConnectionHandler *db_conn = NULL;\r
- ReadRequest *read_req = NULL;\r
- int ret = ktlinkobj.ReadBulk(db_conn, &k, UNC_DT_CANDIDATE, max_rep_ct, child_index, parent_call, is_read_next,read_req);\r
- EXPECT_EQ(ret, UPPL_RC_ERR_OPERATION_NOT_ALLOWED);\r
-}\r
-TEST_F(KtClassTest, ReadBulk_MaxCountZERO_02) {\r
- key_logical_port_t k;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- Kt_LogicalPort ktlinkobj;\r
- uint32_t operation_type = UNC_OP_READ_BULK;\r
- uint32_t max_rep_ct=0;\r
- int child_index=0;\r
- pfc_bool_t parent_call=true;\r
- pfc_bool_t is_read_next=true;\r
- OdbcmConnectionHandler *db_conn = NULL;\r
- ReadRequest *read_req = NULL;\r
- int ret = ktlinkobj.ReadBulk(db_conn, &k, UNC_DT_STATE, max_rep_ct, child_index, parent_call, is_read_next,read_req);\r
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);\r
-}\r
-TEST_F(KtClassTest, ReadBulk_UPPL_RC_ERR_DB_GET_02) {\r
- key_logical_port_t k;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));\r
- Kt_LogicalPort ktlinkobj;\r
- uint32_t operation_type = UNC_OP_READ_BULK;\r
- uint32_t max_rep_ct=1;\r
- int child_index=-1;\r
- pfc_bool_t parent_call=true;\r
- pfc_bool_t is_read_next=true;\r
- OdbcmConnectionHandler *db_conn = NULL;\r
- ReadRequest *read_req = NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);\r
- int ret = ktlinkobj.ReadBulk(db_conn, &k, UNC_DT_STATE, max_rep_ct, child_index, parent_call, is_read_next,read_req);\r
- EXPECT_EQ(ret, UPPL_RC_ERR_DB_GET);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-TEST_F(KtClassTest, ReadBulkInternal__SUCCESS01) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));\r
- Kt_LogicalPort ktlinkobj;\r
- uint32_t operation_type = UNC_OP_READ_BULK;\r
- uint32_t max_rep_ct=0;\r
- int child_index=-1;\r
- pfc_bool_t parent_call=true;\r
- pfc_bool_t is_read_next=true;\r
- OdbcmConnectionHandler *db_conn = NULL;\r
- ReadRequest *read_req = NULL;\r
- vector<val_logical_port_st_t> vect_val_logical_port_st;\r
- vector<key_logical_port_t> vect_logicalport_id;\r
- int ret = ktlinkobj.ReadBulkInternal(db_conn, &k, &v, UNC_DT_STATE, max_rep_ct, vect_val_logical_port_st, vect_logicalport_id);\r
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);\r
-}\r
-TEST_F(KtClassTest, GetLogicalPortValidFlag_UPPL_RC_ERR_NO_SUCH_INSTANCE) {\r
- key_logical_port_t k;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));\r
- val_logical_port_st_t *val_logical_port_valid_st=NULL;\r
- val_logical_port_valid_st = new val_logical_port_st_t();\r
- Kt_LogicalPort ktlinkobj;\r
- uint32_t max_rep_ct=0;\r
- int child_index=-1;\r
- pfc_bool_t parent_call=true;\r
- pfc_bool_t is_read_next=true;\r
- OdbcmConnectionHandler *db_conn = NULL;\r
- ReadRequest *read_req = NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_RECORD_NOT_FOUND);\r
- int ret = ktlinkobj.GetLogicalPortValidFlag(db_conn, &k, *val_logical_port_valid_st, UNC_DT_STATE);\r
- EXPECT_EQ(ret, UPPL_RC_ERR_NO_SUCH_INSTANCE);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-TEST_F(KtClassTest, GetLogicalPortValidFlag_UPPL_RC_ERR_DB_ACCESS) {\r
- key_logical_port_t k;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));\r
- val_logical_port_st_t *val_logical_port_valid_st=NULL;\r
- val_logical_port_valid_st = new val_logical_port_st_t();\r
- Kt_LogicalPort ktlinkobj;\r
- uint32_t max_rep_ct=0;\r
- int child_index=-1;\r
- pfc_bool_t parent_call=true;\r
- pfc_bool_t is_read_next=true;\r
- OdbcmConnectionHandler *db_conn = NULL;\r
- ReadRequest *read_req = NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_CONNECTION_ERROR);\r
- int ret = ktlinkobj.GetLogicalPortValidFlag(db_conn, &k, *val_logical_port_valid_st, UNC_DT_STATE);\r
- EXPECT_EQ(ret, UPPL_RC_ERR_DB_ACCESS);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-TEST_F(KtClassTest, GetLogicalPortValidFlag_OtherThanSuccess) {\r
- key_logical_port_t k;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));\r
- val_logical_port_st_t *val_logical_port_valid_st=NULL;\r
- val_logical_port_valid_st = new val_logical_port_st_t();\r
- Kt_LogicalPort ktlinkobj;\r
- uint32_t max_rep_ct=0;\r
- int child_index=-1;\r
- pfc_bool_t parent_call=true;\r
- pfc_bool_t is_read_next=true;\r
- OdbcmConnectionHandler *db_conn = NULL;\r
- ReadRequest *read_req = NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_COMMON_LINK_FAILURE);\r
- int ret = ktlinkobj.GetLogicalPortValidFlag(db_conn, &k, *val_logical_port_valid_st, UNC_DT_STATE);\r
- EXPECT_EQ(ret, UPPL_RC_ERR_DB_GET);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-TEST_F(KtClassTest, GetLogicalPortValidFlag_UPPL_RC_SUCCESS) {\r
- key_logical_port_t k;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));\r
- val_logical_port_st_t *val_logical_port_valid_st=NULL;\r
- val_logical_port_valid_st = new val_logical_port_st_t();\r
- Kt_LogicalPort ktlinkobj;\r
- uint32_t max_rep_ct=0;\r
- int child_index=-1;\r
- pfc_bool_t parent_call=true;\r
- pfc_bool_t is_read_next=true;\r
- OdbcmConnectionHandler *db_conn = NULL;\r
- ReadRequest *read_req = NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);\r
- int ret = ktlinkobj.GetLogicalPortValidFlag(db_conn, &k, *val_logical_port_valid_st, UNC_DT_STATE);\r
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-TEST_F(KtClassTest, GetOperStatusFromOperDownCriteria_DB_ERROR) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- Kt_LogicalPort ktlinkobj;\r
- UpplLogicalPortOperStatus new_oper_status = UPPL_LOGICAL_PORT_OPER_UNKNOWN;\r
- OdbcmConnectionHandler *db_conn = NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_FAILED);\r
- int ret = ktlinkobj.GetOperStatusFromOperDownCriteria(db_conn,UNC_DT_STATE,&k,&v,new_oper_status);\r
- EXPECT_EQ(ret, UPPL_RC_ERR_DB_GET);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-TEST_F(KtClassTest, GetOperStatusFromOperDownCriteria_DB_Success) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- Kt_LogicalPort ktlinkobj;\r
- UpplLogicalPortOperStatus new_oper_status = UPPL_LOGICAL_PORT_OPER_UNKNOWN;\r
- OdbcmConnectionHandler *db_conn = NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);\r
- int ret = ktlinkobj.GetOperStatusFromOperDownCriteria(db_conn,UNC_DT_STATE,&k,&v,new_oper_status);\r
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-TEST_F(KtClassTest, HandleDriverAlarms_AlaramOtherThanUNC_SUBDOMAIN_SPLIT) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- uint32_t alarm_type = UNC_FLOW_ENT_FULL;\r
- uint32_t oper_type = UNC_OP_CREATE;\r
- vector<void *> obj_key_struct;\r
- Kt_LogicalPort ktlinkobj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- int ret = ktlinkobj.HandleDriverAlarms(db_conn,UNC_DT_STATE,alarm_type,oper_type,&k,&v);\r
- EXPECT_EQ(ret,UPPL_RC_ERR_BAD_REQUEST);\r
-\r
-}\r
-//Unable to get current oper_status from db\r
-TEST_F(KtClassTest, HandleDriverAlarms_UNC_SUBDOMAIN_SPLIT_01) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- uint32_t alarm_type = UNC_SUBDOMAIN_SPLIT;\r
- uint32_t oper_type = UNC_OP_CREATE;\r
- vector<void *> obj_key_struct;\r
- Kt_LogicalPort ktlinkobj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_FAILED);\r
- int ret = ktlinkobj.HandleDriverAlarms(db_conn,UNC_DT_STATE,alarm_type,oper_type,&k,&v);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-//operstatus new and old naot same\r
-TEST_F(KtClassTest, HandleDriverAlarms_UNC_SUBDOMAIN_SPLIT_02) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- uint32_t alarm_type = UNC_SUBDOMAIN_SPLIT;\r
- uint32_t oper_type = UNC_OP_CREATE;\r
- vector<void *> obj_key_struct;\r
- Kt_LogicalPort ktlinkobj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);\r
- int ret = ktlinkobj.HandleDriverAlarms(db_conn,UNC_DT_STATE,alarm_type,oper_type,&k,&v);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-//Update oper_status\r
-TEST_F(KtClassTest, HandleDriverAlarms_UNC_SUBDOMAIN_SPLIT_03) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- uint32_t alarm_type = UNC_SUBDOMAIN_SPLIT;\r
- uint32_t oper_type = UNC_OP_DELETE;\r
- vector<void *> obj_key_struct;\r
- Kt_LogicalPort ktlinkobj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);\r
- int ret = ktlinkobj.HandleDriverAlarms(db_conn,UNC_DT_STATE,alarm_type,oper_type,&k,&v);\r
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_UPDATE);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-TEST_F(KtClassTest, HandleDriverAlarms_UNC_SUBDOMAIN_SPLIT_04) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- uint32_t alarm_type = UNC_SUBDOMAIN_SPLIT;\r
- uint32_t oper_type = UNC_OP_UPDATE;\r
- vector<void *> obj_key_struct;\r
- Kt_LogicalPort ktlinkobj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);\r
- int ret = ktlinkobj.HandleDriverAlarms(db_conn,UNC_DT_STATE,alarm_type,oper_type,&k,&v);\r
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_UPDATE);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-\r
-TEST_F(KtClassTest, NotifyOperStatus_success) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));\r
- memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));\r
- memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));\r
- vector<OperStatusHolder> refer;\r
- Kt_LogicalPort ktlinkobj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- int ret = ktlinkobj.NotifyOperStatus(db_conn,UNC_DT_STATE,&k,&v,refer);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
-}\r
-\r
-TEST_F(KtClassTest, NotifyOperStaus_valstructureNull) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t *v=NULL;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- //memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));\r
- memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));\r
- memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));\r
- vector<OperStatusHolder> refer;\r
- Kt_LogicalPort ktlinkobj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- int ret = ktlinkobj.NotifyOperStatus(db_conn,UNC_DT_STATE,&k,v,refer);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
-}\r
-\r
-TEST_F(KtClassTest, GetAllPortId_va) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));\r
- memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));\r
- memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));\r
- string controller_name1 = reinterpret_cast<char *> (pkName1_ctr);\r
- string switch_id1 = reinterpret_cast<char *> (pkName1_logicalport);\r
- string domain_name1 = reinterpret_cast<char *> (pkName1_domain);\r
- pfc_bool_t is_single_logical_port1=true;\r
- vector <string> logical_port_id1;\r
- Kt_LogicalPort ktlinkobj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- int ret = UPPL_RC_SUCCESS;\r
- ktlinkobj.GetAllPortId(db_conn,UNC_DT_STATE,controller_name1,switch_id1,domain_name1,logical_port_id1,true);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
-}\r
-\r
-TEST_F(KtClassTest, GetAllPortId_GetSibling) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));\r
- memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));\r
- memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));\r
- string controller_name1 = reinterpret_cast<char *> (pkName1_ctr);\r
- string switch_id1 = reinterpret_cast<char *> (pkName1_logicalport);\r
- string domain_name1 = reinterpret_cast<char *> (pkName1_domain);\r
- pfc_bool_t is_single_logical_port1=true;\r
- vector <string> logical_port_id1;\r
- Kt_LogicalPort ktlinkobj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETSIBLINGROWS, ODBCM_RC_SUCCESS);\r
- int ret = UPPL_RC_SUCCESS;\r
- ktlinkobj.GetAllPortId(db_conn,UNC_DT_STATE,controller_name1,switch_id1,domain_name1,logical_port_id1,true);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-TEST_F(KtClassTest, GetAllPortId_IsSingleFALSE) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));\r
- memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));\r
- memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));\r
- string controller_name1 = reinterpret_cast<char *> (pkName1_ctr);\r
- string switch_id1 = reinterpret_cast<char *> (pkName1_logicalport);\r
- string domain_name1 = reinterpret_cast<char *> (pkName1_domain);\r
- pfc_bool_t is_single_logical_port1=true;\r
- vector <string> logical_port_id1;\r
- Kt_LogicalPort ktlinkobj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETSIBLINGROWS, ODBCM_RC_SUCCESS);\r
- int ret = UPPL_RC_SUCCESS;\r
- ktlinkobj.GetAllPortId(db_conn,UNC_DT_STATE,controller_name1,switch_id1,domain_name1,logical_port_id1,false);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-TEST_F(KtClassTest, HandleOperStatus_GetOneRow_SUCCESS) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));\r
- memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));\r
- memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));\r
- memcpy(v.logical_port.switch_id,SWitchID,strlen(SWitchID));\r
- memcpy(v.logical_port.physical_port_id,PhyPortID,strlen(PhyPortID));\r
- vector<OperStatusHolder> refer;\r
- Kt_LogicalPort ktlinkobj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);\r
- int ret = ktlinkobj.HandleOperStatus(db_conn,UNC_DT_STATE,&k,&v,refer,UNC_KT_LOGICAL_PORT);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-TEST_F(KtClassTest, HandleOperStatus_SwitchID_Validation) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));\r
- memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));\r
- memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));\r
- memcpy(v.logical_port.switch_id,SWitchID,strlen(SWitchID));\r
- v.logical_port.valid[kIdxLogicalPortSwitchId] = 1;\r
- memcpy(v.logical_port.physical_port_id,PhyPortID,strlen(PhyPortID));\r
- //string key_instance = "controller1";\r
- unc_key_type_t key_type = UNC_KT_CONTROLLER;\r
- uint8_t oper_status =7;\r
- void* key_struct;\r
- OperStatusHolder obj(key_type,key_struct,oper_status);\r
- vector<OperStatusHolder> refer;\r
- refer.push_back(obj);\r
- Kt_LogicalPort ktlinkobj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);\r
- int ret = ktlinkobj.HandleOperStatus(db_conn,UNC_DT_STATE,&k,&v,refer,UNC_KT_LOGICAL_PORT);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-TEST_F(KtClassTest, GetPortOperStatus_DT_STATE) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- key_port_t obj_key_port;\r
- memset(&obj_key_port, 0, sizeof(key_port_t));\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));\r
- memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));\r
- memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));\r
- memcpy(v.logical_port.switch_id,SWitchID,strlen(SWitchID));\r
- memcpy(v.logical_port.physical_port_id,PhyPortID,strlen(PhyPortID));\r
- memcpy(obj_key_port.port_id,phy_port_id,strlen(phy_port_id));\r
- memcpy(obj_key_port.sw_key.switch_id,switch_id,strlen(switch_id));\r
- memcpy(obj_key_port.sw_key.ctr_key.controller_name,controller_name,strlen(controller_name));\r
- \r
- uint8_t port_oper_status =1;\r
- uint32_t data_type = UNC_DT_STATE;\r
- Kt_LogicalPort ktlinkobj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);\r
- int ret = ktlinkobj.GetPortOperStatus(db_conn,obj_key_port,&port_oper_status,data_type);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-\r
-TEST_F(KtClassTest, GetPortOperStatus_DT_INVALID) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- key_port_t obj_key_port;\r
- memset(&obj_key_port, 0, sizeof(key_port_t));\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));\r
- memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));\r
- memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));\r
- memcpy(v.logical_port.switch_id,SWitchID,strlen(SWitchID));\r
- memcpy(v.logical_port.physical_port_id,PhyPortID,strlen(PhyPortID));\r
- memcpy(obj_key_port.port_id,phy_port_id,strlen(phy_port_id));\r
- memcpy(obj_key_port.sw_key.switch_id,switch_id,strlen(switch_id));\r
- memcpy(obj_key_port.sw_key.ctr_key.controller_name,controller_name,strlen(controller_name));\r
- uint8_t port_oper_status =1;\r
- uint32_t data_type = UNC_DT_INVALID;\r
- Kt_LogicalPort ktlinkobj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);\r
- int ret = ktlinkobj.GetPortOperStatus(db_conn,obj_key_port,&port_oper_status,data_type);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-TEST_F(KtClassTest, GetPortOperStatus_DT_CANDIDATE) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- key_port_t obj_key_port;\r
- memset(&obj_key_port, 0, sizeof(key_port_t));\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));\r
- memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));\r
- memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));\r
- memcpy(v.logical_port.switch_id,SWitchID,strlen(SWitchID));\r
- memcpy(v.logical_port.physical_port_id,PhyPortID,strlen(PhyPortID));\r
- memcpy(obj_key_port.port_id,phy_port_id,strlen(phy_port_id));\r
- memcpy(obj_key_port.sw_key.switch_id,switch_id,strlen(switch_id));\r
- memcpy(obj_key_port.sw_key.ctr_key.controller_name,controller_name,strlen(controller_name));\r
- uint8_t port_oper_status =1;\r
- uint32_t data_type = UNC_DT_CANDIDATE;\r
- Kt_LogicalPort ktlinkobj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);\r
- int ret = ktlinkobj.GetPortOperStatus(db_conn,obj_key_port,&port_oper_status,data_type);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-TEST_F(KtClassTest, GetPortOperStatus_DT_RUNNING) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- key_port_t obj_key_port;\r
- memset(&obj_key_port, 0, sizeof(key_port_t));\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));\r
- memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));\r
- memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));\r
- memcpy(v.logical_port.switch_id,SWitchID,strlen(SWitchID));\r
- memcpy(v.logical_port.physical_port_id,PhyPortID,strlen(PhyPortID));\r
- memcpy(obj_key_port.port_id,phy_port_id,strlen(phy_port_id));\r
- memcpy(obj_key_port.sw_key.switch_id,switch_id,strlen(switch_id));\r
- memcpy(obj_key_port.sw_key.ctr_key.controller_name,controller_name,strlen(controller_name));\r
- uint8_t port_oper_status =1;\r
- uint32_t data_type = UNC_DT_RUNNING;\r
- Kt_LogicalPort ktlinkobj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);\r
- int ret = ktlinkobj.GetPortOperStatus(db_conn,obj_key_port,&port_oper_status,data_type);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-TEST_F(KtClassTest, GetPortOperStatus_DT_STARTUP) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- key_port_t obj_key_port;\r
- memset(&obj_key_port, 0, sizeof(key_port_t));\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));\r
- memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));\r
- memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));\r
- memcpy(v.logical_port.switch_id,SWitchID,strlen(SWitchID));\r
- memcpy(v.logical_port.physical_port_id,PhyPortID,strlen(PhyPortID));\r
- memcpy(obj_key_port.port_id,phy_port_id,strlen(phy_port_id));\r
- memcpy(obj_key_port.sw_key.switch_id,switch_id,strlen(switch_id));\r
- memcpy(obj_key_port.sw_key.ctr_key.controller_name,controller_name,strlen(controller_name));\r
- uint8_t port_oper_status =1;\r
- uint32_t data_type = UNC_DT_STARTUP;\r
- Kt_LogicalPort ktlinkobj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);\r
- int ret = ktlinkobj.GetPortOperStatus(db_conn,obj_key_port,&port_oper_status,data_type);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-TEST_F(KtClassTest, GetPortOperStatus_DT_IMPORT) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- key_port_t obj_key_port;\r
- memset(&obj_key_port, 0, sizeof(key_port_t));\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));\r
- memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));\r
- memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));\r
- memcpy(v.logical_port.switch_id,SWitchID,strlen(SWitchID));\r
- memcpy(v.logical_port.physical_port_id,PhyPortID,strlen(PhyPortID));\r
- memcpy(obj_key_port.port_id,phy_port_id,strlen(phy_port_id));\r
- memcpy(obj_key_port.sw_key.switch_id,switch_id,strlen(switch_id));\r
- memcpy(obj_key_port.sw_key.ctr_key.controller_name,controller_name,strlen(controller_name));\r
- uint8_t port_oper_status =1;\r
- uint32_t data_type = UNC_DT_IMPORT;\r
- Kt_LogicalPort ktlinkobj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);\r
- int ret = ktlinkobj.GetPortOperStatus(db_conn,obj_key_port,&port_oper_status,data_type);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-TEST_F(KtClassTest, GetPortOperStatus_DT_AUDIT) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- key_port_t obj_key_port;\r
- memset(&obj_key_port, 0, sizeof(key_port_t));\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));\r
- memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));\r
- memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));\r
- memcpy(v.logical_port.switch_id,SWitchID,strlen(SWitchID));\r
- memcpy(v.logical_port.physical_port_id,PhyPortID,strlen(PhyPortID));\r
- memcpy(obj_key_port.port_id,phy_port_id,strlen(phy_port_id));\r
- memcpy(obj_key_port.sw_key.switch_id,switch_id,strlen(switch_id));\r
- memcpy(obj_key_port.sw_key.ctr_key.controller_name,controller_name,strlen(controller_name));\r
- uint8_t port_oper_status =1;\r
- uint32_t data_type = UNC_DT_AUDIT;\r
- Kt_LogicalPort ktlinkobj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);\r
- int ret = ktlinkobj.GetPortOperStatus(db_conn,obj_key_port,&port_oper_status,data_type);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-\r
-TEST_F(KtClassTest, PerformRead_Option1_SUCCESS) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- Kt_LogicalPort ktlinkobj;\r
- physical_request_header rh;\r
- getReqHeader(rh, UNC_OP_READ, UNC_DT_STATE);\r
- rh.key_type = UNC_KT_PORT;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- ServerSession sess;\r
- ServerSession::clearStubData();\r
- sess.stub_setAddOutput((uint32_t)0);\r
- sess.stub_setAddOutput((uint32_t)0);\r
- sess.stub_setAddOutput((uint32_t)UNC_OP_READ);\r
- sess.stub_setAddOutput((uint32_t)1);\r
- sess.stub_setAddOutput((uint32_t)UNC_OPT1_DETAIL);\r
- sess.stub_setAddOutput((uint32_t)UNC_OPT2_NONE);\r
- sess.stub_setAddOutput((uint32_t)UNC_DT_STATE);\r
- sess.stub_setAddOutput((uint32_t)0);\r
- sess.stub_setAddOutput((uint32_t)UPPL_RC_ERR_INVALID_OPTION1);\r
- sess.stub_setAddOutput((uint32_t)UNC_KT_LOGICAL_PORT);\r
-\r
- int ret = ktlinkobj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_DETAIL,(uint32_t)UNC_OPT2_NONE,(uint32_t)1);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
-}\r
-TEST_F(KtClassTest, PerformRead_Option2_SUCCESS) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- Kt_LogicalPort ktlinkobj;\r
- physical_request_header rh;\r
- getReqHeader(rh, UNC_OP_READ, UNC_DT_STATE);\r
- rh.key_type = UNC_KT_PORT;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- ServerSession sess;\r
- ServerSession::clearStubData();\r
- sess.stub_setAddOutput((uint32_t)0);\r
- sess.stub_setAddOutput((uint32_t)0);\r
- sess.stub_setAddOutput((uint32_t)UNC_OP_READ);\r
- sess.stub_setAddOutput((uint32_t)1);\r
- sess.stub_setAddOutput((uint32_t)UNC_OPT1_NORMAL);\r
- sess.stub_setAddOutput((uint32_t)UNC_OPT1_DETAIL);\r
- sess.stub_setAddOutput((uint32_t)UNC_DT_STATE);\r
- sess.stub_setAddOutput((uint32_t)0);\r
- sess.stub_setAddOutput((uint32_t)UPPL_RC_ERR_INVALID_OPTION2);\r
- sess.stub_setAddOutput((uint32_t)UNC_KT_LOGICAL_PORT);\r
-\r
- int ret = ktlinkobj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT1_DETAIL,(uint32_t)0);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
-}\r
-TEST_F(KtClassTest, PerformRead_Datatype_SUCCESS) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- Kt_LogicalPort ktlinkobj;\r
- physical_request_header rh;\r
- getReqHeader(rh, UNC_OP_READ, UNC_DT_STATE);\r
- rh.key_type = UNC_KT_PORT;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- ServerSession sess;\r
- ServerSession::clearStubData();\r
- sess.stub_setAddOutput((uint32_t)0);\r
- sess.stub_setAddOutput((uint32_t)0);\r
- sess.stub_setAddOutput((uint32_t)UNC_OP_READ);\r
- sess.stub_setAddOutput((uint32_t)1);\r
- sess.stub_setAddOutput((uint32_t)UNC_OPT1_NORMAL);\r
- sess.stub_setAddOutput((uint32_t)UNC_OPT1_DETAIL);\r
- sess.stub_setAddOutput((uint32_t)UNC_DT_RUNNING);\r
- sess.stub_setAddOutput((uint32_t)0);\r
- sess.stub_setAddOutput((uint32_t)UPPL_RC_ERR_OPERATION_NOT_ALLOWED);\r
- sess.stub_setAddOutput((uint32_t)UNC_KT_LOGICAL_PORT);\r
-\r
- int ret = ktlinkobj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_RUNNING,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_NONE,(uint32_t)0);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
-}\r
-\r
-TEST_F(KtClassTest, PerformRead_DB_SUCCESS) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- Kt_LogicalPort ktlinkobj;\r
- physical_request_header rh;\r
- getReqHeader(rh, UNC_OP_READ, UNC_DT_STATE);\r
- rh.key_type = UNC_KT_PORT;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- ServerSession sess;\r
- ServerSession::clearStubData();\r
- sess.stub_setAddOutput((uint32_t)0);\r
- sess.stub_setAddOutput((uint32_t)0);\r
- sess.stub_setAddOutput((uint32_t)UNC_OP_READ);\r
- sess.stub_setAddOutput((uint32_t)1);\r
- sess.stub_setAddOutput((uint32_t)UNC_OPT1_NORMAL);\r
- sess.stub_setAddOutput((uint32_t)UNC_OPT1_DETAIL);\r
- sess.stub_setAddOutput((uint32_t)UNC_DT_RUNNING);\r
- sess.stub_setAddOutput((uint32_t)0);\r
- sess.stub_setAddOutput((uint32_t)UPPL_RC_ERR_OPERATION_NOT_ALLOWED);\r
- sess.stub_setAddOutput((uint32_t)UNC_KT_LOGICAL_PORT);\r
-\r
- int ret = ktlinkobj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_UPDATE,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_NONE,(uint32_t)0);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
-}\r
-TEST_F(KtClassTest, GetAllLogicalPort_LogicalPortNotAvailable) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));\r
- memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));\r
- memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));\r
- string controller_name1 = reinterpret_cast<char *> (pkName1_ctr);\r
- string switch_id1 = reinterpret_cast<char *> (pkName1_logicalport);\r
- string domain_name1 = reinterpret_cast<char *> (pkName1_domain);\r
- string physicalportid = reinterpret_cast<char *> (PhyPortID);\r
- vector<key_logical_port_t> vectLogicalPortKey;\r
- vectLogicalPortKey.push_back(k);\r
- Kt_LogicalPort ktlinkobj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- int ret = UPPL_RC_SUCCESS;\r
- ktlinkobj.GetAllLogicalPort(db_conn,controller_name1,domain_name1,switch_id1,physicalportid,vectLogicalPortKey,UNC_DT_STATE);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
-}\r
-TEST_F(KtClassTest, GetAllLogicalPort_DBSUCCESS) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));\r
- memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));\r
- memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));\r
- string controller_name1 = reinterpret_cast<char *> (pkName1_ctr);\r
- string switch_id1 = reinterpret_cast<char *> (pkName1_logicalport);\r
- string domain_name1 = reinterpret_cast<char *> (pkName1_domain);\r
- string physicalportid = reinterpret_cast<char *> (PhyPortID);\r
- vector<key_logical_port_t> vectLogicalPortKey;\r
- vectLogicalPortKey.push_back(k);\r
- Kt_LogicalPort ktlinkobj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- int ret = UPPL_RC_SUCCESS;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_SUCCESS);\r
- ktlinkobj.GetAllLogicalPort(db_conn,controller_name1,domain_name1,switch_id1,physicalportid,vectLogicalPortKey,UNC_DT_STATE);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-TEST_F(KtClassTest, ValidatePortType_LP_SWITCH_SUCCESS) {\r
- uint8_t port_type = 1;//1 for UPPL_LP_SWITCH\r
- Kt_LogicalPort ktlinkobj;\r
- int ret = ktlinkobj.ValidatePortType(port_type);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
-}\r
-TEST_F(KtClassTest, ValidatePortType_LP_PHYSICALPORT_SUCCESS) {\r
- uint8_t port_type = 2;//1 for UPPL_LP_PHYSICAL_PORT\r
- Kt_LogicalPort ktlinkobj;\r
- int ret = ktlinkobj.ValidatePortType(port_type);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
-}\r
-TEST_F(KtClassTest, ValidatePortType_LP_TRUNKPORT_SUCCESS) {\r
- uint8_t port_type = 11;//1 for UPPL_LP_TRUNK_PORT\r
- Kt_LogicalPort ktlinkobj;\r
- int ret = ktlinkobj.ValidatePortType(port_type);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
-}\r
-TEST_F(KtClassTest, ValidatePortType_LP_SUBDOMAIN_SUCCESS) {\r
- uint8_t port_type = 12;//1 for UPPL_LP_SUBDOMAIN\r
- Kt_LogicalPort ktlinkobj;\r
- int ret = ktlinkobj.ValidatePortType(port_type);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
-}\r
-TEST_F(KtClassTest, ValidatePortType_LP_TUNNEL_SUCCESS) {\r
- uint8_t port_type = 13;//1 for UPPL_LP_TUNNEL_ENDPOINT\r
- Kt_LogicalPort ktlinkobj;\r
- int ret = ktlinkobj.ValidatePortType(port_type);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
-}\r
-TEST_F(KtClassTest, ValidatePortType_FAILL_FOR_UNKNOWNPORT) {\r
- uint8_t port_type = 3;//1 for UNKNOWNPORT\r
- Kt_LogicalPort ktlinkobj;\r
- int ret = ktlinkobj.ValidatePortType(port_type);\r
- EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SYNTAX);\r
-}\r
-\r
-TEST_F(KtClassTest, ReadBulk_ADDTOBUFFER_maxrepCT1) {\r
- key_logical_port_t k;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));\r
- Kt_LogicalPort ktlinkobj;\r
- uint32_t operation_type = UNC_OP_READ_BULK;\r
- uint32_t max_rep_ct = 1;\r
- int child_index = 1;\r
- pfc_bool_t parent_call=true;\r
- pfc_bool_t is_read_next=true;\r
- OdbcmConnectionHandler *db_conn = NULL;\r
- ReadRequest *read_req = new ReadRequest;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_SUCCESS);\r
- int ret = ktlinkobj.ReadBulk(db_conn, &k, UNC_DT_STATE, max_rep_ct, child_index, parent_call, is_read_next,read_req);\r
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-TEST_F(KtClassTest, ReadBulk_DB_ACCESS_ERROR) {\r
- key_logical_port_t k;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));\r
- Kt_LogicalPort ktlinkobj;\r
- uint32_t operation_type = UNC_OP_READ_BULK;\r
- uint32_t max_rep_ct = 2;\r
- int child_index = 1;\r
- pfc_bool_t parent_call=true;\r
- pfc_bool_t is_read_next=true;\r
- OdbcmConnectionHandler *db_conn = NULL;\r
- ReadRequest *read_req = new ReadRequest;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_CONNECTION_ERROR);\r
- int ret = ktlinkobj.ReadBulk(db_conn, &k, UNC_DT_STATE, max_rep_ct, child_index, parent_call, is_read_next,read_req);\r
- EXPECT_EQ(ret, UPPL_RC_ERR_DB_ACCESS);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-\r
-TEST_F(KtClassTest, ReadBulkInternal_RecordNot_Found) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));\r
- Kt_LogicalPort ktlinkobj;\r
- uint32_t operation_type = UNC_OP_READ_BULK;\r
- uint32_t max_rep_ct=1;\r
- int child_index=-1;\r
- pfc_bool_t parent_call=true;\r
- pfc_bool_t is_read_next=true;\r
- OdbcmConnectionHandler *db_conn = NULL;\r
- ReadRequest *read_req = NULL;\r
- vector<val_logical_port_st_t> vect_val_logical_port_st;\r
- vector<key_logical_port_t> vect_logicalport_id;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_RECORD_NOT_FOUND);\r
- int ret = ktlinkobj.ReadBulkInternal(db_conn, &k, &v, UNC_DT_STATE, max_rep_ct, vect_val_logical_port_st, vect_logicalport_id);\r
- EXPECT_EQ(ret, UPPL_RC_ERR_NO_SUCH_INSTANCE);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-TEST_F(KtClassTest, PerformSyntaxValidation_ValStrutValidation_PortType_04) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));\r
- memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));\r
- memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));\r
- memcpy(v.logical_port.description,Desription,strlen(Desription));\r
- uint8_t porttype = 3;\r
- v.logical_port.port_type= porttype;\r
- v.logical_port.valid[kIdxLogicalPortType]=1;\r
- Kt_LogicalPort ktlinkobj;\r
- physical_request_header rh;\r
- getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);\r
- uint32_t operation = UNC_OP_UPDATE;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- int ret = ktlinkobj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_STATE);\r
- EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SYNTAX);\r
-}\r
-\r
-TEST_F(KtClassTest, PerformSyntaxValidation_ValStrutValidation_oper_down_criteria_05) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));\r
- memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));\r
- memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));\r
- memcpy(v.logical_port.description,Desription,strlen(Desription));\r
- uint8_t operdowncriteria = 3;\r
- v.logical_port.oper_down_criteria= operdowncriteria;\r
- v.logical_port.valid[kIdxLogicalPortOperDownCriteria]=1;\r
- Kt_LogicalPort ktlinkobj;\r
- physical_request_header rh;\r
- getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);\r
- uint32_t operation = UNC_OP_UPDATE;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- int ret = ktlinkobj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_STATE);\r
- EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SYNTAX);\r
-}\r
-TEST_F(KtClassTest, PerformSyntaxValidation_ValStrutNULL) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t *v=NULL;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));\r
- memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));\r
- memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));\r
- Kt_LogicalPort ktlinkobj;\r
- physical_request_header rh;\r
- getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);\r
- uint32_t operation = UNC_OP_UPDATE;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- int ret = ktlinkobj.PerformSyntaxValidation(db_conn,&k,v,operation,UNC_DT_STATE);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
-}\r
-TEST_F(KtClassTest, ReadInternal_max_rep_ct) {\r
- key_logical_port_t *k=new key_logical_port_t;\r
- vector<void *> vectVal_logicalport;\r
- vector<void *> vectkey_logicalport;\r
- vectkey_logicalport.push_back(k);\r
- Kt_LogicalPort ktlinkobj;\r
- physical_request_header rh;\r
- getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);\r
- uint32_t operation = UNC_OP_UPDATE;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- int ret = ktlinkobj.ReadInternal(db_conn,vectkey_logicalport,vectVal_logicalport,UNC_DT_STATE,UNC_OP_CREATE);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
-}\r
-TEST_F(KtClassTest, ReadInternal_VAlStructNull) {\r
- key_logical_port_t *k=new key_logical_port_t;\r
- val_logical_port_st_t *v=new val_logical_port_st_t;\r
- vector<void *> vectVal_logicalport;\r
- vector<void *> vectkey_logicalport;\r
- vectkey_logicalport.push_back(k);\r
- vectVal_logicalport.push_back(v);\r
- Kt_LogicalPort ktlinkobj;\r
- physical_request_header rh;\r
- getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);\r
- uint32_t operation = UNC_OP_UPDATE;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- int ret = ktlinkobj.ReadInternal(db_conn,vectkey_logicalport,vectVal_logicalport,UNC_DT_STATE,UNC_OP_READ);\r
- EXPECT_EQ(ret,ODBCM_RC_MORE_ROWS_FOUND);\r
-}\r
-TEST_F(KtClassTest, HandleOperStatus_NotSuccess) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));\r
- memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));\r
- memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));\r
- memcpy(v.logical_port.switch_id,SWitchID,strlen(SWitchID));\r
- v.logical_port.valid[kIdxLogicalPortPhysicalPortId] = 1;\r
- memcpy(v.logical_port.physical_port_id,PhyPortID,strlen(PhyPortID));\r
- //string key_instance = "controller1";\r
- unc_key_type_t key_type = UNC_KT_CONTROLLER;\r
- uint8_t oper_status =0;\r
- void* key_struct;\r
- OperStatusHolder obj(key_type,key_struct,oper_status);\r
- vector<OperStatusHolder> refer;\r
- refer.push_back(obj);\r
- Kt_LogicalPort ktlinkobj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_FAILED);\r
- int ret = ktlinkobj.HandleOperStatus(db_conn,UNC_DT_STATE,&k,&v,refer,UNC_KT_LOGICAL_PORT);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-TEST_F(KtClassTest, HandleOperStatus_GetOneRow_FAILED) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));\r
- memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));\r
- memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));\r
- memcpy(v.logical_port.switch_id,SWitchID,strlen(SWitchID));\r
- v.logical_port.valid[kIdxLogicalPortPhysicalPortId] = 1;\r
- memcpy(v.logical_port.physical_port_id,PhyPortID,strlen(PhyPortID));\r
- vector<OperStatusHolder> refer;\r
- Kt_LogicalPort ktlinkobj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_FAILED);\r
- int ret = ktlinkobj.HandleOperStatus(db_conn,UNC_DT_STATE,&k,&v,refer,UNC_KT_LOGICAL_PORT);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-\r
-TEST_F(KtClassTest, HandleOperStatus_GetOneRow_SUCCESS_CONTROLLERUP) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));\r
- memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));\r
- memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));\r
- memcpy(v.logical_port.switch_id,SWitchID,strlen(SWitchID));\r
- v.logical_port.valid[kIdxLogicalPortPhysicalPortId] = 1;\r
- memcpy(v.logical_port.physical_port_id,PhyPortID,strlen(PhyPortID));\r
- string key_instance = "controller1";\r
- unc_key_type_t key_type = UNC_KT_CONTROLLER;\r
- uint8_t oper_status =7;\r
- void* key_struct;\r
- OperStatusHolder obj(key_type,key_struct,oper_status);\r
- vector<OperStatusHolder> refer;\r
- refer.push_back(obj);\r
- Kt_LogicalPort ktlinkobj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_SUCCESS);\r
- int ret = ktlinkobj.HandleOperStatus(db_conn,UNC_DT_STATE,&k,&v,refer,UNC_KT_LOGICAL_PORT);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-TEST_F(KtClassTest, HandleOperDownCriteriaFromPortStatus_KEY_STRUCT_NULL) {\r
- key_logical_port_t *k = NULL;\r
- val_logical_port_st_t v;\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memcpy(v.logical_port.switch_id,SWitchID,strlen(SWitchID));\r
- memcpy(v.logical_port.physical_port_id,PhyPortID,strlen(PhyPortID));\r
- Kt_LogicalPort ktlinkobj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- pfc_bool_t is_delete_call = true;\r
- vector<uint32_t> vectOperStatus;\r
- int ret = ktlinkobj.HandleOperDownCriteriaFromPortStatus(db_conn,UNC_DT_STATE,k,&v,vectOperStatus,is_delete_call);\r
- EXPECT_EQ(ret,UPPL_RC_ERR_BAD_REQUEST);\r
-}\r
-TEST_F(KtClassTest, HandleOperDownCriteriaFromPortStatus_Key_struct_success) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));\r
- memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));\r
- memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));\r
- memcpy(v.logical_port.switch_id,SWitchID,strlen(SWitchID));\r
- memcpy(v.logical_port.physical_port_id,PhyPortID,strlen(PhyPortID));\r
- Kt_LogicalPort ktlinkobj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- pfc_bool_t is_delete_call = true;\r
- vector<uint32_t> vectOperStatus;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_SUCCESS);\r
- int ret = ktlinkobj.HandleOperDownCriteriaFromPortStatus(db_conn,UNC_DT_STATE,&k,&v,vectOperStatus,is_delete_call);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-\r
-\r
-TEST_F(KtClassTest, GetOperDownCriteria_Success) {\r
- key_logical_port_t k;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));\r
- memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));\r
- memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));\r
- uint32_t oper_down_criteria = 1;\r
- Kt_LogicalPort ktlinkobj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);\r
- int ret = ktlinkobj.GetOperDownCriteria(db_conn,UNC_DT_STATE,&k,oper_down_criteria);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
- unc::uppl::ODBCManager::clearStubData();\r
-}\r
-/*TEST_F(KtClassTest, HandleOperStatus_KeyStruct_NULL_Handdle) {\r
- key_logical_port_t k;\r
- val_logical_port_st_t v;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));\r
- memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));\r
- memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));\r
- memcpy(v.logical_port.switch_id,SWitchID,strlen(SWitchID));\r
- unc_key_type_t key_type_= UNC_KT_BOUNDARY;\r
- string key_instance_ = "physical";\r
- uint8_t oper_status_ = 1;\r
- vector<OperStatusHolder> refer;\r
- refer.push_back(key_type_);\r
- refer.push_back(key_instance_);\r
- refer.push_back(oper_status_);\r
- Kt_LogicalPort ktlinkobj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- int ret = ktlinkobj.HandleOperStatus(db_conn,UNC_DT_STATE,&k,&v,refer,UNC_KT_LOGICAL_PORT);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
-}*/\r
-#if 0\r
-TEST_F(KtClassTest, PerformSyntaxValidation_ValueStructureNullCheck_06) { //Null check properly not handle for value structure\r
- key_logical_port_t k;\r
- val_logical_port_st_t *v =NULL;\r
- memset(&k, 0, sizeof(key_logical_port_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));\r
- memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));\r
- memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));\r
- Kt_LogicalPort ktlinkobj;\r
- physical_request_header rh;\r
- getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);\r
- uint32_t operation = UNC_OP_CREATE;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- int ret = ktlinkobj.PerformSyntaxValidation(db_conn,&k,v,operation,UNC_DT_STATE);\r
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);\r
-}\r
-TEST_F(KtClassTest, DeleteKeyInstance_supported_01) { //Bug in HandleOperDownCriteriaFromPortStatus(return statement not handle,code crash)\r
- key_logical_port_t *k = NULL;\r
- //memset(&k, 0, sizeof(key_logical_port_t));\r
- Kt_LogicalPort ktlinkobj;\r
- physical_request_header rh;\r
- getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- int ret = ktlinkobj.DeleteKeyInstance(db_conn, k, UNC_DT_STATE, UNC_KT_LOGICAL_PORT);\r
- EXPECT_EQ(ret, UPPL_RC_ERR_BAD_REQUEST);\r
- }\r
-//Key-structure handle\r
-TEST_F(KtClassTest, HandleOperStatus_KeyStruct_NULL_Handdle) {\r
- key_logical_port_t *k=NULL;\r
- val_logical_port_st_t v;\r
- //memset(&k, 0, sizeof(key_logical_port_t));\r
- memset(&v, 0, sizeof(val_logical_port_st_t));\r
- vector<OperStatusHolder> refer;\r
- Kt_LogicalPort ktlinkobj;\r
- OdbcmConnectionHandler *db_conn =NULL;\r
- int ret = ktlinkobj.HandleOperStatus(db_conn,UNC_DT_STATE,k,&v,refer,UNC_KT_LOGICAL_PORT);\r
- EXPECT_EQ(ret,UPPL_RC_ERR_BAD_REQUEST);\r
-}\r
-#endif\r
+/*
+ * Copyright (c) 2012-2013 NEC Corporation
+ * All rights reserved.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this
+ * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
+ */
+
+#include <limits.h>
+#include <gtest/gtest.h>
+
+#include <pfcxx/ipc_client.hh>
+#include <pfc/ipc_struct.h>
+
+#include <stdio.h>
+#include <sys/stat.h>
+#include <sys/mman.h>
+#include <arpa/inet.h>
+
+#include <time.h>
+#include <pfc/base.h>
+#include <pfc/ipc.h>
+#include <pfc/config.h>
+
+#include <pfc/conf.h>
+#include <pfc/log.h>
+#include <pfc/util.h>
+#include <pfc/event.h>
+#include <pfc/path.h>
+#include <pfc/hash.h>
+#include <pfc/thread.h>
+#include <pfc/refptr.h>
+#include <pfc/listmodel.h>
+#include <pfc/iostream.h>
+#include <pfc/ipc_client.h>
+#include <pfc/ipc_pfcd.h>
+#include <pfc/ipc_struct.h>
+#include <odbcm_mgr.hh>
+#include <physical_common_def.hh>
+#include <unc/uppl_common.h>
+#include <unc/keytype.h>
+#include <itc_kt_base.hh>
+#include <itc_kt_root.hh>
+#include <itc_kt_controller.hh>
+#include <itc_kt_ctr_domain.hh>
+#include <itc_kt_switch.hh>
+#include <itc_kt_port.hh>
+#include <itc_kt_link.hh>
+#include <itc_kt_boundary.hh>
+#include <itc_kt_logical_member_port.hh>
+#include <itc_kt_logicalport.hh>
+#include <ipct_util.hh>
+#include <itc_kt_logical_member_port.hh>
+#include <physicallayer.hh>
+#include "PhysicalLayerStub.hh"
+#include <tclib_module.hh>
+#include <itc_read_request.hh>
+#include "ut_util.hh"
+
+using namespace pfc;
+using namespace pfc::core;
+using namespace pfc::core::ipc;
+using namespace unc::uppl;
+using namespace unc::uppl::test;
+using namespace std;
+
+class LogicalPortTest
+ : public UpplTestEnv
+{
+};
+
+static void getReqHeader(physical_request_header& rh,
+ unc_keytype_operation_t opern,
+ unc_keytype_datatype_t dtype) {
+ rh.client_sess_id = 1;
+ rh.config_id = 1;
+ rh.operation = opern;
+ rh.max_rep_count = 0;
+ rh.option1 = 0;
+ rh.option2 = 0;
+ rh.data_type = dtype;
+ rh.key_type = UNC_KT_LOGICAL_PORT;
+}
+
+// Can be changed based on testing need
+static char pkName1_ctr[] = "controller1";
+static char pkName1_domain[] = "controller1 domain name";
+static char pkName1_logicalport[] = "{0x00,0xa}";
+static char Desription[] = "create demo";
+static char SWitchID[] = "switch01";
+static char PhyPortID[] = "PhyPort01";
+static char controller_name[] = "Controller1";
+static char switch_id[] = "Switch1";
+static char phy_port_id[] = "port1";
+
+TEST_F(LogicalPortTest, PerformSyntaxValidation_ControllernameNotFound_01) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ Kt_LogicalPort ktlinkobj;
+ physical_request_header rh;
+ getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);
+ uint32_t operation = UNC_OP_CREATE;
+ OdbcmConnectionHandler *db_conn =NULL;
+ int ret = ktlinkobj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SYNTAX, ret);
+}
+
+TEST_F(LogicalPortTest, PerformSyntaxValidation_DomainNameNotFound_02) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ Kt_LogicalPort ktlinkobj;
+ memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));
+ physical_request_header rh;
+ getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);
+ uint32_t operation = UNC_OP_CREATE;
+ OdbcmConnectionHandler *db_conn =NULL;
+ int ret = ktlinkobj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SYNTAX, ret);
+}
+
+TEST_F(LogicalPortTest, PerformSyntaxValidation_PortIDNNotFound_03) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));
+ memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));
+ Kt_LogicalPort ktlinkobj;
+ physical_request_header rh;
+ getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);
+ uint32_t operation = UNC_OP_CREATE;
+ OdbcmConnectionHandler *db_conn =NULL;
+ int ret = ktlinkobj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SYNTAX, ret);
+
+}
+
+TEST_F(LogicalPortTest, PerformSyntaxValidation_SyntaxValidation_Success_04) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));
+ memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));
+ memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));
+ Kt_LogicalPort ktlinkobj;
+ physical_request_header rh;
+ getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);
+ uint32_t operation = UNC_OP_CREATE;
+ OdbcmConnectionHandler *db_conn =NULL;
+ int ret = ktlinkobj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalPortTest, PerformSyntaxValidation_OptionalValPass_Success_05) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));
+ memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));
+ memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));
+ memcpy(v.logical_port.description,Desription,strlen(Desription));
+ Kt_LogicalPort ktlinkobj;
+ physical_request_header rh;
+ getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);
+ uint32_t operation = UNC_OP_CREATE;
+ OdbcmConnectionHandler *db_conn =NULL;
+ int ret = ktlinkobj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalPortTest, IsKeyExists_01) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ Kt_LogicalPort ktlinkobj;
+ physical_request_header rh;
+ memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));
+ memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));
+ memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));
+ getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);
+ rh.key_type = UNC_KT_LOGICAL_PORT;
+ OdbcmConnectionHandler *db_conn =NULL;
+ vector<string> sw_vect_key_value;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);
+ int ret = ktlinkobj.IsKeyExists(db_conn,UNC_DT_STATE,sw_vect_key_value);
+ EXPECT_EQ(UPPL_RC_ERR_BAD_REQUEST, ret);
+}
+
+TEST_F(LogicalPortTest, IsKeyExists_FailureIsrowexist02) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));
+ memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));
+ memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));
+ Kt_LogicalPort ktlinkobj;
+ physical_request_header rh;
+ getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);
+ rh.key_type = UNC_KT_LOGICAL_PORT;
+ OdbcmConnectionHandler *db_conn =NULL;
+ vector<string> sw_vect_key_value;
+ sw_vect_key_value.push_back(pkName1_ctr);
+ sw_vect_key_value.push_back(pkName1_domain);
+ sw_vect_key_value.push_back(pkName1_logicalport);
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_MORE_ROWS_FOUND);
+ int ret = ktlinkobj.IsKeyExists(db_conn,UNC_DT_STATE,sw_vect_key_value);
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
+}
+
+TEST_F(LogicalPortTest, IsKeyExists_SuccessIsrowexist03) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));
+ memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));
+ memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));
+ Kt_LogicalPort ktlinkobj;
+ physical_request_header rh;
+ getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);
+ rh.key_type = UNC_KT_LOGICAL_PORT;
+ OdbcmConnectionHandler *db_conn =NULL;
+ vector<string> sw_vect_key_value;
+ sw_vect_key_value.push_back(pkName1_ctr);
+ sw_vect_key_value.push_back(pkName1_domain);
+ sw_vect_key_value.push_back(pkName1_logicalport);
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);
+ int ret = ktlinkobj.IsKeyExists(db_conn,UNC_DT_STATE,sw_vect_key_value);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalPortTest, PerformSemanticValidation_InstanceExist_create01) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));
+ memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));
+ memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));
+ Kt_LogicalPort ktlinkobj;
+ physical_request_header rh;
+ getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);
+ rh.key_type = UNC_KT_LOGICAL_PORT;
+ OdbcmConnectionHandler *db_conn =NULL;
+ uint32_t operation = UNC_OP_CREATE;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);
+ int ret = ktlinkobj.PerformSemanticValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
+ EXPECT_EQ(UPPL_RC_ERR_INSTANCE_EXISTS, ret);
+}
+
+TEST_F(LogicalPortTest, PerformSemanticValidation_InstanceNOtExist_create02) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));
+ memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));
+ memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));
+ Kt_LogicalPort ktlinkobj;
+ physical_request_header rh;
+ getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);
+ rh.key_type = UNC_KT_LOGICAL_PORT;
+ OdbcmConnectionHandler *db_conn =NULL;
+ uint32_t operation = UNC_OP_CREATE;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_MORE_ROWS_FOUND);
+ int ret = ktlinkobj.PerformSemanticValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
+ EXPECT_EQ(UPPL_RC_ERR_PARENT_DOES_NOT_EXIST, ret);
+}
+
+TEST_F(LogicalPortTest, PerformSemanticValidation_InstanceNOtExist_update03) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));
+ memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));
+ memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));
+ Kt_LogicalPort ktlinkobj;
+ physical_request_header rh;
+ getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);
+ rh.key_type = UNC_KT_LOGICAL_PORT;
+ OdbcmConnectionHandler *db_conn =NULL;
+ uint32_t operation = UNC_OP_UPDATE;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_MORE_ROWS_FOUND);
+ int ret = ktlinkobj.PerformSemanticValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
+}
+
+TEST_F(LogicalPortTest, PerformSemanticValidation_InstanceNOtExist_delete04) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));
+ memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));
+ memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));
+ Kt_LogicalPort ktlinkobj;
+ physical_request_header rh;
+ getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);
+ rh.key_type = UNC_KT_LOGICAL_PORT;
+ OdbcmConnectionHandler *db_conn =NULL;
+ uint32_t operation = UNC_OP_DELETE;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_MORE_ROWS_FOUND);
+ int ret = ktlinkobj.PerformSemanticValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
+}
+
+TEST_F(LogicalPortTest, PerformSemanticValidation_InstanceNOtExist_read03) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));
+ memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));
+ memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));
+ Kt_LogicalPort ktlinkobj;
+ physical_request_header rh;
+ getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);
+ rh.key_type = UNC_KT_LOGICAL_PORT;
+ OdbcmConnectionHandler *db_conn =NULL;
+ uint32_t operation = UNC_OP_READ;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_MORE_ROWS_FOUND);
+ int ret = ktlinkobj.PerformSemanticValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
+}
+
+TEST_F(LogicalPortTest, PerformSemanticValidation_InstanceNOtExist_read_InstanceExist04) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));
+ memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));
+ memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));
+ Kt_LogicalPort ktlinkobj;
+ physical_request_header rh;
+ getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);
+ rh.key_type = UNC_KT_LOGICAL_PORT;
+ OdbcmConnectionHandler *db_conn =NULL;
+ uint32_t operation = UNC_OP_READ;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);
+ int ret = ktlinkobj.PerformSemanticValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalPortTest, PerformSemanticValidation_InstanceNOtExist_update_InstanceExist04) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));
+ memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));
+ memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));
+ Kt_LogicalPort ktlinkobj;
+ physical_request_header rh;
+ getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);
+ rh.key_type = UNC_KT_LOGICAL_PORT;
+ OdbcmConnectionHandler *db_conn =NULL;
+ uint32_t operation = UNC_OP_UPDATE;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);
+ int ret = ktlinkobj.PerformSemanticValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalPortTest, PerformSemanticValidation_InstanceNOtExist_delete_InstanceExist04) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));
+ memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));
+ memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));
+ Kt_LogicalPort ktlinkobj;
+ physical_request_header rh;
+ getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);
+ rh.key_type = UNC_KT_LOGICAL_PORT;
+ OdbcmConnectionHandler *db_conn =NULL;
+ uint32_t operation = UNC_OP_DELETE;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);
+ int ret = ktlinkobj.PerformSemanticValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalPortTest, DeleteKeyInstance_UnsupportedForSTARTUP_01) {
+ key_logical_port_t k;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ Kt_LogicalPort ktlinkobj;
+ physical_request_header rh;
+ getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);
+ OdbcmConnectionHandler *db_conn =NULL;
+ int ret = ktlinkobj.DeleteKeyInstance(db_conn, &k, UNC_DT_STARTUP, UNC_KT_LOGICAL_PORT);
+ EXPECT_EQ(UPPL_RC_ERR_OPERATION_NOT_ALLOWED, ret);
+}
+
+TEST_F(LogicalPortTest, DeleteKeyInstance_UnsupportedForCANDIDATE_01) {
+ key_logical_port_t k;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ Kt_LogicalPort ktlinkobj;
+ physical_request_header rh;
+ getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);
+ OdbcmConnectionHandler *db_conn =NULL;
+ int ret = ktlinkobj.DeleteKeyInstance(db_conn, &k, UNC_DT_CANDIDATE, UNC_KT_LOGICAL_PORT);
+ EXPECT_EQ(UPPL_RC_ERR_OPERATION_NOT_ALLOWED, ret);
+}
+
+TEST_F(LogicalPortTest, DeleteKeyInstance_UnsupportedForRUNNING_01) {
+ key_logical_port_t k;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ Kt_LogicalPort ktlinkobj;
+ physical_request_header rh;
+ getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);
+ OdbcmConnectionHandler *db_conn =NULL;
+ int ret = ktlinkobj.DeleteKeyInstance(db_conn, &k, UNC_DT_RUNNING, UNC_KT_LOGICAL_PORT);
+ EXPECT_EQ(UPPL_RC_ERR_OPERATION_NOT_ALLOWED, ret);
+}
+
+TEST_F(LogicalPortTest, DeleteKeyInstance_UnsupportedForAUDIT_01) {
+ key_logical_port_t k;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ Kt_LogicalPort ktlinkobj;
+ physical_request_header rh;
+ getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);
+ OdbcmConnectionHandler *db_conn =NULL;
+ int ret = ktlinkobj.DeleteKeyInstance(db_conn, &k, UNC_DT_AUDIT, UNC_KT_LOGICAL_PORT);
+ EXPECT_EQ(UPPL_RC_ERR_OPERATION_NOT_ALLOWED, ret);
+}
+
+TEST_F(LogicalPortTest, DeleteKeyInstance_Support_03) { //return code not handle from HandleOperDownCriteriaFromPortStatus function
+ key_logical_port_t k;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ Kt_LogicalPort ktlinkobj;
+ physical_request_header rh;
+ getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);
+ OdbcmConnectionHandler *db_conn =NULL;
+ int ret = ktlinkobj.DeleteKeyInstance(db_conn, &k, UNC_DT_STATE, UNC_KT_LOGICAL_PORT);
+ EXPECT_EQ(UPPL_RC_ERR_DB_DELETE, ret);
+}
+
+TEST_F(LogicalPortTest, DeleteKeyInstance_Support_04) { //return code not handle from HandleOperDownCriteriaFromPortStatus function
+ key_logical_port_t k;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ Kt_LogicalPort ktlinkobj;
+ physical_request_header rh;
+ getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);
+ OdbcmConnectionHandler *db_conn =NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_CONNECTION_ERROR);
+ int ret = ktlinkobj.DeleteKeyInstance(db_conn, &k, UNC_DT_STATE, UNC_KT_LOGICAL_PORT);
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
+}
+
+TEST_F(LogicalPortTest, DeleteKeyInstance_Support_05) { //return code not handle from HandleOperDownCriteriaFromPortStatus function
+ key_logical_port_t k;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ Kt_LogicalPort ktlinkobj;
+ physical_request_header rh;
+ getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);
+ OdbcmConnectionHandler *db_conn =NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_ROW_NOT_EXISTS);
+ int ret = ktlinkobj.DeleteKeyInstance(db_conn, &k, UNC_DT_STATE, UNC_KT_LOGICAL_PORT);
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
+}
+
+TEST_F(LogicalPortTest, DeleteKeyInstance_Support_06) { //return code not handle from HandleOperDownCriteriaFromPortStatus function
+ key_logical_port_t k;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ Kt_LogicalPort ktlinkobj;
+ physical_request_header rh;
+ getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);
+ OdbcmConnectionHandler *db_conn =NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_SUCCESS);
+ int ret = ktlinkobj.DeleteKeyInstance(db_conn, &k, UNC_DT_STATE, UNC_KT_LOGICAL_PORT);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalPortTest, PerformRead_001) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ Kt_LogicalPort ktlinkobj;
+ physical_request_header rh;
+ getReqHeader(rh, UNC_OP_READ, UNC_DT_STATE);
+ rh.key_type = UNC_KT_PORT;
+ OdbcmConnectionHandler *db_conn =NULL;
+ ServerSession sess;
+ sess.stub_setAddOutput((uint32_t)0);
+ sess.stub_setAddOutput((uint32_t)0);
+ sess.stub_setAddOutput((uint32_t)UNC_OP_READ);
+ sess.stub_setAddOutput((uint32_t)1);
+ sess.stub_setAddOutput((uint32_t)UNC_OPT1_DETAIL);
+ sess.stub_setAddOutput((uint32_t)UNC_OPT2_NONE);
+ sess.stub_setAddOutput((uint32_t)UNC_DT_STATE);
+ sess.stub_setAddOutput((uint32_t)0);
+ sess.stub_setAddOutput((uint32_t)UNC_KT_PORT);
+
+ int ret = ktlinkobj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_DETAIL,(uint32_t)UNC_OPT2_NONE,(uint32_t)1);
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
+}
+
+TEST_F(LogicalPortTest, PerformRead_002) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ Kt_LogicalPort ktlinkobj;
+ physical_request_header rh;
+ getReqHeader(rh, UNC_OP_READ, UNC_DT_CANDIDATE);
+ rh.key_type = UNC_KT_PORT;
+ OdbcmConnectionHandler *db_conn =NULL;
+ ServerSession sess;
+ sess.stub_setAddOutput((uint32_t)0);
+ sess.stub_setAddOutput((uint32_t)0);
+ sess.stub_setAddOutput((uint32_t)UNC_OP_READ);
+ sess.stub_setAddOutput((uint32_t)1);
+ sess.stub_setAddOutput((uint32_t)UNC_OPT1_NORMAL);
+ sess.stub_setAddOutput((uint32_t)UNC_OPT1_NORMAL);
+ sess.stub_setAddOutput((uint32_t)UNC_DT_CANDIDATE);
+ sess.stub_setAddOutput((uint32_t)0);
+ sess.stub_setAddOutput((uint32_t)UNC_KT_PORT);
+int ret = ktlinkobj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_L2DOMAIN,(uint32_t)1);
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
+}
+
+TEST_F(LogicalPortTest, PerformRead_003) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ Kt_LogicalPort ktlinkobj;
+ physical_request_header rh;
+ getReqHeader(rh, UNC_OP_READ, UNC_DT_CANDIDATE);
+ rh.key_type = UNC_KT_PORT;
+ OdbcmConnectionHandler *db_conn =NULL;
+ ServerSession sess;
+ sess.stub_setAddOutput((uint32_t)0);
+ sess.stub_setAddOutput((uint32_t)0);
+ sess.stub_setAddOutput((uint32_t)UNC_OP_READ);
+ sess.stub_setAddOutput((uint32_t)1);
+ sess.stub_setAddOutput((uint32_t)UNC_OPT1_NORMAL);
+ sess.stub_setAddOutput((uint32_t)UNC_OPT1_NORMAL);
+ sess.stub_setAddOutput((uint32_t)UNC_DT_CANDIDATE);
+ sess.stub_setAddOutput((uint32_t)0);
+ sess.stub_setAddOutput((uint32_t)UNC_KT_PORT);
+int ret = ktlinkobj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_RUNNING,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_NONE,(uint32_t)1);
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
+}
+
+TEST_F(LogicalPortTest, PerformRead_004) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ Kt_LogicalPort ktlinkobj;
+ physical_request_header rh;
+ getReqHeader(rh, UNC_OP_READ, UNC_DT_CANDIDATE);
+ rh.key_type = UNC_KT_PORT;
+ OdbcmConnectionHandler *db_conn =NULL;
+ ServerSession sess;
+ sess.stub_setAddOutput((uint32_t)0);
+ sess.stub_setAddOutput((uint32_t)0);
+ sess.stub_setAddOutput((uint32_t)UNC_OP_READ);
+ sess.stub_setAddOutput((uint32_t)1);
+ sess.stub_setAddOutput((uint32_t)UNC_OPT1_NORMAL);
+ sess.stub_setAddOutput((uint32_t)UNC_OPT1_NORMAL);
+ sess.stub_setAddOutput((uint32_t)UNC_DT_CANDIDATE);
+ sess.stub_setAddOutput((uint32_t)0);
+ sess.stub_setAddOutput((uint32_t)UNC_KT_PORT);
+int ret = ktlinkobj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_INVALID,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_NONE,(uint32_t)1);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalPortTest, PerformRead_GetOneRow_005) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ Kt_LogicalPort ktlinkobj;
+ physical_request_header rh;
+ getReqHeader(rh, UNC_OP_READ, UNC_DT_CANDIDATE);
+ rh.key_type = UNC_KT_PORT;
+ OdbcmConnectionHandler *db_conn =NULL;
+ ServerSession sess;
+ sess.stub_setAddOutput((uint32_t)0);
+ sess.stub_setAddOutput((uint32_t)0);
+ sess.stub_setAddOutput((uint32_t)UNC_OP_READ);
+ sess.stub_setAddOutput((uint32_t)1);
+ sess.stub_setAddOutput((uint32_t)UNC_OPT1_NORMAL);
+ sess.stub_setAddOutput((uint32_t)UNC_OPT1_NORMAL);
+ sess.stub_setAddOutput((uint32_t)UNC_DT_CANDIDATE);
+ sess.stub_setAddOutput((uint32_t)0);
+ sess.stub_setAddOutput((uint32_t)UNC_KT_PORT);
+int ret = ktlinkobj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_NONE,(uint32_t)1);
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
+}
+
+TEST_F(LogicalPortTest, SetOperStatus_001) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ memset(&k, 0, sizeof(key_logical_port_t));
+ Kt_LogicalPort ktlinkobj;
+ //getKeyForKtPort2(k);
+ physical_request_header rh;
+ getReqHeader(rh, UNC_OP_UPDATE, UNC_DT_STATE);
+ OdbcmConnectionHandler *db_conn =NULL;
+
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_FAILED);
+ int ret = ktlinkobj.SetOperStatus(db_conn,UNC_DT_STATE,&k,&v,(UpplLogicalPortOperStatus)1);
+ EXPECT_EQ(UPPL_RC_ERR_DB_UPDATE, ret);
+}
+
+TEST_F(LogicalPortTest, SetOperStatus_002) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ memset(&k, 0, sizeof(key_logical_port_t));
+ Kt_LogicalPort ktlinkobj;
+ //getKeyForKtPort2(k);
+ physical_request_header rh;
+ getReqHeader(rh, UNC_OP_UPDATE, UNC_DT_STATE);
+ OdbcmConnectionHandler *db_conn =NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_ROW_NOT_EXISTS);
+ int ret = ktlinkobj.SetOperStatus(db_conn,UNC_DT_STATE,&k,&v,(UpplLogicalPortOperStatus)0);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalPortTest, SetOperStatus_003) {
+
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ memset(&k, 0, sizeof(key_logical_port_t));
+ Kt_LogicalPort ktlinkobj;
+ //getKeyForKtPort2(k);
+ physical_request_header rh;
+ getReqHeader(rh, UNC_OP_UPDATE, UNC_DT_STATE);
+ OdbcmConnectionHandler *db_conn =NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
+ int ret = ktlinkobj.SetOperStatus(db_conn,UNC_DT_STATE,&k,&v,(UpplLogicalPortOperStatus)0);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalPortTest, SetOperStatus_004) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ memset(&k, 0, sizeof(key_logical_port_t));
+ Kt_LogicalPort ktlinkobj;
+ physical_request_header rh;
+ getReqHeader(rh, UNC_OP_UPDATE, UNC_DT_STATE);
+ OdbcmConnectionHandler *db_conn =NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
+ int ret = ktlinkobj.SetOperStatus(db_conn,UNC_DT_STATE,&k,&v,(UpplLogicalPortOperStatus)0);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalPortTest, SetOperStatus_005) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ memset(&k, 0, sizeof(key_logical_port_t));
+ Kt_LogicalPort ktlinkobj;
+ physical_request_header rh;
+ getReqHeader(rh, UNC_OP_UPDATE, UNC_DT_STATE);
+ OdbcmConnectionHandler *db_conn =NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
+ int ret = ktlinkobj.SetOperStatus(db_conn,UNC_DT_STATE,&k,&v,(UpplLogicalPortOperStatus)0);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalPortTest, SetOperStatus_006) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));
+ memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));
+ memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));
+ memcpy(v.logical_port.switch_id,SWitchID,strlen(SWitchID));
+ memcpy(v.logical_port.physical_port_id,PhyPortID,strlen(PhyPortID));
+ Kt_LogicalPort ktlinkobj;
+ physical_request_header rh;
+ getReqHeader(rh, UNC_OP_UPDATE, UNC_DT_STATE);
+ OdbcmConnectionHandler *db_conn =NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
+ int ret = ktlinkobj.SetOperStatus(db_conn,UNC_DT_STATE,&k,&v,(UpplLogicalPortOperStatus)0);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalPortTest, SetOperStatus_007) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));
+ memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));
+ memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));
+ memcpy(v.logical_port.switch_id,SWitchID,strlen(SWitchID));
+ memcpy(v.logical_port.physical_port_id,PhyPortID,strlen(PhyPortID));
+ Kt_LogicalPort ktlinkobj;
+ physical_request_header rh;
+ getReqHeader(rh, UNC_OP_UPDATE, UNC_DT_STATE);
+ OdbcmConnectionHandler *db_conn =NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
+ int ret = ktlinkobj.SetOperStatus(db_conn,UNC_DT_STATE,&k,&v,(UpplLogicalPortOperStatus)2);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalPortTest, ReadBulk_NotAllowOperation_01) {
+ key_logical_port_t k;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ Kt_LogicalPort ktlinkobj;
+ uint32_t max_rep_ct=1;
+ int child_index=0;
+ pfc_bool_t parent_call=true;
+ pfc_bool_t is_read_next=true;
+ OdbcmConnectionHandler *db_conn = NULL;
+ ReadRequest *read_req = NULL;
+ int ret = ktlinkobj.ReadBulk(db_conn, &k, UNC_DT_CANDIDATE, max_rep_ct, child_index, parent_call, is_read_next,read_req);
+ EXPECT_EQ(UPPL_RC_ERR_OPERATION_NOT_ALLOWED, ret);
+}
+
+TEST_F(LogicalPortTest, ReadBulk_MaxCountZERO_02) {
+ key_logical_port_t k;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ Kt_LogicalPort ktlinkobj;
+ uint32_t max_rep_ct=0;
+ int child_index=0;
+ pfc_bool_t parent_call=true;
+ pfc_bool_t is_read_next=true;
+ OdbcmConnectionHandler *db_conn = NULL;
+ ReadRequest *read_req = NULL;
+ int ret = ktlinkobj.ReadBulk(db_conn, &k, UNC_DT_STATE, max_rep_ct, child_index, parent_call, is_read_next,read_req);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalPortTest, ReadBulk_UPPL_RC_ERR_DB_GET_02) {
+ key_logical_port_t k;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));
+ Kt_LogicalPort ktlinkobj;
+ uint32_t max_rep_ct=1;
+ int child_index=-1;
+ pfc_bool_t parent_call=true;
+ pfc_bool_t is_read_next=true;
+ OdbcmConnectionHandler *db_conn = NULL;
+ ReadRequest *read_req = NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);
+ int ret = ktlinkobj.ReadBulk(db_conn, &k, UNC_DT_STATE, max_rep_ct, child_index, parent_call, is_read_next,read_req);
+ EXPECT_EQ(UPPL_RC_ERR_DB_GET, ret);
+}
+
+TEST_F(LogicalPortTest, ReadBulkInternal__SUCCESS01) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));
+ Kt_LogicalPort ktlinkobj;
+ uint32_t max_rep_ct=0;
+ OdbcmConnectionHandler *db_conn = NULL;
+ vector<val_logical_port_st_t> vect_val_logical_port_st;
+ vector<key_logical_port_t> vect_logicalport_id;
+ int ret = ktlinkobj.ReadBulkInternal(db_conn, &k, &v, UNC_DT_STATE, max_rep_ct, vect_val_logical_port_st, vect_logicalport_id);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalPortTest, GetLogicalPortValidFlag_UPPL_RC_ERR_NO_SUCH_INSTANCE) {
+ key_logical_port_t k;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));
+ val_logical_port_st_t val;
+ memset(&val, 0, sizeof(val));
+
+ Kt_LogicalPort ktlinkobj;
+ OdbcmConnectionHandler *db_conn = NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_RECORD_NOT_FOUND);
+ int ret = ktlinkobj.GetLogicalPortValidFlag(db_conn, &k, val, UNC_DT_STATE);
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
+}
+
+TEST_F(LogicalPortTest, GetLogicalPortValidFlag_UPPL_RC_ERR_DB_ACCESS) {
+ key_logical_port_t k;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));
+ val_logical_port_st_t val;
+ memset(&val, 0, sizeof(val));
+
+ Kt_LogicalPort ktlinkobj;
+ OdbcmConnectionHandler *db_conn = NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_CONNECTION_ERROR);
+ int ret = ktlinkobj.GetLogicalPortValidFlag(db_conn, &k, val, UNC_DT_STATE);
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
+}
+
+TEST_F(LogicalPortTest, GetLogicalPortValidFlag_OtherThanSuccess) {
+ key_logical_port_t k;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));
+ val_logical_port_st_t val;
+ memset(&val, 0, sizeof(val));
+
+ Kt_LogicalPort ktlinkobj;
+ OdbcmConnectionHandler *db_conn = NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_COMMON_LINK_FAILURE);
+ int ret = ktlinkobj.GetLogicalPortValidFlag(db_conn, &k, val, UNC_DT_STATE);
+ EXPECT_EQ(UPPL_RC_ERR_DB_GET, ret);
+}
+
+TEST_F(LogicalPortTest, GetLogicalPortValidFlag_UPPL_RC_SUCCESS) {
+ key_logical_port_t k;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));
+ val_logical_port_st_t val;
+ memset(&val, 0, sizeof(val));
+
+ Kt_LogicalPort ktlinkobj;
+ OdbcmConnectionHandler *db_conn = NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
+ int ret = ktlinkobj.GetLogicalPortValidFlag(db_conn, &k, val, UNC_DT_STATE);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalPortTest, GetOperStatusFromOperDownCriteria_DB_ERROR) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ Kt_LogicalPort ktlinkobj;
+ UpplLogicalPortOperStatus new_oper_status = UPPL_LOGICAL_PORT_OPER_UNKNOWN;
+ OdbcmConnectionHandler *db_conn = NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_FAILED);
+ int ret = ktlinkobj.GetOperStatusFromOperDownCriteria(db_conn,UNC_DT_STATE,&k,&v,new_oper_status);
+ EXPECT_EQ(UPPL_RC_ERR_DB_GET, ret);
+}
+
+TEST_F(LogicalPortTest, GetOperStatusFromOperDownCriteria_DB_Success) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ Kt_LogicalPort ktlinkobj;
+ UpplLogicalPortOperStatus new_oper_status = UPPL_LOGICAL_PORT_OPER_UNKNOWN;
+ OdbcmConnectionHandler *db_conn = NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
+ int ret = ktlinkobj.GetOperStatusFromOperDownCriteria(db_conn,UNC_DT_STATE,&k,&v,new_oper_status);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalPortTest, HandleDriverAlarms_AlaramOtherThanUNC_SUBDOMAIN_SPLIT) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ uint32_t alarm_type = UNC_FLOW_ENT_FULL;
+ uint32_t oper_type = UNC_OP_CREATE;
+ vector<void *> obj_key_struct;
+ Kt_LogicalPort ktlinkobj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ int ret = ktlinkobj.HandleDriverAlarms(db_conn,UNC_DT_STATE,alarm_type,oper_type,&k,&v);
+ EXPECT_EQ(UPPL_RC_ERR_BAD_REQUEST, ret);
+
+}
+
+//Unable to get current oper_status from db
+TEST_F(LogicalPortTest, HandleDriverAlarms_UNC_SUBDOMAIN_SPLIT_01) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ uint32_t alarm_type = UNC_SUBDOMAIN_SPLIT;
+ uint32_t oper_type = UNC_OP_CREATE;
+ vector<void *> obj_key_struct;
+ Kt_LogicalPort ktlinkobj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_FAILED);
+ int ret = ktlinkobj.HandleDriverAlarms(db_conn,UNC_DT_STATE,alarm_type,oper_type,&k,&v);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+//operstatus new and old naot same
+TEST_F(LogicalPortTest, HandleDriverAlarms_UNC_SUBDOMAIN_SPLIT_02) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ uint32_t alarm_type = UNC_SUBDOMAIN_SPLIT;
+ uint32_t oper_type = UNC_OP_CREATE;
+ vector<void *> obj_key_struct;
+ Kt_LogicalPort ktlinkobj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
+ int ret = ktlinkobj.HandleDriverAlarms(db_conn,UNC_DT_STATE,alarm_type,oper_type,&k,&v);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+//Update oper_status
+TEST_F(LogicalPortTest, HandleDriverAlarms_UNC_SUBDOMAIN_SPLIT_03) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ uint32_t alarm_type = UNC_SUBDOMAIN_SPLIT;
+ uint32_t oper_type = UNC_OP_DELETE;
+ vector<void *> obj_key_struct;
+ Kt_LogicalPort ktlinkobj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
+ int ret = ktlinkobj.HandleDriverAlarms(db_conn,UNC_DT_STATE,alarm_type,oper_type,&k,&v);
+ EXPECT_EQ(UPPL_RC_ERR_DB_UPDATE, ret);
+}
+
+TEST_F(LogicalPortTest, HandleDriverAlarms_UNC_SUBDOMAIN_SPLIT_04) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ uint32_t alarm_type = UNC_SUBDOMAIN_SPLIT;
+ uint32_t oper_type = UNC_OP_UPDATE;
+ vector<void *> obj_key_struct;
+ Kt_LogicalPort ktlinkobj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
+ int ret = ktlinkobj.HandleDriverAlarms(db_conn,UNC_DT_STATE,alarm_type,oper_type,&k,&v);
+ EXPECT_EQ(UPPL_RC_ERR_DB_UPDATE, ret);
+}
+
+TEST_F(LogicalPortTest, NotifyOperStatus_success) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));
+ memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));
+ memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));
+ vector<OperStatusHolder> refer;
+ Kt_LogicalPort ktlinkobj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ int ret = ktlinkobj.NotifyOperStatus(db_conn,UNC_DT_STATE,&k,&v,refer);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalPortTest, NotifyOperStaus_valstructureNull) {
+ key_logical_port_t k;
+ val_logical_port_st_t *v=NULL;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));
+ memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));
+ memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));
+ vector<OperStatusHolder> refer;
+ Kt_LogicalPort ktlinkobj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ int ret = ktlinkobj.NotifyOperStatus(db_conn,UNC_DT_STATE,&k,v,refer);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalPortTest, GetAllPortId_va) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));
+ memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));
+ memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));
+ string controller_name1 = reinterpret_cast<char *> (pkName1_ctr);
+ string switch_id1 = reinterpret_cast<char *> (pkName1_logicalport);
+ string domain_name1 = reinterpret_cast<char *> (pkName1_domain);
+ vector <string> logical_port_id1;
+ Kt_LogicalPort ktlinkobj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ int ret = UPPL_RC_SUCCESS;
+ ktlinkobj.GetAllPortId(db_conn,UNC_DT_STATE,controller_name1,switch_id1,domain_name1,logical_port_id1,true);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalPortTest, GetAllPortId_GetSibling) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));
+ memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));
+ memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));
+ string controller_name1 = reinterpret_cast<char *> (pkName1_ctr);
+ string switch_id1 = reinterpret_cast<char *> (pkName1_logicalport);
+ string domain_name1 = reinterpret_cast<char *> (pkName1_domain);
+ vector <string> logical_port_id1;
+ Kt_LogicalPort ktlinkobj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETSIBLINGROWS, ODBCM_RC_SUCCESS);
+ int ret = UPPL_RC_SUCCESS;
+ ktlinkobj.GetAllPortId(db_conn,UNC_DT_STATE,controller_name1,switch_id1,domain_name1,logical_port_id1,true);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalPortTest, GetAllPortId_IsSingleFALSE) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));
+ memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));
+ memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));
+ string controller_name1 = reinterpret_cast<char *> (pkName1_ctr);
+ string switch_id1 = reinterpret_cast<char *> (pkName1_logicalport);
+ string domain_name1 = reinterpret_cast<char *> (pkName1_domain);
+ vector <string> logical_port_id1;
+ Kt_LogicalPort ktlinkobj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETSIBLINGROWS, ODBCM_RC_SUCCESS);
+ int ret = UPPL_RC_SUCCESS;
+ ktlinkobj.GetAllPortId(db_conn,UNC_DT_STATE,controller_name1,switch_id1,domain_name1,logical_port_id1,false);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalPortTest, HandleOperStatus_GetOneRow_SUCCESS) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));
+ memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));
+ memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));
+ memcpy(v.logical_port.switch_id,SWitchID,strlen(SWitchID));
+ memcpy(v.logical_port.physical_port_id,PhyPortID,strlen(PhyPortID));
+ vector<OperStatusHolder> refer;
+ Kt_LogicalPort ktlinkobj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
+ int ret = ktlinkobj.HandleOperStatus(db_conn,UNC_DT_STATE,&k,&v,refer,UNC_KT_LOGICAL_PORT);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalPortTest, HandleOperStatus_SwitchID_Validation) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));
+ memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));
+ memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));
+ memcpy(v.logical_port.switch_id,SWitchID,strlen(SWitchID));
+ v.logical_port.valid[kIdxLogicalPortSwitchId] = 1;
+ memcpy(v.logical_port.physical_port_id,PhyPortID,strlen(PhyPortID));
+ //string key_instance = "controller1";
+
+ unc_key_type_t key_type = UNC_KT_CONTROLLER;
+ uint8_t oper_status = 7;
+ key_ctr_t ctrkey;
+ ctrkey = k.domain_key.ctr_key;
+ OperStatusHolder obj(key_type, &ctrkey, oper_status);
+ vector<OperStatusHolder> refer;
+ refer.push_back(obj);
+ Kt_LogicalPort ktlinkobj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
+ int ret = ktlinkobj.HandleOperStatus(db_conn,UNC_DT_STATE,&k,&v,refer,UNC_KT_LOGICAL_PORT);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalPortTest, GetPortOperStatus_DT_STATE) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ key_port_t obj_key_port;
+ memset(&obj_key_port, 0, sizeof(key_port_t));
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));
+ memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));
+ memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));
+ memcpy(v.logical_port.switch_id,SWitchID,strlen(SWitchID));
+ memcpy(v.logical_port.physical_port_id,PhyPortID,strlen(PhyPortID));
+ memcpy(obj_key_port.port_id,phy_port_id,strlen(phy_port_id));
+ memcpy(obj_key_port.sw_key.switch_id,switch_id,strlen(switch_id));
+ memcpy(obj_key_port.sw_key.ctr_key.controller_name,controller_name,strlen(controller_name));
+
+ uint8_t port_oper_status =1;
+ uint32_t data_type = UNC_DT_STATE;
+ Kt_LogicalPort ktlinkobj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
+ int ret = ktlinkobj.GetPortOperStatus(db_conn,obj_key_port,&port_oper_status,data_type);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalPortTest, GetPortOperStatus_DT_INVALID) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ key_port_t obj_key_port;
+ memset(&obj_key_port, 0, sizeof(key_port_t));
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));
+ memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));
+ memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));
+ memcpy(v.logical_port.switch_id,SWitchID,strlen(SWitchID));
+ memcpy(v.logical_port.physical_port_id,PhyPortID,strlen(PhyPortID));
+ memcpy(obj_key_port.port_id,phy_port_id,strlen(phy_port_id));
+ memcpy(obj_key_port.sw_key.switch_id,switch_id,strlen(switch_id));
+ memcpy(obj_key_port.sw_key.ctr_key.controller_name,controller_name,strlen(controller_name));
+ uint8_t port_oper_status =1;
+ uint32_t data_type = UNC_DT_INVALID;
+ Kt_LogicalPort ktlinkobj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
+ int ret = ktlinkobj.GetPortOperStatus(db_conn,obj_key_port,&port_oper_status,data_type);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalPortTest, GetPortOperStatus_DT_CANDIDATE) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ key_port_t obj_key_port;
+ memset(&obj_key_port, 0, sizeof(key_port_t));
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));
+ memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));
+ memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));
+ memcpy(v.logical_port.switch_id,SWitchID,strlen(SWitchID));
+ memcpy(v.logical_port.physical_port_id,PhyPortID,strlen(PhyPortID));
+ memcpy(obj_key_port.port_id,phy_port_id,strlen(phy_port_id));
+ memcpy(obj_key_port.sw_key.switch_id,switch_id,strlen(switch_id));
+ memcpy(obj_key_port.sw_key.ctr_key.controller_name,controller_name,strlen(controller_name));
+ uint8_t port_oper_status =1;
+ uint32_t data_type = UNC_DT_CANDIDATE;
+ Kt_LogicalPort ktlinkobj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
+ int ret = ktlinkobj.GetPortOperStatus(db_conn,obj_key_port,&port_oper_status,data_type);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalPortTest, GetPortOperStatus_DT_RUNNING) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ key_port_t obj_key_port;
+ memset(&obj_key_port, 0, sizeof(key_port_t));
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));
+ memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));
+ memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));
+ memcpy(v.logical_port.switch_id,SWitchID,strlen(SWitchID));
+ memcpy(v.logical_port.physical_port_id,PhyPortID,strlen(PhyPortID));
+ memcpy(obj_key_port.port_id,phy_port_id,strlen(phy_port_id));
+ memcpy(obj_key_port.sw_key.switch_id,switch_id,strlen(switch_id));
+ memcpy(obj_key_port.sw_key.ctr_key.controller_name,controller_name,strlen(controller_name));
+ uint8_t port_oper_status =1;
+ uint32_t data_type = UNC_DT_RUNNING;
+ Kt_LogicalPort ktlinkobj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
+ int ret = ktlinkobj.GetPortOperStatus(db_conn,obj_key_port,&port_oper_status,data_type);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalPortTest, GetPortOperStatus_DT_STARTUP) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ key_port_t obj_key_port;
+ memset(&obj_key_port, 0, sizeof(key_port_t));
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));
+ memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));
+ memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));
+ memcpy(v.logical_port.switch_id,SWitchID,strlen(SWitchID));
+ memcpy(v.logical_port.physical_port_id,PhyPortID,strlen(PhyPortID));
+ memcpy(obj_key_port.port_id,phy_port_id,strlen(phy_port_id));
+ memcpy(obj_key_port.sw_key.switch_id,switch_id,strlen(switch_id));
+ memcpy(obj_key_port.sw_key.ctr_key.controller_name,controller_name,strlen(controller_name));
+ uint8_t port_oper_status =1;
+ uint32_t data_type = UNC_DT_STARTUP;
+ Kt_LogicalPort ktlinkobj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
+ int ret = ktlinkobj.GetPortOperStatus(db_conn,obj_key_port,&port_oper_status,data_type);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalPortTest, GetPortOperStatus_DT_IMPORT) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ key_port_t obj_key_port;
+ memset(&obj_key_port, 0, sizeof(key_port_t));
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));
+ memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));
+ memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));
+ memcpy(v.logical_port.switch_id,SWitchID,strlen(SWitchID));
+ memcpy(v.logical_port.physical_port_id,PhyPortID,strlen(PhyPortID));
+ memcpy(obj_key_port.port_id,phy_port_id,strlen(phy_port_id));
+ memcpy(obj_key_port.sw_key.switch_id,switch_id,strlen(switch_id));
+ memcpy(obj_key_port.sw_key.ctr_key.controller_name,controller_name,strlen(controller_name));
+ uint8_t port_oper_status =1;
+ uint32_t data_type = UNC_DT_IMPORT;
+ Kt_LogicalPort ktlinkobj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
+ int ret = ktlinkobj.GetPortOperStatus(db_conn,obj_key_port,&port_oper_status,data_type);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalPortTest, GetPortOperStatus_DT_AUDIT) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ key_port_t obj_key_port;
+ memset(&obj_key_port, 0, sizeof(key_port_t));
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));
+ memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));
+ memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));
+ memcpy(v.logical_port.switch_id,SWitchID,strlen(SWitchID));
+ memcpy(v.logical_port.physical_port_id,PhyPortID,strlen(PhyPortID));
+ memcpy(obj_key_port.port_id,phy_port_id,strlen(phy_port_id));
+ memcpy(obj_key_port.sw_key.switch_id,switch_id,strlen(switch_id));
+ memcpy(obj_key_port.sw_key.ctr_key.controller_name,controller_name,strlen(controller_name));
+ uint8_t port_oper_status =1;
+ uint32_t data_type = UNC_DT_AUDIT;
+ Kt_LogicalPort ktlinkobj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
+ int ret = ktlinkobj.GetPortOperStatus(db_conn,obj_key_port,&port_oper_status,data_type);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalPortTest, PerformRead_Option1_SUCCESS) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ Kt_LogicalPort ktlinkobj;
+ physical_request_header rh;
+ getReqHeader(rh, UNC_OP_READ, UNC_DT_STATE);
+ rh.key_type = UNC_KT_PORT;
+ OdbcmConnectionHandler *db_conn =NULL;
+ ServerSession sess;
+ sess.stub_setAddOutput((uint32_t)0);
+ sess.stub_setAddOutput((uint32_t)0);
+ sess.stub_setAddOutput((uint32_t)UNC_OP_READ);
+ sess.stub_setAddOutput((uint32_t)1);
+ sess.stub_setAddOutput((uint32_t)UNC_OPT1_DETAIL);
+ sess.stub_setAddOutput((uint32_t)UNC_OPT2_NONE);
+ sess.stub_setAddOutput((uint32_t)UNC_DT_STATE);
+ sess.stub_setAddOutput((uint32_t)0);
+ sess.stub_setAddOutput((uint32_t)UPPL_RC_ERR_INVALID_OPTION1);
+ sess.stub_setAddOutput((uint32_t)UNC_KT_LOGICAL_PORT);
+
+ int ret = ktlinkobj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_DETAIL,(uint32_t)UNC_OPT2_NONE,(uint32_t)1);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalPortTest, PerformRead_Option2_SUCCESS) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ Kt_LogicalPort ktlinkobj;
+ physical_request_header rh;
+ getReqHeader(rh, UNC_OP_READ, UNC_DT_STATE);
+ rh.key_type = UNC_KT_PORT;
+ OdbcmConnectionHandler *db_conn =NULL;
+ ServerSession sess;
+ sess.stub_setAddOutput((uint32_t)0);
+ sess.stub_setAddOutput((uint32_t)0);
+ sess.stub_setAddOutput((uint32_t)UNC_OP_READ);
+ sess.stub_setAddOutput((uint32_t)1);
+ sess.stub_setAddOutput((uint32_t)UNC_OPT1_NORMAL);
+ sess.stub_setAddOutput((uint32_t)UNC_OPT1_DETAIL);
+ sess.stub_setAddOutput((uint32_t)UNC_DT_STATE);
+ sess.stub_setAddOutput((uint32_t)0);
+ sess.stub_setAddOutput((uint32_t)UPPL_RC_ERR_INVALID_OPTION2);
+ sess.stub_setAddOutput((uint32_t)UNC_KT_LOGICAL_PORT);
+
+ int ret = ktlinkobj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT1_DETAIL,(uint32_t)0);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalPortTest, PerformRead_Datatype_SUCCESS) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ Kt_LogicalPort ktlinkobj;
+ physical_request_header rh;
+ getReqHeader(rh, UNC_OP_READ, UNC_DT_STATE);
+ rh.key_type = UNC_KT_PORT;
+ OdbcmConnectionHandler *db_conn =NULL;
+ ServerSession sess;
+ sess.stub_setAddOutput((uint32_t)0);
+ sess.stub_setAddOutput((uint32_t)0);
+ sess.stub_setAddOutput((uint32_t)UNC_OP_READ);
+ sess.stub_setAddOutput((uint32_t)1);
+ sess.stub_setAddOutput((uint32_t)UNC_OPT1_NORMAL);
+ sess.stub_setAddOutput((uint32_t)UNC_OPT1_DETAIL);
+ sess.stub_setAddOutput((uint32_t)UNC_DT_RUNNING);
+ sess.stub_setAddOutput((uint32_t)0);
+ sess.stub_setAddOutput((uint32_t)UPPL_RC_ERR_OPERATION_NOT_ALLOWED);
+ sess.stub_setAddOutput((uint32_t)UNC_KT_LOGICAL_PORT);
+
+ int ret = ktlinkobj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_RUNNING,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_NONE,(uint32_t)0);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalPortTest, PerformRead_DB_SUCCESS) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ Kt_LogicalPort ktlinkobj;
+ physical_request_header rh;
+ getReqHeader(rh, UNC_OP_READ, UNC_DT_STATE);
+ rh.key_type = UNC_KT_PORT;
+ OdbcmConnectionHandler *db_conn =NULL;
+ ServerSession sess;
+ sess.stub_setAddOutput((uint32_t)0);
+ sess.stub_setAddOutput((uint32_t)0);
+ sess.stub_setAddOutput((uint32_t)UNC_OP_READ);
+ sess.stub_setAddOutput((uint32_t)1);
+ sess.stub_setAddOutput((uint32_t)UNC_OPT1_NORMAL);
+ sess.stub_setAddOutput((uint32_t)UNC_OPT1_DETAIL);
+ sess.stub_setAddOutput((uint32_t)UNC_DT_RUNNING);
+ sess.stub_setAddOutput((uint32_t)0);
+ sess.stub_setAddOutput((uint32_t)UPPL_RC_ERR_OPERATION_NOT_ALLOWED);
+ sess.stub_setAddOutput((uint32_t)UNC_KT_LOGICAL_PORT);
+
+ int ret = ktlinkobj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_UPDATE,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_NONE,(uint32_t)0);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalPortTest, GetAllLogicalPort_LogicalPortNotAvailable) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));
+ memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));
+ memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));
+ string controller_name1 = reinterpret_cast<char *> (pkName1_ctr);
+ string switch_id1 = reinterpret_cast<char *> (pkName1_logicalport);
+ string domain_name1 = reinterpret_cast<char *> (pkName1_domain);
+ string physicalportid = reinterpret_cast<char *> (PhyPortID);
+ vector<key_logical_port_t> vectLogicalPortKey;
+ vectLogicalPortKey.push_back(k);
+ Kt_LogicalPort ktlinkobj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ int ret = UPPL_RC_SUCCESS;
+ ktlinkobj.GetAllLogicalPort(db_conn,controller_name1,domain_name1,switch_id1,physicalportid,vectLogicalPortKey,UNC_DT_STATE);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalPortTest, GetAllLogicalPort_DBSUCCESS) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));
+ memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));
+ memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));
+ string controller_name1 = reinterpret_cast<char *> (pkName1_ctr);
+ string switch_id1 = reinterpret_cast<char *> (pkName1_logicalport);
+ string domain_name1 = reinterpret_cast<char *> (pkName1_domain);
+ string physicalportid = reinterpret_cast<char *> (PhyPortID);
+ vector<key_logical_port_t> vectLogicalPortKey;
+ vectLogicalPortKey.push_back(k);
+ Kt_LogicalPort ktlinkobj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ int ret = UPPL_RC_SUCCESS;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_SUCCESS);
+ ktlinkobj.GetAllLogicalPort(db_conn,controller_name1,domain_name1,switch_id1,physicalportid,vectLogicalPortKey,UNC_DT_STATE);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalPortTest, ValidatePortType_LP_SWITCH_SUCCESS) {
+ uint8_t port_type = 1;//1 for UPPL_LP_SWITCH
+ Kt_LogicalPort ktlinkobj;
+ int ret = ktlinkobj.ValidatePortType(port_type);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalPortTest, ValidatePortType_LP_PHYSICALPORT_SUCCESS) {
+ uint8_t port_type = 2;//1 for UPPL_LP_PHYSICAL_PORT
+ Kt_LogicalPort ktlinkobj;
+ int ret = ktlinkobj.ValidatePortType(port_type);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalPortTest, ValidatePortType_LP_TRUNKPORT_SUCCESS) {
+ uint8_t port_type = 11;//1 for UPPL_LP_TRUNK_PORT
+ Kt_LogicalPort ktlinkobj;
+ int ret = ktlinkobj.ValidatePortType(port_type);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalPortTest, ValidatePortType_LP_SUBDOMAIN_SUCCESS) {
+ uint8_t port_type = 12;//1 for UPPL_LP_SUBDOMAIN
+ Kt_LogicalPort ktlinkobj;
+ int ret = ktlinkobj.ValidatePortType(port_type);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalPortTest, ValidatePortType_LP_TUNNEL_SUCCESS) {
+ uint8_t port_type = 13;//1 for UPPL_LP_TUNNEL_ENDPOINT
+ Kt_LogicalPort ktlinkobj;
+ int ret = ktlinkobj.ValidatePortType(port_type);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalPortTest, ValidatePortType_FAILL_FOR_UNKNOWNPORT) {
+ uint8_t port_type = 3;//1 for UNKNOWNPORT
+ Kt_LogicalPort ktlinkobj;
+ int ret = ktlinkobj.ValidatePortType(port_type);
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SYNTAX, ret);
+}
+
+TEST_F(LogicalPortTest, ReadBulk_ADDTOBUFFER_maxrepCT1) {
+ key_logical_port_t k;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));
+ Kt_LogicalPort ktlinkobj;
+ uint32_t max_rep_ct = 1;
+ int child_index = 1;
+ pfc_bool_t parent_call=true;
+ pfc_bool_t is_read_next=true;
+ OdbcmConnectionHandler *db_conn = NULL;
+ ReadRequest read_req;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_SUCCESS);
+ int ret = ktlinkobj.ReadBulk(db_conn, &k, UNC_DT_STATE, max_rep_ct,
+ child_index, parent_call, is_read_next,
+ &read_req);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalPortTest, ReadBulk_DB_ACCESS_ERROR) {
+ key_logical_port_t k;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));
+ Kt_LogicalPort ktlinkobj;
+ uint32_t max_rep_ct = 2;
+ int child_index = 1;
+ pfc_bool_t parent_call=true;
+ pfc_bool_t is_read_next=true;
+ OdbcmConnectionHandler *db_conn = NULL;
+ ReadRequest read_req;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_CONNECTION_ERROR);
+ int ret = ktlinkobj.ReadBulk(db_conn, &k, UNC_DT_STATE, max_rep_ct,
+ child_index, parent_call, is_read_next,
+ &read_req);
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
+}
+
+TEST_F(LogicalPortTest, ReadBulkInternal_RecordNot_Found) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));
+ Kt_LogicalPort ktlinkobj;
+ uint32_t max_rep_ct=1;
+ OdbcmConnectionHandler *db_conn = NULL;
+ vector<val_logical_port_st_t> vect_val_logical_port_st;
+ vector<key_logical_port_t> vect_logicalport_id;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_RECORD_NOT_FOUND);
+ int ret = ktlinkobj.ReadBulkInternal(db_conn, &k, &v, UNC_DT_STATE, max_rep_ct, vect_val_logical_port_st, vect_logicalport_id);
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
+}
+
+TEST_F(LogicalPortTest, PerformSyntaxValidation_ValStrutValidation_PortType_04) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));
+ memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));
+ memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));
+ memcpy(v.logical_port.description,Desription,strlen(Desription));
+ uint8_t porttype = 3;
+ v.logical_port.port_type= porttype;
+ v.logical_port.valid[kIdxLogicalPortType]=1;
+ Kt_LogicalPort ktlinkobj;
+ physical_request_header rh;
+ getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);
+ uint32_t operation = UNC_OP_UPDATE;
+ OdbcmConnectionHandler *db_conn =NULL;
+ int ret = ktlinkobj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SYNTAX, ret);
+}
+
+TEST_F(LogicalPortTest, PerformSyntaxValidation_ValStrutValidation_oper_down_criteria_05) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));
+ memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));
+ memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));
+ memcpy(v.logical_port.description,Desription,strlen(Desription));
+ uint8_t operdowncriteria = 3;
+ v.logical_port.oper_down_criteria= operdowncriteria;
+ v.logical_port.valid[kIdxLogicalPortOperDownCriteria]=1;
+ Kt_LogicalPort ktlinkobj;
+ physical_request_header rh;
+ getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);
+ uint32_t operation = UNC_OP_UPDATE;
+ OdbcmConnectionHandler *db_conn =NULL;
+ int ret = ktlinkobj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SYNTAX, ret);
+}
+
+TEST_F(LogicalPortTest, PerformSyntaxValidation_ValStrutNULL) {
+ key_logical_port_t k;
+ val_logical_port_st_t *v=NULL;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));
+ memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));
+ memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));
+ Kt_LogicalPort ktlinkobj;
+ physical_request_header rh;
+ getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);
+ uint32_t operation = UNC_OP_UPDATE;
+ OdbcmConnectionHandler *db_conn =NULL;
+ int ret = ktlinkobj.PerformSyntaxValidation(db_conn,&k,v,operation,UNC_DT_STATE);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalPortTest, ReadInternal_max_rep_ct) {
+ key_logical_port_t k;
+ memset(&k, 0, sizeof(k));
+ vector<void *> vectVal_logicalport;
+ vector<void *> vectkey_logicalport;
+ vectkey_logicalport.push_back(&k);
+
+ Kt_LogicalPort ktlinkobj;
+ physical_request_header rh;
+ getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);
+ OdbcmConnectionHandler *db_conn =NULL;
+ int ret = ktlinkobj.ReadInternal(db_conn,vectkey_logicalport,vectVal_logicalport,UNC_DT_STATE,UNC_OP_CREATE);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalPortTest, ReadInternal_VAlStructNull) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&k, 0, sizeof(k));
+ memset(&v, 0, sizeof(v));
+ vector<void *> vectVal_logicalport;
+ vector<void *> vectkey_logicalport;
+ vectkey_logicalport.push_back(&k);
+ vectVal_logicalport.push_back(&v);
+ Kt_LogicalPort ktlinkobj;
+ physical_request_header rh;
+ getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);
+ OdbcmConnectionHandler *db_conn =NULL;
+ int ret = ktlinkobj.ReadInternal(db_conn,vectkey_logicalport,vectVal_logicalport,UNC_DT_STATE,UNC_OP_READ);
+ EXPECT_EQ(ODBCM_RC_MORE_ROWS_FOUND, ret);
+}
+
+TEST_F(LogicalPortTest, HandleOperStatus_NotSuccess) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));
+ memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));
+ memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));
+ memcpy(v.logical_port.switch_id,SWitchID,strlen(SWitchID));
+ v.logical_port.valid[kIdxLogicalPortPhysicalPortId] = 1;
+ memcpy(v.logical_port.physical_port_id,PhyPortID,strlen(PhyPortID));
+ //string key_instance = "controller1";
+ unc_key_type_t key_type = UNC_KT_CONTROLLER;
+ uint8_t oper_status =0;
+ key_ctr_t ctrkey;
+ ctrkey = k.domain_key.ctr_key;
+ OperStatusHolder obj(key_type, &ctrkey, oper_status);
+ vector<OperStatusHolder> refer;
+ refer.push_back(obj);
+ Kt_LogicalPort ktlinkobj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_FAILED);
+ int ret = ktlinkobj.HandleOperStatus(db_conn,UNC_DT_STATE,&k,&v,refer,UNC_KT_LOGICAL_PORT);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalPortTest, HandleOperStatus_GetOneRow_FAILED) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));
+ memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));
+ memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));
+ memcpy(v.logical_port.switch_id,SWitchID,strlen(SWitchID));
+ v.logical_port.valid[kIdxLogicalPortPhysicalPortId] = 1;
+ memcpy(v.logical_port.physical_port_id,PhyPortID,strlen(PhyPortID));
+ vector<OperStatusHolder> refer;
+ Kt_LogicalPort ktlinkobj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_FAILED);
+ int ret = ktlinkobj.HandleOperStatus(db_conn,UNC_DT_STATE,&k,&v,refer,UNC_KT_LOGICAL_PORT);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalPortTest, HandleOperStatus_GetOneRow_SUCCESS_CONTROLLERUP) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));
+ memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));
+ memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));
+ memcpy(v.logical_port.switch_id,SWitchID,strlen(SWitchID));
+ v.logical_port.valid[kIdxLogicalPortPhysicalPortId] = 1;
+ memcpy(v.logical_port.physical_port_id,PhyPortID,strlen(PhyPortID));
+ string key_instance = "controller1";
+ unc_key_type_t key_type = UNC_KT_CONTROLLER;
+ uint8_t oper_status =7;
+ key_ctr_t ctrkey;
+ ctrkey = k.domain_key.ctr_key;
+ OperStatusHolder obj(key_type, &ctrkey, oper_status);
+ vector<OperStatusHolder> refer;
+ refer.push_back(obj);
+ Kt_LogicalPort ktlinkobj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_SUCCESS);
+ int ret = ktlinkobj.HandleOperStatus(db_conn,UNC_DT_STATE,&k,&v,refer,UNC_KT_LOGICAL_PORT);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalPortTest, HandleOperDownCriteriaFromPortStatus_KEY_STRUCT_NULL) {
+ key_logical_port_t *k = NULL;
+ val_logical_port_st_t v;
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ memcpy(v.logical_port.switch_id,SWitchID,strlen(SWitchID));
+ memcpy(v.logical_port.physical_port_id,PhyPortID,strlen(PhyPortID));
+ Kt_LogicalPort ktlinkobj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ pfc_bool_t is_delete_call = true;
+ vector<uint32_t> vectOperStatus;
+ int ret = ktlinkobj.HandleOperDownCriteriaFromPortStatus(db_conn,UNC_DT_STATE,k,&v,vectOperStatus,is_delete_call);
+ EXPECT_EQ(UPPL_RC_ERR_BAD_REQUEST, ret);
+}
+
+TEST_F(LogicalPortTest, HandleOperDownCriteriaFromPortStatus_Key_struct_success) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));
+ memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));
+ memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));
+ memcpy(v.logical_port.switch_id,SWitchID,strlen(SWitchID));
+ memcpy(v.logical_port.physical_port_id,PhyPortID,strlen(PhyPortID));
+ Kt_LogicalPort ktlinkobj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ pfc_bool_t is_delete_call = true;
+ vector<uint32_t> vectOperStatus;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_SUCCESS);
+ int ret = ktlinkobj.HandleOperDownCriteriaFromPortStatus(db_conn,UNC_DT_STATE,&k,&v,vectOperStatus,is_delete_call);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalPortTest, GetOperDownCriteria_Success) {
+ key_logical_port_t k;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));
+ memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));
+ memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));
+ uint32_t oper_down_criteria = 1;
+ Kt_LogicalPort ktlinkobj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
+ int ret = ktlinkobj.GetOperDownCriteria(db_conn,UNC_DT_STATE,&k,oper_down_criteria);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+/*TEST_F(LogicalPortTest, HandleOperStatus_KeyStruct_NULL_Handdle) {
+ key_logical_port_t k;
+ val_logical_port_st_t v;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));
+ memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));
+ memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));
+ memcpy(v.logical_port.switch_id,SWitchID,strlen(SWitchID));
+ unc_key_type_t key_type_= UNC_KT_BOUNDARY;
+ string key_instance_ = "physical";
+ uint8_t oper_status_ = 1;
+ vector<OperStatusHolder> refer;
+ refer.push_back(key_type_);
+ refer.push_back(key_instance_);
+ refer.push_back(oper_status_);
+ Kt_LogicalPort ktlinkobj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ int ret = ktlinkobj.HandleOperStatus(db_conn,UNC_DT_STATE,&k,&v,refer,UNC_KT_LOGICAL_PORT);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}*/
+#if 0
+TEST_F(LogicalPortTest, PerformSyntaxValidation_ValueStructureNullCheck_06) { //Null check properly not handle for value structure
+ key_logical_port_t k;
+ val_logical_port_st_t *v =NULL;
+ memset(&k, 0, sizeof(key_logical_port_t));
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ memcpy(k.domain_key.ctr_key.controller_name,pkName1_ctr,strlen(pkName1_ctr));
+ memcpy(k.domain_key.domain_name,pkName1_domain,strlen(pkName1_domain));
+ memcpy(k.port_id,pkName1_logicalport,strlen(pkName1_logicalport));
+ Kt_LogicalPort ktlinkobj;
+ physical_request_header rh;
+ getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);
+ uint32_t operation = UNC_OP_CREATE;
+ OdbcmConnectionHandler *db_conn =NULL;
+ int ret = ktlinkobj.PerformSyntaxValidation(db_conn,&k,v,operation,UNC_DT_STATE);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
+}
+
+TEST_F(LogicalPortTest, DeleteKeyInstance_supported_01) { //Bug in HandleOperDownCriteriaFromPortStatus(return statement not handle,code crash)
+ key_logical_port_t *k = NULL;
+ //memset(&k, 0, sizeof(key_logical_port_t));
+ Kt_LogicalPort ktlinkobj;
+ physical_request_header rh;
+ getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);
+ OdbcmConnectionHandler *db_conn =NULL;
+ int ret = ktlinkobj.DeleteKeyInstance(db_conn, k, UNC_DT_STATE, UNC_KT_LOGICAL_PORT);
+ EXPECT_EQ(UPPL_RC_ERR_BAD_REQUEST, ret);
+}
+
+//Key-structure handle
+TEST_F(LogicalPortTest, HandleOperStatus_KeyStruct_NULL_Handdle) {
+ key_logical_port_t *k=NULL;
+ val_logical_port_st_t v;
+ memset(&v, 0, sizeof(val_logical_port_st_t));
+ vector<OperStatusHolder> refer;
+ Kt_LogicalPort ktlinkobj;
+ OdbcmConnectionHandler *db_conn =NULL;
+ int ret = ktlinkobj.HandleOperStatus(db_conn,UNC_DT_STATE,k,&v,refer,UNC_KT_LOGICAL_PORT);
+ EXPECT_EQ(UPPL_RC_ERR_BAD_REQUEST, ret);
+}
+#endif
#
##
-## Makefile that run unit tests of UPPL module
+## Makefile that run the unit tests for UPPL.
##
-
-SRC_DIR = ../../../../modules
-
-CPPFLAGS +=
-
-INCLUDE = -Iinclude \
- -Istub/ODBC/ \
- -Istub/ODBC/include \
- -Istub/tclib_module \
- -Istub/include \
- -Istub/include/cxx \
- -Istub/include/cxx/pfcxx \
- -Istub/include/core_include \
- -Istub \
- -Istub/clstat \
- -I$(SRC_DIR)/uppl \
- -I$(SRC_DIR)/clstat \
- -I$(SRC_DIR)/clstat/include \
- -I$(SRC_DIR)/tclib/include \
- -I$(SRC_DIR)../core/include \
- -I$(SRC_DIR) \
- -I$(SRC_DIR)/../dist/target/objs/include \
- -I$(SRC_DIR)/../dist/target/objs/core_include \
- -I$(SRC_DIR)/../dist/target/objs/core/include \
- -I$(SRC_DIR)/../core/include \
- -I$(SRC_DIR)/../core/include/cxx \
- -I$(SRC_DIR)/../include/ \
- -I$(SRC_DIR)/../include/unc \
- -I$(SRC_DIR)/uppl/include \
- -I$(SRC_DIR)/uppl \
- -I$(SRC_DIR)/ \
- -I$(SRC_DIR)/alarm/include \
- -I$(SRC_DIR)/../test/modules/uppl/utest
-
-CXXFLAGS += -g -fprofile-arcs -ftest-coverage -Dprivate=public -Dprotected=public
-
-
-SOURCE_FILES = $(SRC_DIR)/uppl/physicallayer.cc \
- $(SRC_DIR)/uppl/phy_util.cc \
- $(SRC_DIR)/uppl/controller_version.cc \
- $(SRC_DIR)/uppl/unc_state_handler.cc \
- $(SRC_DIR)/uppl/ipct_util.cc \
- $(SRC_DIR)/uppl/physical_core.cc \
- $(SRC_DIR)/uppl/physical_itc.cc \
- $(SRC_DIR)/uppl/itc_configuration_request.cc \
- $(SRC_DIR)/uppl/itc_read_request.cc \
- $(SRC_DIR)/uppl/itc_kt_base.cc \
- $(SRC_DIR)/uppl/itc_kt_state_base.cc \
- $(SRC_DIR)/uppl/itc_kt_root.cc \
- $(SRC_DIR)/uppl/itc_kt_controller.cc \
- $(SRC_DIR)/uppl/itc_kt_ctr_domain.cc \
- $(SRC_DIR)/uppl/itc_kt_logicalport.cc \
- $(SRC_DIR)/uppl/itc_kt_logical_member_port.cc \
- $(SRC_DIR)/uppl/itc_kt_switch.cc \
- $(SRC_DIR)/uppl/itc_kt_port.cc \
- $(SRC_DIR)/uppl/itc_kt_link.cc \
- $(SRC_DIR)/uppl/itc_kt_boundary.cc \
- $(SRC_DIR)/uppl/itc_transaction_request.cc \
- $(SRC_DIR)/uppl/itc_import_request.cc \
- $(SRC_DIR)/uppl/itc_audit_request.cc \
- $(SRC_DIR)/uppl/itc_db_config.cc \
- $(SRC_DIR)/uppl/itc_state_change.cc \
- $(SRC_DIR)/uppl/ipc_connection_manager.cc \
- $(SRC_DIR)/uppl/ipc_client_logical_handler.cc \
- $(SRC_DIR)/uppl/ipc_server_handler.cc \
- $(SRC_DIR)/uppl/ipc_client_configuration_handler.cc \
- $(SRC_DIR)/uppl/physical_notification_manager.cc \
- $(SRC_DIR)/uppl/itc_notification_request.cc \
- $(SRC_DIR)/uppl/odbcm_db_tableschema.cc \
-
-HEADER_FILES = $(SRC_DIR)/uppl/include/controller_version.hh \
- $(SRC_DIR)/uppl/include/ipc_client_configuration_handler.hh \
- $(SRC_DIR)/uppl/include/ipc_client_logical_handler.hh \
- $(SRC_DIR)/uppl/include/ipc_connection_manager.hh \
- $(SRC_DIR)/uppl/include/ipc_server_handler.hh \
- $(SRC_DIR)/uppl/include/ipct_util.hh \
- $(SRC_DIR)/uppl/include/itc_audit_request.hh \
- $(SRC_DIR)/uppl/include/itc_configuration_request.hh \
- $(SRC_DIR)/uppl/include/itc_db_config.hh \
- $(SRC_DIR)/uppl/include/itc_import_request.hh \
- $(SRC_DIR)/uppl/include/itc_kt_base.hh \
- $(SRC_DIR)/uppl/include/itc_kt_boundary.hh \
- $(SRC_DIR)/uppl/include/itc_kt_controller.hh \
- $(SRC_DIR)/uppl/include/itc_kt_ctr_domain.hh \
- $(SRC_DIR)/uppl/include/itc_kt_link.hh \
- $(SRC_DIR)/uppl/include/itc_kt_logical_member_port.hh \
- $(SRC_DIR)/uppl/include/itc_kt_logicalport.hh \
- $(SRC_DIR)/uppl/include/itc_kt_port.hh \
- $(SRC_DIR)/uppl/include/itc_kt_root.hh \
- $(SRC_DIR)/uppl/include/itc_kt_state_base.hh \
- $(SRC_DIR)/uppl/include/itc_kt_switch.hh \
- $(SRC_DIR)/uppl/include/tc_notification_request.hh \
- $(SRC_DIR)/uppl/include/itc_read_request.hh \
- $(SRC_DIR)/uppl/include/itc_state_change.hh \
- $(SRC_DIR)/uppl/include/itc_transaction_request.hh \
- $(SRC_DIR)/uppl/include/odbcm_common.hh \
- $(SRC_DIR)/uppl/include/odbcm_connection.hh \
- $(SRC_DIR)/uppl/include/odbcm_db_tableschema.hh \
- $(SRC_DIR)/uppl/include/odbcm_db_varbind.hh \
- $(SRC_DIR)/uppl/include/odbcm_mgr.hh \
- $(SRC_DIR)/uppl/include/odbcm_query_factory.hh \
- $(SRC_DIR)/uppl/include/odbcm_query_processor.hh \
- $(SRC_DIR)/uppl/include/odbcm_utils.hh \
- $(SRC_DIR)/uppl/include/physical_common_def.hh \
- $(SRC_DIR)/uppl/include/physical_core.hh \
- $(SRC_DIR)/uppl/include/physical_itc.hh \
- $(SRC_DIR)/uppl/include/physical_itc_req.hh \
- $(SRC_DIR)/uppl/include/physicallayer.hh \
- $(SRC_DIR)/uppl/include/physical_notification_manager.hh \
- $(SRC_DIR)/uppl/include/phy_util.hh \
- $(SRC_DIR)/uppl/include/unc_state_handler.hh \
-
-SRC_OBJS = $(patsubst $(SRC_DIR)/uppl/%.cc,$(OBJSDIR)/uppl/%.o,$(SOURCE_FILES))
-
-
-UNITTEST_FILES = Domain_ut.cc KtPort.cc KtLogicalMemberPort_ut.cc KtLogicalPort_ut.cc ut_switch.cc Controller_ut.cc KtLink_ut.cc Boundary_ut.cc
-STUB_FILE = PhysicalLayerStub.cc
-
-OBJSDIR = objs
-
-UT_OBJS_DIR = objs/utest
-
-UT_EXE_LIST = KtPort KtLogicalMemberPort_ut KtLogicalPort_ut UTDomain ut_switch UTController KtLink_ut Boundary_ut
-
-LD_LIBRARY_PATH = $(SRC_DIR)/../dist/target/objs/ldlibs
-export LD_LIBRARY_PATH
-
-UT_LIBS = -L$(SRC_DIR)/../dist/target/objs/ldlibs -lpthread -lpfc_util -lpfc -lpfcxx -lgtest_main $(UT_OBJS_DIR)/uppl_ut.a ./stub/stub_objs/stub.a -lgcov
-
-createupplobjs:
- mkdir -p $(OBJSDIR)/uppl
-
-createutestobjs:
- mkdir -p $(OBJSDIR)/utest
-.NOTPARALLEL: createupplobjs createutestobjs stub uppl_lib ut_exe
-all : createupplobjs createutestobjs stub uppl_lib ut_exe
-test :
- ./KtPort
- ./KtLogicalMemberPort_ut
- ./KtLogicalPort_ut
- ./UTDomain
- ./ut_switch
- ./UTController
- ./KtLink_ut
- ./Boundary_ut
-clean :
- @(cd $(OBJSDIR)/utest/; rm -f uppl_ut.a *.o *.gcno *.gcov *.gcda);
- @(cd $(OBJSDIR)/uppl/; rm -f *.o *.gcno *.gcov *.gcda);
- @(cd ./stub/; $(MAKE) clean);
- rm -f $(UT_EXE_LIST) *.gcov
-
-
-UT_OBJS = $(patsubst %.cc,$(OBJSDIR)/utest/%.o,$(UNITTEST_FILES))
-
-STUB_OBJ = $(patsubst %.cc,$(OBJSDIR)/utest/%.o,$(STUB_FILE))
-
-$(SRC_OBJS):$(OBJSDIR)/uppl/%.o : $(SRC_DIR)/uppl/%.cc
- $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(INCLUDE) -c $< -o $@
-
-$(UT_OBJS):$(OBJSDIR)/utest/%.o : %.cc
- $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(INCLUDE) -c $< -o $@
-
-$(STUB_OBJ):$(OBJSDIR)/utest/%.o : %.cc
- $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(INCLUDE) -c $< -o $@
-
-stub:
- @echo "****** Invoking stub makefile"
- @($(MAKE) -C ./stub all );
-
-.PHONY: stub uppl_lib
-
-uppl_lib : $(UT_OBJS_DIR)/uppl_ut.a
-
-$(UT_OBJS_DIR)/uppl_ut.a : $(SRC_OBJS) $(STUB_OBJ)
- $(AR) $(ARFLAGS) $@ $^
-
-compile_ut:$(UT_OBJS)
-
-ut_exe : $(UT_EXE_LIST)
-
-UTDomain : $(UT_OBJS_DIR)/Domain_ut.o
- $(CXX) $^ -o $@ $(UT_LIBS)
-
-KtPort : $(UT_OBJS_DIR)/KtPort.o
- $(CXX) $^ -o $@ $(UT_LIBS)
-
-KtLogicalMemberPort_ut : $(UT_OBJS_DIR)/KtLogicalMemberPort_ut.o
- $(CXX) $^ -o $@ $(UT_LIBS)
-
-KtLogicalPort_ut : $(UT_OBJS_DIR)/KtLogicalPort_ut.o
- $(CXX) $^ -o $@ $(UT_LIBS)
-
-ut_switch : $(UT_OBJS_DIR)/ut_switch.o
- $(CXX) $^ -o $@ $(UT_LIBS)
-
-UTController : $(UT_OBJS_DIR)/Controller_ut.o
- $(CXX) $^ -o $@ $(UT_LIBS)
-
-KtLink_ut : $(UT_OBJS_DIR)/KtLink_ut.o
- $(CXX) $^ -o $@ $(UT_LIBS)
-
-Boundary_ut : $(UT_OBJS_DIR)/Boundary_ut.o
- $(CXX) $^ -o $@ $(UT_LIBS)
+GTEST_SRCROOT := ../../../..
+include ../../defs.mk
+
+EXEC_NAME := uppl_ut
+
+MODULE_SRCROOT = $(GTEST_SRCROOT)/modules
+
+ODBC_STUBDIR = stub/ODBC
+CLSTAT_STUBDIR = stub/clstat
+TCLIB_STUBDIR = stub/tclib_module
+MISC_STUBDIR = stub/misc
+
+UPPL_SRCDIR = $(MODULE_SRCROOT)/uppl
+TCLIB_SRCDIR = $(MODULE_SRCROOT)/tclib
+ALARM_SRCDIR = $(MODULE_SRCROOT)/alarm
+
+# Define a list of directories that contain source files.
+ALT_SRCDIRS = $(UPPL_SRCDIR) $(ODBC_STUBDIR) $(TCLIB_STUBDIR)
+ALT_SRCDIRS += $(MISC_STUBDIR)
+
+UT_INCDIRS_PREP = stub/include stub/include/core_include
+UT_INCDIRS_PREP += $(CLSTAT_STUBDIR)
+
+UTXX_INCDIRS_PREP = $(TCLIB_STUBDIR)
+UTXX_INCDIRS_PREP += $(ODBC_STUBDIR)/include
+
+EXTRA_CXX_INCDIRS = $(MODULE_SRCROOT)
+EXTRA_CXX_INCDIRS += $(UPPL_SRCDIR)/include
+EXTRA_CXX_INCDIRS += $(TCLIB_SRCDIR)/include
+EXTRA_CXX_INCDIRS += $(ALARM_SRCDIR)/include
+
+CPPFLAGS += -include ut_stub.h
+
+# Define a list of cfdef files to be compiled.
+ALT_CFDEF_FILES = $(UPPL_SRCDIR)/uppl_ctr_capability.cfdef
+
+UPPL_SOURCES = controller_version.cc
+UPPL_SOURCES += ipc_client_configuration_handler.cc
+UPPL_SOURCES += ipc_client_logical_handler.cc
+UPPL_SOURCES += ipc_connection_manager.cc
+UPPL_SOURCES += ipc_server_handler.cc
+UPPL_SOURCES += ipct_util.cc
+UPPL_SOURCES += itc_audit_request.cc
+UPPL_SOURCES += itc_configuration_request.cc
+UPPL_SOURCES += itc_db_config.cc
+UPPL_SOURCES += itc_import_request.cc
+UPPL_SOURCES += itc_kt_base.cc
+UPPL_SOURCES += itc_kt_boundary.cc
+UPPL_SOURCES += itc_kt_controller.cc
+UPPL_SOURCES += itc_kt_ctr_domain.cc
+UPPL_SOURCES += itc_kt_link.cc
+UPPL_SOURCES += itc_kt_logical_member_port.cc
+UPPL_SOURCES += itc_kt_logicalport.cc
+UPPL_SOURCES += itc_kt_port.cc
+UPPL_SOURCES += itc_kt_root.cc
+UPPL_SOURCES += itc_kt_state_base.cc
+UPPL_SOURCES += itc_kt_switch.cc
+UPPL_SOURCES += itc_notification_request.cc
+UPPL_SOURCES += itc_read_request.cc
+UPPL_SOURCES += itc_state_change.cc
+UPPL_SOURCES += itc_transaction_request.cc
+UPPL_SOURCES += odbcm_db_tableschema.cc
+UPPL_SOURCES += phy_util.cc
+UPPL_SOURCES += physical_core.cc
+UPPL_SOURCES += physical_itc.cc
+UPPL_SOURCES += physical_notification_manager.cc
+UPPL_SOURCES += unc_state_handler.cc
+UPPL_SOURCES += physicallayer.cc
+
+ODBC_SOURCES = odbcm_mgr_stub.cc odbcm_utils_stub.cc
+TCLIB_SOURCES = tclib_module.cc
+MISC_SOURCES = alarm.cc ipc_client.cc ipc_server.cc module.cc
+
+UT_SOURCES = Boundary_ut.cc
+UT_SOURCES += Controller_ut.cc
+UT_SOURCES += Domain_ut.cc
+UT_SOURCES += Link_ut.cc
+UT_SOURCES += LogicalMemberPort_ut.cc
+UT_SOURCES += LogicalPort_ut.cc
+UT_SOURCES += Port_ut.cc
+UT_SOURCES += Switch_ut.cc
+
+CXX_SOURCES += $(UT_SOURCES) PhysicalLayerStub.cc util.cc
+CXX_SOURCES += $(UPPL_SOURCES) $(ODBC_SOURCES) $(TCLIB_SOURCES)
+CXX_SOURCES += $(MISC_SOURCES)
+
+EXTRA_CXXFLAGS += -fprofile-arcs -ftest-coverage
+EXTRA_CXXFLAGS += -Dprivate=public -Dprotected=public
+
+UNC_LIBS = libpfc_util libpfc libpfc_ipcsrv libpfc_ipcclnt
+UNC_LIBS += libpfcxx libpfcxx_ipcsrv libpfcxx_ipcclnt
+EXTRA_LDLIBS += -lgcov
+
+include ../../rules.mk
* distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
*/
+#include <gtest/gtest.h>
#include "PhysicalLayerStub.hh"
+
using namespace unc::uppl;
-void PhysicalLayerStub :: loadphysicallayer() {
+using namespace pfc::core;
- pfc_modattr_t* modattr;
- PhysicalLayer = new unc::uppl::PhysicalLayer(modattr);
-}
+static PhysicalLayer theInstance(NULL);
+static bool initialized = false;
-IPCConnectionManager* PhysicalLayerStub::get_ipc_connection_manager() {
- return new IPCConnectionManager;
+void
+PhysicalLayerStub::loadphysicallayer()
+{
+ Module::physical = &theInstance;
+ if (!initialized) {
+ initialized = true;
+ ASSERT_TRUE(theInstance.init());
+ }
}
-void PhysicalLayerStub :: unloadphysicallayer() {
-
- PhysicalLayer = NULL;
+void
+PhysicalLayerStub::unloadphysicallayer()
+{
+ Module::physical = NULL;
}
#include <pfcxx/ipc_server.hh>
#include <pfcxx/ipc_client.hh>
#include <pfcxx/synch.hh>
-#include "physicallayer.hh"
-class PhysicalLayerStub : public pfc::core::Module {
+#include <physicallayer.hh>
+class PhysicalLayerStub : public pfc::core::Module {
public:
-
-static void loadphysicallayer();
-static void unloadphysicallayer();
-IPCConnectionManager* get_ipc_connection_manager();
+ static void loadphysicallayer();
+ static void unloadphysicallayer();
};
+
#endif
- /*
- * Copyright (c) 2012-2013 NEC Corporation
- * All rights reserved.
-
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Publc License v1.0 which accompanies this
- * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
- */
-
+/*
+ * Copyright (c) 2012-2013 NEC Corporation
+ * All rights reserved.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Publc License v1.0 which accompanies this
+ * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
+ */
#include <limits.h>
#include <gtest/gtest.h>
#include <pfc/ipc_client.h>
#include <pfc/ipc_pfcd.h>
#include <pfc/ipc_struct.h>
-#include "stub/ODBC/include/odbcm_mgr.hh"
-#include "physical_common_def.hh"
-#include "unc/uppl_common.h"
-#include "unc/keytype.h"
-#include "itc_kt_base.hh"
-#include "itc_kt_root.hh"
-#include "itc_kt_controller.hh"
-#include "itc_kt_port.hh"
-#include "itc_kt_switch.hh"
-#include "itc_kt_link.hh"
-#include "itc_kt_boundary.hh"
-#include "ipct_util.hh"
-#include "itc_kt_state_base.hh"
-#include "itc_kt_logicalport.hh"
-#include "itc_read_request.hh"
-#include "physicallayer.hh"
+#include <odbcm_mgr.hh>
+#include <physical_common_def.hh>
+#include <unc/uppl_common.h>
+#include <unc/keytype.h>
+#include <itc_kt_base.hh>
+#include <itc_kt_root.hh>
+#include <itc_kt_controller.hh>
+#include <itc_kt_port.hh>
+#include <itc_kt_switch.hh>
+#include <itc_kt_link.hh>
+#include <itc_kt_boundary.hh>
+#include <ipct_util.hh>
+#include <itc_kt_state_base.hh>
+#include <itc_kt_logicalport.hh>
+#include <itc_read_request.hh>
+#include <physicallayer.hh>
#include "PhysicalLayerStub.hh"
-#include "tclib_module.hh"
+#include <tclib_module.hh>
+#include "ut_util.hh"
using namespace pfc;
using namespace pfc::core;
using namespace pfc::core::ipc;
using namespace std;
using namespace unc::tclib;
+using namespace unc::uppl::test;
-
-ClientSession *cli_sess = NULL;
-ClientSession *cli_sess_notify = NULL;
-pfc_ipcid_t service = UPPL_SVC_CONFIGREQ;
-class KtClassTest : public testing::Test {
-protected:
- virtual void SetUp() {
- if (cli_sess == NULL) {
- pfc_ipcconn_t connp = 0;
- int err = pfc_ipcclnt_altopen(UPPL_IPC_CHN_NAME, &connp);
-
- err = pfc_ipcclnt_altopen("phynwd", &connp);
-
- cli_sess = new ClientSession(connp, UPPL_IPC_SVC_NAME, service, err);
- cli_sess_notify = new ClientSession(connp, "sample2", service, err);
- PhysicalLayerStub::loadphysicallayer();
- unc::tclib::TcLibModule::stub_loadtcLibModule();
- } else {
- cli_sess->reset(UPPL_IPC_SVC_NAME, service);
- }
- }
- virtual void TearDown() {
- if (cli_sess != NULL) {
- cli_sess->cancel();
- delete cli_sess;
- cli_sess = NULL;
- }
- if (cli_sess_notify != NULL) {
- cli_sess_notify->cancel();
- delete cli_sess_notify;
- cli_sess_notify = NULL;
- }
- }
+class PortTest
+ : public UpplTestEnv
+{
};
// Can be changed based on testing need
-char pkName1_ctr[] = "Controller1";
-char pkName1_swtch[] = "0000-0000-0000-0001";
-char pkName1_port[] = "ethernet:1";
-char pkName2_ctr[] = "controller2";
-char pkName2_swtch[] = "switch id2";
-char pkName2_port[] = "port2";
-char pkName3_ctr[] = "Controller3";
-char pkName3_swtch[] = "Switch id3";
-char pkName3_port[] = "Port3";
-char pkName4_ctr[] = "";
-char pkName4_swtch[] = "";
-char pkName4_port[] = "";
-char pkName5_ctr[] = "NotExisting";
-char pkName5_swtch[] = "NotExisting";
-char pkName5_port[] = "NotExisting";
-
-void getKeyForKtPort1(key_port_t& k) {
- memset(k.sw_key.ctr_key.controller_name, '\0', 32);
- memcpy(k.sw_key.ctr_key.controller_name, pkName1_ctr, strlen(pkName1_ctr));
+static char pkName1_ctr[] = "Controller1";
+static char pkName1_swtch[] = "0000-0000-0000-0001";
+static char pkName1_port[] = "ethernet:1";
- memset(k.sw_key.switch_id, '\0', 256);
+static void getKeyForKtPort1(key_port_t& k) {
+ memset(&k, 0, sizeof(k));
+ memcpy(k.sw_key.ctr_key.controller_name, pkName1_ctr, strlen(pkName1_ctr));
memcpy(k.sw_key.switch_id, pkName1_swtch, strlen(pkName1_swtch));
-
- memset(k.port_id, '\0', 32);
memcpy(k.port_id, pkName1_port, strlen(pkName1_port));
}
-void getKeyForKtPort2(key_port_t *k) {
- memset(k->sw_key.ctr_key.controller_name, '\0', 32);
- memcpy(k->sw_key.ctr_key.controller_name, pkName2_ctr, strlen(pkName2_ctr));
-
- memset(k->sw_key.switch_id, '\0', 256);
- memcpy(k->sw_key.switch_id, pkName2_swtch, strlen(pkName2_swtch));
-
- memset(k->port_id, '\0', 32);
- memcpy(k->port_id, pkName2_port, strlen(pkName2_port));
-}
-
-void getValForKtPort1(val_port_st_t& v) {
+static void getValForKtPort1(val_port_st_t& v) {
+ memset(&v, 0, sizeof(v));
v.port.port_number = 223;
- memset(v.port.description, '\0', 128);
memcpy(v.port.description, "port description",
strlen("port description")); // uint8_t description[128];
v.port.admin_status = 1; // uint8_t admin_status
v.port.trunk_allowed_vlan = 1; // uint16_t trunk_allowed_vlan
v.oper_status = 1;
v.direction = 1;
- memset(v.mac_address, '\0', 6);
memcpy(v.mac_address, "port macAddr", strlen("port macAddr"));
v.duplex = 1;
v.speed = 1;
v.alarms_status = 1;
- memset(v.logical_port_id, '\0', 320);
memcpy(v.logical_port_id, "port logical_port_id",
strlen("port logical_port_id"));
}
/* PerformSyntaxValidation when controller name is not given*/
-TEST_F(KtClassTest, PerformSyntaxValidation_No_CtrName_01) {
+TEST_F(PortTest, PerformSyntaxValidation_No_CtrName_01) {
key_port_t k;
val_port_st v;
Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
getKeyForKtPort1(k);
memset(k.sw_key.ctr_key.controller_name, '\0', 32);
uint32_t operation = UNC_OP_CREATE;
OdbcmConnectionHandler *db_conn =NULL;
int ret = ktportobj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SYNTAX);
- unc::uppl::ODBCManager::clearStubData();
-
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SYNTAX, ret);
}
/* PerformSyntaxValidation when switch id is not given*/
-TEST_F(KtClassTest, PerformSyntaxValidation_No_SwitchId_02) {
+TEST_F(PortTest, PerformSyntaxValidation_No_SwitchId_02) {
key_port_t k;
val_port_st v;
Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
getKeyForKtPort1(k);
memset(k.sw_key.switch_id, '\0', 256);
uint32_t operation = UNC_OP_CREATE;
OdbcmConnectionHandler *db_conn =NULL;
int ret = ktportobj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SYNTAX);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SYNTAX, ret);
}
/* PerformSyntaxValidation when Port id is not given */
-TEST_F(KtClassTest, PerformSyntaxValidation_No_PortId_03) {
+TEST_F(PortTest, PerformSyntaxValidation_No_PortId_03) {
key_port_t k;
val_port_st v;
Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
getKeyForKtPort1(k);
memset(k.port_id, '\0', 32);
uint32_t operation = UNC_OP_CREATE;
OdbcmConnectionHandler *db_conn =NULL;
int ret = ktportobj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SYNTAX);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SYNTAX, ret);
}
/* PerformSyntaxValidation for positive case */
-TEST_F(KtClassTest, PerformSyntaxValidation_Pos_04) {
-
+TEST_F(PortTest, PerformSyntaxValidation_Pos_04) {
key_port_t k;
val_port_st v;
- Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
+ memset(&v, 0, sizeof(v));
getKeyForKtPort1(k);
+
+ Kt_Port ktportobj;
uint32_t operation = UNC_OP_CREATE;
OdbcmConnectionHandler *db_conn =NULL;
int ret = ktportobj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
/* PerformSemanticValidation when row already exists */
-TEST_F(KtClassTest, PerformSemanticValidation_Create_Neg_01) {
+TEST_F(PortTest, PerformSemanticValidation_Create_Neg_01) {
key_port_t k;
val_port_st v;
- Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
+ memset(&v, 0, sizeof(v));
getKeyForKtPort1(k);
+
+ Kt_Port ktportobj;
uint32_t operation = UNC_OP_CREATE;
OdbcmConnectionHandler *db_conn =NULL;
vector<string> sw_vect_key_value;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);
int ret = ktportobj.PerformSemanticValidation(db_conn, &k, &v, operation, UNC_DT_STATE);
- EXPECT_EQ(ret, UPPL_RC_ERR_INSTANCE_EXISTS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_INSTANCE_EXISTS, ret);
}
/* PerformSemanticValidation when DB Connection error occurs for UPDATE */
-TEST_F(KtClassTest, PerformSemanticValidation_update_neg_02) {
+TEST_F(PortTest, PerformSemanticValidation_update_neg_02) {
key_port_t k;
val_port_st v;
- Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
+ memset(&v, 0, sizeof(v));
getKeyForKtPort1(k);
+
+ Kt_Port ktportobj;
uint32_t operation = UNC_OP_UPDATE;
OdbcmConnectionHandler *db_conn =NULL;
vector<string> sw_vect_key_value;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_CONNECTION_ERROR);
int ret = ktportobj.PerformSemanticValidation(db_conn, &k, &v, operation, UNC_DT_STATE);
- EXPECT_EQ(ret, UPPL_RC_ERR_NO_SUCH_INSTANCE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
}
/* PerformSemanticValidation when DB error occurs for DELETE */
-TEST_F(KtClassTest, PerformSemanticValidation_del_neg_03) {
+TEST_F(PortTest, PerformSemanticValidation_del_neg_03) {
key_port_t k;
val_port_st v;
- Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
+ memset(&v, 0, sizeof(v));
getKeyForKtPort1(k);
+
+ Kt_Port ktportobj;
uint32_t operation = UNC_OP_DELETE;
OdbcmConnectionHandler *db_conn =NULL;
vector<string> sw_vect_key_value;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_CONNECTION_ERROR);
int ret = ktportobj.PerformSemanticValidation(db_conn, &k, &v, operation, UNC_DT_STATE);
- EXPECT_EQ(ret, UPPL_RC_ERR_NO_SUCH_INSTANCE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
}
/* PerformSemanticValidation when creating a row */
-TEST_F(KtClassTest, PerformSemanticValidation_Create_pos_04) {
+TEST_F(PortTest, PerformSemanticValidation_Create_pos_04) {
key_port_t k;
val_port_st v;
- Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
getKeyForKtPort1(k);
+
+ Kt_Port ktportobj;
uint32_t operation = UNC_OP_CREATE;
OdbcmConnectionHandler *db_conn =NULL;
vector<string> sw_vect_key_value;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_NOT_EXISTS);
int ret = ktportobj.PerformSemanticValidation(db_conn, &k, &v, operation, UNC_DT_STATE);
- EXPECT_EQ(ret, UPPL_RC_ERR_PARENT_DOES_NOT_EXIST);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_PARENT_DOES_NOT_EXIST, ret);
}
/* PerformSemanticValidation when DB Connection error occurs for READ */
-TEST_F(KtClassTest, PerformSemanticValidation_Read_neg_05) {
+TEST_F(PortTest, PerformSemanticValidation_Read_neg_05) {
key_port_t k;
val_port_st v;
- Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
getKeyForKtPort1(k);
+
+ Kt_Port ktportobj;
uint32_t operation = UNC_OP_READ;
OdbcmConnectionHandler *db_conn =NULL;
vector<string> sw_vect_key_value;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_CONNECTION_ERROR);
int ret = ktportobj.PerformSemanticValidation(db_conn, &k, &v, operation, UNC_DT_STATE);
- EXPECT_EQ(ret, UPPL_RC_ERR_NO_SUCH_INSTANCE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
}
/* PerformSemanticValidation when Updating row successfully */
-TEST_F(KtClassTest, PerformSemanticValidation_update_pos_06) {
+TEST_F(PortTest, PerformSemanticValidation_update_pos_06) {
key_port_t k;
val_port_st v;
- Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
getKeyForKtPort1(k);
+
+ Kt_Port ktportobj;
uint32_t operation = UNC_OP_UPDATE;
OdbcmConnectionHandler *db_conn =NULL;
vector<string> sw_vect_key_value;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);
int ret = ktportobj.PerformSemanticValidation(db_conn, &k, &v, operation, UNC_DT_STATE);
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
/* PerformSemanticValidation when Deleting row successfully */
-TEST_F(KtClassTest, PerformSemanticValidation_del_pos_07) {
+TEST_F(PortTest, PerformSemanticValidation_del_pos_07) {
key_port_t k;
val_port_st v;
- Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
getKeyForKtPort1(k);
+
+ Kt_Port ktportobj;
uint32_t operation = UNC_OP_DELETE;
OdbcmConnectionHandler *db_conn =NULL;
vector<string> sw_vect_key_value;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);
int ret = ktportobj.PerformSemanticValidation(db_conn, &k, &v, operation, UNC_DT_STATE);
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
/* PerformSemanticValidation when Reading a row successfully */
-TEST_F(KtClassTest, PerformSemanticValidation_read_pos_08) {
+TEST_F(PortTest, PerformSemanticValidation_read_pos_08) {
key_port_t k;
val_port_st v;
- Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
getKeyForKtPort1(k);
+
+ Kt_Port ktportobj;
uint32_t operation = UNC_OP_READ;
OdbcmConnectionHandler *db_conn =NULL;
vector<string> sw_vect_key_value;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);
int ret = ktportobj.PerformSemanticValidation(db_conn, &k, &v, operation, UNC_DT_STATE);
- EXPECT_EQ(ret, ODBCM_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(ODBCM_RC_SUCCESS, ret);
}
/* PerformSemanticValidation for IMPORT */
-TEST_F(KtClassTest, PerformSemanticValidation_Create_Import_neg_09) {
+TEST_F(PortTest, PerformSemanticValidation_Create_Import_neg_09) {
key_port_t k;
val_port_st v;
- Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
getKeyForKtPort1(k);
+
+ Kt_Port ktportobj;
uint32_t operation = UNC_OP_CREATE;
OdbcmConnectionHandler *db_conn =NULL;
vector<string> sw_vect_key_value;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_SUCCESS);
int ret = ktportobj.PerformSemanticValidation(db_conn, &k, &v, operation, UNC_DT_IMPORT);
- EXPECT_EQ(ret, UPPL_RC_ERR_PARENT_DOES_NOT_EXIST);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_PARENT_DOES_NOT_EXIST, ret);
}
/* HandleOperStatus when no key struct is given */
-TEST_F(KtClassTest, HandleOperStatus_NoKeyStruct_01) {
-
+TEST_F(PortTest, HandleOperStatus_NoKeyStruct_01) {
key_port_t *k;
val_port_st *v;
Kt_Port ktportobj;
OdbcmConnectionHandler *db_conn =NULL;
int ret = ktportobj.HandleOperStatus(db_conn,UNC_DT_STATE,k,v);
- EXPECT_EQ(ret,UPPL_RC_ERR_BAD_REQUEST);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_BAD_REQUEST, ret);
}
/* HandleOperStatus when GetOneRow fails */
-TEST_F(KtClassTest, HandleOperStatus_GetOneRow_Fail_02) {
-
+TEST_F(PortTest, HandleOperStatus_GetOneRow_Fail_02) {
key_port_t k;
val_port_st v;
- Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
getKeyForKtPort1(k);
+
+ Kt_Port ktportobj;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_FAILED);
int ret = ktportobj.HandleOperStatus(db_conn,UNC_DT_STATE,&k,&v);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_GET);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_GET, ret);
}
/* HandleOperStatus when GetOneRow is success */
-TEST_F(KtClassTest, HandleOperStatus_GetOneRow_pos_03) {
-
+TEST_F(PortTest, HandleOperStatus_GetOneRow_pos_03) {
key_port_t k;
val_port_st v;
- Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
getKeyForKtPort1(k);
+
+ Kt_Port ktportobj;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
int ret = ktportobj.HandleOperStatus(db_conn,UNC_DT_STATE,&k,&v);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_UPDATE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_UPDATE, ret);
}
/* HandleOperStatus when GetBulkRows fail */
-TEST_F(KtClassTest, HandleOperStatus_GetBulkRows_Fail_04) {
-
+TEST_F(PortTest, HandleOperStatus_GetBulkRows_Fail_04) {
key_port_t k;
val_port_st v;
- Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
getKeyForKtPort1(k);
+
+ Kt_Port ktportobj;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_FAILED);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_FAILED);
int ret = ktportobj.HandleOperStatus(db_conn,UNC_DT_STATE,&k,&v);
- unc::uppl::ODBCManager::clearStubData();
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_GET);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_GET, ret);
}
/* HandleOperStatus when GetBulkRows is success */
-TEST_F(KtClassTest, HandleOperStatus_GetBulkRows_pos_05) {
-
+TEST_F(PortTest, HandleOperStatus_GetBulkRows_pos_05) {
key_port_t k;
val_port_st v;
- Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
getKeyForKtPort1(k);
+
+ Kt_Port ktportobj;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_SUCCESS);
int ret = ktportobj.HandleOperStatus(db_conn,UNC_DT_STATE,&k,&v);
- unc::uppl::ODBCManager::clearStubData();
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
/* SetOperStatus when UPDATEONEROW fails*/
-TEST_F(KtClassTest, SetOperStatus_DbNeg_01) {
+TEST_F(PortTest, SetOperStatus_DbNeg_01) {
key_port_t k;
- Kt_Port ktportobj;
getKeyForKtPort1(k);
+
+ Kt_Port ktportobj;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_FAILED);
int ret = ktportobj.SetOperStatus(db_conn,UNC_DT_STATE,&k,(UpplPortOperStatus)1);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_UPDATE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_UPDATE, ret);
}
/* SetOperStatus when UPDATEONEROW fails*/
-TEST_F(KtClassTest, SetOperStatus_DbNeg_02) {
-
+TEST_F(PortTest, SetOperStatus_DbNeg_02) {
key_port_t k;
- Kt_Port ktportobj;
getKeyForKtPort1(k);
+
+ Kt_Port ktportobj;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_ROW_NOT_EXISTS);
int ret = ktportobj.SetOperStatus(db_conn,UNC_DT_STATE,&k,(UpplPortOperStatus)0);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
/* SetOperStatus when UPDATEONEROW is SUCCESS*/
-TEST_F(KtClassTest, SetOperStatus_Db_Pos_03) {
-
+TEST_F(PortTest, SetOperStatus_Db_Pos_03) {
key_port_t k;
- Kt_Port ktportobj;
getKeyForKtPort1(k);
+
+ Kt_Port ktportobj;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
int ret = ktportobj.SetOperStatus(db_conn,UNC_DT_STATE,&k,(UpplPortOperStatus)0);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
/* SetOperStatus when UPDATEONEROW is SUCCESS and GETONEROW fails*/
-TEST_F(KtClassTest, SetOperStatus_Pos_04) {
-
+TEST_F(PortTest, SetOperStatus_Pos_04) {
key_port_t k;
- Kt_Port ktportobj;
getKeyForKtPort1(k);
+
+ Kt_Port ktportobj;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_FAILED);
int ret = ktportobj.SetOperStatus(db_conn,UNC_DT_STATE,&k,(UpplPortOperStatus)0);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
/* SetOperStatus when UPDATEONEROW and GETONEROW is SUCCESS and addOutput err value is 0*/
-TEST_F(KtClassTest, SetOperStatus_Pos_05) {
- unc::tclib::TcLibModule::stub_setTCApiCommonRetcode(TcLibModule::REGISTER, TC_API_COMMON_SUCCESS);
- unc::uppl::PhysicalLayer *physical_layer = unc::uppl::PhysicalLayer::get_instance();
- physical_layer->init();
+TEST_F(PortTest, SetOperStatus_Pos_05) {
key_port_t k;
- Kt_Port ktportobj;
getKeyForKtPort1(k);
+
+ Kt_Port ktportobj;
OdbcmConnectionHandler *db_conn =NULL;
ServerSession sess;
- ServerSession::clearStubData();
sess.stub_setAddOutput((uint32_t)UNC_OP_UPDATE);
sess.stub_setAddOutput((uint32_t)UNC_DT_STATE);
sess.stub_setAddOutput((uint32_t)UNC_KT_PORT);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
int ret = ktportobj.SetOperStatus(db_conn,UNC_DT_STATE,&k,(UpplPortOperStatus)1);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
/* SetOperStatus when UPDATEONEROW and GETONEROW is SUCCESS and addOutput err value is 0*/
-TEST_F(KtClassTest, SetOperStatus_Pos_06) {
+TEST_F(PortTest, SetOperStatus_Pos_06) {
key_port_t k;
- Kt_Port ktportobj;
getKeyForKtPort1(k);
+
+ Kt_Port ktportobj;
OdbcmConnectionHandler *db_conn =NULL;
- unc::uppl::ODBCManager::clearStubData();
ServerSession sess;
- ServerSession::clearStubData();
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)0);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
int ret = ktportobj.SetOperStatus(db_conn,UNC_DT_STATE,&k,(UpplPortOperStatus)1);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
/* FrameValidValue when string is more than 48 characters */
-TEST_F(KtClassTest, FrameValidValue_01) {
-
- key_port_t k;
+TEST_F(PortTest, FrameValidValue_01) {
val_port_st v;
+ memset(&v, 0xff, sizeof(v));
+
+ string abd("01231234567");
Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
- getKeyForKtPort1(k);
- getValForKtPort1(v);
- string abd="aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa";
ktportobj.FrameValidValue(abd,v);
- int ret = UPPL_RC_SUCCESS;
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+
+ for (uint32_t i(0); i < PFC_ARRAY_CAPACITY(v.port.valid); i++) {
+ ASSERT_EQ(i, v.port.valid[i]);
+ }
+
+ for (uint8_t i(1); i < PFC_ARRAY_CAPACITY(v.valid); i++) {
+ ASSERT_EQ(i, v.valid[i]);
+ }
}
/*PerformRead with negative option1 */
-TEST_F(KtClassTest, PerformRead_Neg_Option1_01) {
+TEST_F(PortTest, PerformRead_Neg_Option1_01) {
key_port_t k;
val_port_st_t v;
memset(v.valid, '\0', sizeof(v.valid));
Kt_Port ktportobj;
OdbcmConnectionHandler *db_conn =NULL;
ServerSession sess;
- ServerSession::clearStubData();
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)UNC_OP_READ);
sess.stub_setAddOutput((uint32_t)UNC_KT_PORT);
int ret = ktportobj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_DETAIL,(uint32_t)UNC_OPT2_NONE,(uint32_t)1);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
/*PerformRead with negative option1 */
-TEST_F(KtClassTest, PerformRead_Neg_Option1_02) {
+TEST_F(PortTest, PerformRead_Neg_Option1_02) {
key_port_t k;
val_port_st_t v;
memset(v.valid, '\0', sizeof(v.valid));
Kt_Port ktportobj;
OdbcmConnectionHandler *db_conn =NULL;
ServerSession sess;
- ServerSession::clearStubData();
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)UNC_OP_READ);
sess.stub_setAddOutput((uint32_t)UNC_KT_PORT);
int ret = ktportobj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_DETAIL,(uint32_t)UNC_OPT2_NONE,(uint32_t)1);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
/*PerformRead with unsupported datatype */
-TEST_F(KtClassTest, PerformRead_unsupported_datatype_03) {
+TEST_F(PortTest, PerformRead_unsupported_datatype_03) {
key_port_t k ;
val_port_st_t v;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
- Kt_Port ktportobj;
+ memset(&v, 0, sizeof(v));
getKeyForKtPort1(k);
getValForKtPort1(v);
+
+ Kt_Port ktportobj;
OdbcmConnectionHandler *db_conn =NULL;
ServerSession sess;
- ServerSession::clearStubData();
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)UNC_OP_READ);
sess.stub_setAddOutput((uint32_t)UNC_KT_PORT);
int ret = ktportobj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_CANDIDATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_DETAIL,(uint32_t)UNC_OPT2_NONE,(uint32_t)1);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
/*PerformRead with negative option2 */
-TEST_F(KtClassTest, PerformRead_neg_Option2_04) {
+TEST_F(PortTest, PerformRead_neg_Option2_04) {
key_port_t k;
val_port_st_t v;
memset(v.valid, '\0', sizeof(v.valid));
Kt_Port ktportobj;
OdbcmConnectionHandler *db_conn =NULL;
ServerSession sess;
- ServerSession::clearStubData();
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)UNC_OP_READ);
sess.stub_setAddOutput((uint32_t)UNC_KT_PORT);
int ret = ktportobj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_MAC_ENTRY_STATIC,(uint32_t)1);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
/*PerformRead with negative option2 */
-TEST_F(KtClassTest, PerformRead_neg_Option2_05) {
+TEST_F(PortTest, PerformRead_neg_Option2_05) {
key_port_t k;
val_port_st_t v;
memset(v.valid, '\0', sizeof(v.valid));
Kt_Port ktportobj;
OdbcmConnectionHandler *db_conn =NULL;
ServerSession sess;
- ServerSession::clearStubData();
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)UNC_OP_READ);
sess.stub_setAddOutput((uint32_t)UNC_KT_PORT);
int ret = ktportobj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_MAC_ENTRY_STATIC,(uint32_t)1);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
/*PerformRead with positive option1 */
-TEST_F(KtClassTest, PerformRead_POS_Option2_06) {
+TEST_F(PortTest, PerformRead_POS_Option2_06) {
key_port_t k;
val_port_st_t v;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
+ memset(&k, 0, sizeof(k));
+ memset(&v, 0, sizeof(v));
+
Kt_Port ktportobj;
OdbcmConnectionHandler *db_conn =NULL;
ServerSession sess;
- ServerSession::clearStubData();
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)UNC_OP_READ);
sess.stub_setAddOutput((uint32_t)UNC_KT_PORT);
int ret = ktportobj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_NONE,(uint32_t)1);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
/*PerformRead with positive option2 */
-TEST_F(KtClassTest, PerformRead_POS_Option2_07) {
+TEST_F(PortTest, PerformRead_POS_Option2_07) {
key_port_t k;
val_port_st_t v;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
+ memset(&k, 0, sizeof(k));
+ memset(&v, 0, sizeof(v));
+
Kt_Port ktportobj;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_FAILED);
ServerSession sess;
- ServerSession::clearStubData();
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)UNC_OP_READ);
sess.stub_setAddOutput((uint32_t)UNC_KT_PORT);
int ret = ktportobj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_NONE,(uint32_t)1);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
/*PerformRead with positive option2 */
-TEST_F(KtClassTest, PerformRead_POS_Option2_08) {
+TEST_F(PortTest, PerformRead_POS_Option2_08) {
key_port_t k;
val_port_st_t v;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
+ memset(&k, 0, sizeof(k));
+ memset(&v, 0, sizeof(v));
+
Kt_Port ktportobj;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
ServerSession sess;
- ServerSession::clearStubData();
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)UNC_OP_READ);
sess.stub_setAddOutput((uint32_t)UNC_KT_PORT);
int ret = ktportobj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_NONE,(uint32_t)1);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
/*PerformRead with option2 as Neighbor */
-TEST_F(KtClassTest, PerformRead_Neighbor_09) {
+TEST_F(PortTest, PerformRead_Neighbor_09) {
key_port_t k;
val_port_st_t v;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
+ memset(&k, 0, sizeof(k));
+ memset(&v, 0, sizeof(v));
+
Kt_Port ktportobj;
OdbcmConnectionHandler *db_conn =NULL;
ServerSession sess;
- ServerSession::clearStubData();
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)UNC_OP_READ);
sess.stub_setAddOutput((uint32_t)UNC_KT_PORT);
int ret = ktportobj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_NEIGHBOR,(uint32_t)1);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
/*PerformRead with positive option2 Neighbor */
-TEST_F(KtClassTest, PerformRead_Neighbor_10) {
+TEST_F(PortTest, PerformRead_Neighbor_10) {
key_port_t k;
val_port_st_t v;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
+ memset(&k, 0, sizeof(k));
+ memset(&v, 0, sizeof(v));
+
Kt_Port ktportobj;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
ServerSession sess;
- ServerSession::clearStubData();
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)UNC_OP_READ);
sess.stub_setAddOutput((uint32_t)UNC_KT_PORT);
int ret = ktportobj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_NEIGHBOR,(uint32_t)1);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
/*PerformRead with positive option2 Neighbor*/
-TEST_F(KtClassTest, PerformRead_Neighbor_11) {
+TEST_F(PortTest, PerformRead_Neighbor_11) {
key_port_t k;
val_port_st_t v;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
+ memset(&k, 0, sizeof(k));
+ memset(&v, 0, sizeof(v));
+
Kt_Port ktportobj;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_FAILED);
ServerSession sess;
- ServerSession::clearStubData();
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)UNC_OP_READ);
sess.stub_setAddOutput((uint32_t)UNC_KT_PORT);
int ret = ktportobj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_NEIGHBOR,(uint32_t)1);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
+
/*PerformRead with positive option2 Neighbor*/
-TEST_F(KtClassTest, PerformRead_Neighbor_12) {
+TEST_F(PortTest, PerformRead_Neighbor_12) {
key_port_t k;
val_port_st_t v;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
+ memset(&k, 0, sizeof(k));
+ memset(&v, 0, sizeof(v));
+
Kt_Port ktportobj;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
ServerSession sess;
- ServerSession::clearStubData();
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)UNC_OP_READ);
sess.stub_setAddOutput((uint32_t)UNC_DT_STATE);
int ret = ktportobj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_NEIGHBOR,(uint32_t)1);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
+
/*PerformRead with Invalid operation */
-TEST_F(KtClassTest, PerformRead_Invalid_operation_13) {
+TEST_F(PortTest, PerformRead_Invalid_operation_13) {
key_port_t k;
val_port_st_t v;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
+ memset(&k, 0, sizeof(k));
+ memset(&v, 0, sizeof(v));
+
Kt_Port ktportobj;
OdbcmConnectionHandler *db_conn =NULL;
ServerSession sess;
- ServerSession::clearStubData();
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)UNC_OP_READ);
sess.stub_setAddOutput((uint32_t)UNC_KT_PORT);
int ret = ktportobj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_INVALID,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_NONE,(uint32_t)1);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
/* DeleteKeyInstance for Unsupported datatype CANDIDATE */
-TEST_F(KtClassTest, DeleteKeyInstance_UnsupportedForCANDIDATE_01) {
+TEST_F(PortTest, DeleteKeyInstance_UnsupportedForCANDIDATE_01) {
key_port_t k;
val_port_st v;
- Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
+ memset(&v, 0, sizeof(v));
getKeyForKtPort1(k);
- OdbcmConnectionHandler *db_conn =NULL;
+ Kt_Port ktportobj;
+ OdbcmConnectionHandler *db_conn =NULL;
int ret = ktportobj.DeleteKeyInstance(db_conn,&k,UNC_DT_CANDIDATE,UNC_KT_PORT);
- EXPECT_EQ(ret,UPPL_RC_ERR_OPERATION_NOT_ALLOWED);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_OPERATION_NOT_ALLOWED, ret);
}
/* DeleteKeyInstance for Unsupported datatype RUNNING */
-TEST_F(KtClassTest, DeleteKeyInstance_UnsupportedForRUNNING_02) {
+TEST_F(PortTest, DeleteKeyInstance_UnsupportedForRUNNING_02) {
key_port_t k;
val_port_st v;
- Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
+ memset(&v, 0, sizeof(v));
getKeyForKtPort1(k);
- OdbcmConnectionHandler *db_conn =NULL;
+ Kt_Port ktportobj;
+ OdbcmConnectionHandler *db_conn =NULL;
int ret = ktportobj.DeleteKeyInstance(db_conn,&k,UNC_DT_RUNNING,UNC_KT_PORT);
- EXPECT_EQ(ret,UPPL_RC_ERR_OPERATION_NOT_ALLOWED);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_OPERATION_NOT_ALLOWED, ret);
}
/* DeleteKeyInstance for Unsupported datatype STARTUP */
-TEST_F(KtClassTest, DeleteKeyInstance_UnsupportedForSTARTUP_03) {
+TEST_F(PortTest, DeleteKeyInstance_UnsupportedForSTARTUP_03) {
key_port_t k;
val_port_st v;
- Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
+ memset(&v, 0, sizeof(v));
getKeyForKtPort1(k);
- OdbcmConnectionHandler *db_conn =NULL;
+ Kt_Port ktportobj;
+ OdbcmConnectionHandler *db_conn =NULL;
int ret = ktportobj.DeleteKeyInstance(db_conn,&k,UNC_DT_STARTUP,UNC_KT_PORT);
- EXPECT_EQ(ret,UPPL_RC_ERR_OPERATION_NOT_ALLOWED);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_OPERATION_NOT_ALLOWED, ret);
}
/* DeleteKeyInstance for Unsupported datatype AUDIT */
-TEST_F(KtClassTest, DeleteKeyInstance_UnsupportedForAUDIT_04) {
+TEST_F(PortTest, DeleteKeyInstance_UnsupportedForAUDIT_04) {
key_port_t k;
val_port_st v;
- Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
+ memset(&v, 0, sizeof(v));
getKeyForKtPort1(k);
- OdbcmConnectionHandler *db_conn =NULL;
+ Kt_Port ktportobj;
+ OdbcmConnectionHandler *db_conn =NULL;
int ret = ktportobj.DeleteKeyInstance(db_conn,&k,UNC_DT_AUDIT,UNC_KT_PORT);
- EXPECT_EQ(ret,UPPL_RC_ERR_OPERATION_NOT_ALLOWED);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_OPERATION_NOT_ALLOWED, ret);
}
/* DeleteKeyInstance for DB error */
-TEST_F(KtClassTest, DeleteKeyInstance_DbNeg_05) {
+TEST_F(PortTest, DeleteKeyInstance_DbNeg_05) {
key_port_t k;
val_port_st v;
- Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
+ memset(&v, 0, sizeof(v));
getKeyForKtPort1(k);
- OdbcmConnectionHandler *db_conn =NULL;
+ Kt_Port ktportobj;
+ OdbcmConnectionHandler *db_conn =NULL;
int ret = ktportobj.DeleteKeyInstance(db_conn,&k,UNC_DT_STATE,UNC_KT_PORT);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_DELETE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_DELETE, ret);
}
/* DeleteKeyInstance for DB error */
-TEST_F(KtClassTest, DeleteKeyInstance_DbNeg_06) {
+TEST_F(PortTest, DeleteKeyInstance_DbNeg_06) {
key_port_t k;
- val_port_st v;
- Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
getKeyForKtPort1(k);
+
+ Kt_Port ktportobj;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_CONNECTION_ERROR);
int ret = ktportobj.DeleteKeyInstance(db_conn,&k,UNC_DT_STATE,UNC_KT_PORT);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
/* DeleteKeyInstance for DB error */
-TEST_F(KtClassTest, DeleteKeyInstance_DbNeg07) {
+TEST_F(PortTest, DeleteKeyInstance_DbNeg07) {
key_port_t k;
- val_port_st v;
- Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
getKeyForKtPort1(k);
+
+ Kt_Port ktportobj;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_ROW_NOT_EXISTS);
int ret = ktportobj.DeleteKeyInstance(db_conn,&k,UNC_DT_STATE,UNC_KT_PORT);
- EXPECT_EQ(ret,UPPL_RC_ERR_NO_SUCH_INSTANCE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
}
/* DeleteKeyInstance for Positive DB */
-TEST_F(KtClassTest, DeleteKeyInstance_DbPos_08) {
+TEST_F(PortTest, DeleteKeyInstance_DbPos_08) {
key_port_t k;
- val_port_st v;
- Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
getKeyForKtPort1(k);
+
+ Kt_Port ktportobj;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_SUCCESS);
int ret = ktportobj.DeleteKeyInstance(db_conn,&k,UNC_DT_STATE,UNC_KT_PORT);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
/* DeleteKeyInstance for Positive DB */
-TEST_F(KtClassTest, DeleteKeyInstance_DbPos_09) {
+TEST_F(PortTest, DeleteKeyInstance_DbPos_09) {
key_port_t k;
- val_port_st v;
- Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
getKeyForKtPort1(k);
+
+ Kt_Port ktportobj;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_SUCCESS);
int ret = ktportobj.DeleteKeyInstance(db_conn,&k,UNC_DT_STATE,UNC_KT_PORT);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
/*IsKeyExists No key struct */
-TEST_F(KtClassTest, IsKeyExists_NoKeyStruct_01) {
+TEST_F(PortTest, IsKeyExists_NoKeyStruct_01) {
key_port_t k;
val_port_st_t v;
memset(&v, 0, sizeof(val_port_st_t));
- Kt_Port ktportobj;
getKeyForKtPort1(k);
+
+ Kt_Port ktportobj;
OdbcmConnectionHandler *db_conn =NULL;
vector<string> sw_vect_key_value;
int ret = ktportobj.IsKeyExists(db_conn,UNC_DT_STATE,sw_vect_key_value);
- EXPECT_EQ(ret,UPPL_RC_ERR_BAD_REQUEST);
+ EXPECT_EQ(UPPL_RC_ERR_BAD_REQUEST, ret);
}
/*IsKeyExists when Db error occurs */
-TEST_F(KtClassTest, IsKeyExists_DbNeg_02) {
+TEST_F(PortTest, IsKeyExists_DbNeg_02) {
key_port_t k;
val_port_st_t v;
memset(&v, 0, sizeof(val_port_st_t));
- Kt_Port ktportobj;
getKeyForKtPort1(k);
+
+ Kt_Port ktportobj;
vector<string> sw_vect_key_value;
sw_vect_key_value.push_back(pkName1_ctr);
sw_vect_key_value.push_back(pkName1_swtch);
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_CONNECTION_ERROR);
int ret = ktportobj.IsKeyExists(db_conn,UNC_DT_STATE,sw_vect_key_value);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
/*IsKeyExists when Db error occurs */
-TEST_F(KtClassTest, IsKeyExists_DbNeg_03) {
+TEST_F(PortTest, IsKeyExists_DbNeg_03) {
key_port_t k;
val_port_st_t v;
memset(&v, 0, sizeof(val_port_st_t));
- Kt_Port ktportobj;
getKeyForKtPort1(k);
+
+ Kt_Port ktportobj;
vector<string> sw_vect_key_value;
sw_vect_key_value.push_back(pkName1_ctr);
sw_vect_key_value.push_back(pkName1_swtch);
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_FAILED);
int ret = ktportobj.IsKeyExists(db_conn,UNC_DT_STATE,sw_vect_key_value);
- EXPECT_EQ(ret,UPPL_RC_ERR_NO_SUCH_INSTANCE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
}
/*IsKeyExists when Db Success occurs */
-TEST_F(KtClassTest, IsKeyExists_Db_Pos_04) {
+TEST_F(PortTest, IsKeyExists_Db_Pos_04) {
key_port_t k;
val_port_st_t v;
memset(&v, 0, sizeof(val_port_st_t));
- Kt_Port ktportobj;
getKeyForKtPort1(k);
+
+ Kt_Port ktportobj;
vector<string> sw_vect_key_value;
sw_vect_key_value.push_back(pkName1_ctr);
sw_vect_key_value.push_back(pkName1_swtch);
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);
int ret = ktportobj.IsKeyExists(db_conn,UNC_DT_STATE,sw_vect_key_value);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
/*ReadInternal when it is other than Read operation */
-TEST_F(KtClassTest, ReadInternal_NotRead_01) {
-
+TEST_F(PortTest, ReadInternal_NotRead_01) {
vector<void*> k;
vector<void*> v;
Kt_Port ktportobj;
uint32_t operation_type = UNC_OP_READ_BULK;
- uint32_t max_rep_ct=3;
- char pkName1_ctr[] = "Controller1";
- char pkName1_swtch[] = "switch id1";
- char pkName1_port[] = "Port1";
- k.push_back(pkName1_ctr);
- k.push_back(pkName1_swtch);
- k.push_back(pkName1_port);
+
+ key_port_t key;
+ val_port_st_t value;
+ memset(&value, 0, sizeof(value));
+ getKeyForKtPort1(key);
+ getValForKtPort1(value);
+ k.push_back(&key);
+ v.push_back(&value);
OdbcmConnectionHandler *db_conn=NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_SUCCESS);
int ret = ktportobj.ReadInternal(db_conn, k, v, UNC_DT_STATE, operation_type);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
/*ReadInternal when Db is SUCCESS */
-TEST_F(KtClassTest, ReadInternal_Read_02) {
-
+TEST_F(PortTest, ReadInternal_Read_02) {
vector<void*> k;
vector<void*> v;
Kt_Port ktportobj;
uint32_t operation_type = UNC_OP_READ;
- uint32_t max_rep_ct;
- char pkName1_ctr[] = "Controller1";
- char pkName1_swtch[] = "switch id1";
- char pkName1_port[] = "Port1";
- k.push_back(pkName1_ctr);
- k.push_back(pkName1_swtch);
- k.push_back(pkName1_port);
+
+ key_port_t key;
+ val_port_st_t val;
+ getKeyForKtPort1(key);
+ getValForKtPort1(val);
+ k.push_back(&key);
+ v.push_back(&val);
OdbcmConnectionHandler *db_conn=NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
int ret = ktportobj.ReadInternal(db_conn, k, v, UNC_DT_STATE, operation_type);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
/*ReadBulk Unsupported datatype UNC_DT_CANDIDATE */
-TEST_F(KtClassTest, ReadBulk_Unsupporteddatatype_01) {
-
+TEST_F(PortTest, ReadBulk_Unsupporteddatatype_01) {
key_port_t k;
- val_port_st v;
- Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
getKeyForKtPort1(k);
- uint32_t max_rep_ct;
+
+ Kt_Port ktportobj;
+ uint32_t max_rep_ct(1);
OdbcmConnectionHandler *db_conn=NULL;
ReadRequest *read_req=NULL;
int ret = ktportobj.ReadBulk(db_conn,&k,(uint32_t)UNC_DT_CANDIDATE,max_rep_ct,0,PFC_TRUE,PFC_TRUE,read_req);
- EXPECT_EQ(ret,UPPL_RC_ERR_OPERATION_NOT_ALLOWED);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_OPERATION_NOT_ALLOWED, ret);
}
/*ReadBulk Unsupported datatype UNC_DT_RUNNING */
-TEST_F(KtClassTest, ReadBulk_Unsupporteddatatype_02) {
-
+TEST_F(PortTest, ReadBulk_Unsupporteddatatype_02) {
key_port_t k;
- val_port_st v;
- Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
getKeyForKtPort1(k);
- uint32_t max_rep_ct;
+
+ Kt_Port ktportobj;
+ uint32_t max_rep_ct(1);
OdbcmConnectionHandler *db_conn=NULL;
ReadRequest *read_req=NULL;
int ret = ktportobj.ReadBulk(db_conn,&k,(uint32_t)UNC_DT_RUNNING,max_rep_ct,0,PFC_TRUE,PFC_TRUE,read_req);
- EXPECT_EQ(ret,UPPL_RC_ERR_OPERATION_NOT_ALLOWED);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_OPERATION_NOT_ALLOWED, ret);
}
/*ReadBulk Unsupported datatype UNC_DT_STARTUP */
-TEST_F(KtClassTest, ReadBulk_Unsupporteddatatype_03) {
-
+TEST_F(PortTest, ReadBulk_Unsupporteddatatype_03) {
key_port_t k;
- val_port_st v;
- Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
getKeyForKtPort1(k);
- uint32_t max_rep_ct;
+
+ Kt_Port ktportobj;
+ uint32_t max_rep_ct(1);
OdbcmConnectionHandler *db_conn=NULL;
ReadRequest *read_req=NULL;
int ret = ktportobj.ReadBulk(db_conn,&k,(uint32_t)UNC_DT_STARTUP,max_rep_ct,0,PFC_TRUE,PFC_TRUE,read_req);
- EXPECT_EQ(ret,UPPL_RC_ERR_OPERATION_NOT_ALLOWED);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_OPERATION_NOT_ALLOWED, ret);
}
/*ReadBulk when max_rep_ct is NULL */
-TEST_F(KtClassTest, ReadBulk_max_rep_ct_NULL_04) {
-
+TEST_F(PortTest, ReadBulk_max_rep_ct_NULL_04) {
key_port_t k;
- val_port_st v;
- Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
getKeyForKtPort1(k);
- uint32_t max_rep_ct=NULL;
+
+ Kt_Port ktportobj;
+ uint32_t max_rep_ct(1);
OdbcmConnectionHandler *db_conn=NULL;
ReadRequest *read_req=NULL;
int ret = ktportobj.ReadBulk(db_conn,&k,(uint32_t)UNC_DT_STATE,max_rep_ct,0,PFC_TRUE,PFC_TRUE,read_req);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
/*ReadBulk when DB is SUCCESS */
-TEST_F(KtClassTest, ReadBulk_Pos_05) {
-
+TEST_F(PortTest, ReadBulk_Pos_05) {
key_port_t k;
- val_port_st v;
- Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
getKeyForKtPort1(k);
+
+ Kt_Port ktportobj;
uint32_t max_rep_ct=1;
- pfc_bool_t parent_call;
- pfc_bool_t is_read_next;
+ pfc_bool_t parent_call(PFC_FALSE);
+ pfc_bool_t is_read_next(PFC_FALSE);
int child_index=1;
OdbcmConnectionHandler *db_conn=NULL;
- ReadRequest *read_req = new ReadRequest();
+ ReadRequest read_req;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_SUCCESS);
- int ret = ktportobj.ReadBulk(db_conn,&k,(uint32_t)UNC_DT_STATE,max_rep_ct,child_index,parent_call,is_read_next,read_req);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ int ret = ktportobj.ReadBulk(db_conn, &k, (uint32_t)UNC_DT_STATE,
+ max_rep_ct, child_index, parent_call,
+ is_read_next, &read_req);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
/*ReadBulk when DB Connection error occurs */
-TEST_F(KtClassTest, ReadBulk_DbNeg_06) {
-
+TEST_F(PortTest, ReadBulk_DbNeg_06) {
key_port_t k;
- val_port_st v;
- Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
getKeyForKtPort1(k);
+
+ Kt_Port ktportobj;
uint32_t max_rep_ct=1;
- pfc_bool_t parent_call;
- pfc_bool_t is_read_next;
+ pfc_bool_t parent_call(PFC_FALSE);
+ pfc_bool_t is_read_next(PFC_FALSE);
int child_index=1;
OdbcmConnectionHandler *db_conn=NULL;
- ReadRequest *read_req = new ReadRequest();
+ ReadRequest read_req;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_CONNECTION_ERROR);
- int ret = ktportobj.ReadBulk(db_conn,&k,(uint32_t)UNC_DT_STATE,max_rep_ct,child_index,parent_call,is_read_next,read_req);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);
- unc::uppl::ODBCManager::clearStubData();
+ int ret = ktportobj.ReadBulk(db_conn, &k, (uint32_t)UNC_DT_STATE,
+ max_rep_ct, child_index, parent_call,
+ is_read_next, &read_req);
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
/*ReadBulk when parent_call is false*/
-TEST_F(KtClassTest, ReadBulk_Pos_parent_false_07) {
-
+TEST_F(PortTest, ReadBulk_Pos_parent_false_07) {
key_port_t k;
- val_port_st v;
- Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
getKeyForKtPort1(k);
+
+ Kt_Port ktportobj;
uint32_t max_rep_ct=1;
- uint32_t operation_type = UNC_OP_READ_BULK;
pfc_bool_t parent_call=false;
pfc_bool_t is_read_next=true;
int child_index=1;
OdbcmConnectionHandler *db_conn=NULL;
- ReadRequest *read_req = new ReadRequest;
+ ReadRequest read_req;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_FAILED);
- int ret = ktportobj.ReadBulk(db_conn,&k,(uint32_t)UNC_DT_STATE,max_rep_ct,child_index,parent_call,is_read_next,read_req);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ int ret = ktportobj.ReadBulk(db_conn, &k, (uint32_t)UNC_DT_STATE,
+ max_rep_ct, child_index, parent_call,
+ is_read_next, &read_req);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
/* ReadBulkInternal when there is no record in DB */
-TEST_F(KtClassTest, ReadBulkInternal_DbNeg_01) {
-
+TEST_F(PortTest, ReadBulkInternal_DbNeg_01) {
key_port_t k;
val_port_st v;
- Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
+ memset(&v, 0, sizeof(v));
getKeyForKtPort1(k);
- uint32_t max_rep_ct;
+
+ Kt_Port ktportobj;
+ uint32_t max_rep_ct(1);
vector<val_port_st_t> vect_val_port;
vector<key_port_t> vect_port_id;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_RECORD_NOT_FOUND);
int ret = ktportobj.ReadBulkInternal(db_conn,&k,&v,(uint32_t)UNC_DT_STATE,max_rep_ct,vect_val_port,vect_port_id);
- EXPECT_EQ(ret,UPPL_RC_ERR_NO_SUCH_INSTANCE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
}
/* ReadBulkInternal when DB connection error occurs */
-TEST_F(KtClassTest, ReadBulkInternal_DbNeg_02) {
-
+TEST_F(PortTest, ReadBulkInternal_DbNeg_02) {
key_port_t k;
val_port_st v;
- Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
+ memset(&v, 0, sizeof(v));
getKeyForKtPort1(k);
- uint32_t max_rep_ct;
+
+ Kt_Port ktportobj;
+ uint32_t max_rep_ct(1);
vector<val_port_st_t> vect_val_port;
vector<key_port_t> vect_port_id;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_CONNECTION_ERROR);
int ret = ktportobj.ReadBulkInternal(db_conn,&k,&v,(uint32_t)UNC_DT_STATE,max_rep_ct,vect_val_port,vect_port_id);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
/* ReadBulkInternal when DB error occurs */
-TEST_F(KtClassTest, ReadBulkInternal_DbNeg_03) {
-
+TEST_F(PortTest, ReadBulkInternal_DbNeg_03) {
key_port_t k;
val_port_st v;
- Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
+ memset(&v, 0, sizeof(v));
getKeyForKtPort1(k);
- uint32_t max_rep_ct;
+
+ Kt_Port ktportobj;
+ uint32_t max_rep_ct(1);
vector<val_port_st_t> vect_val_port;
vector<key_port_t> vect_port_id;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_FAILED);
int ret = ktportobj.ReadBulkInternal(db_conn,&k,&v,(uint32_t)UNC_DT_STATE,max_rep_ct,vect_val_port,vect_port_id);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_GET);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_GET, ret);
}
/* ReadBulkInternal when DB is success */
-TEST_F(KtClassTest, ReadBulkInternal_Pos_04) {
-
+TEST_F(PortTest, ReadBulkInternal_Pos_04) {
key_port_t k;
val_port_st v;
- Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
+ memset(&v, 0, sizeof(v));
getKeyForKtPort1(k);
- uint32_t max_rep_ct;
+
+ Kt_Port ktportobj;
+ uint32_t max_rep_ct(1);
vector<val_port_st_t> vect_val_port;
vector<key_port_t> vect_port_id;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_SUCCESS);
int ret = ktportobj.ReadBulkInternal(db_conn,&k,&v,(uint32_t)UNC_DT_STATE,max_rep_ct,vect_val_port,vect_port_id);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
/* ReadBulkInternal when DB is success */
-TEST_F(KtClassTest, ReadBulkInternal_Pos_05) {
-
+TEST_F(PortTest, ReadBulkInternal_Pos_05) {
key_port_t k;
val_port_st v;
- Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
+ memset(&v, 0, sizeof(v));
getKeyForKtPort1(k);
+
+ Kt_Port ktportobj;
uint32_t max_rep_ct=0;
vector<val_port_st_t> vect_val_port;
vector<key_port_t> vect_port_id;
OdbcmConnectionHandler *db_conn =NULL;
int ret = ktportobj.ReadBulkInternal(db_conn,&k,&v,(uint32_t)UNC_DT_STATE,max_rep_ct,vect_val_port,vect_port_id);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
/*ReadPortValFromDB when it is other than READ operation */
-TEST_F(KtClassTest, ReadPortValFromDB_NoREAD_01) {
-
+TEST_F(PortTest, ReadPortValFromDB_NoREAD_01) {
key_port_t k;
val_port_st v;
Kt_Port ktportobj;
OdbcmConnectionHandler *db_conn =NULL;
int ret = ktportobj.ReadPortValFromDB(db_conn,&k,&v,(uint32_t)UNC_DT_STATE,operation_type,max_rep_ct,vect_val_port,vect_port_id);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
/*ReadPortValFromDB when there is no record in DB for GETONEROW */
-TEST_F(KtClassTest, ReadPortValFromDB_ReadNeg_02) {
-
+TEST_F(PortTest, ReadPortValFromDB_ReadNeg_02) {
key_port_t k;
val_port_st v;
Kt_Port ktportobj;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_RECORD_NOT_FOUND);
OdbcmConnectionHandler *db_conn =NULL;
int ret = ktportobj.ReadPortValFromDB(db_conn,&k,&v,(uint32_t)UNC_DT_STATE,operation_type,max_rep_ct,vect_val_port,vect_port_id);
- EXPECT_EQ(ret,UPPL_RC_ERR_NO_SUCH_INSTANCE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
}
/*ReadPortValFromDB when there is DB connection error for GETONEROW */
-TEST_F(KtClassTest, ReadPortValFromDB_ReadNeg_03) {
-
+TEST_F(PortTest, ReadPortValFromDB_ReadNeg_03) {
key_port_t k;
val_port_st v;
Kt_Port ktportobj;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_CONNECTION_ERROR);
OdbcmConnectionHandler *db_conn =NULL;
int ret = ktportobj.ReadPortValFromDB(db_conn,&k,&v,(uint32_t)UNC_DT_STATE,operation_type,max_rep_ct,vect_val_port,vect_port_id);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
/*ReadPortValFromDB when there is DB Failure for GETONEROW */
-TEST_F(KtClassTest, ReadPortValFromDB_ReadNeg_04) {
-
+TEST_F(PortTest, ReadPortValFromDB_ReadNeg_04) {
key_port_t k;
val_port_st v;
Kt_Port ktportobj;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_FAILED);
OdbcmConnectionHandler *db_conn =NULL;
int ret = ktportobj.ReadPortValFromDB(db_conn,&k,&v,(uint32_t)UNC_DT_STATE,operation_type,max_rep_ct,vect_val_port,vect_port_id);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_GET);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_GET, ret);
}
/*ReadPortValFromDB when there is DB Success for GETONEROW */
-TEST_F(KtClassTest, ReadPortValFromDB_ReadPOS_05) {
-
+TEST_F(PortTest, ReadPortValFromDB_ReadPOS_05) {
key_port_t k;
val_port_st v;
Kt_Port ktportobj;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
OdbcmConnectionHandler *db_conn =NULL;
int ret = ktportobj.ReadPortValFromDB(db_conn,&k,&v,(uint32_t)UNC_DT_STATE,operation_type,max_rep_ct,vect_val_port,vect_port_id);
- EXPECT_EQ(ret,ODBCM_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(ODBCM_RC_SUCCESS, ret);
}
/*ReadPortValFromDB when there is DB Failure for GETONEROW */
-TEST_F(KtClassTest, ReadPortValFromDB_ReadBulkNeg_06) {
-
+TEST_F(PortTest, ReadPortValFromDB_ReadBulkNeg_06) {
key_port_t k;
val_port_st v;
Kt_Port ktportobj;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_RECORD_NOT_FOUND);
OdbcmConnectionHandler *db_conn =NULL;
int ret = ktportobj.ReadPortValFromDB(db_conn,&k,&v,(uint32_t)UNC_DT_STATE,operation_type,max_rep_ct,vect_val_port,vect_port_id);
- EXPECT_EQ(ret,UPPL_RC_ERR_NO_SUCH_INSTANCE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
}
/*ReadPortValFromDB when there is DB connection error for GETBULKROWS */
-TEST_F(KtClassTest, ReadPortValFromDB_ReadBulkNeg_07) {
-
+TEST_F(PortTest, ReadPortValFromDB_ReadBulkNeg_07) {
key_port_t k;
val_port_st v;
Kt_Port ktportobj;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_CONNECTION_ERROR);
OdbcmConnectionHandler *db_conn =NULL;
int ret = ktportobj.ReadPortValFromDB(db_conn,&k,&v,(uint32_t)UNC_DT_STATE,operation_type,max_rep_ct,vect_val_port,vect_port_id);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
/*ReadPortValFromDB when there is DB Failure for GETBULKROWS */
-TEST_F(KtClassTest, ReadPortValFromDB_ReadBulkNeg_08) {
-
+TEST_F(PortTest, ReadPortValFromDB_ReadBulkNeg_08) {
key_port_t k;
val_port_st v;
Kt_Port ktportobj;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_FAILED);
OdbcmConnectionHandler *db_conn =NULL;
int ret = ktportobj.ReadPortValFromDB(db_conn,&k,&v,(uint32_t)UNC_DT_STATE,operation_type,max_rep_ct,vect_val_port,vect_port_id);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_GET);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_GET, ret);
}
/*ReadPortValFromDB when there is DB Success for GETBULKROWS */
-TEST_F(KtClassTest, ReadPortValFromDB_09_ReadBulkPos) {
-
+TEST_F(PortTest, ReadPortValFromDB_09_ReadBulkPos) {
key_port_t k;
val_port_st v;
Kt_Port ktportobj;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_SUCCESS);
OdbcmConnectionHandler *db_conn =NULL;
int ret = ktportobj.ReadPortValFromDB(db_conn,&k,&v,(uint32_t)UNC_DT_STATE,operation_type,max_rep_ct,vect_val_port,vect_port_id);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
/*ReadNeighbor when negative case of DB */
-TEST_F(KtClassTest, ReadNeighbor_Dbneg_01) {
-
+TEST_F(PortTest, ReadNeighbor_Dbneg_01) {
key_port_t k;
- val_port_st v;
- Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
getKeyForKtPort1(k);
+
+ Kt_Port ktportobj;
val_port_st_neighbor neighbor_obj;
OdbcmConnectionHandler *db_conn =NULL;
int ret = ktportobj.ReadNeighbor(db_conn,&k,&k,(uint32_t)UNC_DT_STATE,neighbor_obj);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_GET);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_GET, ret);
}
/*ReadNeighbor when Positive case of DB */
-TEST_F(KtClassTest, ReadNeighbor_Dbneg_02) {
-
+TEST_F(PortTest, ReadNeighbor_Dbneg_02) {
key_port_t k;
val_port_st v;
- Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
getKeyForKtPort1(k);
+
+ Kt_Port ktportobj;
val_port_st_neighbor neighbor_obj;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
int ret = ktportobj.ReadNeighbor(db_conn,&k,&v,(uint32_t)UNC_DT_STATE,neighbor_obj);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
/*ReadNeighbor when there is no record in DB */
-TEST_F(KtClassTest, ReadNeighbor_Dbneg_03) {
-
+TEST_F(PortTest, ReadNeighbor_Dbneg_03) {
key_port_t k;
val_port_st v;
- Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
getKeyForKtPort1(k);
+
+ Kt_Port ktportobj;
val_port_st_neighbor neighbor_obj;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_RECORD_NOT_FOUND);
int ret = ktportobj.ReadNeighbor(db_conn,&k,&v,(uint32_t)UNC_DT_STATE,neighbor_obj);
- EXPECT_EQ(ret,UPPL_RC_ERR_NO_SUCH_INSTANCE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
}
/*ReadNeighbor when there is Connection error in DB */
-TEST_F(KtClassTest, ReadNeighbor_Dbneg_04) {
-
+TEST_F(PortTest, ReadNeighbor_Dbneg_04) {
key_port_t k;
val_port_st v;
- Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
getKeyForKtPort1(k);
+
+ Kt_Port ktportobj;
val_port_st_neighbor neighbor_obj;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_CONNECTION_ERROR);
int ret = ktportobj.ReadNeighbor(db_conn,&k,&v,(uint32_t)UNC_DT_STATE,neighbor_obj);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
/*ReadNeighbor when DB fails */
-TEST_F(KtClassTest, ReadNeighbor_Dbneg_05) {
-
+TEST_F(PortTest, ReadNeighbor_Dbneg_05) {
key_port_t k;
val_port_st v;
- Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
getKeyForKtPort1(k);
+
+ Kt_Port ktportobj;
val_port_st_neighbor neighbor_obj;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_FAILED);
int ret = ktportobj.ReadNeighbor(db_conn,&k,&v,(uint32_t)UNC_DT_STATE,neighbor_obj);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_GET);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_GET, ret);
}
/*PopulateSchemaForValidFlag when UPDATEONEROW is Success */
-TEST_F(KtClassTest, PopulateSchemaForValidFlag_pos_01) {
-
+TEST_F(PortTest, PopulateSchemaForValidFlag_pos_01) {
key_port_t k;
val_port_st v;
- Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
+ memset(&v, 0, sizeof(v));
getKeyForKtPort1(k);
- string valid_new = "asss";
+
+ Kt_Port ktportobj;
+ string valid_new = "123456789ab";
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
int ret = ktportobj.PopulateSchemaForValidFlag(db_conn,&k,&v,valid_new,(uint32_t)UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
/*PopulateSchemaForValidFlag when UPDATEONEROW is failed */
-TEST_F(KtClassTest, PopulateSchemaForValidFlag_neg_02) {
-
+TEST_F(PortTest, PopulateSchemaForValidFlag_neg_02) {
key_port_t k;
val_port_st v;
- Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
+ memset(&v, 0, sizeof(v));
getKeyForKtPort1(k);
+
+ Kt_Port ktportobj;
string valid_new = "asss";
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_FAILED);
int ret = ktportobj.PopulateSchemaForValidFlag(db_conn,&k,&v,valid_new,(uint32_t)UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_UPDATE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_UPDATE, ret);
}
/*UpdatePortValidFlag when UPDATEONEROW is failed */
-TEST_F(KtClassTest, UpdatePortValidFlag_01) {
-
+TEST_F(PortTest, UpdatePortValidFlag_01) {
key_port_t k;
val_port_st v;
- Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
+ memset(&v, 0, sizeof(v));
getKeyForKtPort1(k);
+
+ Kt_Port ktportobj;
string valid_new = "asss";
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_FAILED);
int ret = ktportobj.PopulateSchemaForValidFlag(db_conn,&k,&v,valid_new,(uint32_t)UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_UPDATE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_UPDATE, ret);
}
/*GetAlarmStatus function when GETONEROW is success */
-TEST_F(KtClassTest, GetAlarmStatus_sucess_01) {
+TEST_F(PortTest, GetAlarmStatus_sucess_01) {
key_port_t k;
+ getKeyForKtPort1(k);
+
Kt_Port ktportobj;
uint64_t alarm_status = 1;
- getKeyForKtPort1(k);
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
int ret = ktportobj.GetAlarmStatus(db_conn, UNC_DT_STATE, &k, alarm_status);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
/*GetAlarmStatus function when GETONEROW is failed */
-TEST_F(KtClassTest, GetAlarmStatus_sucess_02) {
+TEST_F(PortTest, GetAlarmStatus_sucess_02) {
key_port_t k;
+ getKeyForKtPort1(k);
+
Kt_Port ktportobj;
uint64_t alarm_status = 1;
- getKeyForKtPort1(k);
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_FAILED);
int ret = ktportobj.GetAlarmStatus(db_conn, UNC_DT_STATE, &k, alarm_status);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_GET);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_GET, ret);
}
+
/*HandleDriverAlarms function when GETONEROW and UPDATEONEROW is SUCCESS for UNC_DEFAULT_FLOW alarm */
-TEST_F(KtClassTest, HandleDriverAlarms_01) {
+TEST_F(PortTest, HandleDriverAlarms_01) {
key_port_t k;
val_port_st v;
+ getKeyForKtPort1(k);
+
Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
uint32_t alarm_type = UNC_DEFAULT_FLOW;
uint32_t oper_type = UNC_OP_CREATE;
OdbcmConnectionHandler *db_conn =NULL;
- getKeyForKtPort1(k);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
int ret = ktportobj.HandleDriverAlarms(db_conn, UNC_DT_STATE, alarm_type, oper_type, &k,&v);
- EXPECT_EQ(ret, UPPL_RC_ERR_IPC_WRITE_ERROR);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
/*HandleDriverAlarms function when GETONEROW and UPDATEONEROW is SUCCESS for UNC_DEFAULT_FLOW alarm */
-TEST_F(KtClassTest, HandleDriverAlarms_02) {
+TEST_F(PortTest, HandleDriverAlarms_02) {
key_port_t k;
val_port_st v;
+ getKeyForKtPort1(k);
+
Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
uint32_t alarm_type = UNC_DEFAULT_FLOW;
uint32_t oper_type = UNC_OP_DELETE;
OdbcmConnectionHandler *db_conn =NULL;
- getKeyForKtPort1(k);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
int ret = ktportobj.HandleDriverAlarms(db_conn, UNC_DT_STATE, alarm_type, oper_type, &k,&v);
- EXPECT_EQ(ret, UPPL_RC_ERR_IPC_WRITE_ERROR);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
/*HandleDriverAlarms function when GETONEROW and UPDATEONEROW is SUCCESS for UNC_PORT_DIRECTION alarm */
-TEST_F(KtClassTest, HandleDriverAlarms_03) {
+TEST_F(PortTest, HandleDriverAlarms_03) {
key_port_t k;
val_port_st v;
+ getKeyForKtPort1(k);
+
Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
uint32_t alarm_type = UNC_PORT_DIRECTION;
uint32_t oper_type = UNC_OP_DELETE;
OdbcmConnectionHandler *db_conn =NULL;
- getKeyForKtPort1(k);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
int ret = ktportobj.HandleDriverAlarms(db_conn, UNC_DT_STATE, alarm_type, oper_type, &k,&v);
- EXPECT_EQ(ret, UPPL_RC_ERR_IPC_WRITE_ERROR);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
/*HandleDriverAlarms function when GETONEROW and UPDATEONEROW is SUCCESS for UNC_PORT_DIRECTION alarm */
-TEST_F(KtClassTest, HandleDriverAlarms_04) {
+TEST_F(PortTest, HandleDriverAlarms_04) {
key_port_t k;
val_port_st v;
+ getKeyForKtPort1(k);
+
Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
uint32_t alarm_type = UNC_PORT_DIRECTION;
uint32_t oper_type = UNC_OP_CREATE;
OdbcmConnectionHandler *db_conn =NULL;
- getKeyForKtPort1(k);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
int ret = ktportobj.HandleDriverAlarms(db_conn, UNC_DT_STATE, alarm_type, oper_type, &k,&v);
- EXPECT_EQ(ret, UPPL_RC_ERR_IPC_WRITE_ERROR);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
/*HandleDriverAlarms function when GETONEROW and UPDATEONEROW is SUCCESS for UNC_PORT_CONGES alarm */
-TEST_F(KtClassTest, HandleDriverAlarms_05) {
+TEST_F(PortTest, HandleDriverAlarms_05) {
key_port_t k;
val_port_st v;
+ getKeyForKtPort1(k);
+
Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
uint32_t alarm_type = UNC_PORT_CONGES;
uint32_t oper_type = UNC_OP_CREATE;
OdbcmConnectionHandler *db_conn =NULL;
- getKeyForKtPort1(k);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
int ret = ktportobj.HandleDriverAlarms(db_conn, UNC_DT_STATE, alarm_type, oper_type, &k,&v);
- EXPECT_EQ(ret, UPPL_RC_ERR_IPC_WRITE_ERROR);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
/*HandleDriverAlarms function when GETONEROW and UPDATEONEROW is SUCCESS for UNC_PORT_CONGES alarm */
-TEST_F(KtClassTest, HandleDriverAlarms_06) {
+TEST_F(PortTest, HandleDriverAlarms_06) {
key_port_t k;
val_port_st v;
+ getKeyForKtPort1(k);
+
Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
uint32_t alarm_type = UNC_PORT_CONGES;
uint32_t oper_type = UNC_OP_DELETE;
OdbcmConnectionHandler *db_conn =NULL;
- getKeyForKtPort1(k);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
int ret = ktportobj.HandleDriverAlarms(db_conn, UNC_DT_STATE, alarm_type, oper_type, &k,&v);
- EXPECT_EQ(ret, UPPL_RC_ERR_IPC_WRITE_ERROR);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
/*HandleDriverAlarms function when GETONEROW is Failed and UPDATEONEROW is SUCCESS for UNC_PORT_DIRECTION alarm */
-TEST_F(KtClassTest, HandleDriverAlarms_07) {
+TEST_F(PortTest, HandleDriverAlarms_07) {
key_port_t k;
val_port_st v;
+ getKeyForKtPort1(k);
+
Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
uint32_t alarm_type = UNC_PORT_DIRECTION;
uint32_t oper_type = UNC_OP_CREATE;
OdbcmConnectionHandler *db_conn =NULL;
- getKeyForKtPort1(k);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_FAILED);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
int ret = ktportobj.HandleDriverAlarms(db_conn, UNC_DT_STATE, alarm_type, oper_type, &k,&v);
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
/*HandleDriverAlarms function when GETONEROW is Failed and UPDATEONEROW is SUCCESS for UNC_PORT_DIRECTION alarm */
-TEST_F(KtClassTest, HandleDriverAlarms_08) {
+TEST_F(PortTest, HandleDriverAlarms_08) {
key_port_t k;
val_port_st v;
+ getKeyForKtPort1(k);
+
Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
uint32_t alarm_type = UNC_PORT_DIRECTION;
uint32_t oper_type = UNC_OP_DELETE;
OdbcmConnectionHandler *db_conn =NULL;
- getKeyForKtPort1(k);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_FAILED);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
int ret = ktportobj.HandleDriverAlarms(db_conn, UNC_DT_STATE, alarm_type, oper_type, &k,&v);
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
/*HandleDriverAlarms function when GETONEROW is Failed and UPDATEONEROW is SUCCESS for UNC_DEFAULT_FLOW alarm */
-TEST_F(KtClassTest, HandleDriverAlarms_09) {
+TEST_F(PortTest, HandleDriverAlarms_09) {
key_port_t k;
val_port_st v;
+ getKeyForKtPort1(k);
+
Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
uint32_t alarm_type = UNC_DEFAULT_FLOW;
uint32_t oper_type = UNC_OP_CREATE;
OdbcmConnectionHandler *db_conn =NULL;
- getKeyForKtPort1(k);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_FAILED);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
int ret = ktportobj.HandleDriverAlarms(db_conn, UNC_DT_STATE, alarm_type, oper_type, &k,&v);
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
/*HandleDriverAlarms function when GETONEROW is Failed and UPDATEONEROW is SUCCESS for UNC_DEFAULT_FLOW alarm */
-TEST_F(KtClassTest, HandleDriverAlarms_10) {
+TEST_F(PortTest, HandleDriverAlarms_10) {
key_port_t k;
val_port_st v;
+ getKeyForKtPort1(k);
+
Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
uint32_t alarm_type = UNC_DEFAULT_FLOW;
uint32_t oper_type = UNC_OP_DELETE;
OdbcmConnectionHandler *db_conn =NULL;
- getKeyForKtPort1(k);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_FAILED);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
int ret = ktportobj.HandleDriverAlarms(db_conn, UNC_DT_STATE, alarm_type, oper_type, &k,&v);
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
/*HandleDriverAlarms function when GETONEROW is Failed and UPDATEONEROW is SUCCESS for UNC_PORT_CONGES alarm */
-TEST_F(KtClassTest, HandleDriverAlarms_11) {
+TEST_F(PortTest, HandleDriverAlarms_11) {
key_port_t k;
val_port_st v;
+ getKeyForKtPort1(k);
+
Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
uint32_t alarm_type = UNC_PORT_CONGES;
uint32_t oper_type = UNC_OP_CREATE;
OdbcmConnectionHandler *db_conn =NULL;
- getKeyForKtPort1(k);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_FAILED);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
int ret = ktportobj.HandleDriverAlarms(db_conn, UNC_DT_STATE, alarm_type, oper_type, &k,&v);
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
/*HandleDriverAlarms function when GETONEROW is Failed and UPDATEONEROW is SUCCESS for UNC_PORT_CONGES alarm */
-TEST_F(KtClassTest, HandleDriverAlarms_12) {
+TEST_F(PortTest, HandleDriverAlarms_12) {
key_port_t k;
val_port_st v;
+ getKeyForKtPort1(k);
+
Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
uint32_t alarm_type = UNC_PORT_CONGES;
uint32_t oper_type = UNC_OP_DELETE;
OdbcmConnectionHandler *db_conn =NULL;
- getKeyForKtPort1(k);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_FAILED);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
int ret = ktportobj.HandleDriverAlarms(db_conn, UNC_DT_STATE, alarm_type, oper_type, &k,&v);
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
/*HandleDriverAlarms function when GETONEROW and UPDATEONEROW is SUCCESS for UNC_PORT_CONGES alarm */
-TEST_F(KtClassTest, HandleDriverAlarms_13) {
+TEST_F(PortTest, HandleDriverAlarms_13) {
key_port_t k;
val_port_st v;
+ getKeyForKtPort1(k);
+
Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
uint32_t alarm_type = UNC_PORT_CONGES;
uint32_t oper_type = UNC_OP_DELETE;
OdbcmConnectionHandler *db_conn =NULL;
- getKeyForKtPort1(k);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
int ret = ktportobj.HandleDriverAlarms(db_conn, UNC_DT_IMPORT, alarm_type, oper_type, &k,&v);
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
/*HandleDriverAlarms function when GETONEROW and UPDATEONEROW is SUCCESS for UNC_PORT_CONGES alarm */
-TEST_F(KtClassTest, HandleDriverAlarms_14) {
+TEST_F(PortTest, HandleDriverAlarms_14) {
key_port_t k;
val_port_st v;
+ getKeyForKtPort1(k);
+
Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
uint32_t alarm_type = UNC_PORT_CONGES;
uint32_t oper_type = UNC_OP_DELETE;
OdbcmConnectionHandler *db_conn =NULL;
- getKeyForKtPort1(k);
- unc::uppl::ODBCManager::clearStubData();
ServerSession sess;
- ServerSession::clearStubData();
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)0);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
int ret = ktportobj.HandleDriverAlarms(db_conn, UNC_DT_STATE, alarm_type, oper_type, &k,&v);
- EXPECT_EQ(ret, UPPL_RC_ERR_IPC_WRITE_ERROR);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
/* HandleDriverAlarms when GETONEROW and UPDATEONEROW are success */
-TEST_F(KtClassTest, HandleDriverAlarm_15) {
+TEST_F(PortTest, HandleDriverAlarm_15) {
key_port_t k;
val_port_st v;
+ getKeyForKtPort1(k);
+
Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
uint32_t alarm_type = UNC_PORT_CONGES;
uint32_t oper_type = UNC_OP_DELETE;
OdbcmConnectionHandler *db_conn =NULL;
- getKeyForKtPort1(k);
- unc::uppl::ODBCManager::clearStubData();
ServerSession sess;
sess.stub_setAddOutput((uint32_t)UNC_OP_UPDATE);
sess.stub_setAddOutput((uint32_t)UNC_DT_STATE);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
int ret = ktportobj.HandleDriverAlarms(db_conn, UNC_DT_STATE, alarm_type, oper_type, &k,&v);
- EXPECT_EQ(ret, UPPL_RC_FAILURE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_FAILURE, ret);
}
/*SubDomainOperStatusHandling when GETBULKROWS is success*/
-TEST_F(KtClassTest, SubDomainOperStatusHandling_Dbneg_01) {
- key_port_t k;
+TEST_F(PortTest, SubDomainOperStatusHandling_Dbneg_01) {
val_port_st v;
Kt_Port ktportobj;
memset(v.valid, '\0', sizeof(v.valid));
string controller_name = "Controller1";
string switch_id = "switch id1";
string physical_port_id = "Port1";
- uint32_t oper_type = UNC_OP_READ;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_SUCCESS);
int ret = ktportobj.SubDomainOperStatusHandling(db_conn, UNC_DT_STATE, controller_name, switch_id, physical_port_id);
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
/*SubDomainOperStatusHandling when GETBULKROWS is failed */
-TEST_F(KtClassTest, SubDomainOperStatusHandling_Dbneg_02) {
- key_port_t k;
+TEST_F(PortTest, SubDomainOperStatusHandling_Dbneg_02) {
val_port_st v;
Kt_Port ktportobj;
memset(v.valid, '\0', sizeof(v.valid));
string controller_name = "Controller1";
string switch_id = "switch id1";
string physical_port_id = "Port1";
- uint32_t oper_type = UNC_OP_READ;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_FAILED);
int ret = ktportobj.SubDomainOperStatusHandling(db_conn, UNC_DT_STATE, controller_name, switch_id, physical_port_id);
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
/*NotifyOperStatus when GETBULKROWS is failed */
-TEST_F(KtClassTest, NotifyOperStatus_01) {
+TEST_F(PortTest, NotifyOperStatus_01) {
key_port_t k;
val_port_st v;
+ getKeyForKtPort1(k);
+
vector<OperStatusHolder> ref_oper_status;
Kt_Port ktportobj;
- memset(v.valid, '\0', sizeof(v.valid));
- memset(v.port.valid, '\0', sizeof(v.port.valid));
- getKeyForKtPort1(k);
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_FAILED);
int ret = ktportobj.NotifyOperStatus(db_conn, UNC_DT_STATE, &k, &v, ref_oper_status);
- EXPECT_EQ(ret, UPPL_RC_ERR_DB_ACCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
+
/*GetPortValStructure function calling */
-TEST_F(KtClassTest, GetPortValStructure_01) {
+TEST_F(PortTest, GetPortValStructure_01) {
key_port_t k;
- val_port_st_t *obj_val_port;
- val_port_st_t *val_port_valid_st;
+ getKeyForKtPort1(k);
+
+ val_port_st_t *obj_val_port(NULL);
+ val_port_st_t *val_port_valid_st(NULL);
vector<TableAttrSchema> vect_table_attr_schema;
vector<string> vect_prim_keys;
uint8_t operation_type=UNC_OP_UPDATE;
stringstream valid;
Kt_Port ktportobj;
- getKeyForKtPort1(k);
OdbcmConnectionHandler *db_conn =NULL;
int ret = UPPL_RC_SUCCESS;
ktportobj.GetPortValStructure(db_conn, obj_val_port,vect_table_attr_schema, vect_prim_keys,
operation_type, val_port_valid_st,valid);
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
/* UpdatePortValidFlag when there is no record in DB*/
-TEST_F(KtClassTest, UpdatePortValidFlag_DbNeg_01) {
- key_port_t *k = new key_port_t;
- val_port_t *v = new val_port_t;
+TEST_F(PortTest, UpdatePortValidFlag_DbNeg_01) {
+ key_port_t k;
+ val_port_t v;
+ memset(&k, 0, sizeof(k));
+ memset(&v, 0, sizeof(v));
+
Kt_Port ktportobj;
val_port_st_t v_st;
+ memset(&v_st, 0, sizeof(v_st));
unc_keytype_validflag_t new_valid_val = UNC_VF_VALID;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_RECORD_NOT_FOUND);
- int ret = ktportobj.UpdatePortValidFlag(db_conn, k, v, v_st, new_valid_val, UNC_DT_STATE);
- EXPECT_EQ(ret, UPPL_RC_ERR_NO_SUCH_INSTANCE);
- unc::uppl::ODBCManager::clearStubData();
+ int ret = ktportobj.UpdatePortValidFlag(db_conn, &k, &v, v_st,
+ new_valid_val, UNC_DT_STATE);
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
}
/* UpdatePortValidFlag when GETONEROW is success */
-TEST_F(KtClassTest, UpdatePortValidFlag_Dbpos_02) {
- key_port_t *k = new key_port_t;
- val_port_t *v = new val_port_t;
+TEST_F(PortTest, UpdatePortValidFlag_Dbpos_02) {
+ key_port_t k;
+ val_port_t v;
+ memset(&k, 0, sizeof(k));
+ memset(&v, 0, sizeof(v));
+
Kt_Port ktportobj;
val_port_st_t v_st;
+ memset(&v_st, 0, sizeof(v_st));
unc_keytype_validflag_t new_valid_val = UNC_VF_VALID;
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
- int ret = ktportobj.UpdatePortValidFlag(db_conn, k, v, v_st, new_valid_val, UNC_DT_STATE);
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ int ret = ktportobj.UpdatePortValidFlag(db_conn, &k, &v, v_st,
+ new_valid_val, UNC_DT_STATE);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
/*UpdatePortValidFlag when GETONEROW is success */
-TEST_F(KtClassTest, UpdatePortValidFlag_NoFillValue_03) {
- key_port_t *k = new key_port_t;
- val_port_t *v = new val_port_t;
+TEST_F(PortTest, UpdatePortValidFlag_NoFillValue_03) {
+ key_port_t k;
+ val_port_t v;
+ memset(&k, 0, sizeof(k));
+ memset(&v, 0, sizeof(v));
+
Kt_Port ktportobj;
val_port_st_t v_st;
+ memset(&v_st, 0, sizeof(v_st));
- unc_keytype_validflag_t new_valid_val;
+ unc_keytype_validflag_t new_valid_val(UNC_VF_INVALID);
OdbcmConnectionHandler *db_conn =NULL;
unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
- int ret = ktportobj.UpdatePortValidFlag(db_conn, k, v, v_st, new_valid_val, UNC_DT_STATE);
- EXPECT_EQ(ret, UPPL_RC_ERR_DB_UPDATE);
- unc::uppl::ODBCManager::clearStubData();
+ int ret = ktportobj.UpdatePortValidFlag(db_conn, &k, &v, v_st,
+ new_valid_val, UNC_DT_STATE);
+ EXPECT_EQ(UPPL_RC_ERR_DB_UPDATE, ret);
}
- /*
- * Copyright (c) 2012-2013 NEC Corporation
- * All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this
- * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
- */
+/*
+ * Copyright (c) 2012-2013 NEC Corporation
+ * All rights reserved.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this
+ * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
+ */
#include <limits.h>
#include <gtest/gtest.h>
#include <pfcxx/ipc_client.hh>
#include <pfc/ipc_struct.h>
-
#include <stdio.h>
#include <sys/stat.h>
#include <sys/mman.h>
#include <pfc/iostream.h>
#include <pfc/ipc_client.h>
#include <pfc/ipc_pfcd.h>
-#include "physical_common_def.hh"
-#include "unc/uppl_common.h"
-#include "unc/keytype.h"
-#include "stub/ODBC/include/odbcm_mgr.hh"
-#include "itc_kt_base.hh"
-#include "itc_kt_root.hh"
-#include "itc_kt_controller.hh"
-#include "itc_kt_ctr_domain.hh"
-#include "itc_kt_switch.hh"
-#include "itc_kt_port.hh"
-#include "itc_kt_link.hh"
-#include "itc_kt_boundary.hh"
-#include "ipct_util.hh"
-#include "physicallayer.hh"
+#include <physical_common_def.hh>
+#include <unc/uppl_common.h>
+#include <unc/keytype.h>
+#include <odbcm_mgr.hh>
+#include <itc_kt_base.hh>
+#include <itc_kt_root.hh>
+#include <itc_kt_controller.hh>
+#include <itc_kt_ctr_domain.hh>
+#include <itc_kt_switch.hh>
+#include <itc_kt_port.hh>
+#include <itc_kt_link.hh>
+#include <itc_kt_boundary.hh>
+#include <ipct_util.hh>
+#include <physicallayer.hh>
#include "PhysicalLayerStub.hh"
-#include "itc_read_request.hh"
+#include <itc_read_request.hh>
+#include "ut_util.hh"
using namespace pfc;
using namespace pfc::core;
using namespace pfc::core::ipc;
+using namespace unc::uppl;
+using namespace unc::uppl::test;
using namespace std;
-ClientSession *cli_sess = NULL;
-ClientSession *cli_sess_notify = NULL;
-pfc_ipcid_t service = UPPL_SVC_READREQ;
-class KtClassTest : public testing::Test {
- protected:
- virtual void SetUp() {
- if(cli_sess == NULL) {
- pfc_ipcconn_t connp = 0;
- int err = pfc_ipcclnt_altopen(UPPL_IPC_CHN_NAME, &connp);
- ASSERT_EQ(0, err);
- //ASSERT_TRUE(connp != 0);
- cli_sess = new ClientSession(connp, UPPL_IPC_SVC_NAME, service, err);
- ASSERT_EQ(0, err);
- connp = 0;
- err = pfc_ipcclnt_altopen("phynwd", &connp);
- ASSERT_EQ(0, err);
- //ASSERT_TRUE(connp!=0);
- cli_sess_notify = new ClientSession(connp, "sample2", 0, err);
-
- PhysicalLayerStub::loadphysicallayer();
- //ASSERT_EQ(0, err);
-
- }
- }
- virtual void TearDown() {
- if (cli_sess != NULL) {
- cli_sess->cancel();
- delete cli_sess;
- cli_sess = NULL;
- }
- if (cli_sess_notify != NULL) {
- cli_sess_notify->cancel();
- delete cli_sess_notify;
- cli_sess_notify = NULL;
- }
- }
-
+class SwitchTest
+ : public UpplTestEnv
+{
};
+static char pkName1[] = "{0x10,0xbc}";
+static char pkName2[] = "controller1";
-char pkName1[] = "{0x10,0xbc}";
-char pkName2[] = "controller1";
-char pkName3[] = "switch_id2";
-char pkName4[] = "controller2";
-char pkName5[] = "switch_id3";
-char pkName6[] = "controller3";
-char pkName7[] = "";
-char pkName8[]= "NotExisting";
-
-void getKeyForKtSwitch1(key_switch_t& k) {
- memset(k.switch_id, '\0', 256);
- memcpy(k.switch_id, pkName1, strlen(pkName1));
- memset(k.ctr_key.controller_name, '\0', 32);
- memcpy(k.ctr_key.controller_name, pkName2, strlen(pkName2));
+static void getKeyForKtSwitch1(key_switch_t& k) {
+ strncpy(reinterpret_cast<char *>(k.switch_id), pkName1, sizeof(k.switch_id));
+ strncpy(reinterpret_cast<char *>(k.ctr_key.controller_name), pkName2,
+ sizeof(k.ctr_key.controller_name));
}
-void getValForKtSwitch1(val_switch_st_t& v) {
+static void getValForKtSwitch1(val_switch_t& v, bool zero) {
+ if (zero) {
+ memset(&v, 0, sizeof(v));
+ }
+
// uint8_t description[128]
- memset(v.switch_val.description, '\0', 32);
- memcpy(v.switch_val.description,
- "switch description",
- strlen("switch description"));
+ pfc_strlcpy(reinterpret_cast<char *>(v.description), "switch description",
+ sizeof(v.description));
// uint8_t model[16]
- memset(v.switch_val.model, '\0', 16);
- memcpy(v.switch_val.model,
- "switch model",
- strlen("switch model"));
-
+ pfc_strlcpy(reinterpret_cast<char *>(v.model), "switch model",
+ sizeof(v.model));
string ip_add = "10.100.12.34";
inet_pton(AF_INET,
(const char *)ip_add.c_str(),
- &v.switch_val.ip_address.s_addr);
+ &v.ip_address.s_addr);
string ipv6_add = "";
inet_pton(AF_INET6, (const char *)ipv6_add.c_str(),
- &v.switch_val.ipv6_address.s6_addr);
+ &v.ipv6_address.s6_addr);
// uint8_t admin_status
- v.switch_val.admin_status = 0;
+ v.admin_status = 0;
// uint8_t domain_name[32]
- memset(v.switch_val.domain_name, '\0', 32);
- memcpy(v.switch_val.domain_name, "domain_name", strlen("domain_name"));
+ pfc_strlcpy(reinterpret_cast<char *>(v.domain_name), "domain_name",
+ sizeof(v.domain_name));
+}
- // uint8_t oper_status
- v.oper_status = 0;
+static inline void getValForKtSwitch1(val_switch_t& v) {
+ getValForKtSwitch1(v, true);
+}
+
+static void getValForKtSwitch1(val_switch_st_t& v) {
+ memset(&v, 0, sizeof(v));
+ getValForKtSwitch1(v.switch_val, false);
// uint8_t manufacturer
- memset(v.manufacturer, '\0' , 256);
- memcpy(v.manufacturer, "NEC CORP", strlen("NEC CORP"));
+ pfc_strlcpy(reinterpret_cast<char *>(v.manufacturer), "NEC CORP",
+ sizeof(v.manufacturer));
// uint8_t hardware
- memset(v.hardware, '\0', 256);
- memcpy(v.hardware, "HW", strlen("HW"));
+ pfc_strlcpy(reinterpret_cast<char *>(v.hardware), "HW", sizeof(v.hardware));
// uint8_t software
- memset(v.software, '\0', 256);
- memcpy(v.software, "SW", strlen("SW"));
+ pfc_strlcpy(reinterpret_cast<char *>(v.software), "SW", sizeof(v.software));
// uint64_t alarms_status
v.alarms_status = 0x01;
-
- // uint8_t valid[6];
- memset(v.valid, '\0', 7);
}
-void getReqHeader(physical_request_header& rh,
- unc_keytype_operation_t opern,
- unc_keytype_datatype_t dtype) {
+
+static void getReqHeader(physical_request_header& rh,
+ unc_keytype_operation_t opern,
+ unc_keytype_datatype_t dtype) {
rh.client_sess_id = 1;
rh.config_id = 1;
rh.operation = opern;
/********TEST CASES***************/
//Validating Key:ControllerId Not found, Operation:UNC_OP_CREATE
-TEST_F(KtClassTest, PerformSyntxCheck_controllerId_notFound_01) {
-key_switch_t k;
-val_switch_st_t v;
-Kt_Switch KtSwitchObj;
-physical_request_header rh;
-char pkName1[] = "{0x10,0xbc}";
-memset(k.ctr_key.controller_name, '\0', 32);
-memset(k.switch_id, '\0', 256);
-memcpy(k.switch_id, pkName1, strlen(pkName1));
-uint32_t operation = UNC_OP_CREATE;
-OdbcmConnectionHandler *db_conn =NULL;
-int ret = KtSwitchObj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
-EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SYNTAX);
+TEST_F(SwitchTest, PerformSyntxCheck_controllerId_notFound_01) {
+ key_switch_t k;
+ val_switch_st_t v;
+ Kt_Switch KtSwitchObj;
+ char pkName1[] = "{0x10,0xbc}";
+ memset(k.ctr_key.controller_name, '\0', 32);
+ memset(k.switch_id, '\0', 256);
+ memcpy(k.switch_id, pkName1, strlen(pkName1));
+ uint32_t operation = UNC_OP_CREATE;
+ OdbcmConnectionHandler *db_conn =NULL;
+ int ret = KtSwitchObj.PerformSyntaxValidation(db_conn, &k, &v,
+ operation,UNC_DT_STATE);
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SYNTAX, ret);
}
//Validating Key:ControllerId Not found, Operation:UNC_OP_UPDATE
-TEST_F(KtClassTest, PerformSyntxCheck_controllerId_notFound_02) {
-key_switch_t k;
-val_switch_st_t v;
-Kt_Switch KtSwitchObj;
-physical_request_header rh;
-char pkName1[] = "{0x10,0xbc}";
-memset(k.ctr_key.controller_name, '\0', 32);
-memset(k.switch_id, '\0', 256);
-memcpy(k.switch_id, pkName1, strlen(pkName1));
-getReqHeader(rh, UNC_OP_READ_SIBLING_COUNT, UNC_DT_STATE);
-rh.key_type = UNC_KT_SWITCH;
-uint32_t operation = UNC_OP_UPDATE;
-OdbcmConnectionHandler *db_conn =NULL;
-int ret = KtSwitchObj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
-EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SYNTAX);
+TEST_F(SwitchTest, PerformSyntxCheck_controllerId_notFound_02) {
+ key_switch_t k;
+ val_switch_st_t v;
+ Kt_Switch KtSwitchObj;
+ physical_request_header rh;
+ char pkName1[] = "{0x10,0xbc}";
+ memset(k.ctr_key.controller_name, '\0', 32);
+ memset(k.switch_id, '\0', 256);
+ memcpy(k.switch_id, pkName1, strlen(pkName1));
+ getReqHeader(rh, UNC_OP_READ_SIBLING_COUNT, UNC_DT_STATE);
+ rh.key_type = UNC_KT_SWITCH;
+ uint32_t operation = UNC_OP_UPDATE;
+ OdbcmConnectionHandler *db_conn =NULL;
+ int ret = KtSwitchObj.PerformSyntaxValidation(db_conn, &k, &v,
+ operation,UNC_DT_STATE);
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SYNTAX, ret);
}
//Validating Key:ControllerId Not found, Operation:UNC_OP_DELETE
-TEST_F(KtClassTest, PerformSyntxCheck_controllerId_notFound_03) {
-key_switch_t k;
-val_switch_st_t v;
-Kt_Switch KtSwitchObj;
-physical_request_header rh;
-char pkName1[] = "{0x10,0xbc}";
-memset(k.ctr_key.controller_name, '\0', 32);
-memset(k.switch_id, '\0', 256);
-memcpy(k.switch_id, pkName1, strlen(pkName1));
-getReqHeader(rh, UNC_OP_READ_SIBLING_COUNT, UNC_DT_STATE);
-rh.key_type = UNC_KT_SWITCH;
-uint32_t operation = UNC_OP_DELETE;
-OdbcmConnectionHandler *db_conn =NULL;
-int ret = KtSwitchObj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
-EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SYNTAX);
+TEST_F(SwitchTest, PerformSyntxCheck_controllerId_notFound_03) {
+ key_switch_t k;
+ val_switch_st_t v;
+ Kt_Switch KtSwitchObj;
+ physical_request_header rh;
+ char pkName1[] = "{0x10,0xbc}";
+ memset(k.ctr_key.controller_name, '\0', 32);
+ memset(k.switch_id, '\0', 256);
+ memcpy(k.switch_id, pkName1, strlen(pkName1));
+ getReqHeader(rh, UNC_OP_READ_SIBLING_COUNT, UNC_DT_STATE);
+ rh.key_type = UNC_KT_SWITCH;
+ uint32_t operation = UNC_OP_DELETE;
+ OdbcmConnectionHandler *db_conn =NULL;
+ int ret = KtSwitchObj.PerformSyntaxValidation(db_conn, &k, &v,
+ operation,UNC_DT_STATE);
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SYNTAX, ret);
}
//Validating Key:ControllerId Not found, Operation:UNC_OP_READ
-TEST_F(KtClassTest, PerformSyntxCheck_controllerId_notFound_04) {
-key_switch_t k;
-val_switch_st_t v;
-Kt_Switch KtSwitchObj;
-physical_request_header rh;
-char pkName1[] = "{0x10,0xbc}";
-memset(k.ctr_key.controller_name, '\0', 32);
-memset(k.switch_id, '\0', 256);
-memcpy(k.switch_id, pkName1, strlen(pkName1));
-getReqHeader(rh, UNC_OP_READ_SIBLING_COUNT, UNC_DT_STATE);
-rh.key_type = UNC_KT_SWITCH;
-uint32_t operation = UNC_OP_READ;
-OdbcmConnectionHandler *db_conn =NULL;
-int ret = KtSwitchObj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
-EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SYNTAX);
+TEST_F(SwitchTest, PerformSyntxCheck_controllerId_notFound_04) {
+ key_switch_t k;
+ val_switch_st_t v;
+ Kt_Switch KtSwitchObj;
+ physical_request_header rh;
+ char pkName1[] = "{0x10,0xbc}";
+ memset(k.ctr_key.controller_name, '\0', 32);
+ memset(k.switch_id, '\0', 256);
+ memcpy(k.switch_id, pkName1, strlen(pkName1));
+ getReqHeader(rh, UNC_OP_READ_SIBLING_COUNT, UNC_DT_STATE);
+ rh.key_type = UNC_KT_SWITCH;
+ uint32_t operation = UNC_OP_READ;
+ OdbcmConnectionHandler *db_conn =NULL;
+ int ret = KtSwitchObj.PerformSyntaxValidation(db_conn, &k, &v,
+ operation,UNC_DT_STATE);
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SYNTAX, ret);
}
//Validating Key:SwitchId_notFound, Operation:UNC_OP_CREATE
-TEST_F(KtClassTest, PerformSyntxCheck_SwitchId_notFound_01) {
-key_switch_t k;
-val_switch_st_t v;
-Kt_Switch KtSwitchObj;
-physical_request_header rh;
-char pkName2[] = "controller1";
-memset(k.ctr_key.controller_name, '\0', 32);
-memcpy(k.ctr_key.controller_name, pkName2, strlen(pkName2));
-memset(k.switch_id, '\0', 256);
-getReqHeader(rh, UNC_OP_READ_SIBLING_COUNT, UNC_DT_STATE);
-rh.key_type = UNC_KT_SWITCH;
-uint32_t operation = UNC_OP_CREATE;
-OdbcmConnectionHandler *db_conn =NULL;
-int ret = KtSwitchObj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
-EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SYNTAX);
+TEST_F(SwitchTest, PerformSyntxCheck_SwitchId_notFound_01) {
+ key_switch_t k;
+ val_switch_st_t v;
+ Kt_Switch KtSwitchObj;
+ physical_request_header rh;
+ char pkName2[] = "controller1";
+ memset(k.ctr_key.controller_name, '\0', 32);
+ memcpy(k.ctr_key.controller_name, pkName2, strlen(pkName2));
+ memset(k.switch_id, '\0', 256);
+ getReqHeader(rh, UNC_OP_READ_SIBLING_COUNT, UNC_DT_STATE);
+ rh.key_type = UNC_KT_SWITCH;
+ uint32_t operation = UNC_OP_CREATE;
+ OdbcmConnectionHandler *db_conn =NULL;
+ int ret = KtSwitchObj.PerformSyntaxValidation(db_conn, &k, &v,
+ operation,UNC_DT_STATE);
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SYNTAX, ret);
}
//Validating Key:SwitchId_notFound, Operation:UNC_OP_UPDATE
-TEST_F(KtClassTest, PerformSyntxCheck_SwitchId_notFound_02) {
-key_switch_t k;
-val_switch_st_t v;
-Kt_Switch KtSwitchObj;
-physical_request_header rh;
-char pkName2[] = "controller1";
-memset(k.ctr_key.controller_name, '\0', 32);
-memcpy(k.ctr_key.controller_name, pkName2, strlen(pkName2));
-memset(k.switch_id, '\0', 256);
-getReqHeader(rh, UNC_OP_READ_SIBLING_COUNT, UNC_DT_STATE);
-rh.key_type = UNC_KT_SWITCH;
-uint32_t operation = UNC_OP_UPDATE;
-OdbcmConnectionHandler *db_conn =NULL;
-int ret = KtSwitchObj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
-EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SYNTAX);
+TEST_F(SwitchTest, PerformSyntxCheck_SwitchId_notFound_02) {
+ key_switch_t k;
+ val_switch_st_t v;
+ Kt_Switch KtSwitchObj;
+ physical_request_header rh;
+ char pkName2[] = "controller1";
+ memset(k.ctr_key.controller_name, '\0', 32);
+ memcpy(k.ctr_key.controller_name, pkName2, strlen(pkName2));
+ memset(k.switch_id, '\0', 256);
+ getReqHeader(rh, UNC_OP_READ_SIBLING_COUNT, UNC_DT_STATE);
+ rh.key_type = UNC_KT_SWITCH;
+ uint32_t operation = UNC_OP_UPDATE;
+ OdbcmConnectionHandler *db_conn =NULL;
+ int ret = KtSwitchObj.PerformSyntaxValidation(db_conn, &k, &v,
+ operation,UNC_DT_STATE);
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SYNTAX, ret);
}
+
//Validating Key:SwitchId_notFound, Operation:UNC_OP_DELETE
-TEST_F(KtClassTest, PerformSyntxCheck_SwitchId_notFound_03) {
-key_switch_t k;
-val_switch_st_t v;
-Kt_Switch KtSwitchObj;
-physical_request_header rh;
-char pkName2[] = "controller1";
-memset(k.ctr_key.controller_name, '\0', 32);
-memcpy(k.ctr_key.controller_name, pkName2, strlen(pkName2));
-memset(k.switch_id, '\0', 256);
-getReqHeader(rh, UNC_OP_READ_SIBLING_COUNT, UNC_DT_STATE);
-rh.key_type = UNC_KT_SWITCH;
-uint32_t operation = UNC_OP_DELETE;
-OdbcmConnectionHandler *db_conn =NULL;
-int ret = KtSwitchObj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
-EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SYNTAX);
+TEST_F(SwitchTest, PerformSyntxCheck_SwitchId_notFound_03) {
+ key_switch_t k;
+ val_switch_st_t v;
+ Kt_Switch KtSwitchObj;
+ physical_request_header rh;
+ char pkName2[] = "controller1";
+ memset(k.ctr_key.controller_name, '\0', 32);
+ memcpy(k.ctr_key.controller_name, pkName2, strlen(pkName2));
+ memset(k.switch_id, '\0', 256);
+ getReqHeader(rh, UNC_OP_READ_SIBLING_COUNT, UNC_DT_STATE);
+ rh.key_type = UNC_KT_SWITCH;
+ uint32_t operation = UNC_OP_DELETE;
+ OdbcmConnectionHandler *db_conn =NULL;
+ int ret = KtSwitchObj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SYNTAX, ret);
}
//Validating Key:SwitchId_notFound, Operation:UNC_OP_READ
-TEST_F(KtClassTest, PerformSyntxCheck_SwitchId_notFound_04) {
-key_switch_t k;
-val_switch_st_t v;
-Kt_Switch KtSwitchObj;
-physical_request_header rh;
-char pkName2[] = "controller1";
-memset(k.ctr_key.controller_name, '\0', 32);
-memcpy(k.ctr_key.controller_name, pkName2, strlen(pkName2));
-memset(k.switch_id, '\0', 256);
-getReqHeader(rh, UNC_OP_READ_SIBLING_COUNT, UNC_DT_STATE);
-rh.key_type = UNC_KT_SWITCH;
-uint32_t operation = UNC_OP_READ;
-OdbcmConnectionHandler *db_conn =NULL;
-int ret = KtSwitchObj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
-EXPECT_EQ(ret,UPPL_RC_ERR_CFG_SYNTAX);
+TEST_F(SwitchTest, PerformSyntxCheck_SwitchId_notFound_04) {
+ key_switch_t k;
+ val_switch_st_t v;
+ Kt_Switch KtSwitchObj;
+ physical_request_header rh;
+ char pkName2[] = "controller1";
+ memset(k.ctr_key.controller_name, '\0', 32);
+ memcpy(k.ctr_key.controller_name, pkName2, strlen(pkName2));
+ memset(k.switch_id, '\0', 256);
+ getReqHeader(rh, UNC_OP_READ_SIBLING_COUNT, UNC_DT_STATE);
+ rh.key_type = UNC_KT_SWITCH;
+ uint32_t operation = UNC_OP_READ;
+ OdbcmConnectionHandler *db_conn =NULL;
+ int ret = KtSwitchObj.PerformSyntaxValidation(db_conn, &k, &v,
+ operation,UNC_DT_STATE);
+ EXPECT_EQ(UPPL_RC_ERR_CFG_SYNTAX, ret);
}
//Validation of key and value struct-Success
-TEST_F(KtClassTest, PerformSyntxCheck_ValStruct_success) {
+TEST_F(SwitchTest, PerformSyntxCheck_ValStruct_success) {
key_switch_t k;
- val_switch_st_t v;
+ val_switch_t v;
Kt_Switch KtSwitchObj;
getKeyForKtSwitch1(k);
getValForKtSwitch1(v);
uint32_t operation = UNC_OP_CREATE;
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtSwitchObj.PerformSyntaxValidation(db_conn,&k,&v,operation,UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
/*******IsKeyExists*************/
//No key given..Returning error
-TEST_F(KtClassTest, IskeyExists_NoKey) {
-key_switch_t k;
-val_switch_st_t v;
-Kt_Switch KtSwitchObj;
-physical_request_header rh;
-char pkName2[] = "controller1";
-memset(k.ctr_key.controller_name, '\0', 32);
-memset(k.switch_id, '\0', 256);
-getReqHeader(rh, UNC_OP_READ_SIBLING_COUNT, UNC_DT_STATE);
-rh.key_type = UNC_KT_SWITCH;
-uint32_t operation = UNC_OP_READ;
-vector<string> sw_vect_key_value;
-OdbcmConnectionHandler *db_conn =NULL;
-int ret = KtSwitchObj.IsKeyExists(db_conn,UNC_DT_STATE,sw_vect_key_value);
-EXPECT_EQ(ret,UPPL_RC_ERR_BAD_REQUEST);
+TEST_F(SwitchTest, IskeyExists_NoKey) {
+ key_switch_t k;
+ Kt_Switch KtSwitchObj;
+ physical_request_header rh;
+ memset(k.ctr_key.controller_name, '\0', 32);
+ memset(k.switch_id, '\0', 256);
+ getReqHeader(rh, UNC_OP_READ_SIBLING_COUNT, UNC_DT_STATE);
+ rh.key_type = UNC_KT_SWITCH;
+ vector<string> sw_vect_key_value;
+ OdbcmConnectionHandler *db_conn =NULL;
+ int ret = KtSwitchObj.IsKeyExists(db_conn,UNC_DT_STATE,sw_vect_key_value);
+ EXPECT_EQ(UPPL_RC_ERR_BAD_REQUEST, ret);
}
//DB connection not available,Returns Error
-TEST_F(KtClassTest, IskeyExists_Db_Connxn_Error) {
-key_switch_t k;
-val_switch_st_t v;
-Kt_Switch KtSwitchObj;
-physical_request_header rh;
-char pkName1[] = "{0x10,0xbc}";
-char pkName2[] = "controller1";
-memset(k.ctr_key.controller_name, '\0', 32);
-memcpy(k.ctr_key.controller_name, pkName2, strlen(pkName2));
-memset(k.switch_id, '\0', 256);
-memcpy(k.switch_id, pkName1, strlen(pkName1));
-getReqHeader(rh, UNC_OP_READ_SIBLING_COUNT, UNC_DT_STATE);
-rh.key_type = UNC_KT_SWITCH;
-uint32_t operation = UNC_OP_READ;
-vector<string> sw_vect_key_value;
-sw_vect_key_value.push_back(pkName1);
-sw_vect_key_value.push_back(pkName2);
-OdbcmConnectionHandler *db_conn =NULL;
-unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_CONNECTION_ERROR);
-int ret = KtSwitchObj.IsKeyExists(db_conn,UNC_DT_STATE,sw_vect_key_value);
-EXPECT_EQ(ret,UPPL_RC_ERR_DB_ACCESS);
-unc::uppl::ODBCManager::clearStubData();
+TEST_F(SwitchTest, IskeyExists_Db_Connxn_Error) {
+ key_switch_t k;
+ Kt_Switch KtSwitchObj;
+ physical_request_header rh;
+ char pkName1[] = "{0x10,0xbc}";
+ char pkName2[] = "controller1";
+ memset(k.ctr_key.controller_name, '\0', 32);
+ memcpy(k.ctr_key.controller_name, pkName2, strlen(pkName2));
+ memset(k.switch_id, '\0', 256);
+ memcpy(k.switch_id, pkName1, strlen(pkName1));
+ getReqHeader(rh, UNC_OP_READ_SIBLING_COUNT, UNC_DT_STATE);
+ rh.key_type = UNC_KT_SWITCH;
+ vector<string> sw_vect_key_value;
+ sw_vect_key_value.push_back(pkName1);
+ sw_vect_key_value.push_back(pkName2);
+ OdbcmConnectionHandler *db_conn =NULL;
+ ODBCManager::stub_setResultcode(ODBCManager::ISROWEXISTS,
+ ODBCM_RC_CONNECTION_ERROR);
+ int ret = KtSwitchObj.IsKeyExists(db_conn,UNC_DT_STATE,sw_vect_key_value);
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
//DB returned success for Row exists
-TEST_F(KtClassTest, IskeyExists_Success) {
+TEST_F(SwitchTest, IskeyExists_Success) {
key_switch_t k;
- val_switch_st_t v;
Kt_Switch KtSwitchObj;
physical_request_header rh;
char pkName1[] = "{0x10,0xbc}";
memcpy(k.switch_id, pkName1, strlen(pkName1));
getReqHeader(rh, UNC_OP_READ_SIBLING_COUNT, UNC_DT_STATE);
rh.key_type = UNC_KT_SWITCH;
- uint32_t operation = UNC_OP_READ;
vector<string> sw_vect_key_value;
sw_vect_key_value.push_back(pkName1);
sw_vect_key_value.push_back(pkName2);
OdbcmConnectionHandler *db_conn =NULL;
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);
+ ODBCManager::stub_setResultcode(ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);
int ret = KtSwitchObj.IsKeyExists(db_conn,UNC_DT_STATE,sw_vect_key_value);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
//DB Returned failure for IsRowExists
-TEST_F(KtClassTest, IskeyExists_Error) {
+TEST_F(SwitchTest, IskeyExists_Error) {
key_switch_t k;
- val_switch_st_t v;
Kt_Switch KtSwitchObj;
physical_request_header rh;
char pkName1[] = "{0x10,0xbc}";
memcpy(k.switch_id, pkName1, strlen(pkName1));
getReqHeader(rh, UNC_OP_READ_SIBLING_COUNT, UNC_DT_STATE);
rh.key_type = UNC_KT_SWITCH;
- uint32_t operation = UNC_OP_READ;
vector<string> sw_vect_key_value;
sw_vect_key_value.push_back(pkName1);
sw_vect_key_value.push_back(pkName2);
OdbcmConnectionHandler *db_conn =NULL;
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_FAILED);
+ ODBCManager::stub_setResultcode(ODBCManager::ISROWEXISTS, ODBCM_RC_FAILED);
int ret = KtSwitchObj.IsKeyExists(db_conn,UNC_DT_STATE,sw_vect_key_value);
- EXPECT_EQ(ret, UPPL_RC_ERR_NO_SUCH_INSTANCE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
}
/****DeleteKeyInstance****/
//Delete operation on unsupported DB: STARTUP
-TEST_F(KtClassTest, DeleteKeyInstance_UnsupportedDB_01) {
+TEST_F(SwitchTest, DeleteKeyInstance_UnsupportedDB_01) {
key_switch_t k;
- val_switch_st_t v;
Kt_Switch KtSwitchObj;
physical_request_header rh;
char pkName1[] = "{0x10,0xbc}";
getReqHeader(rh, UNC_OP_READ_SIBLING_COUNT, UNC_DT_STATE);
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtSwitchObj.DeleteKeyInstance(db_conn, &k, UNC_DT_STARTUP, UNC_KT_SWITCH);
- EXPECT_EQ(ret, UPPL_RC_ERR_OPERATION_NOT_ALLOWED);
+ EXPECT_EQ(UPPL_RC_ERR_OPERATION_NOT_ALLOWED, ret);
}
//Delete for unsupported DB UNC_DT_CANDIDATE
-TEST_F(KtClassTest, DeleteKeyInstance_UnsupportedDB_02) {
+TEST_F(SwitchTest, DeleteKeyInstance_UnsupportedDB_02) {
key_switch_t k;
- val_switch_st_t v;
Kt_Switch KtSwitchObj;
physical_request_header rh;
char pkName1[] = "{0x10,0xbc}";
getReqHeader(rh, UNC_OP_READ_SIBLING_COUNT, UNC_DT_STATE);
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtSwitchObj.DeleteKeyInstance(db_conn, &k, UNC_DT_CANDIDATE, UNC_KT_SWITCH);
- EXPECT_EQ(ret, UPPL_RC_ERR_OPERATION_NOT_ALLOWED);
+ EXPECT_EQ(UPPL_RC_ERR_OPERATION_NOT_ALLOWED, ret);
}
//Delete for unsupported DB UNC_DT_RUNNING
-TEST_F(KtClassTest, DeleteKeyInstance_UnsupportedDB_03) {
+TEST_F(SwitchTest, DeleteKeyInstance_UnsupportedDB_03) {
key_switch_t k;
- val_switch_st_t v;
Kt_Switch KtSwitchObj;
physical_request_header rh;
char pkName1[] = "{0x10,0xbc}";
getReqHeader(rh, UNC_OP_READ_SIBLING_COUNT, UNC_DT_STATE);
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtSwitchObj.DeleteKeyInstance(db_conn, &k, UNC_DT_RUNNING, UNC_KT_SWITCH);
- EXPECT_EQ(ret, UPPL_RC_ERR_OPERATION_NOT_ALLOWED);
+ EXPECT_EQ(UPPL_RC_ERR_OPERATION_NOT_ALLOWED, ret);
}
//Delete operation failed in switch common table
-TEST_F(KtClassTest, DeleteKeyInstance_Fail_In_Db) {
+TEST_F(SwitchTest, DeleteKeyInstance_Fail_In_Db) {
key_switch_t k;
memset(&k, 0, sizeof(key_switch_t));
Kt_Switch KtSwitchObj;
getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtSwitchObj.DeleteKeyInstance(db_conn, &k, UNC_DT_STATE, UNC_KT_SWITCH);
- EXPECT_EQ(ret, UPPL_RC_ERR_DB_DELETE);
+ EXPECT_EQ(UPPL_RC_ERR_DB_DELETE, ret);
}
//Delete operation failed due to DB connection not available
-TEST_F(KtClassTest, DeleteKeyInstance_Db_Conxn_Error) {
+TEST_F(SwitchTest, DeleteKeyInstance_Db_Conxn_Error) {
key_switch_t k;
memset(&k, 0, sizeof(key_switch_t));
Kt_Switch KtSwitchObj;
physical_request_header rh;
getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);
OdbcmConnectionHandler *db_conn =NULL;
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_CONNECTION_ERROR);
+ ODBCManager::stub_setResultcode(ODBCManager::DELETEONEROW, ODBCM_RC_CONNECTION_ERROR);
int ret = KtSwitchObj.DeleteKeyInstance(db_conn, &k, UNC_DT_STATE, UNC_KT_SWITCH);
- EXPECT_EQ(ret, UPPL_RC_ERR_DB_ACCESS);
- ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
//Row not Exixts to Delete
-TEST_F(KtClassTest, DeleteKeyInstance_RowNotExists) {
+TEST_F(SwitchTest, DeleteKeyInstance_RowNotExists) {
key_switch_t k;
memset(&k, 0, sizeof(key_switch_t));
Kt_Switch KtSwitchObj;
OdbcmConnectionHandler *db_conn =NULL;
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_ROW_NOT_EXISTS);
+ ODBCManager::stub_setResultcode(ODBCManager::DELETEONEROW, ODBCM_RC_ROW_NOT_EXISTS);
int ret = KtSwitchObj.DeleteKeyInstance(db_conn, &k, UNC_DT_STATE, UNC_KT_SWITCH);
- EXPECT_EQ(ret, UPPL_RC_ERR_DB_DELETE);
- ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_DELETE, ret);
}
//DElete operation Success
-TEST_F(KtClassTest, DeleteKeyInstance_Success) {
+TEST_F(SwitchTest, DeleteKeyInstance_Success) {
key_switch_t k;
memset(&k, 0, sizeof(key_switch_t));
Kt_Switch KtSwitchObj;
physical_request_header rh;
getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);
OdbcmConnectionHandler *db_conn =NULL;
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_SUCCESS);
+ ODBCManager::stub_setResultcode(ODBCManager::DELETEONEROW, ODBCM_RC_SUCCESS);
int ret = KtSwitchObj.DeleteKeyInstance(db_conn, &k, UNC_DT_STATE, UNC_KT_SWITCH);
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);
- ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
//Delete Child classess Success
-TEST_F(KtClassTest, DeleteKeyInstance_Child_Del) {
+TEST_F(SwitchTest, DeleteKeyInstance_Child_Del) {
key_logical_port_t k;
memset(&k, 0, sizeof(key_logical_port_t));
Kt_Switch KtSwitchObj;
physical_request_header rh;
getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);
OdbcmConnectionHandler *db_conn =NULL;
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_SUCCESS);
+ ODBCManager::stub_setResultcode(ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
+ ODBCManager::stub_setResultcode(ODBCManager::DELETEONEROW, ODBCM_RC_SUCCESS);
int ret = KtSwitchObj.DeleteKeyInstance(db_conn, &k, UNC_DT_STATE, UNC_KT_SWITCH);
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);
- ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
//Error Deleting port in DB
-TEST_F(KtClassTest, DeleteKeyInstance_Del_port) {
+TEST_F(SwitchTest, DeleteKeyInstance_Del_port) {
key_port_t k;
memset(&k, 0, sizeof(key_port_t));
- // getKeyForKtSwitch1(k);
Kt_Switch KtSwitchObj;
physical_request_header rh;
getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);
OdbcmConnectionHandler *db_conn =NULL;
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_FAILED);
+ ODBCManager::stub_setResultcode(ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
+ ODBCManager::stub_setResultcode(ODBCManager::DELETEONEROW, ODBCM_RC_FAILED);
int ret = KtSwitchObj.DeleteKeyInstance(db_conn, &k, UNC_DT_STATE, UNC_KT_SWITCH);
- EXPECT_EQ(ret, UPPL_RC_ERR_DB_DELETE);
- ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_DELETE, ret);
}
//No Child Instance exist to delete
-TEST_F(KtClassTest, DeleteKeyInstance_NoChildInstance) {
+TEST_F(SwitchTest, DeleteKeyInstance_NoChildInstance) {
key_switch_t k;
- memset(&k, 0, sizeof(key_port_t));
getKeyForKtSwitch1(k);
+
Kt_Switch KtSwitchObj;
physical_request_header rh;
getReqHeader(rh, UNC_OP_CREATE, UNC_DT_STATE);
OdbcmConnectionHandler *db_conn =NULL;
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::DELETEONEROW, ODBCM_RC_ROW_NOT_EXISTS);
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
+ ODBCManager::stub_setResultcode(ODBCManager::DELETEONEROW, ODBCM_RC_ROW_NOT_EXISTS);
+ ODBCManager::stub_setResultcode(ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
int ret = KtSwitchObj.DeleteKeyInstance(db_conn, &k, UNC_DT_STATE, UNC_KT_SWITCH);
- EXPECT_EQ(ret, UPPL_RC_ERR_DB_DELETE);
- ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_DELETE, ret);
}
/******PerformSemanticValidatin***********/
//Key for parent not exists
-TEST_F(KtClassTest, PerformSemanticValid_NoParentKey) {
+TEST_F(SwitchTest, PerformSemanticValid_NoParentKey) {
key_switch_t k;
val_switch_st_t v;
Kt_Switch KtSwitchObj;
- physical_request_header rh;
char pkName1[] = "{0x10,0xbc}";
char pkName2[] = "controller1";
memset(k.ctr_key.controller_name, '\0', 32);
uint32_t operation = UNC_OP_CREATE;
vector<string> sw_vect_key_value;
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_SUCCESS);
+ ODBCManager::stub_setResultcode(ODBCManager::ISROWEXISTS, ODBCM_RC_SUCCESS);
int ret = KtSwitchObj.PerformSemanticValidation(db_conn, &k, &v, operation, UNC_DT_STATE);
- EXPECT_EQ(ret, UPPL_RC_ERR_PARENT_DOES_NOT_EXIST);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_PARENT_DOES_NOT_EXIST, ret);
}
//Update operation not allowed
-TEST_F(KtClassTest, PerformSemanticValid_Upd_NotAllowed) {
+TEST_F(SwitchTest, PerformSemanticValid_Upd_NotAllowed) {
key_switch_t k;
val_switch_st_t v;
Kt_Switch KtSwitchObj;
- physical_request_header rh;
char pkName1[] = "{0x10,0xbc}";
char pkName2[] = "controller1";
memset(k.ctr_key.controller_name, '\0', 32);
sw_vect_key_value.push_back(pkName1);
sw_vect_key_value.push_back(pkName2);
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_CONNECTION_ERROR);
+ ODBCManager::stub_setResultcode(ODBCManager::ISROWEXISTS, ODBCM_RC_CONNECTION_ERROR);
int ret = KtSwitchObj.PerformSemanticValidation(db_conn, &k, &v, operation, UNC_DT_STATE);
- EXPECT_EQ(ret, UPPL_RC_ERR_NO_SUCH_INSTANCE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
}
//Delete operation not allowed
-TEST_F(KtClassTest, PerformSemanticValid_DEl_NotAllowed) {
+TEST_F(SwitchTest, PerformSemanticValid_DEl_NotAllowed) {
key_switch_t k;
val_switch_st_t v;
Kt_Switch KtSwitchObj;
- physical_request_header rh;
char pkName1[] = "{0x10,0xbc}";
char pkName2[] = "controller1";
memset(k.ctr_key.controller_name, '\0', 32);
sw_vect_key_value.push_back(pkName1);
sw_vect_key_value.push_back(pkName2);
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_CONNECTION_ERROR);
+ ODBCManager::stub_setResultcode(ODBCManager::ISROWEXISTS, ODBCM_RC_CONNECTION_ERROR);
int ret = KtSwitchObj.PerformSemanticValidation(db_conn, &k, &v, operation, UNC_DT_STATE);
- EXPECT_EQ(ret, UPPL_RC_ERR_NO_SUCH_INSTANCE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
}
//Read operation not allowed
-TEST_F(KtClassTest, PerformSemanticValid_Read_NotAllowed) {
+TEST_F(SwitchTest, PerformSemanticValid_Read_NotAllowed) {
key_switch_t k;
val_switch_st_t v;
Kt_Switch KtSwitchObj;
- physical_request_header rh;
char pkName1[] = "{0x10,0xbc}";
char pkName2[] = "controller1";
memset(k.ctr_key.controller_name, '\0', 32);
sw_vect_key_value.push_back(pkName1);
sw_vect_key_value.push_back(pkName2);
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_CONNECTION_ERROR);
+ ODBCManager::stub_setResultcode(ODBCManager::ISROWEXISTS, ODBCM_RC_CONNECTION_ERROR);
int ret = KtSwitchObj.PerformSemanticValidation(db_conn, &k, &v, operation, UNC_DT_STATE);
- EXPECT_EQ(ret, UPPL_RC_ERR_NO_SUCH_INSTANCE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
}
//create operation not allowed for Already
//existing key
-TEST_F(KtClassTest, PerformSemanticValid_CREATE_NotAllowed) {
+TEST_F(SwitchTest, PerformSemanticValid_CREATE_NotAllowed) {
key_switch_t k;
val_switch_st_t v;
Kt_Switch KtSwitchObj;
- physical_request_header rh;
char pkName1[] = "{0x10,0xbc}";
char pkName2[] = "controller1";
memset(k.ctr_key.controller_name, '\0', 32);
sw_vect_key_value.push_back(pkName1);
sw_vect_key_value.push_back(pkName2);
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);
+ ODBCManager::stub_setResultcode(ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);
int ret = KtSwitchObj.PerformSemanticValidation(db_conn, &k, &v, operation, UNC_DT_STATE);
- EXPECT_EQ(ret, UPPL_RC_ERR_INSTANCE_EXISTS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_INSTANCE_EXISTS, ret);
}
+
//PerformSemanticValid Success for update
-TEST_F(KtClassTest, PerformSemanticValid_Update_Success) {
+TEST_F(SwitchTest, PerformSemanticValid_Update_Success) {
key_switch_t k;
val_switch_st_t v;
Kt_Switch KtSwitchObj;
- physical_request_header rh;
char pkName1[] = "{0x10,0xbc}";
char pkName2[] = "controller1";
memset(k.ctr_key.controller_name, '\0', 32);
sw_vect_key_value.push_back(pkName1);
sw_vect_key_value.push_back(pkName2);
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);
+ ODBCManager::stub_setResultcode(ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);
int ret = KtSwitchObj.PerformSemanticValidation(db_conn, &k, &v, operation, UNC_DT_STATE);
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
//PerformSemanticValid Success for DELETE
-TEST_F(KtClassTest, PerformSemanticValid_Delete_Success) {
+TEST_F(SwitchTest, PerformSemanticValid_Delete_Success) {
key_switch_t k;
val_switch_st_t v;
Kt_Switch KtSwitchObj;
- physical_request_header rh;
char pkName1[] = "{0x10,0xbc}";
char pkName2[] = "controller1";
memset(k.ctr_key.controller_name, '\0', 32);
sw_vect_key_value.push_back(pkName1);
sw_vect_key_value.push_back(pkName2);
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);
+ ODBCManager::stub_setResultcode(ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);
int ret = KtSwitchObj.PerformSemanticValidation(db_conn, &k, &v, operation, UNC_DT_STATE);
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
//PerformSemanticValid Success for READ
-TEST_F(KtClassTest, PerformSemanticValid_Read_Success) {
+TEST_F(SwitchTest, PerformSemanticValid_Read_Success) {
key_switch_t k;
val_switch_st_t v;
Kt_Switch KtSwitchObj;
- physical_request_header rh;
char pkName1[] = "{0x10,0xbc}";
char pkName2[] = "controller1";
memset(k.ctr_key.controller_name, '\0', 32);
sw_vect_key_value.push_back(pkName1);
sw_vect_key_value.push_back(pkName2);
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);
+ ODBCManager::stub_setResultcode(ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);
int ret = KtSwitchObj.PerformSemanticValidation(db_conn, &k, &v, operation, UNC_DT_STATE);
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
//Parent Key Not exists, DB:UNC_DT_IMPORT
-TEST_F(KtClassTest, PerformSemanticValid_Create_In_IMPORT_Fail) {
+TEST_F(SwitchTest, PerformSemanticValid_Create_In_IMPORT_Fail) {
key_switch_t k;
val_switch_st_t v;
Kt_Switch KtSwitchObj;
- physical_request_header rh;
char pkName1[] = "{0x10,0xbc}";
char pkName2[] = "controller1";
memset(k.ctr_key.controller_name, '\0', 32);
uint32_t operation = UNC_OP_CREATE;
vector<string> sw_vect_key_value;
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_SUCCESS);
+ ODBCManager::stub_setResultcode(ODBCManager::ISROWEXISTS, ODBCM_RC_SUCCESS);
int ret = KtSwitchObj.PerformSemanticValidation(db_conn, &k, &v, operation, UNC_DT_IMPORT);
- EXPECT_EQ(ret, UPPL_RC_ERR_PARENT_DOES_NOT_EXIST);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_PARENT_DOES_NOT_EXIST, ret);
}
/******ReadSwtchValFromDb******/
//Operation Other Than Read -Success
-TEST_F(KtClassTest, ReadSwtchValFromDb_NoREAD) {
+TEST_F(SwitchTest, ReadSwtchValFromDb_NoREAD) {
key_switch_t k;
val_switch_st_t v;
Kt_Switch KtSwitchObj;
memset(k.ctr_key.controller_name, '\0', 32);
memset(k.switch_id, '\0', 256);
int ret = KtSwitchObj.ReadSwitchValFromDB(db_conn, &k, &v, UNC_DT_STATE, operation_type, max_rep_ct, vect_val_switch_st, vect_switch_id);
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
//No Record Found to read
-TEST_F(KtClassTest, ReadSwtchValFromDb_NoRecordFound) {
+TEST_F(SwitchTest, ReadSwtchValFromDb_NoRecordFound) {
key_switch_t k;
val_switch_st_t v;
+ memset(&k, 0, sizeof(k));
+ memset(&v, 0, sizeof(v));
+
Kt_Switch KtSwitchObj;
vector<val_switch_st_t> vect_val_switch_st;
vector<key_switch_t> vect_switch_id;
uint32_t operation_type = UNC_OP_READ;
uint32_t max_rep_ct;
OdbcmConnectionHandler *db_conn = NULL;
- memset(k.ctr_key.controller_name, '\0', 32);
- memset(k.switch_id, '\0', 256);
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_RECORD_NOT_FOUND);
+ ODBCManager::stub_setResultcode(ODBCManager::GETONEROW, ODBCM_RC_RECORD_NOT_FOUND);
int ret = KtSwitchObj.ReadSwitchValFromDB(db_conn, &k, &v, UNC_DT_STATE, operation_type, max_rep_ct, vect_val_switch_st, vect_switch_id);
- EXPECT_EQ(ret, UPPL_RC_ERR_NO_SUCH_INSTANCE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
}
//Db connxn error in Read
-TEST_F(KtClassTest, ReadSwtchValFromDb_DbConnxnError) {
+TEST_F(SwitchTest, ReadSwtchValFromDb_DbConnxnError) {
key_switch_t k;
val_switch_st_t v;
+ memset(&k, 0, sizeof(k));
+ memset(&v, 0, sizeof(v));
+
Kt_Switch KtSwitchObj;
vector<val_switch_st_t> vect_val_switch_st;
vector<key_switch_t> vect_switch_id;
OdbcmConnectionHandler *db_conn = NULL;
memset(k.ctr_key.controller_name, '\0', 32);
memset(k.switch_id, '\0', 256);
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_CONNECTION_ERROR);
+ ODBCManager::stub_setResultcode(ODBCManager::GETONEROW, ODBCM_RC_CONNECTION_ERROR);
int ret = KtSwitchObj.ReadSwitchValFromDB(db_conn, &k, &v, UNC_DT_STATE, operation_type, max_rep_ct, vect_val_switch_st, vect_switch_id);
- EXPECT_EQ(ret, UPPL_RC_ERR_DB_ACCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
//Read operation failed with DB
-TEST_F(KtClassTest, ReadSwtchValFromDb_Error_Db_Get) {
+TEST_F(SwitchTest, ReadSwtchValFromDb_Error_Db_Get) {
key_switch_t k;
val_switch_st_t v;
+ memset(&k, 0, sizeof(k));
+ memset(&v, 0, sizeof(v));
+
Kt_Switch KtSwitchObj;
vector<val_switch_st_t> vect_val_switch_st;
vector<key_switch_t> vect_switch_id;
uint32_t operation_type = UNC_OP_READ;
uint32_t max_rep_ct;
OdbcmConnectionHandler *db_conn = NULL;
- memset(k.ctr_key.controller_name, '\0', 32);
- memset(k.switch_id, '\0', 256);
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_FAILED);
+ ODBCManager::stub_setResultcode(ODBCManager::GETONEROW, ODBCM_RC_FAILED);
int ret = KtSwitchObj.ReadSwitchValFromDB(db_conn, &k, &v, UNC_DT_STATE, operation_type, max_rep_ct, vect_val_switch_st, vect_switch_id);
- EXPECT_EQ(ret, UPPL_RC_ERR_DB_GET);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_GET, ret);
}
//Read From DB Success
-TEST_F(KtClassTest, ReadSwtchValFromDb_READ_Success) {
+TEST_F(SwitchTest, ReadSwtchValFromDb_READ_Success) {
key_switch_t k;
val_switch_st_t v;
+ memset(&k, 0, sizeof(k));
+ memset(&v, 0, sizeof(v));
+
Kt_Switch KtSwitchObj;
vector<val_switch_st_t> vect_val_switch_st;
vector<key_switch_t> vect_switch_id;
uint32_t operation_type = UNC_OP_READ;
uint32_t max_rep_ct;
OdbcmConnectionHandler *db_conn = NULL;
- memset(k.ctr_key.controller_name, '\0', 32);
- memset(k.switch_id, '\0', 256);
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
+ ODBCManager::stub_setResultcode(ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
int ret = KtSwitchObj.ReadSwitchValFromDB(db_conn, &k, &v, UNC_DT_STATE, operation_type, max_rep_ct, vect_val_switch_st, vect_switch_id);
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
//ReadBulk operation failed
-TEST_F(KtClassTest, ReadSwtchValFromDb_READBULK_NoInstance) {
+TEST_F(SwitchTest, ReadSwtchValFromDb_READBULK_NoInstance) {
key_switch_t k;
val_switch_st_t v;
+ memset(&k, 0, sizeof(k));
+ memset(&v, 0, sizeof(v));
+
Kt_Switch KtSwitchObj;
vector<val_switch_st_t> vect_val_switch_st;
vector<key_switch_t> vect_switch_id;
uint32_t operation_type = UNC_OP_READ_BULK;
uint32_t max_rep_ct;
OdbcmConnectionHandler *db_conn = NULL;
- memset(k.ctr_key.controller_name, '\0', 32);
- memset(k.switch_id, '\0', 256);
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_RECORD_NOT_FOUND);
+ ODBCManager::stub_setResultcode(ODBCManager::GETBULKROWS, ODBCM_RC_RECORD_NOT_FOUND);
int ret = KtSwitchObj.ReadSwitchValFromDB(db_conn, &k, &v, UNC_DT_STATE, operation_type, max_rep_ct, vect_val_switch_st, vect_switch_id);
- EXPECT_EQ(ret, UPPL_RC_ERR_NO_SUCH_INSTANCE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
}
//ReadBulk operation failed:Db conxn error
-TEST_F(KtClassTest, ReadSwtchValFromDb_READBULK_07) {
+TEST_F(SwitchTest, ReadSwtchValFromDb_READBULK_07) {
key_switch_t k;
val_switch_st_t v;
+ memset(&k, 0, sizeof(k));
+ memset(&v, 0, sizeof(v));
+
Kt_Switch KtSwitchObj;
vector<val_switch_st_t> vect_val_switch_st;
vector<key_switch_t> vect_switch_id;
uint32_t operation_type = UNC_OP_READ_BULK;
uint32_t max_rep_ct;
OdbcmConnectionHandler *db_conn = NULL;
- memset(k.ctr_key.controller_name, '\0', 32);
- memset(k.switch_id, '\0', 256);
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_CONNECTION_ERROR);
+ ODBCManager::stub_setResultcode(ODBCManager::GETBULKROWS, ODBCM_RC_CONNECTION_ERROR);
int ret = KtSwitchObj.ReadSwitchValFromDB(db_conn, &k, &v, UNC_DT_STATE, operation_type, max_rep_ct, vect_val_switch_st, vect_switch_id);
- EXPECT_EQ(ret, UPPL_RC_ERR_DB_ACCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
//ReadBulk operation failed:Db err
-TEST_F(KtClassTest, ReadSwtchValFromDb_READBULK_Db_Get) {
+TEST_F(SwitchTest, ReadSwtchValFromDb_READBULK_Db_Get) {
key_switch_t k;
val_switch_st_t v;
+ memset(&k, 0, sizeof(k));
+ memset(&v, 0, sizeof(v));
+
Kt_Switch KtSwitchObj;
vector<val_switch_st_t> vect_val_switch_st;
vector<key_switch_t> vect_switch_id;
uint32_t operation_type = UNC_OP_READ_BULK;
uint32_t max_rep_ct;
OdbcmConnectionHandler *db_conn = NULL;
- memset(k.ctr_key.controller_name, '\0', 32);
- memset(k.switch_id, '\0', 256);
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_FAILED);
+ ODBCManager::stub_setResultcode(ODBCManager::GETBULKROWS, ODBCM_RC_FAILED);
int ret = KtSwitchObj.ReadSwitchValFromDB(db_conn, &k, &v, UNC_DT_STATE, operation_type, max_rep_ct, vect_val_switch_st, vect_switch_id);
- EXPECT_EQ(ret, UPPL_RC_ERR_DB_GET);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_GET, ret);
}
//ReadBulk operation Success
-TEST_F(KtClassTest, ReadSwtchValFromDb_READBULK_Success) {
+TEST_F(SwitchTest, ReadSwtchValFromDb_READBULK_Success) {
key_switch_t k;
val_switch_st_t v;
+ memset(&k, 0, sizeof(k));
+ memset(&v, 0, sizeof(v));
+
Kt_Switch KtSwitchObj;
vector<val_switch_st_t> vect_val_switch_st;
vector<key_switch_t> vect_switch_id;
uint32_t operation_type = UNC_OP_READ_BULK;
uint32_t max_rep_ct;
OdbcmConnectionHandler *db_conn = NULL;
- memset(k.ctr_key.controller_name, '\0', 32);
- memset(k.switch_id, '\0', 256);
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_SUCCESS);
+ ODBCManager::stub_setResultcode(ODBCManager::GETBULKROWS, ODBCM_RC_SUCCESS);
int ret = KtSwitchObj.ReadSwitchValFromDB(db_conn, &k, &v, UNC_DT_STATE, operation_type, max_rep_ct, vect_val_switch_st, vect_switch_id);
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
-
/********ReadInternal****/
-TEST_F(KtClassTest, ReadInternal) {
+TEST_F(SwitchTest, ReadInternal) {
vector<void*> k;
vector<void*> v;
Kt_Switch KtSwitchObj;
uint32_t operation_type = UNC_OP_READ;
- uint32_t max_rep_ct;
- char pkName1[] = "{0x10,0xbc}";
- char pkName2[] = "controller1";
- k.push_back(pkName1);
- k.push_back(pkName2);
+
+ key_switch_t key;
+ val_switch_st_t val;
+ getKeyForKtSwitch1(key);
+ getValForKtSwitch1(val);
+ k.push_back(&key);
+ v.push_back(&val);
+
OdbcmConnectionHandler *db_conn = NULL;
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
+ ODBCManager::stub_setResultcode(ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
int ret = KtSwitchObj.ReadInternal(db_conn, k, v, UNC_DT_STATE, operation_type);
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
/*****ReadBulkInternal****/
-TEST_F(KtClassTest, ReadBulkInternal_MaxCt_01) {
+TEST_F(SwitchTest, ReadBulkInternal_MaxCt_01) {
key_switch_t k;
val_switch_st_t v;
+ memset(&k, 0, sizeof(k));
+ memset(&v, 0, sizeof(v));
+
Kt_Switch KtSwitchObj;
- uint32_t operation_type = UNC_OP_READ_BULK;
uint32_t max_rep_ct = 0;
vector<val_switch_st_t> vect_val_switch;
vector<key_switch_t> vect_switch_id;
OdbcmConnectionHandler *db_conn = NULL;
int ret = KtSwitchObj.ReadBulkInternal(db_conn, &k, &v, UNC_DT_STATE, max_rep_ct, vect_val_switch, vect_switch_id);
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
-TEST_F(KtClassTest, ReadBulkInternal_NoRecordFound_02) {
+TEST_F(SwitchTest, ReadBulkInternal_NoRecordFound_02) {
key_switch_t k;
val_switch_st_t v;
+ memset(&k, 0, sizeof(k));
+ memset(&v, 0, sizeof(v));
+
Kt_Switch KtSwitchObj;
- uint32_t operation_type = UNC_OP_READ_BULK;
- uint32_t max_rep_ct;
+ uint32_t max_rep_ct(1);
vector<val_switch_st_t> vect_val_switch;
vector<key_switch_t> vect_switch_id;
OdbcmConnectionHandler *db_conn = NULL;
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_RECORD_NOT_FOUND);
+ ODBCManager::stub_setResultcode(ODBCManager::GETBULKROWS, ODBCM_RC_RECORD_NOT_FOUND);
int ret = KtSwitchObj.ReadBulkInternal(db_conn, &k, &v, UNC_DT_STATE, max_rep_ct, vect_val_switch, vect_switch_id);
- EXPECT_EQ(ret, UPPL_RC_ERR_NO_SUCH_INSTANCE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
}
-TEST_F(KtClassTest, ReadBulkInternal_ConnError_03) {
+TEST_F(SwitchTest, ReadBulkInternal_ConnError_03) {
key_switch_t k;
val_switch_st_t v;
+ memset(&k, 0, sizeof(k));
+ memset(&v, 0, sizeof(v));
+
Kt_Switch KtSwitchObj;
- uint32_t operation_type = UNC_OP_READ_BULK;
- uint32_t max_rep_ct;
+ uint32_t max_rep_ct(1);
vector<val_switch_st_t> vect_val_switch;
vector<key_switch_t> vect_switch_id;
OdbcmConnectionHandler *db_conn = NULL;
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_CONNECTION_ERROR);
+ ODBCManager::stub_setResultcode(ODBCManager::GETBULKROWS, ODBCM_RC_CONNECTION_ERROR);
int ret = KtSwitchObj.ReadBulkInternal(db_conn, &k, &v, UNC_DT_STATE, max_rep_ct, vect_val_switch, vect_switch_id);
- EXPECT_EQ(ret, UPPL_RC_ERR_DB_ACCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
-TEST_F(KtClassTest, ReadBulkInternal_DbGetError_04) {
+TEST_F(SwitchTest, ReadBulkInternal_DbGetError_04) {
key_switch_t k;
val_switch_st_t v;
+ memset(&k, 0, sizeof(k));
+ memset(&v, 0, sizeof(v));
+
Kt_Switch KtSwitchObj;
- uint32_t operation_type = UNC_OP_READ_BULK;
- uint32_t max_rep_ct;
+ uint32_t max_rep_ct(1);
vector<val_switch_st_t> vect_val_switch;
vector<key_switch_t> vect_switch_id;
OdbcmConnectionHandler *db_conn = NULL;
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_FAILED);
+ ODBCManager::stub_setResultcode(ODBCManager::GETBULKROWS, ODBCM_RC_FAILED);
int ret = KtSwitchObj.ReadBulkInternal(db_conn, &k, &v, UNC_DT_STATE, max_rep_ct, vect_val_switch, vect_switch_id);
- EXPECT_EQ(ret, UPPL_RC_ERR_DB_GET);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_GET, ret);
}
-TEST_F(KtClassTest, ReadBulkInternal_Success_04) {
+TEST_F(SwitchTest, ReadBulkInternal_Success_04) {
key_switch_t k;
val_switch_st_t v;
+ memset(&k, 0, sizeof(k));
+ memset(&v, 0, sizeof(v));
+
Kt_Switch KtSwitchObj;
- uint32_t operation_type = UNC_OP_READ_BULK;
- uint32_t max_rep_ct;
+ uint32_t max_rep_ct(1);
vector<val_switch_st_t> vect_val_switch;
vector<key_switch_t> vect_switch_id;
OdbcmConnectionHandler *db_conn = NULL;
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_SUCCESS);
+ ODBCManager::stub_setResultcode(ODBCManager::GETBULKROWS, ODBCM_RC_SUCCESS);
int ret = KtSwitchObj.ReadBulkInternal(db_conn, &k, &v, UNC_DT_STATE, max_rep_ct, vect_val_switch, vect_switch_id);
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
/********ReadBulk********/
-TEST_F(KtClassTest, ReadBulk_NoStateDb_01) {
+TEST_F(SwitchTest, ReadBulk_NoStateDb_01) {
key_switch_t k;
- val_switch_st_t v;
+ memset(&k, 0, sizeof(k));
+
Kt_Switch KtSwitchObj;
- uint32_t operation_type = UNC_OP_READ_BULK;
- uint32_t max_rep_ct;
- int child_index;
- pfc_bool_t parent_call;
- pfc_bool_t is_read_next;
+ uint32_t max_rep_ct(1);
+ int child_index(0);
+ pfc_bool_t parent_call(PFC_FALSE);
+ pfc_bool_t is_read_next(PFC_FALSE);
OdbcmConnectionHandler *db_conn = NULL;
ReadRequest *read_req = NULL;
int ret = KtSwitchObj.ReadBulk(db_conn, &k, UNC_DT_CANDIDATE, max_rep_ct, child_index, parent_call, is_read_next,read_req);
- EXPECT_EQ(ret, UPPL_RC_ERR_OPERATION_NOT_ALLOWED);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_OPERATION_NOT_ALLOWED, ret);
}
-TEST_F(KtClassTest, ReadBulk_Max_Rpct_01) {
+TEST_F(SwitchTest, ReadBulk_Max_Rpct_01) {
key_switch_t k;
- val_switch_st_t v;
+ memset(&k, 0, sizeof(k));
+
Kt_Switch KtSwitchObj;
- uint32_t operation_type = UNC_OP_READ_BULK;
uint32_t max_rep_ct = 0;
- int child_index;
- pfc_bool_t parent_call;
- pfc_bool_t is_read_next;
+ int child_index(0);
+ pfc_bool_t parent_call(PFC_FALSE);
+ pfc_bool_t is_read_next(PFC_FALSE);
OdbcmConnectionHandler *db_conn = NULL;
ReadRequest *read_req = NULL;
int ret = KtSwitchObj.ReadBulk(db_conn, &k, UNC_DT_STATE, max_rep_ct, child_index, parent_call, is_read_next,read_req);
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
-TEST_F(KtClassTest, ReadBulkInternal_Success) {
+TEST_F(SwitchTest, ReadBulkInternal_Success) {
key_switch_t k;
- val_switch_st_t v;
+ getKeyForKtSwitch1(k);
+
Kt_Switch KtSwitchObj;
- uint32_t max_rep_ct;
- int child_index;
- pfc_bool_t parent_call;
- pfc_bool_t is_read_next;
+ uint32_t max_rep_ct(1);
+ int child_index(0);
+ pfc_bool_t parent_call(PFC_FALSE);
+ pfc_bool_t is_read_next(PFC_FALSE);
OdbcmConnectionHandler *db_conn = NULL;
- ReadRequest *read_req = NULL;
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_SUCCESS);
- int ret = KtSwitchObj.ReadBulk(db_conn, &k, UNC_DT_STATE, max_rep_ct, child_index, parent_call, is_read_next,read_req);
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ ReadRequest read_req;
+ ODBCManager::stub_setResultcode(ODBCManager::GETBULKROWS, ODBCM_RC_SUCCESS);
+ int ret = KtSwitchObj.ReadBulk(db_conn, &k, UNC_DT_STATE, max_rep_ct,
+ child_index, parent_call, is_read_next,
+ &read_req);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
-TEST_F(KtClassTest, ReadBulkInternal_NoRecordFound) {
+TEST_F(SwitchTest, ReadBulkInternal_NoRecordFound) {
key_switch_t k;
- val_switch_st_t v;
+ memset(&k, 0, sizeof(k));
+
Kt_Switch KtSwitchObj;
- uint32_t operation_type = UNC_OP_READ_BULK;
uint32_t max_rep_ct = 1;
- int child_index;
- pfc_bool_t parent_call;
- pfc_bool_t is_read_next;
+ int child_index(0);
+ pfc_bool_t parent_call(PFC_FALSE);
+ pfc_bool_t is_read_next(PFC_FALSE);
OdbcmConnectionHandler *db_conn = NULL;
- ReadRequest *read_req = new ReadRequest;
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_RECORD_NOT_FOUND);
- int ret = KtSwitchObj.ReadBulk(db_conn, &k, UNC_DT_STATE, max_rep_ct, child_index, parent_call, is_read_next,read_req);
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ ReadRequest read_req;
+ ODBCManager::stub_setResultcode(ODBCManager::GETBULKROWS, ODBCM_RC_RECORD_NOT_FOUND);
+ int ret = KtSwitchObj.ReadBulk(db_conn, &k, UNC_DT_STATE, max_rep_ct,
+ child_index, parent_call, is_read_next,
+ &read_req);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
-TEST_F(KtClassTest, ReadBulk_childkey) {
+TEST_F(SwitchTest, ReadBulk_childkey) {
key_switch_t k;
- val_switch_st_t v;
+ getKeyForKtSwitch1(k);
+
Kt_Switch KtSwitchObj;
- char pkName1[] = "{0x10,0xbc}";
- char pkName2[] = "controller1";
- memset(k.ctr_key.controller_name, '\0', 32);
- memcpy(k.ctr_key.controller_name, pkName2, strlen(pkName2));
- memset(k.switch_id, '\0', 256);
- memcpy(k.switch_id, pkName1, strlen(pkName1));
- uint32_t operation_type = UNC_OP_READ_BULK;
uint32_t max_rep_ct = 1;
int child_index = -1;
- pfc_bool_t parent_call;
- pfc_bool_t is_read_next;
+ pfc_bool_t parent_call(PFC_FALSE);
+ pfc_bool_t is_read_next(PFC_FALSE);
OdbcmConnectionHandler *db_conn = NULL;
ReadRequest *read_req = NULL;
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);
+ ODBCManager::stub_setResultcode(ODBCManager::ISROWEXISTS, ODBCM_RC_ROW_EXISTS);
int ret = KtSwitchObj.ReadBulk(db_conn, &k, UNC_DT_STATE, max_rep_ct, child_index, parent_call, is_read_next,read_req);
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
-TEST_F(KtClassTest, ReadBulk_SwitchExists_FALSE) {
+TEST_F(SwitchTest, ReadBulk_SwitchExists_FALSE) {
key_switch_t k;
- val_switch_st_t v;
+ getKeyForKtSwitch1(k);
+
Kt_Switch KtSwitchObj;
- char pkName1[] = "{0x10,0xbc}";
- char pkName2[] = "controller1";
- memset(k.ctr_key.controller_name, '\0', 32);
- memcpy(k.ctr_key.controller_name, pkName2, strlen(pkName2));
- memset(k.switch_id, '\0', 256);
- memcpy(k.switch_id, pkName1, strlen(pkName1));
- uint32_t operation_type = UNC_OP_READ_BULK;
uint32_t max_rep_ct = 1;
- int child_index ;
- pfc_bool_t parent_call = false;
- pfc_bool_t is_read_next;
+ int child_index (0);
+ pfc_bool_t parent_call(PFC_FALSE);
+ pfc_bool_t is_read_next(PFC_FALSE);
OdbcmConnectionHandler *db_conn = NULL;
- ReadRequest *read_req = new ReadRequest;
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_SUCCESS);
- int ret = KtSwitchObj.ReadBulk(db_conn, &k, UNC_DT_STATE, max_rep_ct, child_index, parent_call, is_read_next,read_req);
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ ReadRequest read_req;
+ ODBCManager::stub_setResultcode(ODBCManager::GETBULKROWS, ODBCM_RC_SUCCESS);
+ int ret = KtSwitchObj.ReadBulk(db_conn, &k, UNC_DT_STATE, max_rep_ct,
+ child_index, parent_call, is_read_next,
+ &read_req);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
/********PerformRead******/
-TEST_F(KtClassTest, PerformRead_01) {
+TEST_F(SwitchTest, PerformRead_01) {
key_switch_t k;
val_switch_st_t v;
memset(&k, 0, sizeof(key_switch_t));
getReqHeader(rh, UNC_OP_READ, UNC_DT_STATE);
rh.key_type = UNC_KT_SWITCH;
OdbcmConnectionHandler *db_conn =NULL;
- ServerSession ::clearStubData();
ServerSession sess;
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)UNC_KT_SWITCH);
int ret = KtSwitchObj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_DETAIL,(uint32_t)UNC_OPT2_NONE,(uint32_t)1);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
-TEST_F(KtClassTest, PerformRead_002) {
+TEST_F(SwitchTest, PerformRead_002) {
key_switch_t k;
val_switch_st_t v;
memset(&k, 0, sizeof(key_switch_t));
getReqHeader(rh, UNC_OP_READ, UNC_DT_CANDIDATE);
rh.key_type = UNC_KT_SWITCH;
OdbcmConnectionHandler *db_conn =NULL;
- ServerSession ::clearStubData();
ServerSession sess;
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)UNC_KT_SWITCH);
int ret = KtSwitchObj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_L2DOMAIN,(uint32_t)1);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
-TEST_F(KtClassTest, PerformRead_ReadSwtVal_Succes_03) {
+TEST_F(SwitchTest, PerformRead_ReadSwtVal_Succes_03) {
key_switch_t k;
val_switch_st_t v;
memset(&k, 0, sizeof(key_switch_t));
getReqHeader(rh, UNC_OP_READ, UNC_DT_CANDIDATE);
rh.key_type = UNC_KT_SWITCH;
OdbcmConnectionHandler *db_conn =NULL;
- ServerSession ::clearStubData();
ServerSession sess;
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)UNC_DT_STATE);
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)UNC_KT_SWITCH);
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
+ ODBCManager::stub_setResultcode(ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
int ret = KtSwitchObj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_L2DOMAIN,(uint32_t)1);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
-TEST_F(KtClassTest, PerformRead_ReadSwtVal_OPT1_NoMatch) {
+TEST_F(SwitchTest, PerformRead_ReadSwtVal_OPT1_NoMatch) {
val_switch_st_t v;
key_switch_t k;
- //key_switch_t *key = reinterpret_cast<key_switch_t>(k);
- //memset(&k, 0, sizeof(key_switch_t));
+ memset(&k, 0, sizeof(key_switch_t));
memset(&v, 0, sizeof(val_switch_st_t));
+
Kt_Switch KtSwitchObj;
physical_request_header rh;
getReqHeader(rh, UNC_OP_READ, UNC_DT_CANDIDATE);
rh.key_type = UNC_KT_SWITCH;
OdbcmConnectionHandler *db_conn =NULL;
- ServerSession ::clearStubData();
ServerSession sess;
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)UNC_KT_SWITCH);
//sess.stub_setAddOutput((uint32_t)key);
int ret = KtSwitchObj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_DETAIL,(uint32_t)UNC_OPT2_L2DOMAIN,(uint32_t)1);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
-TEST_F(KtClassTest, PerformRead_ReadSwtVal_DataType_NoMatch_Success) {
+TEST_F(SwitchTest, PerformRead_ReadSwtVal_DataType_NoMatch_Success) {
val_switch_st_t v;
key_switch_t k;
memset(&v, 0, sizeof(val_switch_st_t));
getReqHeader(rh, UNC_OP_READ, UNC_DT_CANDIDATE);
rh.key_type = UNC_KT_SWITCH;
OdbcmConnectionHandler *db_conn =NULL;
- ServerSession ::clearStubData();
ServerSession sess;
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)UNC_KT_SWITCH);
int ret = KtSwitchObj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_CANDIDATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_L2DOMAIN,(uint32_t)1);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
-TEST_F(KtClassTest, PerformRead_ReadSwtVal_addOutput_fail) {
+TEST_F(SwitchTest, PerformRead_ReadSwtVal_addOutput_fail) {
val_switch_st_t v;
key_switch_t k;
memset(&v, 0, sizeof(val_switch_st_t));
getReqHeader(rh, UNC_OP_READ, UNC_DT_STATE);
rh.key_type = UNC_KT_SWITCH;
OdbcmConnectionHandler *db_conn =NULL;
- ServerSession ::clearStubData();
ServerSession sess;
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
+ ODBCManager::stub_setResultcode(ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
int ret = KtSwitchObj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_L2DOMAIN,(uint32_t)1);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
-
-TEST_F(KtClassTest, PerformRead_005) {
+TEST_F(SwitchTest, PerformRead_005) {
key_switch_t k;
val_switch_st_t v;
memset(&k, 0, sizeof(key_switch_t));
getReqHeader(rh, UNC_OP_READ, UNC_DT_CANDIDATE);
rh.key_type = UNC_KT_SWITCH;
OdbcmConnectionHandler *db_conn =NULL;
- ServerSession ::clearStubData();
ServerSession sess;
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)UNC_KT_SWITCH);
int ret = KtSwitchObj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_INVALID,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_NONE,(uint32_t)1);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
-TEST_F(KtClassTest, PerformRead_UnsupportDB_STARTUP) {
+TEST_F(SwitchTest, PerformRead_UnsupportDB_STARTUP) {
key_switch_t k;
val_switch_st_t v;
memset(&k, 0, sizeof(key_switch_t));
getReqHeader(rh, UNC_OP_READ, UNC_DT_CANDIDATE);
rh.key_type = UNC_KT_SWITCH;
OdbcmConnectionHandler *db_conn =NULL;
- ServerSession ::clearStubData();
ServerSession sess;
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)UNC_KT_SWITCH);
int ret = KtSwitchObj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_STARTUP,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_NONE,(uint32_t)1);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
-TEST_F(KtClassTest, PerformRead_UnsupportDb_CANDIDDATE) {
+TEST_F(SwitchTest, PerformRead_UnsupportDb_CANDIDDATE) {
key_switch_t k;
val_switch_st_t v;
memset(&k, 0, sizeof(key_switch_t));
getReqHeader(rh, UNC_OP_READ, UNC_DT_CANDIDATE);
rh.key_type = UNC_KT_SWITCH;
OdbcmConnectionHandler *db_conn =NULL;
- ServerSession ::clearStubData();
ServerSession sess;
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)UNC_KT_SWITCH);
int ret = KtSwitchObj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_CANDIDATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_NONE,(uint32_t)1);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
-
-
-TEST_F(KtClassTest, PerformRead_GetOneRow_006) {
+TEST_F(SwitchTest, PerformRead_GetOneRow_006) {
key_switch_t k;
val_switch_st_t v;
memset(&k, 0, sizeof(key_switch_t));
getReqHeader(rh, UNC_OP_READ, UNC_DT_CANDIDATE);
rh.key_type = UNC_KT_SWITCH;
OdbcmConnectionHandler *db_conn =NULL;
- ServerSession ::clearStubData();
ServerSession sess;
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)0);
sess.stub_setAddOutput((uint32_t)UNC_KT_SWITCH);
int ret = KtSwitchObj.PerformRead(db_conn,(uint32_t)0,(uint32_t)0,&k,&v,(uint32_t)UNC_DT_STATE,(uint32_t)UNC_OP_READ,sess,(uint32_t)UNC_OPT1_NORMAL,(uint32_t)UNC_OPT2_NONE,(uint32_t)1);
- EXPECT_EQ(ret,UPPL_RC_ERR_IPC_WRITE_ERROR);
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
/*******PopulateSchemaForValidFlag*********/
-TEST_F(KtClassTest, PopulateSchemaForValidFlag_Success) {
+TEST_F(SwitchTest, PopulateSchemaForValidFlag_Success) {
key_switch_t k;
val_switch_st_t v;
memset(&k, 0, sizeof(key_switch_t));
Kt_Switch KtSwitchObj;
string valid_new;
OdbcmConnectionHandler *db_conn =NULL;
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
+ ODBCManager::stub_setResultcode(ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
int ret = KtSwitchObj.PopulateSchemaForValidFlag(db_conn, &k ,&v, valid_new, UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
-TEST_F(KtClassTest, PopulateSchemaForValidFlag_Failure) {
+TEST_F(SwitchTest, PopulateSchemaForValidFlag_Failure) {
key_switch_t k;
val_switch_st_t v;
memset(&k, 0, sizeof(key_switch_t));
Kt_Switch KtSwitchObj;
string valid_new;
OdbcmConnectionHandler *db_conn =NULL;
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_GENERAL_ERROR);
+ ODBCManager::stub_setResultcode(ODBCManager::UPDATEONEROW, ODBCM_RC_GENERAL_ERROR);
int ret = KtSwitchObj.PopulateSchemaForValidFlag(db_conn, &k ,&v, valid_new, UNC_DT_STATE);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_UPDATE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_UPDATE, ret);
}
/********SetOperSatus******/
//Faliure of GetoneRow
-TEST_F(KtClassTest, SetOperStatus_001) {
-
+TEST_F(SwitchTest, SetOperStatus_001) {
key_switch_t k;
- memset(&k, 0, sizeof(key_switch_t));
- Kt_Switch KtSwitchObj;
getKeyForKtSwitch1(k);
+
+ Kt_Switch KtSwitchObj;
physical_request_header rh;
getReqHeader(rh, UNC_OP_UPDATE, UNC_DT_STATE);
OdbcmConnectionHandler *db_conn =NULL;
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_FAILED);
+ ODBCManager::stub_setResultcode(ODBCManager::GETONEROW, ODBCM_RC_FAILED);
int ret = KtSwitchObj.SetOperStatus(db_conn,UNC_DT_STATE,&k,(UpplSwitchOperStatus)1);
- EXPECT_EQ(ret,UPPL_RC_ERR_DB_GET);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_GET, ret);
}
-TEST_F(KtClassTest, SetOperStatus_002) {
-
+TEST_F(SwitchTest, SetOperStatus_002) {
key_switch_t k;
- Kt_Switch KtSwitchObj;
getKeyForKtSwitch1(k);
+
+ Kt_Switch KtSwitchObj;
physical_request_header rh;
getReqHeader(rh, UNC_OP_READ, UNC_DT_STATE);
OdbcmConnectionHandler *db_conn =NULL;
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
+ ODBCManager::stub_setResultcode(ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
int ret = KtSwitchObj.SetOperStatus(db_conn,UNC_DT_STATE,&k,(UpplSwitchOperStatus)0);
- EXPECT_EQ(ret, UPPL_RC_ERR_DB_UPDATE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_UPDATE, ret);
}
-TEST_F(KtClassTest, SetOperStatus_004) {
-
+TEST_F(SwitchTest, SetOperStatus_004) {
key_switch_t k;
- Kt_Switch KtSwitchObj;
getKeyForKtSwitch1(k);
+
+ Kt_Switch KtSwitchObj;
physical_request_header rh;
getReqHeader(rh, UNC_OP_READ, UNC_DT_STATE);
OdbcmConnectionHandler *db_conn =NULL;
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
+ ODBCManager::stub_setResultcode(ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
+ ODBCManager::stub_setResultcode(ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
int ret = KtSwitchObj.SetOperStatus(db_conn,UNC_DT_STATE,&k,(UpplSwitchOperStatus)0);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
-TEST_F(KtClassTest, SetOperStatus_005) {
-
+TEST_F(SwitchTest, SetOperStatus_005) {
key_switch_t k;
- Kt_Switch KtSwitchObj;
getKeyForKtSwitch1(k);
+
+ Kt_Switch KtSwitchObj;
physical_request_header rh;
getReqHeader(rh, UNC_OP_READ, UNC_DT_STATE);
OdbcmConnectionHandler *db_conn =NULL;
ser_evt.addOutput((uint32_t)UNC_DT_STATE);
ser_evt.addOutput((uint32_t)UNC_KT_SWITCH);
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
+ ODBCManager::stub_setResultcode(ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
+ ODBCManager::stub_setResultcode(ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
int ret = KtSwitchObj.SetOperStatus(db_conn,UNC_DT_STATE,&k,(UpplSwitchOperStatus)0);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
/******GetAlarmStatus******/
//GetOneRow Success
-TEST_F(KtClassTest, GetAlarmStatus_sucess_01) {
+TEST_F(SwitchTest, GetAlarmStatus_sucess_01) {
key_switch_t k;
+ getKeyForKtSwitch1(k);
+
Kt_Switch KtSwitchObj;
uint64_t alarm_status = 1;
- getKeyForKtSwitch1(k);
physical_request_header rh;
getReqHeader(rh, UNC_OP_READ, UNC_DT_STATE);
OdbcmConnectionHandler *db_conn =NULL;
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
+ ODBCManager::stub_setResultcode(ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
int ret = KtSwitchObj.GetAlarmStatus(db_conn, UNC_DT_STATE, &k, alarm_status);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
//GetOneRow Failure
-TEST_F(KtClassTest, GetAlarmStatus_Nosuccess_01) {
+TEST_F(SwitchTest, GetAlarmStatus_Nosuccess_01) {
key_switch_t k;
+ getKeyForKtSwitch1(k);
+
Kt_Switch KtSwitchObj;
uint64_t alarm_status = 1;
- getKeyForKtSwitch1(k);
physical_request_header rh;
getReqHeader(rh, UNC_OP_READ, UNC_DT_STATE);
OdbcmConnectionHandler *db_conn =NULL;
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_FAILED);
+ ODBCManager::stub_setResultcode(ODBCManager::GETONEROW, ODBCM_RC_FAILED);
int ret = KtSwitchObj.GetAlarmStatus(db_conn, UNC_DT_STATE, &k, alarm_status);
- EXPECT_EQ(ret, UPPL_RC_ERR_DB_GET);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_GET, ret);
}
/*****HandleDriverAlarms******/
//Reading alarm status from db failed
-TEST_F(KtClassTest, HandleDriverAlarm_01) {
+TEST_F(SwitchTest, HandleDriverAlarm_01) {
key_switch_t k;
val_switch_st_t v;
- Kt_Switch KtSwitchObj;
- memset(&k, 0, sizeof(key_switch_t));
+ getKeyForKtSwitch1(k);
memset(&v, 0, sizeof(val_switch_st_t));
+
+ Kt_Switch KtSwitchObj;
uint32_t alarm_type = UNC_FLOW_ENT_FULL;
uint32_t oper_type = UNC_OP_CREATE;
OdbcmConnectionHandler *db_conn =NULL;
- getKeyForKtSwitch1(k);
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_FAILED);
+ ODBCManager::stub_setResultcode(ODBCManager::GETONEROW, ODBCM_RC_FAILED);
int ret = KtSwitchObj.HandleDriverAlarms(db_conn, UNC_DT_STATE, alarm_type, oper_type, &k,&v);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
//Error creating ServerEvent object
//alarm_type:UNC_FLOW_ENT_FULL, oper_type:UNC_OP_CREATE
-TEST_F(KtClassTest, HandleDriverAlarm_02) {
+TEST_F(SwitchTest, HandleDriverAlarm_02) {
key_switch_t k;
val_switch_st_t v;
- Kt_Switch KtSwitchObj;
- memset(&k, 0, sizeof(key_switch_t));
+ getKeyForKtSwitch1(k);
memset(&v, 0, sizeof(val_switch_st_t));
+
+ Kt_Switch KtSwitchObj;
uint32_t alarm_type = UNC_FLOW_ENT_FULL;
uint32_t oper_type = UNC_OP_CREATE;
OdbcmConnectionHandler *db_conn =NULL;
- getKeyForKtSwitch1(k);
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
+ ODBCManager::stub_setResultcode(ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
+ ODBCManager::stub_setResultcode(ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
int ret = KtSwitchObj.HandleDriverAlarms(db_conn, UNC_DT_STATE, alarm_type, oper_type, &k,&v);
- EXPECT_EQ(ret, UPPL_RC_ERR_IPC_WRITE_ERROR);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
-TEST_F(KtClassTest, HandleDriverAlarm_03) {
+TEST_F(SwitchTest, HandleDriverAlarm_03) {
key_switch_t k;
val_switch_st_t v;
- Kt_Switch KtSwitchObj;
- memset(&k, 0, sizeof(key_switch_t));
memset(&v, 0, sizeof(val_switch_st_t));
+ getKeyForKtSwitch1(k);
+
+ Kt_Switch KtSwitchObj;
uint32_t alarm_type = UNC_FLOW_ENT_FULL;
uint32_t oper_type = UNC_OP_DELETE;
OdbcmConnectionHandler *db_conn =NULL;
- getKeyForKtSwitch1(k);
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
+ ODBCManager::stub_setResultcode(ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
+ ODBCManager::stub_setResultcode(ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
int ret = KtSwitchObj.HandleDriverAlarms(db_conn, UNC_DT_STATE, alarm_type, oper_type, &k,&v);
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
-TEST_F(KtClassTest, HandleDriverAlarm_04) {
+TEST_F(SwitchTest, HandleDriverAlarm_04) {
key_switch_t k;
val_switch_st_t v;
- Kt_Switch KtSwitchObj;
- memset(&k, 0, sizeof(key_switch_t));
+ getKeyForKtSwitch1(k);
memset(&v, 0, sizeof(val_switch_st_t));
+
+ Kt_Switch KtSwitchObj;
uint32_t alarm_type = UNC_OFS_LACK_FEATURES;
uint32_t oper_type = UNC_OP_CREATE;
OdbcmConnectionHandler *db_conn =NULL;
- getKeyForKtSwitch1(k);
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
+ ODBCManager::stub_setResultcode(ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
+ ODBCManager::stub_setResultcode(ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
int ret = KtSwitchObj.HandleDriverAlarms(db_conn, UNC_DT_STATE, alarm_type, oper_type, &k,&v);
- EXPECT_EQ(ret, UPPL_RC_ERR_IPC_WRITE_ERROR);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_IPC_WRITE_ERROR, ret);
}
-TEST_F(KtClassTest, HandleDriverAlarm_05) {
+TEST_F(SwitchTest, HandleDriverAlarm_05) {
key_switch_t k;
val_switch_st_t v;
- Kt_Switch KtSwitchObj;
- memset(&k, 0, sizeof(key_switch_t));
+ getKeyForKtSwitch1(k);
memset(&v, 0, sizeof(val_switch_st_t));
+
+ Kt_Switch KtSwitchObj;
uint32_t alarm_type = UNC_OFS_LACK_FEATURES;
uint32_t oper_type = UNC_OP_DELETE;
OdbcmConnectionHandler *db_conn =NULL;
- getKeyForKtSwitch1(k);
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
+ ODBCManager::stub_setResultcode(ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
+ ODBCManager::stub_setResultcode(ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
int ret = KtSwitchObj.HandleDriverAlarms(db_conn, UNC_DT_STATE, alarm_type, oper_type, &k,&v);
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
/*****HandleOperStaus******/
-TEST_F(KtClassTest, Handleoperstatus_BadRequest) {
+TEST_F(SwitchTest, Handleoperstatus_BadRequest) {
key_switch_t *k = NULL;
val_switch_st_t v;
Kt_Switch KtSwitchObj;
memset(&v, 0, sizeof(val_switch_st_t));
OdbcmConnectionHandler *db_conn =NULL;
int ret = KtSwitchObj.HandleOperStatus(db_conn, UNC_DT_STATE, k, &v);
- EXPECT_EQ(ret, UPPL_RC_ERR_BAD_REQUEST);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_BAD_REQUEST, ret);
}
-TEST_F(KtClassTest, Handleoperstatus_GetOneRow_success) {
+TEST_F(SwitchTest, Handleoperstatus_GetOneRow_success) {
key_switch_t k ;
val_switch_st_t v;
Kt_Switch KtSwitchObj;
memset(&k, 0, sizeof(key_switch_t));
memset(&v, 0, sizeof(val_switch_st_t));
OdbcmConnectionHandler *db_conn =NULL;
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
+ ODBCManager::stub_setResultcode(ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
int ret = KtSwitchObj.HandleOperStatus(db_conn, UNC_DT_STATE, &k, &v);
- EXPECT_EQ(ret, UPPL_RC_ERR_DB_UPDATE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_UPDATE, ret);
}
-TEST_F(KtClassTest, Handleoperstatus_GetOneRow_Fail) {
+TEST_F(SwitchTest, Handleoperstatus_GetOneRow_Fail) {
key_switch_t k;
val_switch_st_t v;
Kt_Switch KtSwitchObj;
memset(&k, 0, sizeof(key_switch_t));
memset(&v, 0, sizeof(val_switch_st_t));
OdbcmConnectionHandler *db_conn =NULL;
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_FAILED);
+ ODBCManager::stub_setResultcode(ODBCManager::GETONEROW, ODBCM_RC_FAILED);
int ret = KtSwitchObj.HandleOperStatus(db_conn, UNC_DT_STATE, &k, &v);
- EXPECT_EQ(ret, UPPL_RC_ERR_DB_GET);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_GET, ret);
}
-TEST_F(KtClassTest, Handleoperstatus_GetBulkRow_Success) {
+TEST_F(SwitchTest, Handleoperstatus_GetBulkRow_Success) {
key_switch_t k;
val_switch_st_t v;
Kt_Switch KtSwitchObj;
memset(&k, 0, sizeof(key_switch_t));
memset(&v, 0, sizeof(val_switch_st_t));
OdbcmConnectionHandler *db_conn =NULL;
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_SUCCESS);
+ ODBCManager::stub_setResultcode(ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
+ ODBCManager::stub_setResultcode(ODBCManager::GETBULKROWS, ODBCM_RC_SUCCESS);
int ret = KtSwitchObj.HandleOperStatus(db_conn, UNC_DT_STATE, &k, &v);
- EXPECT_EQ(ret, UPPL_RC_ERR_DB_ACCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_ACCESS, ret);
}
-TEST_F(KtClassTest, Handleoperstatus_GetBulkRow_Failure) {
+TEST_F(SwitchTest, Handleoperstatus_GetBulkRow_Failure) {
key_switch_t k;
val_switch_st_t v;
Kt_Switch KtSwitchObj;
memset(&k, 0, sizeof(key_switch_t));
memset(&v, 0, sizeof(val_switch_st_t));
OdbcmConnectionHandler *db_conn =NULL;
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETBULKROWS, ODBCM_RC_FAILED);
+ ODBCManager::stub_setResultcode(ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
+ ODBCManager::stub_setResultcode(ODBCManager::GETBULKROWS, ODBCM_RC_FAILED);
int ret = KtSwitchObj.HandleOperStatus(db_conn, UNC_DT_STATE, &k, &v);
- EXPECT_EQ(ret, UPPL_RC_ERR_DB_UPDATE);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_ERR_DB_UPDATE, ret);
}
-TEST_F(KtClassTest, GetSwitchValStructure) {
+TEST_F(SwitchTest, GetSwitchValStructure) {
key_switch_t k;
- val_switch_st_t *obj_val_switch;
+ val_switch_st_t *obj_val_switch(NULL);
vector<TableAttrSchema> vect_table_attr_schema;
vector<string> vect_prim_keys;
- uint8_t operation_type;
- val_switch_st_t *val_switch_valid_st;
+ uint8_t operation_type(UNC_OP_READ);
+ val_switch_st_t *val_switch_valid_st(NULL);
stringstream valid;
Kt_Switch KtSwitchObj;
memset(&k, 0, sizeof(key_switch_t));
int ret = UPPL_RC_SUCCESS;
KtSwitchObj.GetSwitchValStructure(db_conn, obj_val_switch,vect_table_attr_schema, vect_prim_keys,
operation_type, val_switch_valid_st,valid);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
-TEST_F(KtClassTest, GetSwitchValStructure_valid) {
+TEST_F(SwitchTest, GetSwitchValStructure_valid) {
key_switch_t k;
val_switch_st_t obj_val_switch;
memset(&obj_val_switch,0,sizeof(obj_val_switch));
vector<TableAttrSchema> vect_table_attr_schema;
vector<string> vect_prim_keys;
- uint8_t operation_type;
- val_switch_st_t *val_switch_valid_st;
+ uint8_t operation_type(UNC_OP_READ);
+ val_switch_st_t *val_switch_valid_st(NULL);
stringstream valid;
Kt_Switch KtSwitchObj;
obj_val_switch.valid[kIdxSwitch] = UNC_VF_VALID;
int ret = UPPL_RC_SUCCESS;
KtSwitchObj.GetSwitchValStructure(db_conn, &obj_val_switch,vect_table_attr_schema, vect_prim_keys,
operation_type, val_switch_valid_st,valid);
- EXPECT_EQ(ret,UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
-
/*******UpdateSwitchValidFlag******/
-TEST_F(KtClassTest, UpdateSwitchValidFlag) {
- key_switch_t *k = new key_switch_t;
- val_switch_t *v = new val_switch_t;
+TEST_F(SwitchTest, UpdateSwitchValidFlag) {
+ key_switch_t k;
+ val_switch_t v;
val_switch_st_t v_st;
+ memset(&k, 0,sizeof(k));
+ memset(&v, 0,sizeof(v));
+ memset(&v_st, 0,sizeof(v_st));
Kt_Switch KtSwitchObj;
unc_keytype_validflag_t new_valid_val = UNC_VF_VALID;
OdbcmConnectionHandler *db_conn =NULL;
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_RECORD_NOT_FOUND);
- int ret = KtSwitchObj.UpdateSwitchValidFlag(db_conn, k, v, v_st, new_valid_val, UNC_DT_STATE);
- EXPECT_EQ(ret, UPPL_RC_ERR_NO_SUCH_INSTANCE);
- unc::uppl::ODBCManager::clearStubData();
+ ODBCManager::stub_setResultcode(ODBCManager::GETONEROW, ODBCM_RC_RECORD_NOT_FOUND);
+ int ret = KtSwitchObj.UpdateSwitchValidFlag(db_conn, &k, &v, v_st,
+ new_valid_val, UNC_DT_STATE);
+ EXPECT_EQ(UPPL_RC_ERR_NO_SUCH_INSTANCE, ret);
}
-TEST_F(KtClassTest, UpdateSwitchValidFlag_Success) {
- key_switch_t *k = new key_switch_t;
- val_switch_t *v = new val_switch_t;
+TEST_F(SwitchTest, UpdateSwitchValidFlag_Success) {
+ key_switch_t k;
+ val_switch_t v;
val_switch_st_t v_st;
+ memset(&k, 0,sizeof(k));
+ memset(&v, 0,sizeof(v));
+ memset(&v_st, 0,sizeof(v_st));
Kt_Switch KtSwitchObj;
unc_keytype_validflag_t new_valid_val = UNC_VF_VALID;
OdbcmConnectionHandler *db_conn =NULL;
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
- int ret = KtSwitchObj.UpdateSwitchValidFlag(db_conn, k, v, v_st, new_valid_val, UNC_DT_STATE);
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ ODBCManager::stub_setResultcode(ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
+ int ret = KtSwitchObj.UpdateSwitchValidFlag(db_conn, &k, &v, v_st,
+ new_valid_val, UNC_DT_STATE);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
-TEST_F(KtClassTest, UpdateSwitchValidFlag_NoFillVal) {
- key_switch_t *k = new key_switch_t;
- val_switch_t *v = new val_switch_t;
+TEST_F(SwitchTest, UpdateSwitchValidFlag_NoFillVal) {
+ key_switch_t k;
+ val_switch_t v;
val_switch_st_t v_st;
+ memset(&k, 0,sizeof(k));
+ memset(&v, 0,sizeof(v));
+ memset(&v_st, 0,sizeof(v_st));
Kt_Switch KtSwitchObj;
- unc_keytype_validflag_t new_valid_val;
+ unc_keytype_validflag_t new_valid_val(UNC_VF_INVALID);
OdbcmConnectionHandler *db_conn =NULL;
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
- int ret = KtSwitchObj.UpdateSwitchValidFlag(db_conn, k, v, v_st, new_valid_val, UNC_DT_STATE);
- EXPECT_EQ(ret, UPPL_RC_ERR_DB_UPDATE);
- unc::uppl::ODBCManager::clearStubData();
+ ODBCManager::stub_setResultcode(ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
+ int ret = KtSwitchObj.UpdateSwitchValidFlag(db_conn, &k, &v, v_st,
+ new_valid_val, UNC_DT_STATE);
+ EXPECT_EQ(UPPL_RC_ERR_DB_UPDATE, ret);
}
-TEST_F(KtClassTest, UpdateSwitchValidFlag_ret_NULL) {
- key_switch_t *k = new key_switch_t;
- val_switch_t *v = NULL;
+TEST_F(SwitchTest, UpdateSwitchValidFlag_ret_NULL) {
+ key_switch_t k;
+ val_switch_st_t v;
val_switch_st_t v_st;
+ memset(&k, 0,sizeof(k));
+ memset(&v, 0,sizeof(v));
+ memset(&v_st, 0,sizeof(v_st));
Kt_Switch KtSwitchObj;
- unc_keytype_validflag_t new_valid_val;
+ unc_keytype_validflag_t new_valid_val(UNC_VF_INVALID);
OdbcmConnectionHandler *db_conn =NULL;
- unc::uppl::ODBCManager::stub_setResultcode(unc::uppl::ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
- int ret = KtSwitchObj.UpdateSwitchValidFlag(db_conn, k, v, v_st, new_valid_val, UNC_DT_STATE);
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ ODBCManager::stub_setResultcode(ODBCManager::GETONEROW, ODBCM_RC_SUCCESS);
+ ODBCManager::stub_setResultcode(ODBCManager::UPDATEONEROW, ODBCM_RC_SUCCESS);
+ pfc_log_set_level(PFC_LOGLVL_VERBOSE);
+ int ret = KtSwitchObj.UpdateSwitchValidFlag(db_conn, &k, &v, v_st,
+ new_valid_val, UNC_DT_STATE);
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
/********FrameValidValue*******/
-TEST_F(KtClassTest, FrameValidValue) {
+TEST_F(SwitchTest, FrameValidValue) {
string attr_value = "ctr";
val_switch_st obj_val_switch;
Kt_Switch KtSwitchObj;
int ret = UPPL_RC_SUCCESS;
obj_val_switch.valid[kIdxSwitch] = UNC_VF_VALID;
KtSwitchObj.FrameValidValue(attr_value, obj_val_switch);
- EXPECT_EQ(ret, UPPL_RC_SUCCESS);
- unc::uppl::ODBCManager::clearStubData();
+ EXPECT_EQ(UPPL_RC_SUCCESS, ret);
}
-
+++ /dev/null
-#
-# Copyright (c) 2013 NEC Corporation
-# All rights reserved.
-#
-# This program and the accompanying materials are made available under the
-# terms of the Eclipse Public License v1.0 which accompanies this
-# distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
-#
-
-##
-## Makefile that stubs to run unit tests for UPPL module.
-##
-
-
-
-STUB_OBJS=stub_objs
-
-createobjs:
- mkdir -p $(STUB_OBJS)
-.NOTPARALLEL: createobjs buildall link_stub
-all: createobjs buildall link_stub
-OBJS = $(STUB_OBJS)/odbcm_mgr.o \
- $(STUB_OBJS)/tclib_module.o \
- $(STUB_OBJS)/odbcm_utils_stub.o \
- $(STUB_OBJS)/ipc_client.o \
- $(STUB_OBJS)/ipc_server.o \
- $(STUB_OBJS)/module.o \
- $(STUB_OBJS)/alarm.o \
- $(STUB_OBJS)/_cfdef_uppl_ctr_capability.o \
-
-
-buildall:
-
- @echo "****** Invoking tclib_stub makefile"
- @($(MAKE) -C ./tclib_module/ );
-
- @echo "****** Invoking ODBC makefile"
- @($(MAKE) -C ./ODBC/ )
- @echo "****** Invoking ipc_client_server_stub makefile"
- @($(MAKE) -C ./ipc_client_server/ );
- cp -rf ../../../../../dist/target/objs/modules/uppl/_cfdef_uppl_ctr_capability.o $(STUB_OBJS)
-
-clean: clearall
-
-clearall:
-
-
- @(cd ./ODBC/ ;$(MAKE) clean)
- @(cd ./ipc_client_server/ ;$(MAKE) clean)
- @(cd ./tclib_module/ ;$(MAKE) clean)
- @(cd $(STUB_OBJS) ;rm -rf stub.a)
-
-
-link_stub :$(STUB_OBJS)/stub.a
-
-$(STUB_OBJS)/stub.a :$(OBJS)
- $(AR) $(ARFLAGS) $@ $^
-
-
-
-
+++ /dev/null
-#
-#Copyright (c) 2013 NEC Corporation
-# All rights reserved.
-#
-# This program and the accompanying materials are made available under the
-# terms of the Eclipse Public License v1.0 which accompanies this
-# distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
-#
-
-##
-## Makefile that includes ODBC stub drives the production of unit tests for UPPL module.
-##
-
-
-
-CPPFLAGS = -g
-
-OBJS=../stub_objs
-
-SRC_DIR = ../../../../../../modules
-
-INCLUDE = -I$ ../stub/ODBC/include \
- -I$ ../stub/ODBC \
- -I$(SRC_DIR)/ \
- -I$(SRC_DIR)/../core/libs/libpfc_ipc \
- -I$(SRC_DIR)/../dist/target/objs/core_include \
- -I$(SRC_DIR)/../dist/target/objs/core/include \
- -I$(SRC_DIR)/../dist/target/objs/include \
- -I$(SRC_DIR)/../core/include \
- -I$(SRC_DIR)/../include/ \
- -I$(SRC_DIR)/modules \
-
-all: compile
-
-Dependent_File = odbcm_mgr.cc odbcm_utils_stub.cc
-OBJ1 = $(patsubst %.cc,$(OBJS)/%.o,$(Dependent_File))
-
-clean :
- @(cd $(OBJS); rm -rf *.o)
-
-$(OBJ1):$(OBJS)/%.o : %.cc odbcm_common.hh odbcm_db_tableschema.hh odbcm_utils_stub.hh
- $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(INCLUDE) -c $< -o $@
-
-compile :$(OBJ1)
+++ /dev/null
-/*
- * Copyright (c) 2012-2013 NEC Corporation
- * All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this
- * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
- */
-
-
-
-#ifndef _ODBCM_COMMON_HH_
-#define _ODBCM_COMMON_HH_
-
-#include <sqlext.h>
-#include <sqltypes.h>
-#include <string.h>
-#include <sys/socket.h>
-#include <netinet/in.h>
-#include <arpa/inet.h>
-#include <stdio.h>
-#include <unc/keytype.h>
-#include <pfc/log.h>
-#include <sql.h>
-#include <map>
-#include <vector>
-#include <utility>
-#include <string>
-#include "../physical_common_def.hh"
-
-namespace unc {
-namespace uppl {
-
-/**number of table present in each DB*/
-/**startup database UNC_DT_STARTUP table count*/
-#define ODBCM_MAX_STARTUP_TABLES 3
-/**candidate database UNC_DT_CANDIDATE table count*/
-#define ODBCM_MAX_CANDIDATE_TABLES 3
-/**running database UNC_DT_RUNNING table count*/
-#define ODBCM_MAX_RUNNING_TABLES 3
-/**state database UNC_DT_STATE table count*/
-#define ODBCM_MAX_STATE_TABLES 5
-/**import database UNC_DT_IMPORT table count*/
-#define ODBCM_MAX_IMPORT_TABLES 6
-/**Total number of configuration tables **/
-#define ODBCM_MAX_UPPL_TABLES 3
-/**Total number of running and state tables which are stored together in
- * running database
- */
-#define ODBCM_MAX_RUNNING_STATE_TABLES 8
-/**odbc manager's connection configuration file, which consists
- * 1. server name/ip
- * 2. name of driver
- * 3. data source name (dsn)
- * 4. connection type
- * 5. port number on which the dbms server is running
- * 6. time out
- * 7. connection time out
- * 8. user login timeout
- * 9. database username
- * 10.database user's password
- */
-#define ODBCM_CONF_FILE "odbcm.conf"
-/**relative path of ODBCM_CONF_FILE*/
-#define ODBCM_CONF_FILE_PATH "/"
-/**null string assign*/
-#define ODBCM_NULL_STRING ""
-
-// UPPL table names
-#define UPPL_CTR_TABLE "controller_table"
-#define UPPL_CTR_DOMAIN_TABLE "ctr_domain_table"
-#define UPPL_LOGICALPORT_TABLE "logicalport_table"
-#define UPPL_LOGICAL_MEMBER_PORT_TABLE "logical_member_port_table"
-#define UPPL_SWITCH_TABLE "switch_table"
-#define UPPL_PORT_TABLE "port_table"
-#define UPPL_LINK_TABLE "link_table"
-#define UPPL_BOUNDARY_TABLE "boundary_table"
-
-
-/**controller table Column names enumeration*/
-typedef enum {
- CTR_NAME = 0,
- CTR_TYPE,
- CTR_VERSION,
- CTR_DESCRIPTION,
- CTR_IP_ADDRESS,
- CTR_USER_NAME,
- CTR_PASSWORD,
- CTR_ENABLE_AUDIT,
- CTR_ACTUAL_VERSION,
- CTR_OPER_STATUS,
- CTR_VALID,
- CTR_CS_ROW_STATUS,
- CTR_CS_ATTR = 12,
- DOMAIN_NAME = 13,
- DOMAIN_TYPE,
- DOMAIN_DESCRIPTION,
- DOMAIN_OP_STATUS,
- DOMAIN_VALID,
- DOMAIN_CS_ROW_STATUS,
- DOMAIN_CS_ATTR = 19,
- LP_PORT_ID = 20,
- LP_DESCRIPTION,
- LP_PORT_TYPE,
- LP_SWITCH_ID,
- LP_PHYSICAL_PORT_ID,
- LP_OPER_DOWN_CRITERIA,
- LP_OPER_STATUS,
- LP_CTR_VALID = 27,
- LMP_SWITCH_ID = 28,
- LMP_PHYSICAL_PORT_ID,
- LMP_LP_PORT_ID = 30,
- SWITCH_ID = 31,
- SWITCH_DESCRIPTION,
- SWITCH_MODEL,
- SWITCH_IP_ADDRESS,
- SWITCH_IPV6_ADDRESS,
- SWITCH_ADMIN_STATUS,
- SWITCH_DOMAIN_NAME,
- SWITCH_MANUFACTURER,
- SWITCH_HARDWARE,
- SWITCH_SOFTWARE,
- SWITCH_ALARM_STATUS,
- SWITCH_OPER_STATUS,
- SWITCH_VALID = 43,
- PORT_ID = 44,
- PORT_NUMBER,
- PORT_DESCRIPTION,
- PORT_ADMIN_STATUS,
- PORT_DIRECTION,
- PORT_TRUNK_ALL_VLAN,
- PORT_OPER_STATUS,
- PORT_MAC_ADDRESS,
- PORT_DUPLEX,
- PORT_SPEED,
- PORT_ALARM_STATUS,
- PORT_LOGIC_PORT_ID,
- PORT_VALID = 56,
- LINK_SWITCH_ID1 = 57,
- LINK_PORT_ID1,
- LINK_SWITCH_ID2,
- LINK_PORT_ID2,
- LINK_DESCRIPTION,
- LINK_OPER_STATUS,
- LINK_VALID = 63,
- BDRY_ID = 64,
- BDRY_DESCRIPTION,
- BDRY_CTR_NAME1,
- BDRY_DM_NAME1,
- BDRY_PORT_ID1,
- BDRY_CTR_NAME2,
- BDRY_DM_NAME2,
- BDRY_PORT_ID2,
- BDRY_OPER_STATUS,
- BDRY_VALID,
- BDRY_ROW_STATUS,
- BDRY_ATTR = 75,
- UNKNOWN_COLUMN
-}ODBCMTableColumns;
-
-/*
-* odbcm tables column name struct
-*/
-typedef struct {
- const unc::uppl::ODBCMTableColumns column_id;
- const std::string column_string;
-}OdbcmColumnName;
-
-// UPPL tables column names
-// controller_table columns
-#define CTR_NAME_STR "controller_name"
-#define CTR_TYPE_STR "type"
-#define CTR_VERSION_STR "version"
-#define CTR_DESCRIPTION_STR "description"
-#define CTR_IP_ADDRESS_STR "ip_address"
-#define CTR_USER_NAME_STR "user_name"
-#define CTR_PASSWORD_STR "password"
-#define CTR_ENABLE_AUDIT_STR "enable_audit"
-#define CTR_ACTUAL_VERSION_STR "actual_version"
-#define CTR_OPER_STATUS_STR "oper_status"
-#define CTR_VALID_STR "valid"
-#define CTR_CS_ROW_STATUS_STR "cs_row_status"
-#define CTR_CS_ATTR_STR "cs_attr"
-
-// ctr_domain_table columns
-#define DOMAIN_NAME_STR "domain_name"
-#define DOMAIN_TYPE_STR "type"
-#define DOMAIN_DESCRIPTION_STR "description"
-#define DOMAIN_OP_STATUS_STR "oper_status"
-#define DOMAIN_VALID_STR "valid"
-#define DOMAIN_CS_ROW_STATUS_STR "cs_row_status"
-#define DOMAIN_CS_ATTR_STR "cs_attr"
-
-// logicalport_table columns
-#define LP_PORT_ID_STR "port_id"
-#define LP_DESCRIPTION_STR "description"
-#define LP_PORT_TYPE_STR "port_type"
-#define LP_SWITCH_ID_STR "switch_id"
-#define LP_PHYSICAL_PORT_ID_STR "physical_port_id"
-#define LP_OPER_DOWN_CRITERIA_STR "oper_down_criteria"
-#define LP_OPER_STATUS_STR "oper_status"
-#define LP_CTR_VALID_STR "valid"
-
-// logical_memberport_table columns
-#define LMP_SWITCH_ID_STR "switch_id"
-#define LMP_PHYSICAL_PORT_ID_STR "physical_port_id"
-#define LMP_LP_PORT_ID_STR "port_id"
-
-// switch table columns
-#define SWITCH_ID_STR "switch_id"
-#define SWITCH_DESCRIPTION_STR "description"
-#define SWITCH_MODEL_STR "model"
-#define SWITCH_IP_ADDRESS_STR "ip_address"
-#define SWITCH_IPV6_ADDRESS_STR "ipv6_address"
-#define SWITCH_ADMIN_STATUS_STR "admin_status"
-#define SWITCH_DOMAIN_NAME_STR "domain_name"
-#define SWITCH_MANUFACTURER_STR "manufacturer"
-#define SWITCH_HARDWARE_STR "hardware"
-#define SWITCH_SOFTWARE_STR "software"
-#define SWITCH_ALARM_STATUS_STR "alarms_status"
-#define SWITCH_OPER_STATUS_STR "oper_status"
-#define SWITCH_VALID_STR "valid"
-
-// port table columns
-#define PORT_ID_STR "port_id"
-#define PORT_NUMBER_STR "port_number"
-#define PORT_DESCRIPTION_STR "description"
-#define PORT_ADMIN_STATUS_STR "admin_status"
-#define PORT_DIRECTION_STR "direction"
-#define PORT_TRUNK_ALL_VLAN_STR "trunk_allowed_vlan"
-#define PORT_OPER_STATUS_STR "oper_status"
-#define PORT_MAC_ADDRESS_STR "mac_address"
-#define PORT_DUPLEX_STR "duplex"
-#define PORT_SPEED_STR "speed"
-#define PORT_ALARM_STATUS_STR "alarms_status"
-#define PORT_LOGIC_PORT_ID_STR "logical_port_id"
-#define PORT_VALID_STR "valid"
-
-// link_table columns
-#define LINK_SWITCH_ID1_STR "switch_id1"
-#define LINK_PORT_ID1_STR "port_id1"
-#define LINK_SWITCH_ID2_STR "switch_id2"
-#define LINK_PORT_ID2_STR "port_id2"
-#define LINK_DESCRIPTION_STR "description"
-#define LINK_OPER_STATUS_STR "oper_status"
-#define LINK_VALID_STR "valid"
-
-// boundary_table columns
-#define BDRY_ID_STR "boundary_id"
-#define BDRY_DESCRIPTION_STR "description"
-#define BDRY_CTR_NAME1_STR "controller_name1"
-#define BDRY_DM_NAME1_STR "domain_name1"
-#define BDRY_PORT_ID1_STR "logical_port_id1"
-#define BDRY_CTR_NAME2_STR "controller_name2"
-#define BDRY_DM_NAME2_STR "domain_name2"
-#define BDRY_PORT_ID2_STR "logical_port_id2"
-#define BDRY_OPER_STATUS_STR "oper_status"
-#define BDRY_VALID_STR "valid"
-#define BDRY_ROW_STATUS_STR "cs_row_status"
-#define BDRY_ATTR_STR "cs_attr"
-
-#define PHY_FINI_READ_LOCK() \
- if (PhysicalLayer::phyFiniFlag == 1) { \
- pfc_log_info("PhysicalLayer Fini is invoked already ..!!"); \
- return ODBCM_RC_GENERAL_ERROR; \
- } \
- ScopedReadWriteLock dbFiniLock(PhysicalLayer::get_phy_fini_db_lock(), \
- PFC_FALSE); \
- if (PhysicalLayer::phyFiniFlag == 1) { \
- pfc_log_info("PhysicalLayer:: Fini is invoked already ..!!"); \
- return ODBCM_RC_GENERAL_ERROR; \
- }
-
-/**Macro to fill the DBTableSchema Object instance with given input values.
- * In the case of static access. (memory might be allocated earlier, here reuse
- * the same memory*/
-#define ODBCM_FILL_ATTRIBUTE_INFO(attr_var, \
- attr_name, attr_value, attr_length, attr_type, attr_vector) \
- { \
- attr_var.table_attribute_name = attr_name; \
- attr_var.p_table_attribute_value = reinterpret_cast<void*>(&attr_value); \
- attr_var.table_attribute_length = attr_length;\
- attr_var.request_attribute_type = attr_type; \
- attr_vector.push_back(attr_var); \
- }
-
-#define ODBCM_FILL_ATTRIBUTE_INFOS(attr_var, \
- attr_name, attr_value, attr_length, attr_type, attr_vector) \
- { \
- attr_var.table_attribute_name = attr_name; \
- attr_var.p_table_attribute_value = reinterpret_cast<void*>(attr_value); \
- attr_var.table_attribute_length = attr_length;\
- attr_var.request_attribute_type = attr_type; \
- attr_vector.push_back(attr_var); \
- }
-
-/**return type of query factory methods*/
-typedef std::string SQLQUERY;
-/* To receive all data type values from ITC
- * and the same template will be filled up during the values fetch from table*/
-template <typename T>
-struct ColumnAttrValue {
- T value;
-};
-/**this structure will hold the table name, column names, datatype and values
- * template address.*/
-struct TableAttrSchema {
- ODBCMTableColumns table_attribute_name;
- // pointer to struct TableAttrValue
- void* p_table_attribute_value;
- unsigned int table_attribute_length;
- AttributeDataType request_attribute_type;
-};
-/**enum of arithmetic operators */
-typedef enum {
- UNKNOWN_OPERATOR = -1,
- EQUAL,
- NOT_EQUAL,
- GREATER,
- GREATER_EQUAL,
- LESSER,
- LESSER_EQUAL,
- MULTIPLE_QUERY
-}ODBCMOperator;
-
-/* Enum to store the table_id */
-typedef enum {
- UNKNOWN_TABLE = 0,
- CTR_TABLE,
- CTR_DOMAIN_TABLE,
- LOGICALPORT_TABLE,
- LOGICAL_MEMBERPORT_TABLE,
- SWITCH_TABLE,
- PORT_TABLE,
- LINK_TABLE,
- BOUNDARY_TABLE,
- IS_ROW_EXISTS // keep it last always
-}ODBCMTable;
-/**During commit all configuration operation, various states will be handled
- * internally, those are listed in this enum*/
-typedef enum {
- CHANGE_ROWSTATUS1,
- CHANGE_ROWSTATUS2,
- COPY_STATE_INFO, /*from running to candidate*/
- TRUNCATE_RUNNING,
- COPY_CANDIDATE_TO_RUNNING,
- COMMIT_END
-} ODBCMCommitStates;
-
-} // namespace uppl
-} // namespace unc
-
-#endif /* _ODBCM_COMMON_HH_*/
+++ /dev/null
-/*
- * Copyright (c) 2012-2013 NEC Corporation
- * All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this
- * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
- */
-
-
-/**
- * @brief ODBC Manager
- * @file odbcm_db_tableschema.hh
- *
- */
-#ifndef _ODBCM_DB_TABLESCHEMA_HH_
-#define _ODBCM_DB_TABLESCHEMA_HH_
-
-#include <unc/uppl_common.h>
-#include <string>
-#include <list>
-#include <vector>
-#include "odbcm_common.hh"
-
-namespace unc {
-namespace uppl {
-
-class DBTableSchema {
- public:
- /*
- * Constructor for DBTableSchema
- */
- DBTableSchema();
- /*
- * Destination for DBTableSchema
- */
- ~DBTableSchema();
- /*
- * This corresponds to table name in db
- */
- ODBCMTable table_name_;
- /*
- * This contains primary keys of the table
- */
- std::vector <std::string> primary_keys_;
- /*
- * This contains the list of database row information
- */
- std::list <std::vector<TableAttrSchema> > row_list_;
- /*
- * Return status from database
- */
- CsRowStatus db_return_status_;
-
- /*
- * Get the table name
- */
- ODBCMTable get_table_name();
- /*
- * Set the table name
- */
- void set_table_name(ODBCMTable table_name);
- /*
- * Get the vector containing primary keys
- */
- std::vector <std::string> get_primary_keys();
- /*
- * Get the list containing all the attribute vectors
- */
- std::list < std::vector <TableAttrSchema> >& get_row_list();
- /*
- * To push the primary keys in to primary_key vector
- */
- void PushBackToPrimaryKeysVector(std::string attribute_name);
- /*
- * To push the attribute vector to the row_list_
- */
- void PushBackToRowList(std::vector <TableAttrSchema> attributes_vector);
- /*
- * To set the primary keys
- */
- void set_primary_keys(std::vector <std::string>);
- /*
- * To set the row list
- */
- void set_row_list(std::list <std::vector<TableAttrSchema> >);
- /*
- * To push the TableAttrSchema to Attribute vector
- */
- void PushBackToTableRowVector(TableAttrSchema); // WIP
- /*
- * To free the memory in DBTableSchema
- */
- void FreeDBTableSchema();
- /*
- * Method to print the database schema information
- */
- void PrintDBTableSchema();
-
- private:
- /*
- * To print the char buffer values in DBTableSchema
- */
- inline std::string Odbcm_PrintCharBuffer(uint8_t*, int, ODBCMTableColumns);
-}; // class DBTableSchema
-
-} // namespace uppl
-} // namespace unc
-
-#endif // _ODBCM_DB_TABLESCHEMA_HH_
#ifndef _ODBCM_MGR_HH_
#define _ODBCM_MGR_HH_
+
#include <iostream>
-//#include "/root/dev_july23/src/include/unc/keytype.h"
#include <vector>
#include <map>
#include <string>
-#include "odbcm_common.hh"
-#include "odbcm_db_tableschema.hh"
+#include <odbcm_common.hh>
+#include <odbcm_db_tableschema.hh>
namespace unc {
namespace uppl {
+
class QueryFactory;
class QueryProcessor;
class DBVarbind;
class OdbcmConnectionHandler;
+
/**ODBMCManager is a class, exposes the API methods to UPPL managers and
* internal transaction coordinator (ITC)
* - Singleton class
// Closes the Read Write connections
ODBCM_RC_STATUS CloseRwConnection();
- static void stub_setResultcode(ODBCManager::Method methodType ,ODBCM_RC_STATUS res_code) {
+ static void stub_setResultcode(ODBCManager::Method methodType ,ODBCM_RC_STATUS res_code) {
method_resultcode_map.insert(std::make_pair(methodType,res_code));
}
static void stub_setSingleRecordExists(bool exists) {
- exists_=exists;
+ exists_ = exists;
+ }
+
+ static void stub_setSiblingCount(uint32_t count) {
+ sibling_count = count;
}
static void clearStubData() {
- method_resultcode_map.clear();
- }
+ method_resultcode_map.clear();
+ exists_ = false;
+ sibling_count = 0;
+ }
private:
/**constructor of ODBCManager class
ODBCM_RC_STATUS stub_getMappedResultCode(Method);
static std::map<ODBCManager::Method,ODBCM_RC_STATUS> method_resultcode_map;
static bool exists_;
+ static uint32_t sibling_count;
};
} // namespace uppl
} // namespace unc
+++ /dev/null
-/*
- * Copyright (c) 2012-2013 NEC Corporation
- * All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this
- * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
- */
-
-
-/**
- * @brief ODBC Manager
- * @file odbcm_common.hh
- *
- */
-#ifndef _ODBCM_COMMON_HH_
-#define _ODBCM_COMMON_HH_
-
-#include <sqlext.h>
-#include <sqltypes.h>
-#include <string.h>
-#include <sys/socket.h>
-#include <netinet/in.h>
-#include <arpa/inet.h>
-#include <stdio.h>
-#include <unc/keytype.h>
-#include <pfc/log.h>
-#include <sql.h>
-#include <map>
-#include <vector>
-#include <utility>
-#include <string>
-#include "physical_common_def.hh"
-
-namespace unc {
-namespace uppl {
-
-/**number of table present in each DB*/
-/**startup database UNC_DT_STARTUP table count*/
-#define ODBCM_MAX_STARTUP_TABLES 3
-/**candidate database UNC_DT_CANDIDATE table count*/
-#define ODBCM_MAX_CANDIDATE_TABLES 3
-/**running database UNC_DT_RUNNING table count*/
-#define ODBCM_MAX_RUNNING_TABLES 3
-/**state database UNC_DT_STATE table count*/
-#define ODBCM_MAX_STATE_TABLES 5
-/**import database UNC_DT_IMPORT table count*/
-#define ODBCM_MAX_IMPORT_TABLES 6
-/**Total number of configuration tables **/
-#define ODBCM_MAX_UPPL_TABLES 3
-/**Total number of running and state tables which are stored together in
- * running database
- */
-#define ODBCM_MAX_RUNNING_STATE_TABLES 8
-/**odbc manager's connection configuration file, which consists
- * 1. server name/ip
- * 2. name of driver
- * 3. data source name (dsn)
- * 4. connection type
- * 5. port number on which the dbms server is running
- * 6. time out
- * 7. connection time out
- * 8. user login timeout
- * 9. database username
- * 10.database user's password
- */
-#define ODBCM_CONF_FILE "odbcm.conf"
-/**relative path of ODBCM_CONF_FILE*/
-#define ODBCM_CONF_FILE_PATH "/"
-/**null string assign*/
-#define ODBCM_NULL_STRING ""
-
-// UPPL table names
-#define UPPL_CTR_TABLE "controller_table"
-#define UPPL_CTR_DOMAIN_TABLE "ctr_domain_table"
-#define UPPL_LOGICALPORT_TABLE "logicalport_table"
-#define UPPL_LOGICAL_MEMBER_PORT_TABLE "logical_member_port_table"
-#define UPPL_SWITCH_TABLE "switch_table"
-#define UPPL_PORT_TABLE "port_table"
-#define UPPL_LINK_TABLE "link_table"
-#define UPPL_BOUNDARY_TABLE "boundary_table"
-
-
-/**controller table Column names enumeration*/
-typedef enum {
- CTR_NAME = 0,
- CTR_TYPE,
- CTR_VERSION,
- CTR_DESCRIPTION,
- CTR_IP_ADDRESS,
- CTR_USER_NAME,
- CTR_PASSWORD,
- CTR_ENABLE_AUDIT,
- CTR_ACTUAL_VERSION,
- CTR_OPER_STATUS,
- CTR_VALID,
- CTR_CS_ROW_STATUS,
- CTR_CS_ATTR = 12,
- DOMAIN_NAME = 13,
- DOMAIN_TYPE,
- DOMAIN_DESCRIPTION,
- DOMAIN_OP_STATUS,
- DOMAIN_VALID,
- DOMAIN_CS_ROW_STATUS,
- DOMAIN_CS_ATTR = 19,
- LP_PORT_ID = 20,
- LP_DESCRIPTION,
- LP_PORT_TYPE,
- LP_SWITCH_ID,
- LP_PHYSICAL_PORT_ID,
- LP_OPER_DOWN_CRITERIA,
- LP_OPER_STATUS,
- LP_CTR_VALID = 27,
- LMP_SWITCH_ID = 28,
- LMP_PHYSICAL_PORT_ID,
- LMP_LP_PORT_ID = 30,
- SWITCH_ID = 31,
- SWITCH_DESCRIPTION,
- SWITCH_MODEL,
- SWITCH_IP_ADDRESS,
- SWITCH_IPV6_ADDRESS,
- SWITCH_ADMIN_STATUS,
- SWITCH_DOMAIN_NAME,
- SWITCH_MANUFACTURER,
- SWITCH_HARDWARE,
- SWITCH_SOFTWARE,
- SWITCH_ALARM_STATUS,
- SWITCH_OPER_STATUS,
- SWITCH_VALID = 43,
- PORT_ID = 44,
- PORT_NUMBER,
- PORT_DESCRIPTION,
- PORT_ADMIN_STATUS,
- PORT_DIRECTION,
- PORT_TRUNK_ALL_VLAN,
- PORT_OPER_STATUS,
- PORT_MAC_ADDRESS,
- PORT_DUPLEX,
- PORT_SPEED,
- PORT_ALARM_STATUS,
- PORT_LOGIC_PORT_ID,
- PORT_VALID = 56,
- LINK_SWITCH_ID1 = 57,
- LINK_PORT_ID1,
- LINK_SWITCH_ID2,
- LINK_PORT_ID2,
- LINK_DESCRIPTION,
- LINK_OPER_STATUS,
- LINK_VALID = 63,
- BDRY_ID = 64,
- BDRY_DESCRIPTION,
- BDRY_CTR_NAME1,
- BDRY_DM_NAME1,
- BDRY_PORT_ID1,
- BDRY_CTR_NAME2,
- BDRY_DM_NAME2,
- BDRY_PORT_ID2,
- BDRY_OPER_STATUS,
- BDRY_VALID,
- BDRY_ROW_STATUS,
- BDRY_ATTR = 75,
- UNKNOWN_COLUMN
-}ODBCMTableColumns;
-
-/*
-* odbcm tables column name struct
-*/
-typedef struct {
- const unc::uppl::ODBCMTableColumns column_id;
- const std::string column_string;
-}OdbcmColumnName;
-
-// UPPL tables column names
-// controller_table columns
-#define CTR_NAME_STR "controller_name"
-#define CTR_TYPE_STR "type"
-#define CTR_VERSION_STR "version"
-#define CTR_DESCRIPTION_STR "description"
-#define CTR_IP_ADDRESS_STR "ip_address"
-#define CTR_USER_NAME_STR "user_name"
-#define CTR_PASSWORD_STR "password"
-#define CTR_ENABLE_AUDIT_STR "enable_audit"
-#define CTR_ACTUAL_VERSION_STR "actual_version"
-#define CTR_OPER_STATUS_STR "oper_status"
-#define CTR_VALID_STR "valid"
-#define CTR_CS_ROW_STATUS_STR "cs_row_status"
-#define CTR_CS_ATTR_STR "cs_attr"
-
-// ctr_domain_table columns
-#define DOMAIN_NAME_STR "domain_name"
-#define DOMAIN_TYPE_STR "type"
-#define DOMAIN_DESCRIPTION_STR "description"
-#define DOMAIN_OP_STATUS_STR "oper_status"
-#define DOMAIN_VALID_STR "valid"
-#define DOMAIN_CS_ROW_STATUS_STR "cs_row_status"
-#define DOMAIN_CS_ATTR_STR "cs_attr"
-
-// logicalport_table columns
-#define LP_PORT_ID_STR "port_id"
-#define LP_DESCRIPTION_STR "description"
-#define LP_PORT_TYPE_STR "port_type"
-#define LP_SWITCH_ID_STR "switch_id"
-#define LP_PHYSICAL_PORT_ID_STR "physical_port_id"
-#define LP_OPER_DOWN_CRITERIA_STR "oper_down_criteria"
-#define LP_OPER_STATUS_STR "oper_status"
-#define LP_CTR_VALID_STR "valid"
-
-// logical_memberport_table columns
-#define LMP_SWITCH_ID_STR "switch_id"
-#define LMP_PHYSICAL_PORT_ID_STR "physical_port_id"
-#define LMP_LP_PORT_ID_STR "port_id"
-
-// switch table columns
-#define SWITCH_ID_STR "switch_id"
-#define SWITCH_DESCRIPTION_STR "description"
-#define SWITCH_MODEL_STR "model"
-#define SWITCH_IP_ADDRESS_STR "ip_address"
-#define SWITCH_IPV6_ADDRESS_STR "ipv6_address"
-#define SWITCH_ADMIN_STATUS_STR "admin_status"
-#define SWITCH_DOMAIN_NAME_STR "domain_name"
-#define SWITCH_MANUFACTURER_STR "manufacturer"
-#define SWITCH_HARDWARE_STR "hardware"
-#define SWITCH_SOFTWARE_STR "software"
-#define SWITCH_ALARM_STATUS_STR "alarms_status"
-#define SWITCH_OPER_STATUS_STR "oper_status"
-#define SWITCH_VALID_STR "valid"
-
-// port table columns
-#define PORT_ID_STR "port_id"
-#define PORT_NUMBER_STR "port_number"
-#define PORT_DESCRIPTION_STR "description"
-#define PORT_ADMIN_STATUS_STR "admin_status"
-#define PORT_DIRECTION_STR "direction"
-#define PORT_TRUNK_ALL_VLAN_STR "trunk_allowed_vlan"
-#define PORT_OPER_STATUS_STR "oper_status"
-#define PORT_MAC_ADDRESS_STR "mac_address"
-#define PORT_DUPLEX_STR "duplex"
-#define PORT_SPEED_STR "speed"
-#define PORT_ALARM_STATUS_STR "alarms_status"
-#define PORT_LOGIC_PORT_ID_STR "logical_port_id"
-#define PORT_VALID_STR "valid"
-
-// link_table columns
-#define LINK_SWITCH_ID1_STR "switch_id1"
-#define LINK_PORT_ID1_STR "port_id1"
-#define LINK_SWITCH_ID2_STR "switch_id2"
-#define LINK_PORT_ID2_STR "port_id2"
-#define LINK_DESCRIPTION_STR "description"
-#define LINK_OPER_STATUS_STR "oper_status"
-#define LINK_VALID_STR "valid"
-
-// boundary_table columns
-#define BDRY_ID_STR "boundary_id"
-#define BDRY_DESCRIPTION_STR "description"
-#define BDRY_CTR_NAME1_STR "controller_name1"
-#define BDRY_DM_NAME1_STR "domain_name1"
-#define BDRY_PORT_ID1_STR "logical_port_id1"
-#define BDRY_CTR_NAME2_STR "controller_name2"
-#define BDRY_DM_NAME2_STR "domain_name2"
-#define BDRY_PORT_ID2_STR "logical_port_id2"
-#define BDRY_OPER_STATUS_STR "oper_status"
-#define BDRY_VALID_STR "valid"
-#define BDRY_ROW_STATUS_STR "cs_row_status"
-#define BDRY_ATTR_STR "cs_attr"
-
-#define PHY_FINI_READ_LOCK() \
- if (PhysicalLayer::phyFiniFlag == 1) { \
- pfc_log_info("PhysicalLayer Fini is invoked already ..!!"); \
- return ODBCM_RC_GENERAL_ERROR; \
- } \
- ScopedReadWriteLock dbFiniLock(PhysicalLayer::get_phy_fini_db_lock(), \
- PFC_FALSE); \
- if (PhysicalLayer::phyFiniFlag == 1) { \
- pfc_log_info("PhysicalLayer:: Fini is invoked already ..!!"); \
- return ODBCM_RC_GENERAL_ERROR; \
- }
-
-/**Macro to fill the DBTableSchema Object instance with given input values.
- * In the case of static access. (memory might be allocated earlier, here reuse
- * the same memory*/
-#define ODBCM_FILL_ATTRIBUTE_INFO(attr_var, \
- attr_name, attr_value, attr_length, attr_type, attr_vector) \
- { \
- attr_var.table_attribute_name = attr_name; \
- attr_var.p_table_attribute_value = reinterpret_cast<void*>(&attr_value); \
- attr_var.table_attribute_length = attr_length;\
- attr_var.request_attribute_type = attr_type; \
- attr_vector.push_back(attr_var); \
- }
-
-#define ODBCM_FILL_ATTRIBUTE_INFOS(attr_var, \
- attr_name, attr_value, attr_length, attr_type, attr_vector) \
- { \
- attr_var.table_attribute_name = attr_name; \
- attr_var.p_table_attribute_value = reinterpret_cast<void*>(attr_value); \
- attr_var.table_attribute_length = attr_length;\
- attr_var.request_attribute_type = attr_type; \
- attr_vector.push_back(attr_var); \
- }
-
-/**return type of query factory methods*/
-typedef std::string SQLQUERY;
-/* To receive all data type values from ITC
- * and the same template will be filled up during the values fetch from table*/
-template <typename T>
-struct ColumnAttrValue {
- T value;
-};
-/**this structure will hold the table name, column names, datatype and values
- * template address.*/
-struct TableAttrSchema {
- ODBCMTableColumns table_attribute_name;
- // pointer to struct TableAttrValue
- void* p_table_attribute_value;
- unsigned int table_attribute_length;
- AttributeDataType request_attribute_type;
-};
-/**enum of arithmetic operators */
-typedef enum {
- UNKNOWN_OPERATOR = -1,
- EQUAL,
- NOT_EQUAL,
- GREATER,
- GREATER_EQUAL,
- LESSER,
- LESSER_EQUAL,
- MULTIPLE_QUERY
-}ODBCMOperator;
-
-/* Enum to store the table_id */
-typedef enum {
- UNKNOWN_TABLE = 0,
- CTR_TABLE,
- CTR_DOMAIN_TABLE,
- LOGICALPORT_TABLE,
- LOGICAL_MEMBERPORT_TABLE,
- SWITCH_TABLE,
- PORT_TABLE,
- LINK_TABLE,
- BOUNDARY_TABLE,
- IS_ROW_EXISTS // keep it last always
-}ODBCMTable;
-/**During commit all configuration operation, various states will be handled
- * internally, those are listed in this enum*/
-typedef enum {
- CHANGE_ROWSTATUS1,
- CHANGE_ROWSTATUS2,
- COPY_STATE_INFO, /*from running to candidate*/
- TRUNCATE_RUNNING,
- COPY_CANDIDATE_TO_RUNNING,
- COMMIT_END
-} ODBCMCommitStates;
-
-} // namespace uppl
-} // namespace unc
-
-#endif /* _ODBCM_COMMON_HH_*/
+++ /dev/null
-/*
- * Copyright (c) 2012-2013 NEC Corporation
- * All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this
- * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
- */
-
-
-/**
- * @brief ODBC Manager
- * @file odbcm_db_tableschema.hh
- *
- */
-#ifndef _ODBCM_DB_TABLESCHEMA_HH_
-#define _ODBCM_DB_TABLESCHEMA_HH_
-
-#include <unc/uppl_common.h>
-#include <string>
-#include <list>
-#include <vector>
-#include "odbcm_common.hh"
-
-namespace unc {
-namespace uppl {
-
-class DBTableSchema {
- public:
- /*
- * Constructor for DBTableSchema
- */
- DBTableSchema();
- /*
- * Destination for DBTableSchema
- */
- ~DBTableSchema();
- /*
- * This corresponds to table name in db
- */
- ODBCMTable table_name_;
- /*
- * This contains primary keys of the table
- */
- std::vector <std::string> primary_keys_;
- /*
- * This contains the list of database row information
- */
- std::list <std::vector<TableAttrSchema> > row_list_;
- /*
- * Return status from database
- */
- CsRowStatus db_return_status_;
-
- /*
- * Get the table name
- */
- ODBCMTable get_table_name();
- /*
- * Set the table name
- */
- void set_table_name(ODBCMTable table_name);
- /*
- * Get the vector containing primary keys
- */
- std::vector <std::string> get_primary_keys();
- /*
- * Get the list containing all the attribute vectors
- */
- std::list < std::vector <TableAttrSchema> >& get_row_list();
- /*
- * To push the primary keys in to primary_key vector
- */
- void PushBackToPrimaryKeysVector(std::string attribute_name);
- /*
- * To push the attribute vector to the row_list_
- */
- void PushBackToRowList(std::vector <TableAttrSchema> attributes_vector);
- /*
- * To set the primary keys
- */
- void set_primary_keys(std::vector <std::string>);
- /*
- * To set the row list
- */
- void set_row_list(std::list <std::vector<TableAttrSchema> >);
- /*
- * To push the TableAttrSchema to Attribute vector
- */
- void PushBackToTableRowVector(TableAttrSchema); // WIP
- /*
- * To free the memory in DBTableSchema
- */
- void FreeDBTableSchema();
- /*
- * Method to print the database schema information
- */
- void PrintDBTableSchema();
-
- private:
- /*
- * To print the char buffer values in DBTableSchema
- */
- inline std::string Odbcm_PrintCharBuffer(uint8_t*, int, ODBCMTableColumns);
-}; // class DBTableSchema
-
-} // namespace uppl
-} // namespace unc
-
-#endif // _ODBCM_DB_TABLESCHEMA_HH_
+++ /dev/null
-/*
- * Copyright (c) 2012-2013 NEC Corporation
- * All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this
- * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
- */
-
-
-#include "include/odbcm_mgr.hh"
-
-namespace unc {
-namespace uppl {
-std::map<ODBCManager::Method,ODBCM_RC_STATUS> ODBCManager::method_resultcode_map;
-bool ODBCManager::exists_=false;
-ODBCManager::ODBCManager(void) {
-
-}
-
-ODBCManager::~ODBCManager(void) {
-
-}
-
-ODBCM_RC_STATUS ODBCManager::stub_getMappedResultCode(ODBCManager::Method methodType) {
-
- if (0 != method_resultcode_map.count(methodType))
- {
- return method_resultcode_map[methodType];
- }
- return ODBCM_RC_GENERAL_ERROR;
-}
-
-ODBCM_RC_STATUS ODBCManager::ODBCM_Initialize() {
- return ODBCM_RC_SUCCESS;
-}
-
-ODBCM_RC_STATUS ODBCManager::CloseRwConnection() {
-return ODBCM_RC_SUCCESS;
-}
-
-ODBCManager* ODBCManager::get_ODBCManager() {
- /*Allocate the memory for ODBCManager only if its NULL*/
- ODBCManager *obj;
- if (obj == NULL) {
- obj = new ODBCManager();
- if (NULL == obj) {
- pfc_log_fatal("ODBCM::ODBCManager::get_ODBCManager: "
- "Error in memory allocation for ODBCManager_ !!! ");
- return NULL;
- }
- }
- return obj;
-}
-ODBCM_RC_STATUS ODBCManager::OpenDBConnection(
- OdbcmConnectionHandler *conn_obj) {
- return ODBCM_RC_SUCCESS;
-}
-
-ODBCM_RC_STATUS ODBCManager::CloseDBConnection(
- OdbcmConnectionHandler *conn_obj) {
-return ODBCM_RC_SUCCESS;
-}
-
-std::string ODBCManager::GetTableName(ODBCMTable table_id) {
- switch (table_id) {
- case CTR_TABLE:
- return UPPL_CTR_TABLE;
- case CTR_DOMAIN_TABLE:
- return UPPL_CTR_DOMAIN_TABLE;
- case LOGICALPORT_TABLE:
- return UPPL_LOGICALPORT_TABLE;
- case LOGICAL_MEMBERPORT_TABLE:
- return UPPL_LOGICAL_MEMBER_PORT_TABLE;
- case SWITCH_TABLE:
- return UPPL_SWITCH_TABLE;
- case PORT_TABLE:
- return UPPL_PORT_TABLE;
- case LINK_TABLE:
- return UPPL_LINK_TABLE;
- case BOUNDARY_TABLE:
- return UPPL_BOUNDARY_TABLE;
- default:
- return "";
- }
-}
-
-std::string ODBCManager::GetColumnName(ODBCMTableColumns col_id) {
- return "";
-}
-
-
-ODBCM_RC_STATUS ODBCManager::IsRowExists(unc_keytype_datatype_t/**Database type*/,
- DBTableSchema&
- /**object which carries the table,
- * pkeys,column names with data type*/,
- OdbcmConnectionHandler *conn_obj) {
- return stub_getMappedResultCode(ODBCManager::ISROWEXISTS);
-}
-
-ODBCM_RC_STATUS ODBCManager::CreateOneRow(unc_keytype_datatype_t/**Database type*/,
- DBTableSchema&
- /**object which carries the table
- * ,pkeys,column names with data type*/,
- OdbcmConnectionHandler *conn_obj) {
-return stub_getMappedResultCode(ODBCManager::CREATEONEROW);
-}
-
-ODBCM_RC_STATUS ODBCManager::UpdateOneRow(unc_keytype_datatype_t/**Database type*/,
- DBTableSchema&
- /**object which carries the table,pkeys,
- * column names with data type*/,
- OdbcmConnectionHandler *conn_obj,
- bool IsInternal ) {
-return stub_getMappedResultCode(ODBCManager::UPDATEONEROW);
-}
-
-ODBCM_RC_STATUS ODBCManager::DeleteOneRow(unc_keytype_datatype_t/**Database type*/,
- DBTableSchema&
- /**object which carries the table,pkeys,
- * column names with data type*/,
- OdbcmConnectionHandler *conn_obj) {
-return stub_getMappedResultCode(ODBCManager::DELETEONEROW);
-}
-
-ODBCM_RC_STATUS ODBCManager::GetOneRow(unc_keytype_datatype_t/**Database type*/,
- DBTableSchema&
- /*object which carries the table,
- pkeys,column names with data type*/,
- OdbcmConnectionHandler *conn_obj) {
-return stub_getMappedResultCode(ODBCManager::GETONEROW);
-}
-
-ODBCM_RC_STATUS ODBCManager::GetBulkRows(unc_keytype_datatype_t/**Database type*/,
- uint32_t,
- DBTableSchema&
- /*object which carries the table,
- pkeys,column names with data type*/,
- unc_keytype_operation_t /**operation type*/,
- OdbcmConnectionHandler *conn_obj) {
-return stub_getMappedResultCode(ODBCManager::GETBULKROWS);
-}
-
-ODBCM_RC_STATUS ODBCManager::GetRowCount(unc_keytype_datatype_t/**Database type*/,
- std::string/** name of the table*/,
- uint32_t& /**return value count*/,
- OdbcmConnectionHandler *conn_obj) {
-return stub_getMappedResultCode(ODBCManager::GETROWCOUNT);
-}
-
-ODBCM_RC_STATUS ODBCManager::ClearOneRow(unc_keytype_datatype_t/**Database type*/,
- DBTableSchema&
- /**object which carries the table,
- pkeys,column names with data type*/,
- OdbcmConnectionHandler *conn_obj) {
-return stub_getMappedResultCode(ODBCManager::CLEARONEROW);
-}
-
-ODBCM_RC_STATUS ODBCManager::GetSiblingCount(unc_keytype_datatype_t/**Database type*/,
- DBTableSchema&
- /**object which carries the
- table,pkeys,column names with data type*/,
- uint32_t& count/**return value count*/,
- OdbcmConnectionHandler *conn_obj) {
-return stub_getMappedResultCode(ODBCManager::GETSIBLINGCOUNT);
-}
-
-ODBCM_RC_STATUS ODBCManager::GetSiblingCount(unc_keytype_datatype_t/**Database type*/,
- DBTableSchema&
- /**object which carries the
- table,pkeys,column names with data type*/,
- uint32_t& /**return value count*/,
- std::vector<ODBCMOperator>
- /**operator to decide
- the filter while framing query (where
- clause) */,
- OdbcmConnectionHandler *conn_obj) {
-return stub_getMappedResultCode(ODBCManager::GETSIBLINGCOUNT_FILTER);
-}
-
-ODBCM_RC_STATUS ODBCManager::GetSiblingRows(unc_keytype_datatype_t/**database type */,
- uint32_t/**maximum repetition count*/,
- DBTableSchema&
- /**object which carries the
- table,pkeys,column names with data type*/,
- std::vector<ODBCMOperator>
- /*arithmetic operators to frame read sibling query*/,
- unc_keytype_operation_t
- /**operation type siblingbegin/sibling*/,
- OdbcmConnectionHandler *conn_obj) {
-return stub_getMappedResultCode(ODBCManager::GETSIBLINGROWS);
-}
-
-ODBCM_RC_STATUS ODBCManager::GetModifiedRows(unc_keytype_datatype_t /**Database type*/,
- DBTableSchema&
- /**object which carries the
- table,pkeys,column names with data type*/,
- OdbcmConnectionHandler *conn_obj) {
-return stub_getMappedResultCode(ODBCManager::GETMODIFIEDROWS);
-}
-
-ODBCM_RC_STATUS ODBCManager::CopyDatabase(unc_keytype_datatype_t /**Database type*/,
- unc_keytype_datatype_t /**Database type*/,
- OdbcmConnectionHandler *conn_obj) {
-return stub_getMappedResultCode(ODBCManager::COPYDATABASE);
-}
- /**To clear given key instance rows in all the tables in DB*/
-ODBCM_RC_STATUS ODBCManager::ClearOneInstance(unc_keytype_datatype_t /**Database type*/,
- std::string controller_name /**keyvalue*/,
- OdbcmConnectionHandler *conn_obj) {
-return stub_getMappedResultCode(ODBCManager::CLEARONEINSTANCE);
-}
- /**clear the entries in the database tables.*/
-ODBCM_RC_STATUS ODBCManager::ClearDatabase(unc_keytype_datatype_t /**Database type*/,
- OdbcmConnectionHandler *conn_obj) {
-return stub_getMappedResultCode(ODBCManager::CLEARDATABASE);
-}
-
-ODBCM_RC_STATUS ODBCManager::IsCandidateDirty(OdbcmConnectionHandler *conn_obj) {
-return stub_getMappedResultCode(ODBCManager::ISCANDIDATEDIRTY);
-}
-
-ODBCM_RC_STATUS ODBCManager::CommitAllConfiguration(unc_keytype_datatype_t
- /**Database type*/,
- unc_keytype_datatype_t
- /**Database type*/,
- OdbcmConnectionHandler *conn_obj) {
-return stub_getMappedResultCode(ODBCManager::COMMITALLCONFIG);
-}
-
-} // namespace uppl
-} // namespace unc
--- /dev/null
+/*
+ * Copyright (c) 2012-2013 NEC Corporation
+ * All rights reserved.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this
+ * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
+ */
+
+
+#include "include/odbcm_mgr.hh"
+
+namespace unc {
+namespace uppl {
+
+ODBCManager *ODBCManager::ODBCManager_ = NULL;
+std::map<ODBCManager::Method,ODBCM_RC_STATUS> ODBCManager::method_resultcode_map;
+bool ODBCManager::exists_=false;
+uint32_t ODBCManager::sibling_count = 0;
+
+ODBCManager::ODBCManager(void)
+{
+}
+
+ODBCManager::~ODBCManager(void)
+{
+}
+
+ODBCM_RC_STATUS
+ODBCManager::stub_getMappedResultCode(ODBCManager::Method methodType)
+{
+ if (0 != method_resultcode_map.count(methodType)) {
+ return method_resultcode_map[methodType];
+ }
+ return ODBCM_RC_GENERAL_ERROR;
+}
+
+ODBCM_RC_STATUS
+ODBCManager::ODBCM_Initialize()
+{
+ return ODBCM_RC_SUCCESS;
+}
+
+ODBCM_RC_STATUS
+ODBCManager::CloseRwConnection()
+{
+ return ODBCM_RC_SUCCESS;
+}
+
+ODBCManager *
+ODBCManager::get_ODBCManager()
+{
+ /*Allocate the memory for ODBCManager only if its NULL*/
+ ODBCManager *obj(ODBCManager_);
+ if (obj == NULL) {
+ obj = new ODBCManager();
+ if (NULL == obj) {
+ pfc_log_fatal("ODBCM::ODBCManager::get_ODBCManager: "
+ "Error in memory allocation for ODBCManager_ !!! ");
+ return NULL;
+ }
+ ODBCManager_ = obj;
+ }
+
+ return obj;
+}
+
+ODBCM_RC_STATUS
+ODBCManager::OpenDBConnection(OdbcmConnectionHandler *conn_obj)
+{
+ return ODBCM_RC_SUCCESS;
+}
+
+ODBCM_RC_STATUS
+ODBCManager::CloseDBConnection(OdbcmConnectionHandler *conn_obj)
+{
+ return ODBCM_RC_SUCCESS;
+}
+
+std::string
+ODBCManager::GetTableName(ODBCMTable table_id)
+{
+ switch (table_id) {
+ case CTR_TABLE:
+ return UPPL_CTR_TABLE;
+ case CTR_DOMAIN_TABLE:
+ return UPPL_CTR_DOMAIN_TABLE;
+ case LOGICALPORT_TABLE:
+ return UPPL_LOGICALPORT_TABLE;
+ case LOGICAL_MEMBERPORT_TABLE:
+ return UPPL_LOGICAL_MEMBER_PORT_TABLE;
+ case SWITCH_TABLE:
+ return UPPL_SWITCH_TABLE;
+ case PORT_TABLE:
+ return UPPL_PORT_TABLE;
+ case LINK_TABLE:
+ return UPPL_LINK_TABLE;
+ case BOUNDARY_TABLE:
+ return UPPL_BOUNDARY_TABLE;
+ default:
+ return "";
+ }
+}
+
+std::string
+ODBCManager::GetColumnName(ODBCMTableColumns col_id)
+{
+ return "";
+}
+
+
+ODBCM_RC_STATUS
+ODBCManager::IsRowExists(unc_keytype_datatype_t, DBTableSchema&,
+ OdbcmConnectionHandler *conn_obj)
+{
+ return stub_getMappedResultCode(ODBCManager::ISROWEXISTS);
+}
+
+ODBCM_RC_STATUS
+ODBCManager::CreateOneRow(unc_keytype_datatype_t, DBTableSchema&,
+ OdbcmConnectionHandler *conn_obj)
+{
+ return stub_getMappedResultCode(ODBCManager::CREATEONEROW);
+}
+
+ODBCM_RC_STATUS
+ODBCManager::UpdateOneRow(unc_keytype_datatype_t, DBTableSchema&,
+ OdbcmConnectionHandler *conn_obj, bool IsInternal)
+{
+ return stub_getMappedResultCode(ODBCManager::UPDATEONEROW);
+}
+
+ODBCM_RC_STATUS
+ODBCManager::DeleteOneRow(unc_keytype_datatype_t, DBTableSchema&,
+ OdbcmConnectionHandler *conn_obj)
+{
+ return stub_getMappedResultCode(ODBCManager::DELETEONEROW);
+}
+
+ODBCM_RC_STATUS
+ODBCManager::GetOneRow(unc_keytype_datatype_t, DBTableSchema&,
+ OdbcmConnectionHandler *conn_obj)
+{
+ return stub_getMappedResultCode(ODBCManager::GETONEROW);
+}
+
+ODBCM_RC_STATUS
+ODBCManager::GetBulkRows(unc_keytype_datatype_t, uint32_t, DBTableSchema&,
+ unc_keytype_operation_t,
+ OdbcmConnectionHandler *conn_obj)
+{
+ return stub_getMappedResultCode(ODBCManager::GETBULKROWS);
+}
+
+ODBCM_RC_STATUS
+ODBCManager::GetRowCount(unc_keytype_datatype_t, std::string,
+ uint32_t&, OdbcmConnectionHandler *conn_obj)
+{
+ return stub_getMappedResultCode(ODBCManager::GETROWCOUNT);
+}
+
+ODBCM_RC_STATUS
+ODBCManager::ClearOneRow(unc_keytype_datatype_t, DBTableSchema&,
+ OdbcmConnectionHandler *conn_obj)
+{
+ return stub_getMappedResultCode(ODBCManager::CLEARONEROW);
+}
+
+ODBCM_RC_STATUS
+ODBCManager::GetSiblingCount(unc_keytype_datatype_t, DBTableSchema&,
+ uint32_t &count, OdbcmConnectionHandler *conn_obj)
+{
+ count = sibling_count;
+ return stub_getMappedResultCode(ODBCManager::GETSIBLINGCOUNT);
+}
+
+ODBCM_RC_STATUS
+ODBCManager::GetSiblingCount(unc_keytype_datatype_t, DBTableSchema&,
+ uint32_t &count, std::vector<ODBCMOperator>,
+ OdbcmConnectionHandler *conn_obj)
+{
+ count = sibling_count;
+ return stub_getMappedResultCode(ODBCManager::GETSIBLINGCOUNT_FILTER);
+}
+
+ODBCM_RC_STATUS
+ODBCManager::GetSiblingRows(unc_keytype_datatype_t, uint32_t,
+ DBTableSchema&, std::vector<ODBCMOperator>,
+ unc_keytype_operation_t,
+ OdbcmConnectionHandler *conn_obj)
+{
+ return stub_getMappedResultCode(ODBCManager::GETSIBLINGROWS);
+}
+
+ODBCM_RC_STATUS
+ODBCManager::GetModifiedRows(unc_keytype_datatype_t, DBTableSchema&,
+ OdbcmConnectionHandler *conn_obj)
+{
+ return stub_getMappedResultCode(ODBCManager::GETMODIFIEDROWS);
+}
+
+ODBCM_RC_STATUS
+ODBCManager::CopyDatabase(unc_keytype_datatype_t, unc_keytype_datatype_t,
+ OdbcmConnectionHandler *conn_obj)
+{
+ return stub_getMappedResultCode(ODBCManager::COPYDATABASE);
+}
+
+/**To clear given key instance rows in all the tables in DB*/
+ODBCM_RC_STATUS
+ODBCManager::ClearOneInstance(unc_keytype_datatype_t,
+ std::string controller_name,
+ OdbcmConnectionHandler *conn_obj)
+{
+ return stub_getMappedResultCode(ODBCManager::CLEARONEINSTANCE);
+}
+
+/**clear the entries in the database tables.*/
+ODBCM_RC_STATUS
+ODBCManager::ClearDatabase(unc_keytype_datatype_t,
+ OdbcmConnectionHandler *conn_obj)
+{
+ return stub_getMappedResultCode(ODBCManager::CLEARDATABASE);
+}
+
+ODBCM_RC_STATUS
+ODBCManager::IsCandidateDirty(OdbcmConnectionHandler *conn_obj)
+{
+ return stub_getMappedResultCode(ODBCManager::ISCANDIDATEDIRTY);
+}
+
+ODBCM_RC_STATUS
+ODBCManager::CommitAllConfiguration(unc_keytype_datatype_t,
+ unc_keytype_datatype_t,
+ OdbcmConnectionHandler *conn_obj)
+{
+ return stub_getMappedResultCode(ODBCManager::COMMITALLCONFIG);
+}
+
+} // namespace uppl
+} // namespace unc
* @brief ODBC Manager
* @file odbcm_utils.cc
*/
-#include <sys/socket.h>
-#include <arpa/inet.h>
-#include "odbcm_common.hh"
+#include <sys/socket.h>
+#include <arpa/inet.h>
+#include <odbcm_common.hh>
#include "odbcm_utils_stub.hh"
-#include "physical_common_def.hh"
-//#include "odbcm_db_varbind.hh"
+#include <physical_common_def.hh>
namespace unc {
namespace uppl {
#include <map>
#include <string>
-#include "odbcm_common.hh"
-#include "odbcm_db_tableschema.hh"
+#include <odbcm_common.hh>
+#include <odbcm_db_tableschema.hh>
namespace unc {
namespace uppl {
+++ /dev/null
-/*
- * Copyright (c) 2012-2013 NEC Corporation
- * All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this
- * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
- */
-
-
-/**
- * @brief Physical Common Header
- * @file Physical_common_def.hh
- *
- */
-
-#ifndef _PHYSICAL_COMMON_DEF_HH_
-#define _PHYSICAL_COMMON_DEF_HH_
-#include <pfc/pfc.h>
-#include <unc/unc_events.h>
-#include <string>
-
-#define UPPL_IPC_NOTIFICATION_HANDLER_NAME "UpplNotificationManager"
-#define PFCDRIVER_IPC_CHN_NAME "drvpfcd"
-#define PFCDRIVER_IPC_SVC_NAME "pfcdriver"
-#define VNPDRIVER_IPC_CHN_NAME "drvvnpd"
-#define VNPDRIVER_IPC_SVC_NAME "vnpdriver"
-#define UPLL_IPC_CHN_NAME "lgcnwd"
-#define UPLL_IPC_SVC_NAME "upll"
-#define TCLIB_MODULE_NAME "tclib"
-
-const unsigned int UPPL_MAX_REP_CT = 10000;
-/*
- * @brief Operation Type
- */
-
-typedef enum {
- CREATEONEROW = 0,
- UPDATEONEROW,
- DELETEONEROW,
- CLEARONEROW,
- GETONEROW,
- GETBULKROWS,
- GETSIBLINGCOUNT,
- GETSIBLINGCOUNT_FILTER,
- GETSIBLINGROWS,
- GETROWCOUNT,
- COPYDATABASE,
- CLEARDATABASE,
- // MERGEDATABASE,
- ISCANDIDATEDIRTY,
- ISROWEXISTS,
- GETMODIFIEDROWS,
- COMMITALLCONFIG,
- CLEARONEINSTANCE,
- CLEARALLROWS
-}UpplDbOperationType;
-
-typedef enum {
- ODBCM_RC_SQL_INVALID_HANDLE = -2,
- ODBCM_RC_QUERY_FAILED = -1,
- ODBCM_RC_SUCCESS = 0,
- ODBCM_RC_SUCCESS_WITH_INFO,
- ODBCM_RC_QUERY_STILL_EXECUTING = 2,
- ODBCM_RC_FAILED,
- ODBCM_RC_COMMON_LINK_FAILURE,
- ODBCM_RC_CONNECTION_ERROR,
- ODBCM_RC_CONNECTION_TIMEOUT,
- ODBCM_RC_CONNECTION_IN_USE,
- ODBCM_RC_SERIALIZATION_ERROR,
- ODBCM_RC_INVALID_CONN_HANDLE,
- ODBCM_RC_QUERY_TIMEOUT,
- ODBCM_RC_ERROR_IN_FRAMEQUERY,
- ODBCM_RC_INVALID_TABLE_NAME,
- ODBCM_RC_INVALID_DB_OPERATION,
- ODBCM_RC_PKEY_VIOLATION,
- ODBCM_RC_MEMORY_ERROR,
- ODBCM_RC_TABLE_NOT_FOUND,
- ODBCM_RC_RECORD_NOT_FOUND,
- ODBCM_RC_DATA_ERROR,
- ODBCM_RC_RECORD_NO_MORE,
- ODBCM_RC_NO_RECORD,
- ODBCM_RC_ERROR_FETCHING_ROW,
- ODBCM_RC_STMT_ERROR,
- ODBCM_RC_DISCONNECT_ERROR,
- ODBCM_RC_RECORD_ALREADY_EXISTS,
- ODBCM_RC_CONN_ENV_ERROR,
- ODBCM_RC_CONN_HANDLE_ERROR,
- ODBCM_RC_GENERAL_ERROR,
- ODBCM_RC_PARAM_BIND_ERROR,
- ODBCM_RC_WRONG_PARAM,
- ODBCM_RC_MORE_ROWS_FOUND,
- ODBCM_RC_ROW_EXISTS,
- ODBCM_RC_ROW_NOT_EXISTS,
- ODBCM_RC_CANDIDATE_DIRTY,
- ODBCM_RC_CANDIDATE_NO_DIRTY,
- ODBCM_RC_SQL_ERROR,
- ODBCM_RC_ROW_STATUS_NOT_FOUND,
- ODBCM_RC_COLUMN_DOES_NOT_MATCH,
- ODBCM_RC_PREPARED_STMT_ERROR,
- ODBCM_RC_TYPE_ATTR_VIOLATION,
- ODBCM_RC_INVALID_DESC,
- ODBCM_RC_UNABLE_ESTABLISH_CONN,
- ODBCM_RC_CONNECTION_REJECTED,
- ODBCM_RC_INSERT_VAL_LIST_NOT_MATCHED,
- ODBCM_RC_DATA_TRUNCATION_ERROR,
- ODBCM_RC_VARIABLE_NOT_SUPPLIED,
- ODBCM_RC_VALUE_OUT_OF_RANGE,
- ODBCM_RC_DATETIME_ERROR,
- ODBCM_RC_DIVISIBLE_ERROR,
- ODBCM_RC_FIELD_OVERFLOW,
- ODBCM_RC_INVALID_CHAR_SPEC,
- ODBCM_RC_CURSOR_STATE,
- ODBCM_RC_INVALID_CURSOR,
- ODBCM_RC_SYNTAX_ERROR,
- ODBCM_RC_INDEX_NOT_FOUND,
- ODBCM_RC_COLUMN_ALREADY_EXISTS,
- ODBCM_RC_COLUMN_NOT_FOUND,
- ODBCM_RC_NULL_POINTER_ERROR,
- ODBCM_RC_FUNC_SEQUENCE_ERROR,
- ODBCM_RC_TRANSACTION_ERROR,
- ODBCM_RC_TABLE_EXISTS,
- ODBCM_RC_COLUMN_ALREADY,
- ODBCM_RC_SQL_NEED_DATA = 99,
- ODBCM_RC_SQL_NO_DATA = 100,
- ODBCM_RC_DEFAULT
-}ODBCM_RC_STATUS;
-
-/*
- * @brief Request Attribute Datatype
- */
-typedef enum {
- DATATYPE_UINT16 = 0,
- DATATYPE_UINT64,
- DATATYPE_UINT32,
- DATATYPE_IPV4,
- DATATYPE_IPV6,
- DATATYPE_UINT8_ARRAY_2,
- DATATYPE_UINT8_ARRAY_3,
- DATATYPE_UINT8_ARRAY_6,
- DATATYPE_UINT8_ARRAY_8,
- DATATYPE_UINT8_ARRAY_9,
- DATATYPE_UINT8_ARRAY_11,
- DATATYPE_UINT8_ARRAY_16,
- DATATYPE_UINT8_ARRAY_32,
- DATATYPE_UINT8_ARRAY_128,
- DATATYPE_UINT8_ARRAY_256,
- DATATYPE_UINT8_ARRAY_257,
- DATATYPE_UINT8_ARRAY_320
-}AttributeDataType;
-
-/*
- * @brief Transaction State
- */
-
-typedef enum {
- TRANS_END = 0,
- TRANS_START,
- TRANS_START_SUCCESS,
- VOTE_BEGIN,
- VOTE_WAIT_DRIVER_RESULT,
- VOTE_SUCCESS,
- GLOBAL_COMMIT_BEGIN,
- GLOBAL_COMMIT_WAIT_DRIVER_RESULT,
- GLOBAL_COMMIT_DRIVER_RESULT,
- GLOBAL_COMMIT_SUCCESS
-}TransState;
-
-/*
- * @brief Driver Response Status
- */
-
-typedef enum {
- SUCCESS = 0,
- FAILURE,
- DISCONNECT
-}DriverResponseStatus;
-
-struct physical_request_header {
- uint32_t client_sess_id;
- uint32_t config_id;
- uint32_t operation;
- uint32_t max_rep_count;
- uint32_t option1;
- uint32_t option2;
- uint32_t data_type;
- uint32_t key_type;
-};
-
-struct physical_response_header {
- uint32_t client_sess_id;
- uint32_t config_id;
- uint32_t operation;
- uint32_t max_rep_count;
- uint32_t option1;
- uint32_t option2;
- uint32_t data_type;
- uint32_t result_code;
-};
-
-struct driver_request_header {
- uint32_t client_sess_id;
- uint32_t config_id;
- std::string controller_id;
- std::string domain_id;
- uint32_t operation;
- uint32_t max_rep_count;
- uint32_t option1;
- uint32_t option2;
- uint32_t data_type;
- uint32_t key_type;
-};
-
-struct driver_response_header {
- uint32_t client_sess_id;
- uint32_t config_id;
- std::string controller_id;
- std::string domain_id;
- uint32_t operation;
- uint32_t max_rep_count;
- uint32_t option1;
- uint32_t option2;
- uint32_t data_type;
- uint32_t result_code;
-};
-
-struct driver_event_header {
- std::string controller_id;
- std::string domain_id;
- uint32_t operation;
- uint32_t data_type;
- uint32_t key_type;
-};
-
-struct driver_alarm_header {
- std::string controller_id;
- std::string domain_id;
- uint32_t operation;
- uint32_t data_type;
- uint32_t key_type;
- uint32_t alarm_type;
-};
-
-struct northbound_event_header {
- uint32_t operation;
- uint32_t data_type;
- uint32_t key_type;
-};
-
-struct northbound_alarm_header {
- uint32_t operation;
- uint32_t data_type;
- uint32_t key_type;
- uint32_t alarm_type;
-};
-#endif // _PHYSICAL_COMMON_DEF_HH_
/*
- * Copyright (c) 2012-2013 NEC Corporation
+ * Copyright (c) 2013 NEC Corporation
* All rights reserved.
- *
+ *
* This program and the accompanying materials are made available under the
* terms of the Eclipse Public License v1.0 which accompanies this
* distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
*/
+#ifndef _UNC_MODULE_CLSTAT_INC_CLSTAT_API_H
+#define _UNC_MODULE_CLSTAT_INC_CLSTAT_API_H
+
/*
- * clstat_api.h
- *
- * Created on: Apr 15, 2013
- * Author: guest
+ * Definitions for APIs provided by the clstat module.
*/
-#ifndef CLSTAT_API_H_
-#define CLSTAT_API_H_
#include <unc/clstat_types.h>
+#include <pfc/module.h>
+#include <pfc/event.h>
+#include <pfc/clock.h>
+
+UNC_C_BEGIN_DECL
+
+static inline const char *
+clstat_event_getsource(void)
+{
+ return "event";
+}
+
+static inline pfc_bool_t
+clstat_event_isactive(pfc_event_t event)
+{
+ return PFC_TRUE;
+}
-inline const char *clstat_event_getsource() {
- return "";
+extern inline int
+clstat_event_getdeadline(pfc_event_t event, pfc_timespec_t *tsp)
+{
+ tsp->tv_sec = 0;
+ tsp->tv_nsec = 0;
+ return 0;
}
+UNC_C_END_DECL
-#endif /* CLSTAT_API_H_ */
+#endif /* !_UNC_MODULE_CLSTAT_INC_CLSTAT_API_H */
+++ /dev/null
-/*
-*
-* Copyright (c) 2012-2013 NEC Corporation
-* All rights reserved.
-*
-* This program and the accompanying materials are made available under the
-* terms of the Eclipse Public License v1.0 which accompanies this
-* distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
-*
-*/
-
-
-
-
-#include "event.h"
-
-const char *
-clstat_event_getsource(void)
-{
- return "";
-}
+++ /dev/null
-/*
- *
- * Copyright (c) 2012-2013 NEC Corporation
- * All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this
- * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
- */
-
-
-
-
-const char *clstat_event_getsource(void);
+++ /dev/null
-/*\r
-* Copyright (c) 2012-2013 NEC Corporation\r
-* All rights reserved.\r
-*\r
-* This program and the accompanying materials are made available under the\r
-* terms of the Eclipse Public License v1.0 which accompanies this\r
-* distribution, and is available at http://www.eclipse.org/legal/epl-v10.html\r
-*/\r
-\r
-\r
-\r
-\r
-#include "vrt_if_momgr.hh"\r
-#include <stdio.h>\r
-#include "momgr_impl.hh"\r
-#include "ipct_st.hh"\r
-#include "unc/keytype.h"\r
-#include "config_mgr.hh"\r
-#include "dal/dal_odbc_mgr.hh"\r
-#include "dal/dal_dml_intf.hh"\r
-#include "tclib_module.hh"\r
-#include "config_mgr.hh"\r
-#include "dal_defines.hh"\r
-\r
-using namespace unc::upll::kt_momgr;\r
-\r
- enum Method\r
- {Read1, Read2};\r
-\r
-class VrtIfstub : public VrtIfMoMgr {\r
-public:\r
-VrtIfstub() {std::cout<<"In VrtIfConstructor \n";}\r
- static std::map<Method, upll_rc_t> stub_result_map;\r
-\r
-upll_rc_t ReadConfigDB(ConfigKeyVal *ikey,\r
- upll_keytype_datatype_t dt_type,\r
- unc_keytype_operation_t op,\r
- DbSubOp dbop,\r
- DalDmlIntf *dmi,\r
- MoMgrTables tbl){\r
-std::cout << "hellllloooooooooooooo\n";\r
-return stub_result_map[Read1];\r
-}\r
-\r
-upll_rc_t ReadConfigDB(ConfigKeyVal *ikey,\r
- upll_keytype_datatype_t dt_type,\r
- unc_keytype_operation_t op,\r
- DbSubOp dbop,\r
- uint32_t &sibling_count,\r
- DalDmlIntf *dmi,\r
- MoMgrTables tbl) {\r
-std::cout << "hellllloooooooooooooo\n";\r
-return stub_result_map[Read2];\r
-}\r
-\r
-const MoManager *GetMoManager(unc_key_type_t kt) {\r
- std::cout<<" Get MoManager called \n";\r
- return new VrtIfstub();\r
-}\r
-\r
-\r
-};\r
-std::map<Method, upll_rc_t> VrtIfstub::stub_result_map;\r
/*
-* Copyright (c) 2012-2013 NEC Corporation
-* All rights reserved.
-*
-* This program and the accompanying materials are made available under the
-* terms of the Eclipse Public License v1.0 which accompanies this
-* distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
-*/
-
+ * Copyright (c) 2012-2013 NEC Corporation
+ * All rights reserved.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this
+ * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
+ */
#ifndef _PFC_IPC_CLIENT_H
#define _PFC_IPC_CLIENT_H
pfc_ipcclnt_altopen(const char *PFC_RESTRICT name,
pfc_ipcconn_t *PFC_RESTRICT connp)
{
+ *connp = 1;
return result_;
}
+++ /dev/null
-/*
-* Copyright (c) 2012-2013 NEC Corporation
-* All rights reserved.
-*
-* This program and the accompanying materials are made available under the
-* terms of the Eclipse Public License v1.0 which accompanies this
-* distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
-*/
-
-
-#ifndef _PFC_MODULE_H
-#define _PFC_MODULE_H
-
-/*
- * Definitions for PFC module management.
- */
-
-#include <pfc/base.h>
-#include <pfc/synch.h>
-#include <pfc/conf.h>
-#include <pfc/event.h>
-#include <pfc/moddefs.h>
-#include <pfc/modconst.h>
-#include <pfc/modevent.h>
-#include <pfc/modipc_server.h>
-#include <pfc/modipc_client.h>
-#include <pfc/debug.h>
-
-PFC_C_BEGIN_DECL
-
-/*
- * Suffix of module filename.
- */
-#define PFC_MODULE_LIB_SUFFIX "so"
-
-/*
- * Suffix of module configuration file.
- */
-#define PFC_MODULE_CONF_SUFFIX ".conf"
-#define PFC_MODULE_CONF_SUFFIX_LEN PFC_CONST_U(5)
-
-/*
- * Prototypes.
- */
-extern pfc_module_t pfc_module_register(const pfc_modattr_t
- *PFC_RESTRICT mattr,
- pfc_cptr_t PFC_RESTRICT data);
-extern pfc_module_t pfc_module_c_register(const pfc_modattr_t
- *PFC_RESTRICT mattr,
- pfc_modfunc_t init,
- pfc_modfunc_t fini);
-
-extern void __pfc_module_bootstrap(const char *name,
- pfc_modboot_t func);
-
-extern pfc_bool_t pfc_module_is_started(void);
-extern pfc_bool_t pfc_module_hold(pfc_module_t module);
-extern void pfc_module_release(pfc_module_t module);
-extern pfc_cfblk_t __pfc_module_conf_getblock(pfc_module_t module,
- const char *bname);
-extern pfc_cfblk_t __pfc_module_conf_getmap(pfc_module_t module,
- const char *mname,
- const char *key);
-extern int __pfc_module_conf_getmapkeys(pfc_module_t module,
- const char *mname,
- pfc_listm_t *keysp);
-extern int __pfc_module_conf_reload(pfc_module_t module);
-
-extern int __pfc_module_event_add(pfc_module_t module,
- pfc_evhandler_t *PFC_RESTRICT idp,
- pfc_evfunc_t handler,
- pfc_ptr_t PFC_RESTRICT arg,
- const pfc_evmask_t *PFC_RESTRICT evmask,
- uint32_t priority,
- const char *PFC_RESTRICT hname);
-extern int __pfc_module_event_post(pfc_module_t module,
- const char *target, pfc_evtype_t type);
-
-extern int __pfc_module_addhook(pfc_module_t module, pfc_modhook_t hook,
- uint32_t pri);
-
-/*
- * PFC_MODULE_BUILD is defined by the build system only for PFC module build.
- */
-#ifdef PFC_MODULE_BUILD
-
-/*
- * static inline pfc_cfblk_t PFC_FATTR_ALWAYS_INLINE
- * pfc_module_conf_getblock(const char *bname)
- * Return parameter block handle associated with the parameter block,
- * which is defined in the module configuration file, specified by
- * the name.
- *
- * Calling/Exit State:
- * A valid block handle is returned on success.
- * On error, PFC_CFBLK_INVALID is returned.
- */
-static inline pfc_cfblk_t PFC_FATTR_ALWAYS_INLINE
-pfc_module_conf_getblock(const char *bname)
-{
- return __pfc_module_conf_getblock(PFC_MODULE_THIS_ID, bname);
-}
-
-/*
- * static inline pfc_cfblk_t PFC_FATTR_ALWAYS_INLINE
- * pfc_module_conf_getmap(const char *mname, const char *key)
- * Return parameter map handle associated with the parameter map block,
- * which is defined in the module configuration file, specified by
- * the map name and key.
- *
- * Calling/Exit State:
- * A valid block handle is returned on success.
- * On error, PFC_CFBLK_INVALID is returned.
- */
-static inline pfc_cfblk_t PFC_FATTR_ALWAYS_INLINE
-pfc_module_conf_getmap(const char *mname, const char *key)
-{
- return __pfc_module_conf_getmap(PFC_MODULE_THIS_ID, mname, key);
-}
-
-/*
- * static inline int PFC_FATTR_ALWAYS_INLINE
- * pfc_module_conf_getmapkeys(const char *mname, pfc_listm_t *keysp)
- * Create a list model instance which contains all map keys of the
- * parameter map specified by `mname' in the module configuration file.
- *
- * Calling/Exit State:
- * Upon successful completion, the list model instance is set to the
- * buffer pointed by `keysp', and zero is returned.
- * Otherwise error number which indicates the cause of error is returned.
- */
-static inline int PFC_FATTR_ALWAYS_INLINE
-pfc_module_conf_getmapkeys(const char *mname, pfc_listm_t *keysp)
-{
- return __pfc_module_conf_getmapkeys(PFC_MODULE_THIS_ID, mname, keysp);
-}
-
-/*
- * static inline int PFC_FATTR_ALWAYS_INLINE
- * pfc_module_conf_reload(void)
- * Reload module configuration file.
- * Note that all parameter block handles obtained by
- * pfc_module_conf_getblock() and pfc_module_conf_getmap() are discarded.
- * You must re-obtain parameter block handles again.
- *
- * Calling/Exit State:
- * Zero is returned on success.
- * Otherwise error number which indicates the cause of error is returned.
- */
-static inline int PFC_FATTR_ALWAYS_INLINE
-pfc_module_conf_reload(void)
-{
- return __pfc_module_conf_reload(PFC_MODULE_THIS_ID);
-}
-
-/*
- * static inline int PFC_FATTR_ALWAYS_INLINE
- * pfc_module_event_add(pfc_evhandler_t *PFC_RESTRICT idp,
- * pfc_evfunc_t handler, pfc_ptr_t PFC_RESTRICT arg,
- * const pfc_evmask_t *PFC_RESTRICT evmask,
- * uint32_t priority)
- * Register module-specific event handler.
- *
- * `handler' is a pointer to event handler, and `arg' is an arbitrary
- * value passed to the handler. If a module-specific event is posted
- * to this module, and its type is contained in the event mask specified
- * by `evmask', the handler is called with specifying the event.
- * If NULL is specified to `evmask', all events posted to this module
- * are delivered to the handler.
- *
- * Calling/Exit State:
- * Upon successful completion, event handler ID is set to `*idp',
- * and zero is returned.
- * Otherwise error number which indicates the cause of error is returned.
- */
-static inline int PFC_FATTR_ALWAYS_INLINE
-pfc_module_event_add(pfc_evhandler_t *PFC_RESTRICT idp, pfc_evfunc_t handler,
- pfc_ptr_t PFC_RESTRICT arg,
- const pfc_evmask_t *PFC_RESTRICT evmask, uint32_t priority)
-{
- return __pfc_module_event_add(PFC_MODULE_THIS_ID, idp, handler,
- arg, evmask, priority, NULL);
-}
-
-/*
- * static inline int PFC_FATTR_ALWAYS_INLINE
- * pfc_module_event_add_named(pfc_evhandler_t *PFC_RESTRICT idp,
- * pfc_evfunc_t handler, pfc_ptr_t PFC_RESTRICT arg,
- * const pfc_evmask_t *PFC_RESTRICT evmask,
- * uint32_t priority, const char *PFC_RESTRICT hname)
- * Register module-specific event handler, with specifying handler's name.
- *
- * `handler' is a pointer to event handler, and `arg' is an arbitrary
- * value passed to the handler. If a module-specific event is posted
- * to this module, and its type is contained in the event mask specified
- * by `evmask', the handler is called with specifying the event.
- * If NULL is specified to `evmask', all events posted to this module
- * are delivered to the handler.
- *
- * `hname' is a user-defined name of event handler.
- * Currently, it is used only for event delivery logging.
- * If NULL is specified, module name is used as handler's name.
- *
- * Calling/Exit State:
- * Upon successful completion, event handler ID is set to `*idp',
- * and zero is returned.
- * Otherwise error number which indicates the cause of error is returned.
- */
-static inline int PFC_FATTR_ALWAYS_INLINE
-pfc_module_event_add_named(pfc_evhandler_t *PFC_RESTRICT idp,
- pfc_evfunc_t handler, pfc_ptr_t PFC_RESTRICT arg,
- const pfc_evmask_t *PFC_RESTRICT evmask,
- uint32_t priority, const char *PFC_RESTRICT hname)
-{
- return __pfc_module_event_add(PFC_MODULE_THIS_ID, idp, handler,
- arg, evmask, priority, hname);
-}
-
-/*
- * static inline int PFC_FATTR_ALWAYS_INLINE
- * pfc_module_event_remove(pfc_evhandler_t id, const pfc_timespec_t *timeout)
- * Remove the module-specific event handler added by the call of
- * pfc_module_event_add().
- *
- * `id' must be an ID of module-specific event handler.
- * If the handler specified by `id' is being called, the calling thread
- * will block until the handler returns. If it does not return within
- * the period specified by `timeout', ETIMEDOUT is returned.
- *
- * Calling/Exit State:
- * Upon successful completion, zero is returned.
- * Otherwise error number which indicates the cause of error is returned.
- *
- * Remarks:
- * The event handler may not be able to reuse even if this function
- * returns error, except for EINVAL.
- */
-static inline int PFC_FATTR_ALWAYS_INLINE
-pfc_module_event_remove(pfc_evhandler_t id, const pfc_timespec_t *timeout)
-{
- return pfc_event_remove_handler(id, timeout);
-}
-
-/*
- * static inline int PFC_FATTR_ALWAYS_INLINE
- * pfc_module_event_post(const char *target, pfc_evtype_t type)
- * Post a module-specific event of the type specified by `type'.
- *
- * The event is delivered to only handlers added by the module specified
- * by `target'.
- *
- * Calling/Exit State:
- * Upon successful completion, zero is returned.
- *
- * ENOENT is returned if an invalid module name is specified to `target'.
- * EPERM is returned if the module specified by `target' is not loaded.
- *
- * Otherwise error number which indicates the cause of error is returned.
- */
-static inline int PFC_FATTR_ALWAYS_INLINE
-pfc_module_event_post(const char *target, pfc_evtype_t type)
-{
- return __pfc_module_event_post(PFC_MODULE_THIS_ID, target, type);
-}
-
-/*
- * static inline int PFC_FATTR_ALWAYS_INLINE
- * pfc_module_addhook(pfc_modhook_t hook, uint32_t pri)
- * Register module unload hook.
- *
- * `hook' is a hook function to be called.
- * `pri' is an uint32_t value which determines order of hook calls.
- * Hook functions are called in ascending order of priority.
- *
- * Module unload hook takes a boolean argument.
- * PFC_TRUE is passed if the module is about to be unloaded in the PFC
- * daemon shutdown sequence.
- * PFC_FALSE is passed if the module is about to be unloaded by user
- * request.
- *
- * Calling/Exit State:
- * Upon successful completion, zero is returned.
- * Otherwise error number which indicates the cause of error is returned.
- */
-static inline int PFC_FATTR_ALWAYS_INLINE
-pfc_module_addhook(pfc_modhook_t hook, uint32_t pri)
-{
- return __pfc_module_addhook(PFC_MODULE_THIS_ID, hook, pri);
-}
-
-#endif /* PFC_MODULE_BUILD */
-
-PFC_C_END_DECL
-
-#endif /* !_PFC_MODULE_H */
-/*\r
-* Copyright (c) 2012-2013 NEC Corporation\r
-* All rights reserved.\r
-*\r
-* This program and the accompanying materials are made available under the\r
-* terms of the Eclipse Public License v1.0 which accompanies this\r
-* distribution, and is available at http://www.eclipse.org/legal/epl-v10.html\r
-*/\r
-\r
-\r
-\r
-#include <pfc/ipc.h>\r
-#include <netinet/in.h>\r
-#include <string>\r
-#include <map>\r
-#include <list>\r
-#include <pfc/ipc_client.h>\r
-#include <pfcxx/ipc_server.hh>\r
-\r
-#ifndef _PFCXX_IPC_CLIENT_HH\r
-#define _PFCXX_IPC_CLIENT_HH\r
-\r
-namespace pfc {\r
-namespace core {\r
-namespace ipc {\r
-\r
-class ClientSession\r
-{\r
- friend class ::pfc::core::ipc::ServerSession;\r
-\r
-public:\r
- /*\r
- * Constructors.\r
- */\r
- ClientSession(const char *name, pfc_ipcid_t service, int &err);\r
- ClientSession(const char *name, pfc_ipcid_t service, int &err,\r
- uint32_t flags);\r
- ClientSession(const std::string &name, pfc_ipcid_t service, int &err);\r
- ClientSession(const std::string &name, pfc_ipcid_t service, int &err,\r
- uint32_t flags);\r
- ClientSession(pfc_ipcconn_t conn, const char *name, pfc_ipcid_t service,\r
- int &err);\r
- ClientSession(pfc_ipcconn_t conn, const char *name, pfc_ipcid_t service,\r
- int &err, uint32_t flags);\r
- ClientSession(pfc_ipcconn_t conn, const std::string &name,\r
- pfc_ipcid_t service, int &err);\r
- ClientSession(pfc_ipcconn_t conn, const std::string &name,\r
- pfc_ipcid_t service, int &err, uint32_t flags);\r
- ClientSession(pfc_ipcsess_t *sess);\r
- explicit ClientSession();\r
-\r
- /*\r
- * Destructor.\r
- */\r
- ~ClientSession();\r
-\r
- /*\r
- * Instance methods.\r
- */\r
- int reset(const char *name, pfc_ipcid_t service);\r
- int reset(const std::string &name, pfc_ipcid_t service);\r
-\r
- int setTimeout(const pfc_timespec_t *timeout=NULL);\r
- int invoke(pfc_ipcresp_t &response);\r
- int cancel(pfc_bool_t discard=PFC_FALSE);\r
- int forward(ClientSession &sess, uint32_t begin = 0,\r
- uint32_t end = UINT32_MAX);\r
- int forward(ServerSession &sess, uint32_t begin = 0,\r
- uint32_t end = UINT32_MAX);\r
- int forwardTo(ServerSession &sess, uint32_t begin = 0,\r
- uint32_t end = UINT32_MAX);\r
-\r
- int addOutput(int8_t data);\r
- int addOutputInt8(int8_t data);\r
- int addOutput(uint8_t data);\r
- int addOutputUint8(uint8_t data);\r
- int addOutput(int16_t data);\r
- int addOutputInt16(int16_t data);\r
- int addOutput(uint16_t data);\r
- int addOutputUint16(uint16_t data);\r
- int addOutput(int32_t data);\r
- int addOutputInt32(int32_t data);\r
- int addOutput(uint32_t data);\r
- int addOutputUint32(uint32_t data);\r
- int addOutput(int64_t data);\r
- int addOutputInt64(int64_t data);\r
- int addOutput(uint64_t data);\r
- int addOutputUint64(uint64_t data);\r
- int addOutput(float data);\r
- int addOutputFloat(float data);\r
- int addOutput(double data);\r
- int addOutputDouble(double data);\r
- int addOutput(struct in_addr &data);\r
- int addOutput(struct in6_addr &data);\r
- int addOutput(const char *data);\r
- int addOutput(const std::string &data);\r
- int addOutput(const uint8_t *data, uint32_t length);\r
- int addOutput(const pfc_ipcstdef_t &def, pfc_cptr_t data);\r
- int addOutput(void);\r
- int addOutput(key_ctr& data);\r
- int addOutput(val_ctr& data);\r
- int addOutput(key_boundary_t& data);\r
- int addOutput(key_logical_port data);\r
- int addOutput(val_logical_port& data);\r
- int addOutput(val_logical_port_st& data);\r
-\r
- int getResponse(uint32_t index, int8_t &data);\r
- int getResponse(uint32_t index, uint8_t &data);\r
- int getResponse(uint32_t index, int16_t &data);\r
- int getResponse(uint32_t index, uint16_t &data);\r
- int getResponse(uint32_t index, int32_t &data);\r
- int getResponse(uint32_t index, uint32_t &data);\r
- int getResponse(uint32_t index, int64_t &data);\r
- int getResponse(uint32_t index, uint64_t &data);\r
- int getResponse(uint32_t index, float &data);\r
- int getResponse(uint32_t index, double &data);\r
- int getResponse(uint32_t index, struct in_addr &data);\r
- int getResponse(uint32_t index, struct in6_addr &data);\r
- int getResponse(uint32_t index, const char *&data);\r
- int getResponse(uint32_t index, const uint8_t *&data, uint32_t &length);\r
- int getResponse(uint32_t index, const pfc_ipcstdef_t &def,\r
- pfc_ptr_t datap);\r
-\r
- int getResponse(uint32_t index, key_ctr& data);\r
- int getResponse(uint32_t index, val_phys_path_fault_alarm_t& data);\r
- int getResponse(uint32_t index, key_ctr_domain_t& data);\r
- int getResponse(uint32_t index, key_switch_t& data);\r
- int getResponse(uint32_t index, key_port_t& data);\r
- int getResponse(uint32_t index, val_port_st& data);\r
- int getResponse(uint32_t index, val_switch_st& data);\r
- int getResponse(uint32_t index, key_link_t& data);\r
- int getResponse(uint32_t index, val_link_st& data);\r
- int getResponse(uint32_t index, val_ctr_st& data);\r
- int getResponse(uint32_t index, val_ctr_domain_st& data);\r
- int getResponse(uint32_t index, key_logical_port_t& data);\r
- int getResponse(uint32_t index, val_logical_port_st& data);\r
- int getResponse(uint32_t index, key_logical_member_port_t& data);\r
-\r
-\r
-\r
- uint32_t getResponseCount(void);\r
- int getResponseType(uint32_t index, pfc_ipctype_t& type);\r
-\r
- int getResponseStructName(uint32_t index, const char *&name);\r
- int getResponseStructName(uint32_t index, std::string &name);\r
-\r
- //stubs\r
- static void stub_setResponseStructName(uint32_t index, std::string &name);\r
- static void clearStubData(void);\r
- static void stub_setResponse(int result);\r
- static void stub_setResponsetype(uint32_t index,pfc_ipctype_t ipctype );\r
- static void stub_setClientSessionErrorCode(int result);\r
- static void stub_setAddOutput(int result);\r
- static void stub_setAddOutput(uint32_t result);\r
- static void stub_setAddOutput(const char* data);\r
- static void stub_setResponseCount(int argCount);\r
- static void stub_setResponse( uint32_t index,uint32_t value );\r
- static void stub_setinvoke(pfc_ipcresp_t ipcresp,int err);\r
-\r
-private:\r
-// TODO add comments\r
-// TODO keep only modifed files; rest take it from system directory\r
-// TODO keep all stubs inside stub directory\r
-// TODO all changes prefix/suffic with stub_/_stub.\r
- //stub data\r
- static std::map<uint32_t,pfc_ipctype_t > arg_parameters;\r
- static std::map<uint32_t,std::string> structNameMap;//<index,structname>\r
- static std::map<uint32_t,uint32_t> arg_map;\r
- static std::list<uint32_t> add_output_list;//list of addoutput values\r
- static int addOutPut_;\r
- static int responseResult_;\r
- static int ClientsesErrorCode_;\r
- static int argCount_;\r
- static pfc_ipcresp_t ipcresp_;\r
- static int err_;\r
- static std::list<const char*> add_output_str;\r
-};\r
-\r
-class IpcEventMask\r
-{\r
-\r
-public:\r
- /* Create an event mask which contains all IPC event types. */\r
- IpcEventMask(): _mask(PFC_IPC_EVENT_MASK_FILL) {}\r
-\r
- /* Create an event mask which contains the specified IPC event type. */\r
- explicit IpcEventMask(pfc_ipcevtype_t type)\r
- : _mask(PFC_IPC_EVENT_MASK_BIT(type)) {}\r
-\r
- /* Copy constructor. */\r
- explicit IpcEventMask(const IpcEventMask &mask) : _mask(mask._mask) {}\r
-\r
-\r
- inline void\r
- empty(void)\r
- {\r
-\r
- }\r
-\r
-\r
- inline void\r
- fill(void)\r
- {\r
-\r
- }\r
-\r
- inline int\r
- add(pfc_ipcevtype_t type)\r
- {\r
- return 0;\r
- }\r
-\r
- inline int\r
- remove(pfc_ipcevtype_t type)\r
- {\r
- return 0;\r
- }\r
-\r
- inline pfc_bool_t\r
- test(pfc_ipcevtype_t type) const\r
- {\r
- return true;\r
- }\r
- inline const pfc_ipcevmask_t *\r
- getMask(void) const\r
- {\r
- return &_mask;\r
- }\r
-\r
-private:\r
- /* Event mask value. */\r
- pfc_ipcevmask_t _mask;\r
-};\r
-\r
-class IpcEventAttr\r
-{\r
-public:\r
- IpcEventAttr()\r
- {\r
-\r
- }\r
-\r
-\r
- ~IpcEventAttr()\r
- {\r
-\r
- }\r
-\r
-\r
- inline void\r
- getHostSet(const char *&name) const\r
- {\r
-\r
-\r
- }\r
-\r
-\r
- inline int\r
- setHostSet(const char *name)\r
- {\r
- return 0;\r
- }\r
-\r
- inline void\r
- getTarget(const char *service, IpcEventMask &mask) const\r
- {\r
-\r
-\r
- }\r
-\r
- inline int\r
- addTarget(const char *service)\r
- {\r
- return 0;\r
- }\r
-\r
- inline int\r
- addTarget(const char *service, const IpcEventMask &mask)\r
- {\r
- return 0;\r
- }\r
-\r
-\r
- inline void\r
- resetTarget(void)\r
- {\r
-\r
- }\r
-\r
- inline void\r
- getPriority(uint32_t &priority) const\r
- {\r
-\r
- }\r
-\r
- inline void\r
- setPriority(uint32_t priority)\r
- {\r
-\r
- }\r
-\r
- inline void\r
- getLog(pfc_bool_t &log) const\r
- {\r
-\r
- }\r
-\r
-\r
- inline void\r
- setLog(pfc_bool_t log)\r
- {\r
-\r
- }\r
-\r
-private:\r
- pfc_ipcevattr_t _attr;\r
-};\r
-\r
-class IpcEvent\r
-{\r
-public:\r
- inline pfc_ipcevid_t\r
- getSerial(void) const\r
- {\r
- return pfc_ipcevid_t();\r
- }\r
-\r
- inline pfc_ipcevtype_t\r
- getType(void) const\r
- {\r
- return pfc_ipcevtype_t();\r
- }\r
-\r
- inline void\r
- getTime(pfc_timespec_t &ts) const\r
- {\r
- ts=pfc_timespec_t();\r
- }\r
-\r
- inline const char *\r
- getChannelName(void) const\r
- {\r
- return "channelName";\r
- }\r
-\r
-\r
- inline const pfc_hostaddr_t *\r
- getHostAddress(void) const\r
- {\r
- pfc_hostaddr_t* host((pfc_hostaddr_t*)malloc(sizeof( pfc_hostaddr_t)));\r
- return host;\r
- }\r
-\r
- inline const char *\r
- getServiceName(void) const\r
- {\r
- return "serviceName";\r
- }\r
-\r
- inline pfc_ipcsess_t *\r
- getSession(void) const\r
- {\r
- pfc_ipcsess_t* dummy;\r
- return dummy;\r
- }\r
-\r
- inline pfc_bool_t\r
- isStateChangeEvent(void) const\r
- {\r
- return true;\r
- }\r
-\r
-private:\r
- explicit IpcEvent(pfc_ipcevent_t *event) : _event(event) {}\r
- pfc_ipcevent_t *_event;\r
-};\r
-\r
-class IpcEventHandler\r
-{\r
-public:\r
- IpcEventHandler() : _id() {}\r
- virtual ~IpcEventHandler();\r
- inline pfc_ipcevhdlr_t\r
- getId(void) const\r
- {\r
- return _id;\r
- }\r
-\r
- virtual void eventHandler(const IpcEvent &event) = 0;\r
- virtual const char *getName(void);\r
-\r
-private:\r
- pfc_ipcevhdlr_t _id;\r
-};\r
-\r
-extern int add_event_handler(const char *channel, IpcEventHandler *handler,\r
- const IpcEventAttr *attr = NULL);\r
-extern int remove_event_handler(pfc_ipcevhdlr_t id);\r
-static inline int\r
-remove_event_handler(IpcEventHandler *handler)\r
-{\r
- return 0;\r
-}\r
-\r
-}\r
-}\r
-}\r
-#endif /* !_PFCXX_IPC_CLIENT_HH */\r
+/*
+ * Copyright (c) 2012-2013 NEC Corporation
+ * All rights reserved.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this
+ * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
+ */
+
+#include <pfc/ipc.h>
+#include <netinet/in.h>
+#include <string>
+#include <map>
+#include <list>
+#include <pfc/ipc_client.h>
+#include "ipc_server.hh"
+
+#ifndef _PFCXX_IPC_CLIENT_HH
+#define _PFCXX_IPC_CLIENT_HH
+
+namespace pfc {
+namespace core {
+namespace ipc {
+
+class ClientSession
+{
+ friend class ::pfc::core::ipc::ServerSession;
+
+public:
+ /*
+ * Constructors.
+ */
+ ClientSession(const char *name, pfc_ipcid_t service, int &err);
+ ClientSession(const char *name, pfc_ipcid_t service, int &err,
+ uint32_t flags);
+ ClientSession(const std::string &name, pfc_ipcid_t service, int &err);
+ ClientSession(const std::string &name, pfc_ipcid_t service, int &err,
+ uint32_t flags);
+ ClientSession(pfc_ipcconn_t conn, const char *name, pfc_ipcid_t service,
+ int &err);
+ ClientSession(pfc_ipcconn_t conn, const char *name, pfc_ipcid_t service,
+ int &err, uint32_t flags);
+ ClientSession(pfc_ipcconn_t conn, const std::string &name,
+ pfc_ipcid_t service, int &err);
+ ClientSession(pfc_ipcconn_t conn, const std::string &name,
+ pfc_ipcid_t service, int &err, uint32_t flags);
+ ClientSession(pfc_ipcsess_t *sess);
+ explicit ClientSession();
+
+ /*
+ * Destructor.
+ */
+ ~ClientSession();
+
+ /*
+ * Instance methods.
+ */
+ int reset(const char *name, pfc_ipcid_t service);
+ int reset(const std::string &name, pfc_ipcid_t service);
+
+ int setTimeout(const pfc_timespec_t *timeout=NULL);
+ int invoke(pfc_ipcresp_t &response);
+ int cancel(pfc_bool_t discard=PFC_FALSE);
+ int forward(ClientSession &sess, uint32_t begin = 0,
+ uint32_t end = UINT32_MAX);
+ int forward(ServerSession &sess, uint32_t begin = 0,
+ uint32_t end = UINT32_MAX);
+ int forwardTo(ServerSession &sess, uint32_t begin = 0,
+ uint32_t end = UINT32_MAX);
+
+ int addOutput(int8_t data);
+ int addOutputInt8(int8_t data);
+ int addOutput(uint8_t data);
+ int addOutputUint8(uint8_t data);
+ int addOutput(int16_t data);
+ int addOutputInt16(int16_t data);
+ int addOutput(uint16_t data);
+ int addOutputUint16(uint16_t data);
+ int addOutput(int32_t data);
+ int addOutputInt32(int32_t data);
+ int addOutput(uint32_t data);
+ int addOutputUint32(uint32_t data);
+ int addOutput(int64_t data);
+ int addOutputInt64(int64_t data);
+ int addOutput(uint64_t data);
+ int addOutputUint64(uint64_t data);
+ int addOutput(float data);
+ int addOutputFloat(float data);
+ int addOutput(double data);
+ int addOutputDouble(double data);
+ int addOutput(struct in_addr &data);
+ int addOutput(struct in6_addr &data);
+ int addOutput(const char *data);
+ int addOutput(const std::string &data);
+ int addOutput(const uint8_t *data, uint32_t length);
+ int addOutput(const pfc_ipcstdef_t &def, pfc_cptr_t data);
+ int addOutput(void);
+ int addOutput(key_ctr& data);
+ int addOutput(val_ctr& data);
+ int addOutput(key_boundary_t& data);
+ int addOutput(key_logical_port data);
+ int addOutput(val_logical_port& data);
+ int addOutput(val_logical_port_st& data);
+
+ int getResponse(uint32_t index, int8_t &data);
+ int getResponse(uint32_t index, uint8_t &data);
+ int getResponse(uint32_t index, int16_t &data);
+ int getResponse(uint32_t index, uint16_t &data);
+ int getResponse(uint32_t index, int32_t &data);
+ int getResponse(uint32_t index, uint32_t &data);
+ int getResponse(uint32_t index, int64_t &data);
+ int getResponse(uint32_t index, uint64_t &data);
+ int getResponse(uint32_t index, float &data);
+ int getResponse(uint32_t index, double &data);
+ int getResponse(uint32_t index, struct in_addr &data);
+ int getResponse(uint32_t index, struct in6_addr &data);
+ int getResponse(uint32_t index, const char *&data);
+ int getResponse(uint32_t index, const uint8_t *&data, uint32_t &length);
+ int getResponse(uint32_t index, const pfc_ipcstdef_t &def,
+ pfc_ptr_t datap);
+
+ int getResponse(uint32_t index, key_ctr& data);
+ int getResponse(uint32_t index, val_phys_path_fault_alarm_t& data);
+ int getResponse(uint32_t index, key_ctr_domain_t& data);
+ int getResponse(uint32_t index, key_switch_t& data);
+ int getResponse(uint32_t index, key_port_t& data);
+ int getResponse(uint32_t index, val_port_st& data);
+ int getResponse(uint32_t index, val_switch_st& data);
+ int getResponse(uint32_t index, key_link_t& data);
+ int getResponse(uint32_t index, val_link_st& data);
+ int getResponse(uint32_t index, val_ctr_st& data);
+ int getResponse(uint32_t index, val_ctr_domain_st& data);
+ int getResponse(uint32_t index, key_logical_port_t& data);
+ int getResponse(uint32_t index, val_logical_port_st& data);
+ int getResponse(uint32_t index, key_logical_member_port_t& data);
+
+
+
+ uint32_t getResponseCount(void);
+ int getResponseType(uint32_t index, pfc_ipctype_t& type);
+
+ int getResponseStructName(uint32_t index, const char *&name);
+ int getResponseStructName(uint32_t index, std::string &name);
+
+ //stubs
+ static void stub_setResponseStructName(uint32_t index, std::string &name);
+ static void clearStubData(void);
+ static void stub_setResponse(int result);
+ static void stub_setResponsetype(uint32_t index,pfc_ipctype_t ipctype );
+ static void stub_setClientSessionErrorCode(int result);
+ static void stub_setAddOutput(int result);
+ static void stub_setAddOutput(uint32_t result);
+ static void stub_setAddOutput(const char* data);
+ static void stub_setResponseCount(int argCount);
+ static void stub_setResponse( uint32_t index,uint32_t value );
+ static void stub_setinvoke(pfc_ipcresp_t ipcresp,int err);
+
+private:
+// TODO add comments
+// TODO keep only modifed files; rest take it from system directory
+// TODO keep all stubs inside stub directory
+// TODO all changes prefix/suffic with stub_/_stub.
+ //stub data
+ static std::map<uint32_t,pfc_ipctype_t > arg_parameters;
+ static std::map<uint32_t,std::string> structNameMap;//<index,structname>
+ static std::map<uint32_t,uint32_t> arg_map;
+ static std::list<uint32_t> add_output_list;//list of addoutput values
+ static int addOutPut_;
+ static int responseResult_;
+ static int ClientsesErrorCode_;
+ static int argCount_;
+ static pfc_ipcresp_t ipcresp_;
+ static int err_;
+ static std::list<const char*> add_output_str;
+};
+
+class IpcEventMask
+{
+
+public:
+ /* Create an event mask which contains all IPC event types. */
+ IpcEventMask(): _mask(PFC_IPC_EVENT_MASK_FILL) {}
+
+ /* Create an event mask which contains the specified IPC event type. */
+ explicit IpcEventMask(pfc_ipcevtype_t type)
+ : _mask(PFC_IPC_EVENT_MASK_BIT(type)) {}
+
+ /* Copy constructor. */
+ explicit IpcEventMask(const IpcEventMask &mask) : _mask(mask._mask) {}
+
+
+ inline void
+ empty(void)
+ {
+
+ }
+
+
+ inline void
+ fill(void)
+ {
+
+ }
+
+ inline int
+ add(pfc_ipcevtype_t type)
+ {
+ return 0;
+ }
+
+ inline int
+ remove(pfc_ipcevtype_t type)
+ {
+ return 0;
+ }
+
+ inline pfc_bool_t
+ test(pfc_ipcevtype_t type) const
+ {
+ return true;
+ }
+ inline const pfc_ipcevmask_t *
+ getMask(void) const
+ {
+ return &_mask;
+ }
+
+private:
+ /* Event mask value. */
+ pfc_ipcevmask_t _mask;
+};
+
+class IpcEventAttr
+{
+public:
+ IpcEventAttr()
+ {
+
+ }
+
+
+ ~IpcEventAttr()
+ {
+
+ }
+
+
+ inline void
+ getHostSet(const char *&name) const
+ {
+
+
+ }
+
+
+ inline int
+ setHostSet(const char *name)
+ {
+ return 0;
+ }
+
+ inline void
+ getTarget(const char *service, IpcEventMask &mask) const
+ {
+
+
+ }
+
+ inline int
+ addTarget(const char *service)
+ {
+ return 0;
+ }
+
+ inline int
+ addTarget(const char *service, const IpcEventMask &mask)
+ {
+ return 0;
+ }
+
+
+ inline void
+ resetTarget(void)
+ {
+
+ }
+
+ inline void
+ getPriority(uint32_t &priority) const
+ {
+
+ }
+
+ inline void
+ setPriority(uint32_t priority)
+ {
+
+ }
+
+ inline void
+ getLog(pfc_bool_t &log) const
+ {
+
+ }
+
+
+ inline void
+ setLog(pfc_bool_t log)
+ {
+
+ }
+
+private:
+ pfc_ipcevattr_t _attr;
+};
+
+class IpcEvent
+{
+public:
+ inline pfc_ipcevid_t
+ getSerial(void) const
+ {
+ return pfc_ipcevid_t();
+ }
+
+ inline pfc_ipcevtype_t
+ getType(void) const
+ {
+ return pfc_ipcevtype_t();
+ }
+
+ inline void
+ getTime(pfc_timespec_t &ts) const
+ {
+ ts=pfc_timespec_t();
+ }
+
+ inline const char *
+ getChannelName(void) const
+ {
+ return "channelName";
+ }
+
+
+ inline const pfc_hostaddr_t *
+ getHostAddress(void) const
+ {
+ if (!_addr_initialized) {
+ _addr_initialized = true;
+ pfc_hostaddr_init_local(&_local_addr);
+ }
+
+ return &_local_addr;
+ }
+
+ inline const char *
+ getServiceName(void) const
+ {
+ return "serviceName";
+ }
+
+ inline pfc_ipcsess_t *
+ getSession(void) const
+ {
+ return NULL;
+ }
+
+ inline pfc_bool_t
+ isStateChangeEvent(void) const
+ {
+ return true;
+ }
+
+private:
+ static pfc_hostaddr_t _local_addr;
+ static bool _addr_initialized;
+
+ explicit IpcEvent(pfc_ipcevent_t *event) : _event(event) {}
+ pfc_ipcevent_t *_event;
+};
+
+class IpcEventHandler
+{
+public:
+ IpcEventHandler() : _id() {}
+ virtual ~IpcEventHandler();
+ inline pfc_ipcevhdlr_t
+ getId(void) const
+ {
+ return _id;
+ }
+
+ virtual void eventHandler(const IpcEvent &event) = 0;
+ virtual const char *getName(void);
+
+private:
+ pfc_ipcevhdlr_t _id;
+};
+
+extern int add_event_handler(const char *channel, IpcEventHandler *handler,
+ const IpcEventAttr *attr = NULL);
+extern int remove_event_handler(pfc_ipcevhdlr_t id);
+static inline int
+remove_event_handler(IpcEventHandler *handler)
+{
+ return 0;
+}
+
+}
+}
+}
+#endif /* !_PFCXX_IPC_CLIENT_HH */
-/*\r
-* Copyright (c) 2012-2013 NEC Corporation\r
-* All rights reserved.\r
-*\r
-* This program and the accompanying materials are made available under the\r
-* terms of the Eclipse Public License v1.0 which accompanies this\r
-* distribution, and is available at http://www.eclipse.org/legal/epl-v10.html\r
-*/\r
-\r
-\r
-\r
-#include <pfc/ipc.h>\r
-#include <netinet/in.h>\r
-#include <string>\r
-#include <map>\r
-#include <list>\r
-#include <vector>\r
-#include<iostream>\r
-\r
-#ifndef _PFCXX_IPC_SERVER_HH\r
-#define _PFCXX_IPC_SERVER_HH\r
-\r
-//#define uint32_t int\r
-\r
-\r
-namespace pfc {\r
-namespace core {\r
-namespace ipc {\r
-\r
-class ClientSession;\r
-class ServerCallback;\r
-class ServerEvent;\r
-\r
-/*\r
- * C++ wrapper for IPC server session instance.\r
- */\r
-class ServerSession\r
-{\r
- friend class ::pfc::core::ipc::ClientSession;\r
- friend class ::pfc::core::ipc::ServerEvent;\r
-\r
-public:\r
- /*\r
- * Constructor.\r
- */\r
- ServerSession();\r
-\r
- /*\r
- * Destructor.\r
- */\r
- virtual ~ServerSession(){\r
-\r
- }\r
-\r
- /*\r
- * Instance methods.\r
- */\r
- int setTimeout(const pfc_timespec_t *timeout=NULL);\r
- int getClientAddress(pfc_ipccladdr_t &claddr);\r
-\r
- int addOutput(int8_t data);\r
- int addOutputInt8(int8_t data);\r
- int addOutput(uint8_t data);\r
- int addOutputUint8(uint8_t data);\r
- int addOutput(int16_t data);\r
- int addOutputInt16(int16_t data);\r
- int addOutput(uint16_t data);\r
- int addOutputUint16(uint16_t data);\r
- int addOutput(int32_t data);\r
- int addOutputInt32(int32_t data);\r
- int addOutput(uint32_t data);\r
- int addOutputUint32(uint32_t data);\r
- int addOutput(int64_t data);\r
- int addOutputInt64(int64_t data);\r
- int addOutput(uint64_t data);\r
- int addOutputUint64(uint64_t data);\r
- int addOutput(float data);\r
- int addOutputFloat(float data);\r
- int addOutput(double data);\r
- int addOutputDouble(double data);\r
- int addOutput(struct in_addr &data);\r
- int addOutput(struct in6_addr &data);\r
- int addOutput(const char *data);\r
- int addOutput(const std::string &data);\r
- int addOutput(const uint8_t *data, uint32_t length);\r
- int addOutput(const pfc_ipcstdef_t &def, pfc_cptr_t data);\r
- int addOutput(void);\r
-\r
- int addOutput(val_ctr_st& data);\r
- int addOutput(val_ctr_domain_st& data);\r
- int addOutput(val_logical_port& data);\r
- int addOutput(val_switch& data);\r
- int addOutput(val_port& data);\r
- int addOutput(val_link& data);\r
- int addOutput(val_boundary_st& data);\r
- int addOutput(key_ctr& data);\r
- int addOutput(val_ctr& data);\r
- int addOutput(key_ctr_domain& data);\r
- int addOutput(val_ctr_domain& data);\r
- int addOutput(key_logical_port data);\r
- int addOutput(val_logical_port_st& data);\r
- int addOutput(key_logical_member_port data);\r
- int addOutput(key_switch& data);\r
- int addOutput(val_switch_st& data);\r
- int addOutput(key_port data);\r
- int addOutput(val_port_st& data);\r
- int addOutput(key_link data);\r
- int addOutput(val_link_st data);\r
- int addOutput(key_boundary data);\r
- int addOutput(val_boundary& data);\r
- int addOutput(key_root& data);\r
- int addOutput(val_path_fault_alarm_t& data);\r
- int addOutput(val_port_st_neighbor& data);\r
- //int addOutput(key_logical_port);\r
-\r
-\r
-\r
- int getArgument(uint32_t index, int8_t &data);\r
- int getArgument(uint32_t index, uint8_t &data);\r
- int getArgument(uint32_t index, int16_t &data);\r
- int getArgument(uint32_t index, uint16_t &data);\r
- int getArgument(uint32_t index, int32_t &data);\r
- int getArgument(uint32_t index, uint32_t &data);\r
- int getArgument(uint32_t index, int64_t &data);\r
- int getArgument(uint32_t index, uint64_t &data);\r
- int getArgument(uint32_t index, float &data);\r
- int getArgument(uint32_t index, double &data);\r
- int getArgument(uint32_t index, struct in_addr &data);\r
- int getArgument(uint32_t index, struct in6_addr &data);\r
- int getArgument(uint32_t index, const char *&data);\r
- int getArgument(uint32_t index, const uint8_t *&data, uint32_t &length);\r
- int getArgument(uint32_t index, const pfc_ipcstdef_t &def,pfc_ptr_t datap);\r
-\r
- int getArgument(int index, key_ctr_t& key);\r
- int getArgument(int index, val_ctr_t& key);\r
- int getArgument(int index, key_ctr_domain_t& key);\r
- int getArgument(int index, key_boundary_t& key);\r
- int getArgument(int index, val_boundary_t& key);\r
- int getArgument(int index, val_ctr_domain_t& key);\r
- int getArgument(int index, key_logical_port_t& key);\r
- int getArgument(int index, val_logical_port_st_t& key);\r
- int getArgument(int index, key_logical_member_port_t& key);\r
- int getArgument(int index, key_switch_t& key);\r
- int getArgument(int index, val_switch_st_t& key);\r
- int getArgument(int index, key_port_t& key);\r
- int getArgument(int index, val_port_st_t& key);\r
- int getArgument(int index, key_link_t& key);\r
- int getArgument(int index, val_link_st_t& key);\r
-\r
-\r
- uint32_t getArgCount(void);\r
- int getArgType(uint32_t index, pfc_ipctype_t &type);\r
- int getArgStructName(uint32_t index, const char *&name);\r
- int getArgStructName(uint32_t index, std::string &name);\r
-\r
- int setCallback(pfc_ipcsrvcb_type_t type, ServerCallback *cbp);\r
- void unsetCallback(pfc_ipcsrvcb_type_t type);\r
- void clearCallbacks(void);\r
-\r
- //stub functions\r
- static void stub_setArgCount(uint32_t argCount);\r
- static void stub_setArgStructName(uint32_t index, std::string &name);\r
- static void stub_setArgument(int result);\r
- static void stub_setArgument( uint32_t index,uint32_t value );\r
- static void clearStubData();\r
- static void stub_setArgType(uint32_t index, pfc_ipctype_t ipctype);\r
- static void stub_setAddOutput(int result);\r
- static void stub_setAddOutput(uint32_t value);\r
-\r
-private:\r
- static std::map<uint32_t,pfc_ipctype_t > arg_parameters;\r
- static std::map<uint32_t,std::string> structNameMap;\r
- static std::map<uint32_t,uint32_t> arg_map;\r
- static std::vector<uint32_t> add_output_list;\r
- static bool addOutPut_;\r
- static int result_;\r
- static uint32_t argCount_;\r
-};\r
-\r
-class ServerEvent\r
- : public ServerSession\r
-{\r
-public:\r
- ServerEvent(const char *name, pfc_ipcevtype_t type, int &err)\r
- : ServerSession()\r
- {\r
- std::cout<<" ServerEvent(const char *name, pfc_ipcevtype_t type, int &err) "<<std::endl;\r
- err = serverEventErr_;\r
- }\r
-\r
- ServerEvent(std::string &name, pfc_ipcevtype_t type, int &err)\r
- : ServerSession()\r
- {\r
- std::cout<<" ServerEvent(std::string &name, pfc_ipcevtype_t type, int &err)"<<std::endl;\r
- err = serverEventErr_;\r
- }\r
-\r
- ServerEvent(uint8_t type, int &err)\r
- : ServerSession()\r
- {\r
- err = serverEventErr_;\r
- }\r
-\r
- ~ServerEvent()\r
- {\r
-\r
- }\r
-\r
- inline int\r
- post(void)\r
- {\r
- std::cout<<" post(void) "<<std::endl;\r
- return postResult_;\r
- }\r
-\r
- inline int\r
- postTo(pfc_ipccladdr_t &claddr)\r
- {\r
-\r
- return 0;\r
- }\r
-\r
- static void clearStubData();\r
- static void stub_setserverEventErr(int err);\r
- static void stub_setPostResult(int result);\r
-private:\r
- static int serverEventErr_;\r
- static int postResult_;\r
-};\r
-\r
-class ServerCallback\r
-{\r
-public:\r
-\r
- ServerCallback(ServerSession &sess) : _sess(&sess), _refcnt(0) {}\r
- virtual ~ServerCallback();\r
- virtual void callback(pfc_ipcsrvcb_type_t type) = 0;\r
- inline ServerSession &\r
- getSession(void)\r
- {\r
- return *_sess;\r
- }\r
-\r
-private:\r
- ServerSession *_sess;\r
- uint32_t _refcnt;\r
-};\r
-\r
-}\r
-}\r
-}\r
-\r
-#endif /* !_PFCXX_IPC_SERVER_HH */\r
+/*
+ * Copyright (c) 2012-2013 NEC Corporation
+ * All rights reserved.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this
+ * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
+ */
+
+#include <pfc/ipc.h>
+#include <netinet/in.h>
+#include <string>
+#include <map>
+#include <list>
+#include <vector>
+#include <iostream>
+
+#ifndef _PFCXX_IPC_SERVER_HH
+#define _PFCXX_IPC_SERVER_HH
+
+namespace pfc {
+namespace core {
+namespace ipc {
+
+class ClientSession;
+class ServerCallback;
+class ServerEvent;
+
+/*
+ * C++ wrapper for IPC server session instance.
+ */
+class ServerSession
+{
+ friend class ::pfc::core::ipc::ClientSession;
+ friend class ::pfc::core::ipc::ServerEvent;
+
+public:
+ /*
+ * Constructor.
+ */
+ ServerSession();
+
+ /*
+ * Destructor.
+ */
+ virtual ~ServerSession(){
+
+ }
+
+ /*
+ * Instance methods.
+ */
+ int setTimeout(const pfc_timespec_t *timeout=NULL);
+ int getClientAddress(pfc_ipccladdr_t &claddr);
+
+ int addOutput(int8_t data);
+ int addOutputInt8(int8_t data);
+ int addOutput(uint8_t data);
+ int addOutputUint8(uint8_t data);
+ int addOutput(int16_t data);
+ int addOutputInt16(int16_t data);
+ int addOutput(uint16_t data);
+ int addOutputUint16(uint16_t data);
+ int addOutput(int32_t data);
+ int addOutputInt32(int32_t data);
+ int addOutput(uint32_t data);
+ int addOutputUint32(uint32_t data);
+ int addOutput(int64_t data);
+ int addOutputInt64(int64_t data);
+ int addOutput(uint64_t data);
+ int addOutputUint64(uint64_t data);
+ int addOutput(float data);
+ int addOutputFloat(float data);
+ int addOutput(double data);
+ int addOutputDouble(double data);
+ int addOutput(struct in_addr &data);
+ int addOutput(struct in6_addr &data);
+ int addOutput(const char *data);
+ int addOutput(const std::string &data);
+ int addOutput(const uint8_t *data, uint32_t length);
+ int addOutput(const pfc_ipcstdef_t &def, pfc_cptr_t data);
+ int addOutput(void);
+
+ int addOutput(val_ctr_st& data);
+ int addOutput(val_ctr_domain_st& data);
+ int addOutput(val_logical_port& data);
+ int addOutput(val_switch& data);
+ int addOutput(val_port& data);
+ int addOutput(val_link& data);
+ int addOutput(val_boundary_st& data);
+ int addOutput(key_ctr& data);
+ int addOutput(val_ctr& data);
+ int addOutput(key_ctr_domain& data);
+ int addOutput(val_ctr_domain& data);
+ int addOutput(key_logical_port data);
+ int addOutput(val_logical_port_st& data);
+ int addOutput(key_logical_member_port data);
+ int addOutput(key_switch& data);
+ int addOutput(val_switch_st& data);
+ int addOutput(key_port data);
+ int addOutput(val_port_st& data);
+ int addOutput(key_link data);
+ int addOutput(val_link_st data);
+ int addOutput(key_boundary data);
+ int addOutput(val_boundary& data);
+ int addOutput(key_root& data);
+ int addOutput(val_path_fault_alarm_t& data);
+ int addOutput(val_port_st_neighbor& data);
+ //int addOutput(key_logical_port);
+
+
+
+ int getArgument(uint32_t index, int8_t &data);
+ int getArgument(uint32_t index, uint8_t &data);
+ int getArgument(uint32_t index, int16_t &data);
+ int getArgument(uint32_t index, uint16_t &data);
+ int getArgument(uint32_t index, int32_t &data);
+ int getArgument(uint32_t index, uint32_t &data);
+ int getArgument(uint32_t index, int64_t &data);
+ int getArgument(uint32_t index, uint64_t &data);
+ int getArgument(uint32_t index, float &data);
+ int getArgument(uint32_t index, double &data);
+ int getArgument(uint32_t index, struct in_addr &data);
+ int getArgument(uint32_t index, struct in6_addr &data);
+ int getArgument(uint32_t index, const char *&data);
+ int getArgument(uint32_t index, const uint8_t *&data, uint32_t &length);
+ int getArgument(uint32_t index, const pfc_ipcstdef_t &def,pfc_ptr_t datap);
+
+ int getArgument(int index, key_ctr_t& key);
+ int getArgument(int index, val_ctr_t& key);
+ int getArgument(int index, key_ctr_domain_t& key);
+ int getArgument(int index, key_boundary_t& key);
+ int getArgument(int index, val_boundary_t& key);
+ int getArgument(int index, val_ctr_domain_t& key);
+ int getArgument(int index, key_logical_port_t& key);
+ int getArgument(int index, val_logical_port_st_t& key);
+ int getArgument(int index, key_logical_member_port_t& key);
+ int getArgument(int index, key_switch_t& key);
+ int getArgument(int index, val_switch_st_t& key);
+ int getArgument(int index, key_port_t& key);
+ int getArgument(int index, val_port_st_t& key);
+ int getArgument(int index, key_link_t& key);
+ int getArgument(int index, val_link_st_t& key);
+
+
+ uint32_t getArgCount(void);
+ int getArgType(uint32_t index, pfc_ipctype_t &type);
+ int getArgStructName(uint32_t index, const char *&name);
+ int getArgStructName(uint32_t index, std::string &name);
+
+ int setCallback(pfc_ipcsrvcb_type_t type, ServerCallback *cbp);
+ void unsetCallback(pfc_ipcsrvcb_type_t type);
+ void clearCallbacks(void);
+
+ //stub functions
+ static void stub_setArgCount(uint32_t argCount);
+ static void stub_setArgStructName(uint32_t index, std::string &name);
+ static void stub_setArgument(int result);
+ static void stub_setArgument( uint32_t index,uint32_t value );
+ static void clearStubData();
+ static void stub_setArgType(uint32_t index, pfc_ipctype_t ipctype);
+ static void stub_setAddOutput(int result);
+ static void stub_setAddOutput(uint32_t value);
+
+private:
+ static std::map<uint32_t,pfc_ipctype_t > arg_parameters;
+ static std::map<uint32_t,std::string> structNameMap;
+ static std::map<uint32_t,uint32_t> arg_map;
+ static std::vector<uint32_t> add_output_list;
+ static bool addOutPut_;
+ static int result_;
+ static uint32_t argCount_;
+};
+
+class ServerEvent
+ : public ServerSession
+{
+public:
+ ServerEvent(const char *name, pfc_ipcevtype_t type, int &err)
+ : ServerSession()
+ {
+ std::cout<<" ServerEvent(const char *name, pfc_ipcevtype_t type, int &err) "<<std::endl;
+ err = serverEventErr_;
+ }
+
+ ServerEvent(std::string &name, pfc_ipcevtype_t type, int &err)
+ : ServerSession()
+ {
+ std::cout<<" ServerEvent(std::string &name, pfc_ipcevtype_t type, int &err)"<<std::endl;
+ err = serverEventErr_;
+ }
+
+ ServerEvent(uint8_t type, int &err)
+ : ServerSession()
+ {
+ err = serverEventErr_;
+ }
+
+ ~ServerEvent()
+ {
+
+ }
+
+ inline int
+ post(void)
+ {
+ std::cout<<" post(void) "<<std::endl;
+ return postResult_;
+ }
+
+ inline int
+ postTo(pfc_ipccladdr_t &claddr)
+ {
+
+ return 0;
+ }
+
+ static void clearStubData();
+ static void stub_setserverEventErr(int err);
+ static void stub_setPostResult(int result);
+private:
+ static int serverEventErr_;
+ static int postResult_;
+};
+
+class ServerCallback
+{
+public:
+
+ ServerCallback(ServerSession &sess) : _sess(&sess), _refcnt(0) {}
+ virtual ~ServerCallback();
+ virtual void callback(pfc_ipcsrvcb_type_t type) = 0;
+ inline ServerSession &
+ getSession(void)
+ {
+ return *_sess;
+ }
+
+private:
+ ServerSession *_sess;
+ uint32_t _refcnt;
+};
+
+}
+}
+}
+
+#endif /* !_PFCXX_IPC_SERVER_HH */
/*
-* Copyright (c) 2012-2013 NEC Corporation
-* All rights reserved.
-*
-* This program and the accompanying materials are made available under the
-* terms of the Eclipse Public License v1.0 which accompanies this
-* distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
-*/
-
+ * Copyright (c) 2012-2013 NEC Corporation
+ * All rights reserved.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this
+ * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
+ */
#ifndef _PFCXX_MODULE_HH
#define _PFCXX_MODULE_HH
*/
#include <pfc/module.h>
-//#include <pfcxx/conf.hh>
#include <pfc/log.h>
-#include <cxx/pfcxx/conf.hh>
-#include <cxx/pfcxx/event.hh>
-#include "cxx/pfcxx/ipc_client.hh"
-#include<string>
-/*const char * pfc_module_conf_getblock(const char * bname){
+#include <pfcxx/conf.hh>
+#include <pfcxx/event.hh>
+#include <pfcxx/ipc_client.hh>
+#include <string>
- return "";
-}
-const char* pfc_module_conf_getmap(const char* name,const char* keyv) {
-return "";
-}*/
namespace pfc {
namespace core {
}
static Module *getInstanceByType(const char *tname) {
-
- return capaModule;
+ return NULL;
}
static inline pfc_bool_t
std::string _name;
pfc_module_t _module;
protected:
- static Module* capaModule;
- static Module* tcLib;
- static Module* PhysicalLayer;
-
+ static Module *tcLib;
+ static Module *physical;
};
/*
extern pfc_module_t module_register(const pfc_modattr_t *mattr,
pfc_modfac_t factory,
const char *tname);
-#define PFC_MODULE_IPC_DECL(module_classi,physical) \
+#define PFC_MODULE_IPC_DECL(module_classi,physical)
+#define PFC_MODULE_DECL(module_class)
+
+
+/*
+ * The ModuleConfBlock instance represents a bunch of parameters defined in
+ * the module configuration file.
+ * This class is only available in module source code.
+ */
class ModuleConfBlock
{
public:
/*
- * * Create a block handle instance associated with a parameter block
- * * in the module configuration file, specified by the block name.
- * */
- ModuleConfBlock(const char *bname)
- {}
-
- ModuleConfBlock(const std::string &bname)
- {}
+ * Create a block handle instance associated with a parameter block
+ * in the module configuration file, specified by the block name.
+ */
+ ModuleConfBlock(const char *bname) {}
+ ModuleConfBlock(const std::string &bname) {}
/*
- * * Create a block handle instance associated with a parameter map block
- * * in the module configuration file, specified by the map name and its key.
- * */
- ModuleConfBlock(const char *mname, const char *key)
- {}
-
- ModuleConfBlock(const std::string &mname, const std::string &key)
- {}
+ * Create a block handle instance associated with a parameter map block
+ * in the module configuration file, specified by the map name and its key.
+ */
+ ModuleConfBlock(const char *mname, const char *key) {}
+ ModuleConfBlock(const std::string &mname, const std::string &key) {}
+
inline uint8_t
getByte(const char *name, uint8_t defvalue)
{
- return static_cast<uint8_t>(0);
+ return defvalue;
}
inline uint8_t
getByte(const std::string &name, uint8_t defvalue)
{
-
- return static_cast<uint8_t>(0);
+ return defvalue;
}
- /*
- * * Return a C-styled string value.
- * */
inline const char *
getString(const char *name, const char *defvalue)
{
- return "dummy";
+ return defvalue;
}
inline const char *
getString(const std::string &name, const char *defvalue)
{
- return "dummy";
+ return defvalue;
}
- inline int
+
+ inline int
arraySize(const char *name)
{
return 0;
inline uint32_t
getUint32(const char *name, uint32_t defvalue)
{
- return static_cast<uint32_t>(0);
+ return defvalue;
}
inline uint32_t
getUint32(const std::string &name, uint32_t defvalue)
{
- return static_cast<uint32_t>(0);
+ return defvalue;
}
inline uint8_t
getByteAt(const char *name, uint32_t index, uint8_t defvalue)
{
- return static_cast<uint8_t>(0);
+ return defvalue;
}
inline uint8_t
getByteAt(const std::string &name, uint32_t index, uint8_t defvalue)
{
- return static_cast<uint8_t>(0);
+ return defvalue;
}
-
};
+
}
}
-#endif
+#endif
+++ /dev/null
-/*
-* Copyright (c) 2012-2013 NEC Corporation
-* All rights reserved.
-*
-* This program and the accompanying materials are made available under the
-* terms of the Eclipse Public License v1.0 which accompanies this
-* distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
-*/
-
-
-/*
- * stub_momgr_impl.hh
- *
- * Created on: Feb 27, 2013
- * Author: guest
- */
-
-#ifndef STUB_MOMGR_IMPL_HH_
-#define STUB_MOMGR_IMPL_HH_
-
-#include <limits.h>
-#include <gtest/gtest.h>
-#include "momgr_intf.hh"
-#include "pfc/event.h"
-#include "cxx/pfcxx/synch.hh"
-#include "unc/keytype.h"
-
-#include "upll_errno.h"
-#include "dal/dal_dml_intf.hh"
-#include "ipc_util.hh"
-#include "cxx/pfcxx/module.hh"
-#include "capa_module_stub.hh"
-#include "ctrlr_mgr.hh"
-#include "ipct_st.hh"
-#include "dal/dal_dml_intf.hh"
-
-using std::string;
-using std::list;
-using std::set;
-using unc::upll::ipc_util::IpcReqRespHeader;
-using unc::upll::ipc_util::ConfigKeyVal;
-using unc::upll::ipc_util::ConfigNotification;
-using unc::upll::dal::DalDmlIntf;
-
-
-using ::testing::TestWithParam;
-using namespace unc::upll::ipc_util;
-using ::testing::Values;
-
-using namespace unc::upll::config_momgr;
-
-class StubMoMgr : public MoManager
-{
-public:
- virtual upll_rc_t TxUpdateController(unc_key_type_t keytype,
- uint32_t session_id, uint32_t config_id,
- UpdateCtrlrPhase phase,
- set<string> *affected_ctrlr_set,
- DalDmlIntf *dmi,
- ConfigKeyVal **err_ckv ) {
- ConfigKeyVal* configKeyVal(new ConfigKeyVal(UNC_KT_FLOWLIST_ENTRY,IpctSt::kIpcInvalidStNum));
- *err_ckv = configKeyVal;
- if ( phase == kUpllUcpDelete )
- {
- return ( session_id == 0)? UPLL_RC_ERR_GENERIC:UPLL_RC_SUCCESS;
- }
- else if ( phase == kUpllUcpCreate )
- {
- return ( config_id == 0)? UPLL_RC_ERR_GENERIC:UPLL_RC_SUCCESS;
- }
- else if (phase == kUpllUcpUpdate )
- std::cout<<"affected_ctrlr_set->size() "<< affected_ctrlr_set->size()<<std::endl;
- return ( affected_ctrlr_set->size() == 0 )? UPLL_RC_ERR_GENERIC:UPLL_RC_SUCCESS;
- }
- virtual upll_rc_t TxVote(unc_key_type_t keytype, DalDmlIntf *dmi, ConfigKeyVal **err_ckv ) {
- return UPLL_RC_SUCCESS;
- }
-
- virtual upll_rc_t TxVoteCtrlrStatus(
- unc_key_type_t keytype,
- list<CtrlrVoteStatus*> *ctrlr_vote_status,
- DalDmlIntf *dmi) {
- return UPLL_RC_SUCCESS;
- }
-
-
-virtual upll_rc_t AuditUpdateController(unc_key_type_t, const char*, uint32_t, uint32_t, unc::upll::config_momgr::UpdateCtrlrPhase, bool*, unc::upll::dal::DalDmlIntf*){
- return UPLL_RC_SUCCESS;
-}
-
- virtual upll_rc_t TxCopyCandidateToRunning(
- unc_key_type_t keytype,
- list<CtrlrCommitStatus*> *ctrlr_commit_status,
- DalDmlIntf *dmi) {
- return UPLL_RC_SUCCESS;
- }
-
- virtual upll_rc_t TxEnd(unc_key_type_t keytype, DalDmlIntf *dmi){
- return UPLL_RC_SUCCESS;
- }
-
- virtual upll_rc_t CreateMo(IpcReqRespHeader *req, ConfigKeyVal *key,
- DalDmlIntf *dmi) {
- return UPLL_RC_SUCCESS;
- }
- virtual upll_rc_t CreateImportMo(IpcReqRespHeader *req, ConfigKeyVal *key,
- DalDmlIntf *dmi, const char *ctrlr_id,const char *domain_id) {
- return UPLL_RC_SUCCESS;
- }
- virtual upll_rc_t DeleteMo(IpcReqRespHeader *req, ConfigKeyVal *key,
- DalDmlIntf *dmi) {
- return UPLL_RC_SUCCESS;
- }
-
- virtual upll_rc_t UpdateMo(IpcReqRespHeader *req, ConfigKeyVal *key,
- DalDmlIntf *dmi) {
- return UPLL_RC_SUCCESS;
- }
-
- /*virtual upll_rc_t RenameMo(IpcReqRespHeader *req, ConfigKeyVal *key,
- DalDmlIntf *dmi, const char *ctrlr_id) {
- return UPLL_RC_ERR_NOT_ALLOWED_FOR_THIS_KT;
- }*/
-
- virtual upll_rc_t ReadMo(IpcReqRespHeader *req, ConfigKeyVal *key,
- DalDmlIntf *dmi) {
- return UPLL_RC_SUCCESS;
- }
-
- virtual upll_rc_t ReadSiblingMo(IpcReqRespHeader *req, ConfigKeyVal *key,
- bool begin, DalDmlIntf *dal)
- {
- return UPLL_RC_SUCCESS;
- }
- virtual upll_rc_t ReadSiblingCount(IpcReqRespHeader *req, ConfigKeyVal *key,
- DalDmlIntf *dmi) {
- return UPLL_RC_SUCCESS;
- }
-
- virtual upll_rc_t ControlMo(IpcReqRespHeader *req, ConfigKeyVal *key,
- DalDmlIntf *dmi) {
- return UPLL_RC_ERR_NOT_ALLOWED_FOR_THIS_KT;
- }
-
- virtual upll_rc_t AuditUpdateController(unc_key_type_t keytype,
- const char *ctrlr_id,
- uint32_t session_id, uint32_t config_id,
- UpdateCtrlrPhase phase,
- DalDmlIntf *dmi) {
- if ( phase == kUpllUcpDelete )
- {
- return ( session_id == 0)? UPLL_RC_ERR_GENERIC:UPLL_RC_SUCCESS;
- }
- else if ( phase == kUpllUcpCreate )
- {
- return ( config_id == 10)? UPLL_RC_ERR_GENERIC:UPLL_RC_SUCCESS;
- }
- else if (phase == kUpllUcpUpdate )
-
- return UPLL_RC_SUCCESS;
- }
- // virtual upll_rc_t AuditVote(const char *ctrlr_id) = 0;
- virtual upll_rc_t AuditVoteCtrlrStatus(unc_key_type_t keytype,
- CtrlrVoteStatus *vote_satus,
- DalDmlIntf *dmi) {
- return UPLL_RC_SUCCESS;
- }
- virtual upll_rc_t AuditCommitCtrlrStatus(unc_key_type_t keytype,
- CtrlrCommitStatus *commit_satus,
- DalDmlIntf *dmi) {
- return UPLL_RC_SUCCESS;
- }
- virtual upll_rc_t AuditEnd(unc_key_type_t keytype, const char *ctrlr_id,
- DalDmlIntf *dmi) {
- std::string cntrl_id(ctrlr_id);
- return ( 0 == cntrl_id.compare("success"))?UPLL_RC_SUCCESS:UPLL_RC_ERR_GENERIC;
- }
-
- virtual upll_rc_t MergeValidate(unc_key_type_t keytype,
- const char *ctrlr_id,
- ConfigKeyVal *conflict_ckv,
- DalDmlIntf *dmi) {
- return UPLL_RC_SUCCESS;
- }
-
- virtual upll_rc_t MergeImportToCandidate(unc_key_type_t keytype,
- const char *ctrlr_id,
- DalDmlIntf *dmi) {
- return UPLL_RC_SUCCESS;
- }
- virtual upll_rc_t ImportClear(unc_key_type_t keytype,
- const char *ctrlr_id,
- DalDmlIntf *dmi) {
- return UPLL_RC_SUCCESS;
- }
-
- virtual upll_rc_t CopyRunningToStartup(unc_key_type_t kt,
- DalDmlIntf *dmi) {
- return UPLL_RC_SUCCESS;
- }
- virtual upll_rc_t ClearStartup(unc_key_type_t kt, DalDmlIntf *dmi) {
- return UPLL_RC_SUCCESS;
- }
- virtual upll_rc_t LoadStartup(unc_key_type_t kt, DalDmlIntf *dmi) {
- return UPLL_RC_SUCCESS;
- }
- virtual upll_rc_t CopyRunningToCandidate(unc_key_type_t kt,
- DalDmlIntf *dmi) {
- return UPLL_RC_SUCCESS;
- }
- virtual upll_rc_t IsCandidateDirty(unc_key_type_t kt, bool *dirty,
- DalDmlIntf *dmi) {
- return UPLL_RC_SUCCESS;
- }
- virtual void UpplNotificationHandler(pfc_event_t event, pfc_ptr_t arg) {
-
- }
- virtual void DriverNotificationHandler(pfc_event_t event, pfc_ptr_t arg) {
-
- }
-};
-
-
-#endif /* STUB_MOMGR_IMPL_HH_ */
+++ /dev/null
-#
-# Copyright (c) 2013 NEC Corporation
-# All rights reserved.
-#
-# This program and the accompanying materials are made available under the
-# terms of the Eclipse Public License v1.0 which accompanies this
-# distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
-#
-
-##
-## Makefile that includes ipc stub to run unit tests for UPPL module.
-##
-
-CPPFLAGS = -g
-
-OBJS=../stub_objs
-
-SRC_DIR = ../../../../../../modules
-STUB_DIR =..
-INCLUDE = -I$(STUB_DIR)/include \
- -I$(STUB_DIR)/include/cxx \
- -I$(STUB_DIR)/include/cxx/pfcxx \
- -I$(SRC_DIR)/upll \
- -I$(SRC_DIR)/../core/libs/libpfc_ipc \
- -I$(SRC_DIR)/../dist/target/objs/core_include \
- -I$(SRC_DIR)/../dist/target/objs/include \
- -I$(SRC_DIR)/../core/include \
- -I$(SRC_DIR)/../core/include\cxx \
- -I$(SRC_DIR)/../core/include\cxx\pfcxx \
- -I$(SRC_DIR)/../include/ \
- -I$(SRC_DIR)/upll/include \
- -I$(SRC_DIR)/ODBC \
-
-all: compile
-
-clean :
- @(cd $(OBJS); rm -rf $(OBJS)/ipc_client.o ipc_server.o)
-
-DEPENDENT_FILES = ipc_server.cc ipc_client.cc module.cc alarm.cc
-OBJ1 = $(patsubst %.cc,$(OBJS)/%.o,$(DEPENDENT_FILES))
-
-$(OBJ1):$(OBJS)/%.o : ./%.cc
- $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(INCLUDE) -c $< -o $@
-
-compile : $(OBJ1)
-
-
-
+++ /dev/null
-/*
- * Copyright (c) 2012-2013 NEC Corporation
- * All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this
- * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
- */
-
-
-
-/*
- * Generated by cfdefc. DO NOT EDIT!!
- */
-
-#include <pfc/conf_parser.h>
-
-/*
- * Definitions for parameters in parameter blocks.
- */
-static const pfc_cfdef_param_t _cfdef_params_block_version_list[] = {
- {
- .cfdp_name = "version",
- .cfdp_min = (uint64_t)0ULL,
- .cfdp_max = (uint64_t)1023ULL,
- .cfdp_type = PFC_CFTYPE_STRING,
- .cfdp_nelems = PFC_CFPARAM_NELEMS_VARLEN,
- .cfdp_flags = (0),
- }
-};
-
-static const pfc_cfdef_param_t _cfdef_params_block_kt_cap_map_list[] = {
- {
- .cfdp_name = "kt_map_name",
- .cfdp_min = (uint64_t)0ULL,
- .cfdp_max = (uint64_t)1023ULL,
- .cfdp_type = PFC_CFTYPE_STRING,
- .cfdp_nelems = PFC_CFPARAM_NELEMS_VARLEN,
- .cfdp_flags = (0),
- }
-};
-
-static const pfc_cfdef_param_t _cfdef_params_map_kt_cap[] = {
- {
- .cfdp_name = "key_type",
- .cfdp_min = (uint64_t)0x0ULL,
- .cfdp_max = (uint64_t)0xffffffffULL,
- .cfdp_type = PFC_CFTYPE_UINT32,
- .cfdp_nelems = PFC_CFPARAM_NELEMS_SCALAR,
- .cfdp_flags = (0),
- },
- {
- .cfdp_name = "attribute_name",
- .cfdp_min = (uint64_t)0ULL,
- .cfdp_max = (uint64_t)1023ULL,
- .cfdp_type = PFC_CFTYPE_STRING,
- .cfdp_nelems = PFC_CFPARAM_NELEMS_VARLEN,
- .cfdp_flags = (0),
- },
- {
- .cfdp_name = "version_supported",
- .cfdp_min = (uint64_t)0ULL,
- .cfdp_max = (uint64_t)1023ULL,
- .cfdp_type = PFC_CFTYPE_STRING,
- .cfdp_nelems = PFC_CFPARAM_NELEMS_VARLEN,
- .cfdp_flags = (0),
- },
- {
- .cfdp_name = "scalability_num",
- .cfdp_min = (uint64_t)0x0ULL,
- .cfdp_max = (uint64_t)0xffffffffULL,
- .cfdp_type = PFC_CFTYPE_UINT32,
- .cfdp_nelems = PFC_CFPARAM_NELEMS_SCALAR,
- .cfdp_flags = (0),
- }
-};
-
-/*
- * Definitions for parameter blocks.
- */
-static const pfc_cfdef_block_t _cfdef_blocks[] = {
- {
- .cfdb_name = "version_list",
- .cfdb_params = _cfdef_params_block_version_list,
- .cfdb_nparams = 1,
- .cfdb_flags = (0),
- },
- {
- .cfdb_name = "kt_cap_map_list",
- .cfdb_params = _cfdef_params_block_kt_cap_map_list,
- .cfdb_nparams = 1,
- .cfdb_flags = (0),
- },
- {
- .cfdb_name = "kt_cap",
- .cfdb_params = _cfdef_params_map_kt_cap,
- .cfdb_nparams = 4,
- .cfdb_flags = (PFC_CFBF_MAP),
- }
-};
-
-/*
- * Definition for the configuration file.
- */
-const pfc_cfdef_t ctr_cap_cfdef = {
- .cfd_block = _cfdef_blocks,
- .cfd_nblocks = 3,
-};
+++ /dev/null
-/*
-* Copyright (c) 2012-2013 NEC Corporation
-* All rights reserved.
-*
-* This program and the accompanying materials are made available under the
-* terms of the Eclipse Public License v1.0 which accompanies this
-* distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
-*/
-
-
-/*
- * C++ utilities for PFC IPC client.
- */
-
-#include <string>
-#include <pfc/ipc.h>
-#include <pfcxx/ipc_client.hh>
-#include <iostream>
-#include <pfc/ipc_client.h>
-
-namespace pfc {
-namespace core {
-namespace ipc {
-
-std::map<uint32_t,pfc_ipctype_t > ClientSession::arg_parameters;
-std::map<uint32_t,std::string> ClientSession::structNameMap;
-std::map<uint32_t,uint32_t> ClientSession::arg_map;
-std::list<uint32_t> ClientSession::add_output_list;
-int ClientSession::addOutPut_;
-int ClientSession::responseResult_;
-int ClientSession::ClientsesErrorCode_;
-int ClientSession::argCount_;
-pfc_ipcresp_t ClientSession::ipcresp_;
-int ClientSession::err_;
-std::list<const char*> ClientSession::add_output_str;
-
-
-ClientSession::ClientSession(const char* /*name*/, pfc_ipcid_t /*service*/, int &err)
-{
- err = 0;
-}
-
-
-ClientSession::ClientSession(const char* /*name*/, pfc_ipcid_t /*service*/, int &err,
- uint32_t /*flags*/)
-{
- err = 0;
-}
-
-ClientSession::ClientSession(const std::string& /*name*/, pfc_ipcid_t /*service*/,
- int &err)
-{
- err = 0;
-}
-
-ClientSession::ClientSession(const std::string& /*name*/, pfc_ipcid_t /*service*/,
- int &err, uint32_t /*flags*/)
-{
- err = 0;
-}
-
-ClientSession::ClientSession(pfc_ipcconn_t /*conn*/, const char* /*name*/,
- pfc_ipcid_t service, int &err)
-{
- if(service > 0 && service <=3 )
- {
- err = 0;
- }
- else { err = 1; }
-
-}
-
-ClientSession::ClientSession(pfc_ipcconn_t /*conn*/, const char* /*name*/,
- pfc_ipcid_t /*service*/, int &err, uint32_t /*flags*/)
-{
- err = 0;
-}
-
-ClientSession::ClientSession(pfc_ipcconn_t /*conn*/, const std::string& /*name*/,
- pfc_ipcid_t /*service*/, int &err)
-{
- err = 0;
-}
-
-
-ClientSession::ClientSession(pfc_ipcconn_t /*conn*/, const std::string& /*name*/,
- pfc_ipcid_t /*service*/, int &err, uint32_t /*flags*/)
-{
- err = 0;
-}
-
- void
-ClientSession::stub_setClientSessionErrorCode(int result)
-{
- ClientsesErrorCode_ = result;
-}
-
-
-ClientSession::ClientSession()
-{
-}
-
-ClientSession::ClientSession(pfc_ipcsess_t *sess)
-{
-}
-
-/*
- * Destructor of the IPC client session instance.
- */
-
-ClientSession::~ClientSession()
-{
- arg_parameters.clear();
-}
-
- int
-ClientSession::reset(const char* /*name*/, pfc_ipcid_t /*service*/)
-{
- return 0;
-}
-
- int
-ClientSession::reset(const std::string& /*name*/, pfc_ipcid_t /*service*/)
-{
- return 0;
-}
-
- int
-ClientSession::setTimeout(const pfc_timespec_t* /*timeout*/)
-{
- return 0;
-}
-
- int
-ClientSession::invoke(pfc_ipcresp_t& response)
-{
- response=ipcresp_;
- return err_;
-}
-
-void ClientSession::stub_setinvoke(pfc_ipcresp_t ipcresp,int err)
-{
- ipcresp_=ipcresp;
- err_=err;
-}
- int
-ClientSession::cancel(pfc_bool_t /*discard*/)
-{
- return 0;
-}
-
- int
-ClientSession::forward(ClientSession &sess, uint32_t begin, uint32_t end)
-{
- return 0;
-}
-
- int
-ClientSession::forward(ServerSession &sess, uint32_t begin, uint32_t end)
-{
- return 0;
-}
-
- int
-ClientSession::forwardTo(ServerSession &sess, uint32_t begin, uint32_t end)
-{
- return 0;
-}
-
-// Signed 8-bit value.
- int
-ClientSession::addOutput(int8_t /*data*/)
-{
- return addOutPut_;
-}
- int
- ClientSession::addOutput(void)
- {
- return addOutPut_;
- }
- int
-ClientSession::addOutputInt8(int8_t /*data*/)
-{
- return addOutPut_;
-}
-
-// Unsigned 8-bit value.
- int
-ClientSession::addOutput(uint8_t /*data*/)
-{
- return addOutPut_;
-}
-
- int
-ClientSession::addOutputUint8(uint8_t /*data*/)
-{
- return addOutPut_;
-}
-
-// Signed 16-bit value.
- int
-ClientSession::addOutput(int16_t /*data*/)
-{
- return addOutPut_;
-}
-
- int
-ClientSession::addOutputInt16(int16_t /*data*/)
-{
- return addOutPut_;
-}
-
-// Unsigned 16-bit value.
- int
-ClientSession::addOutput(uint16_t /*data*/)
-{
- return addOutPut_;
-}
-
- int
-ClientSession::addOutputUint16(uint16_t /*data*/)
-{
- return addOutPut_;
-}
-
-// Signed 32-bit value.
- int
-ClientSession::addOutput(int32_t /*data*/)
-{
- return addOutPut_;
-}
-
- int
-ClientSession::addOutputInt32(int32_t /*data*/)
-{
- return addOutPut_;
-}
-
-// Unsigned 32-bit value.
- int
-ClientSession::addOutput(uint32_t data)
-{
- for (std::list<uint32_t>::iterator it=add_output_list.begin(); it != add_output_list.end(); ++it)
- {
- uint32_t data_l = *it;
- if( data == data_l )
- {
- return 0;
- }
- }
- return 1;
-}
-
-
-int
-ClientSession::addOutput(key_ctr&)
-{
-return addOutPut_;
-}
-
-int
-ClientSession::addOutput(val_ctr&)
-{
-return addOutPut_;
-}
-
-int
-ClientSession::addOutput(key_boundary_t&)
-{
-return addOutPut_;
-}
-
-int
-ClientSession::addOutput(key_logical_port)
-{
-return addOutPut_;
-}
-
-int
-ClientSession::addOutput(val_logical_port&)
-{
-return addOutPut_;
-}
-
-int
-ClientSession::addOutput(val_logical_port_st&)
-{
-return addOutPut_;
-}
-
- void
-ClientSession::stub_setAddOutput(uint32_t data)
-{
- add_output_list.push_front(data);
-}
-
-
- int
-ClientSession::addOutputUint32(uint32_t /*data*/)
-{
- return addOutPut_;
-}
-
-// Signed 64-bit value.
- int
-ClientSession::addOutput(int64_t /*data*/)
-{
- return addOutPut_;
-}
-
- int
-ClientSession::addOutputInt64(int64_t /*data*/)
-{
- return addOutPut_;
-}
-
-// Unsigned 64-bit value.
- int
-ClientSession::addOutput(uint64_t /*data*/)
-{
- return addOutPut_;
-}
-
- int
-ClientSession::addOutputUint64(uint64_t /*data*/)
-{
- return addOutPut_;
-}
-
-// Single precision floating point.
- int
-ClientSession::addOutput(float /*data*/)
-{
- return addOutPut_;
-}
-
- int
-ClientSession::addOutputFloat(float /*data*/)
-{
- return addOutPut_;
-}
-
-// Double precision floating point.
- int
-ClientSession::addOutput(double /*data*/)
-{
- return addOutPut_;
-}
-
- int
-ClientSession::addOutputDouble(double /*data*/)
-{
- return addOutPut_;
-}
-
-// IPv4 address.
- int
-ClientSession::addOutput(struct in_addr& /*data*/)
-{
- return addOutPut_;
-}
-
-// IPv6 address.
- int
-ClientSession::addOutput(struct in6_addr& /*data*/)
-{
- return addOutPut_;
-}
-
-// String. (pointer)
- int
-ClientSession::addOutput(const char* data)
-{
- std::cout<<"data"<<data<<std::endl;
- for (std::list<const char*>::iterator it=add_output_str.begin(); it != add_output_str.end(); ++it)
- {
- const char* data_l = *it;
- std::string str(data);
- if( 0 == str.compare(data_l) )
- {
- return 0;
- }
- }
- return 1;
-}
-
-
-void ClientSession::stub_setAddOutput(const char* data)
-{
- add_output_str.push_front(data);
-}
-
-// String. (std::string)
- int
-ClientSession::addOutput(const std::string& /*data*/)
-{
- return addOutPut_;
-}
-
-// Binary data.
- int
-ClientSession::addOutput(const uint8_t* /**data*/, uint32_t /*length*/)
-{
- return addOutPut_;
-}
-
-// IPC structure specified by pfc_ipcstdef_t.
- int
-ClientSession::addOutput(const pfc_ipcstdef_t& /*def*/, pfc_cptr_t /*data*/)
-{
- return addOutPut_;
-}
-
- void
-ClientSession::stub_setAddOutput( int result)
-{
- addOutPut_ = result;
-}
-
-// Signed 8-bit integer.
- int
-ClientSession::getResponse(uint32_t /*index*/, int8_t& /*data*/)
-{
- return responseResult_;
-}
-
-// Unsigned 8-bit integer.
- int
-ClientSession::getResponse(uint32_t /*index*/, uint8_t& /*data*/)
-{
- return responseResult_;
-}
-
-// Signed 16-bit integer.
- int
-ClientSession::getResponse(uint32_t /*index*/, int16_t& /*data*/)
-{
- return responseResult_;
-}
-
-// Unsigned 16-bit integer.
- int
-ClientSession::getResponse(uint32_t /*index*/, uint16_t& /*data*/)
-{
- return responseResult_;
-}
-
-// Signed 32-bit integer.
- int
-ClientSession::getResponse(uint32_t /*index*/, int32_t& /*data*/)
-{
- return responseResult_;
-}
-
-// Unsigned 32-bit integer.
- int
-ClientSession::getResponse(uint32_t index, uint32_t& data)
-{
- if (0 != arg_map.count(index))
- {
- data = arg_map[index];
- return 0;
- }
- return 1;
-}
-
-// Signed 64-bit integer.
- int
-ClientSession::getResponse(uint32_t /*index*/, int64_t& /*data*/)
-{
- return responseResult_;
-}
-
-// Unsigned 64-bit integer.
- int
-ClientSession::getResponse(uint32_t /*index*/, uint64_t& /*data*/)
-{
- return responseResult_;
-}
-
-// Single precision floating point.
- int
-ClientSession::getResponse(uint32_t /*index*/, float& /*data*/)
-{
- return responseResult_;
-}
-
-// Double precision floating point.
- int
-ClientSession::getResponse(uint32_t /*index*/, double& /*data*/)
-{
- return responseResult_;
-}
-
-// IPv4 address.
- int
-ClientSession::getResponse(uint32_t /*index*/, struct in_addr& /*data*/)
-{
- return responseResult_;
-}
-
-// IPv6 address.
- int
-ClientSession::getResponse(uint32_t /*index*/, struct in6_addr& /*data*/)
-{
- return responseResult_;
-}
-
- int
-ClientSession::getResponse(uint32_t /*index*/, const char*& /*data*/)
-{
- return responseResult_;
-}
-
- int
-ClientSession::getResponse(uint32_t /*index*/, const uint8_t*& /*data*/,
- uint32_t& /*length*/)
-{
- return responseResult_;
-}
-
- int
-ClientSession::getResponse(uint32_t /*index*/, const pfc_ipcstdef_t& /*def*/,
- pfc_ptr_t /*datap*/)
-{
- return responseResult_;
-}
- int
-ClientSession::getResponse(uint32_t /*index*/, key_ctr& /*data*/)
-{
- return responseResult_;
-}
- int
-ClientSession::getResponse(uint32_t /*index*/, val_phys_path_fault_alarm_t& /*data*/)
-{
- return responseResult_;
-}
- int
-ClientSession::getResponse(uint32_t /*index*/, key_ctr_domain_t& /*data*/)
-{
- return responseResult_;
-}
- int
-ClientSession::getResponse(uint32_t /*index*/, key_switch_t& /*data*/)
-{
- return responseResult_;
-}
- int
-ClientSession::getResponse(uint32_t /*index*/, key_port_t& /*data*/)
-{
- return responseResult_;
-}
- int
-ClientSession::getResponse(uint32_t /*index*/, val_port_st& /*data*/)
-{
- return responseResult_;
-}
- int
-ClientSession::getResponse(uint32_t /*index*/, val_switch_st& /*data*/)
-{
- return responseResult_;
-}
- int
-ClientSession::getResponse(uint32_t /*index*/, key_link_t& /*data*/)
-{
- return responseResult_;
-}
- int
-ClientSession::getResponse(uint32_t /*index*/, val_link_st& /*data*/)
-{
- return responseResult_;
-}
- int
-ClientSession::getResponse(uint32_t /*index*/, val_ctr_st& /*data*/)
-{
- return responseResult_;
-}
- int
-ClientSession::getResponse(uint32_t /*index*/, val_ctr_domain_st& /*data*/)
-{
- return responseResult_;
-}
- int
-ClientSession::getResponse(uint32_t /*index*/, key_logical_port_t& /*data*/)
-{
- return responseResult_;
-}
- int
-ClientSession::getResponse(uint32_t /*index*/, val_logical_port_st& /*data*/)
-{
- return responseResult_;
-}
- int
-ClientSession::getResponse(uint32_t /*index*/, key_logical_member_port_t& /*data*/)
-{
- return responseResult_;
-}
-
-void
-ClientSession::stub_setResponse(int result)
-{
- responseResult_ = result;
-}
-
-void
-ClientSession::stub_setResponse( uint32_t index,uint32_t value )
-{
- arg_map.insert(std::make_pair(index,value) );
-}
-
-uint32_t
-ClientSession::getResponseCount(void)
-{
- return argCount_ ;
-}
-
-void
-ClientSession::stub_setResponseCount(int argCount)
-{
- argCount_=argCount;
-}
-
- int
-ClientSession::getResponseType(uint32_t index, pfc_ipctype_t& type)
-{
- if (0 != arg_parameters.count(index))
- {
- type = arg_parameters[index];
- return 0;
- }
- return 1;
-}
-
- void
-ClientSession::stub_setResponsetype(uint32_t index,pfc_ipctype_t ipctype )
-{
- std::cout<<" index"<<index<<std::endl;
- arg_parameters.insert(std::make_pair(index,ipctype) );
-}
-
- int
-ClientSession::getResponseStructName(uint32_t index, const char*& name)
-{
- if (0 != structNameMap.count(index))
- {
- name = structNameMap[index].c_str();
- return 0;
- }
- return 1;
-}
-
- int
-ClientSession::getResponseStructName(uint32_t index, std::string& name)
-{
- if (0 != structNameMap.count(index))
- {
- name = structNameMap[index];
- return 0;
- }
- return 1;
-}
-
- void
-ClientSession::stub_setResponseStructName(uint32_t index, std::string& name)
-{
- structNameMap.insert(std::make_pair(index,name));
-}
-
- void
-ClientSession::clearStubData(void)
-{
- arg_parameters.clear();
- structNameMap.clear();
- arg_map.clear();
- add_output_list.clear();
- add_output_str.clear();
-}
-
-//class IpcEventAttr;
-//class IpcEventHandler;
-//class IpcEventMask
-//{
-// friend class ::pfc::core::ipc::IpcEventAttr;
-//
-//public:
-// /* Create an event mask which contains all IPC event types. */
-// IpcEventMask(): _mask(PFC_IPC_EVENT_MASK_FILL) {}
-//
-// explicit IpcEventMask(pfc_ipcevtype_t type)
-// : _mask(PFC_IPC_EVENT_MASK_BIT(type)) {}
-//
-//
-// explicit IpcEventMask(const IpcEventMask &mask) : _mask(mask._mask) {}
-//
-// void
-// empty(void)
-// {
-//
-// }
-//
-// void
-// fill(void)
-// {
-//
-// }
-//
-// int
-// add(pfc_ipcevtype_t /*type*/)
-// {
-// return 0;
-// }
-//
-// int
-// remove(pfc_ipcevtype_t /*type*/)
-// {
-// return 0;
-// }
-//
-// pfc_bool_t
-// test(pfc_ipcevtype_t /*type*/) const
-// {
-// return true;
-// }
-//
-// const pfc_ipcevmask_t *
-// getMask(void) const
-// {
-// return &_mask;
-// }
-//
-//private:
-// /* Event mask value. */
-// pfc_ipcevmask_t _mask;
-//};
-//
-//class IpcEventAttr
-//{
-//public:
-// IpcEventAttr()
-// {
-//
-// }
-//
-//
-// ~IpcEventAttr()
-// {
-//
-// }
-//
-// void
-// getHostSet(const char */*&name*/) const
-// {
-//
-// }
-//
-// int
-// setHostSet(const char* /*name*/)
-// {
-// return 0;
-// }
-//
-// void
-// getTarget(const char* /*service*/, IpcEventMask& /*mask*/) const
-// {
-//
-// }
-//
-// int
-// addTarget(const char* /*service*/)
-// {
-// return 0;
-// }
-//
-// int
-// addTarget(const char* /*service*/, const IpcEventMask& /*mask*/)
-// {
-// return 0;
-// }
-//
-// void
-// resetTarget(void)
-// {
-//
-// }
-//
-// void
-// getPriority(uint32_t& /*priority*/) const
-// {
-//
-// }
-//
-// void
-// setPriority(uint32_t /*priority*/)
-// {
-//
-// }
-//
-// void
-// getLog(pfc_bool_t& /*log*/) const
-// {
-//
-// }
-//
-// void
-// setLog(pfc_bool_t /*log*/)
-// {
-//
-// }
-//
-//private:
-// pfc_ipcevattr_t _attr;
-//};
-//
-/*class IpcEvent
-{
-public:
- pfc_ipcevid_t
- getSerial(void) const
- {
- return 0;
- }
-
- pfc_ipcevtype_t
- gettype(void) const
- {
- return 0;
- }
-
- void
- getTime(pfc_timespec_t& ts*) const
- {
-
- }
-
- const char *
- getChannelName(void) const
- {
- return "dummy";
- }
-
- const pfc_hostaddr_t *
- getHostAddress(void) const
- {
- return new pfc_hostaddr_t();
- }
-
- const char *
- getServiceName(void) const
- {
- // return "dummy";
-// }
-
-
-// pfc_ipcsess_t *
-// getSession(void) const
-// {
-// pfc_ipcsess_t* sst;
-// return sst;
-// }
-
-// pfc_bool_t
-// isStateChangeEvent(void) const
-// {
-// return true;
- // }
-
-//private:
-
-// explicit IpcEvent(pfc_ipcevent_t* event) : _event(event) {}
-
-// pfc_ipcevent_t *_event;
-//};
-//
-//
-//class IpcEventHandler
-//{
-//public:
-// IpcEventHandler() : _id() {}
-//
-// virtual ~IpcEventHandler()
-// {
-//
-// }
-//
-// pfc_ipcevhdlr_t
-// getId(void) const
-// {
-// return _id;
-// }
-//
-// void eventHandler(const IpcEvent &event)
-// {
-//
-// }
-//
-// const char *getName(void)
-// {
-// return "dummy";
-// }
-//
-//private:
-// /* Handler's identifier. */
-// pfc_ipcevhdlr_t _id;
-//};
-//
-//static int
-//remove_event_handler(IpcEventHandler *handler)
-//{
-// if (PFC_EXPECT_FALSE(handler == NULL)) {
-// return EINVAL;
-// }
-//
-// return 0;
-//}
-//
-//static int
-//add_event_handler(const char *channel, IpcEventHandler *handler,
-// const IpcEventAttr *attr = NULL)
-//{
-// if (PFC_EXPECT_FALSE(handler == NULL)) {
-// return EINVAL;
-// }
-//
-// return 0;
-//}
-
-} // ipc
-} // core
-} // pfc
+++ /dev/null
-/*
- * Copyright (c) 2012-2013 NEC Corporation
- * All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this
- * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
- */
-
-
-
-#include "cxx/pfcxx/module.hh"
-
-namespace pfc {
-namespace core {
-
-Module* Module::capaModule=NULL;
-Module* Module::tcLib=NULL;
-Module* Module::PhysicalLayer=NULL;
-
-
- Module* Module::getModule(const char* moduleName) {
- if (!strcmp(moduleName,"uppl"))
- {
- return PhysicalLayer;
- }
- else if(!strcmp(moduleName,"tclib"))
- {
- return tcLib;
- }
- else
- {
- return NULL;
- }
-
- }
-
-}
-}
--- /dev/null
+/*
+ * Copyright (c) 2012-2013 NEC Corporation
+ * All rights reserved.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this
+ * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
+ */
+
+/*
+ * C++ utilities for PFC IPC client.
+ */
+
+#include <string>
+#include <pfc/ipc.h>
+#include <pfcxx/ipc_client.hh>
+#include <iostream>
+#include <pfc/ipc_client.h>
+
+namespace pfc {
+namespace core {
+namespace ipc {
+
+std::map<uint32_t,pfc_ipctype_t > ClientSession::arg_parameters;
+std::map<uint32_t,std::string> ClientSession::structNameMap;
+std::map<uint32_t,uint32_t> ClientSession::arg_map;
+std::list<uint32_t> ClientSession::add_output_list;
+int ClientSession::addOutPut_;
+int ClientSession::responseResult_;
+int ClientSession::ClientsesErrorCode_;
+int ClientSession::argCount_;
+pfc_ipcresp_t ClientSession::ipcresp_;
+int ClientSession::err_;
+std::list<const char*> ClientSession::add_output_str;
+
+pfc_hostaddr_t IpcEvent::_local_addr;
+bool IpcEvent::_addr_initialized = false;
+
+ClientSession::ClientSession(const char* name, pfc_ipcid_t service, int &err)
+{
+ err = 0;
+}
+
+ClientSession::ClientSession(const char* name, pfc_ipcid_t service,
+ int &err, uint32_t flags)
+{
+ err = 0;
+}
+
+ClientSession::ClientSession(const std::string& name, pfc_ipcid_t service,
+ int &err)
+{
+ err = 0;
+}
+
+ClientSession::ClientSession(const std::string& name, pfc_ipcid_t service,
+ int &err, uint32_t flags)
+{
+ err = 0;
+}
+
+ClientSession::ClientSession(pfc_ipcconn_t conn, const char* name,
+ pfc_ipcid_t service, int &err)
+{
+ if (service > 0 && service <= 3) {
+ err = 0;
+ }
+ else {
+ err = EINVAL;
+ }
+}
+
+ClientSession::ClientSession(pfc_ipcconn_t conn, const char* name,
+ pfc_ipcid_t service, int &err, uint32_t flags)
+{
+ err = 0;
+}
+
+ClientSession::ClientSession(pfc_ipcconn_t conn, const std::string& name,
+ pfc_ipcid_t service, int &err)
+{
+ err = 0;
+}
+
+ClientSession::ClientSession(pfc_ipcconn_t conn, const std::string& name,
+ pfc_ipcid_t service, int &err, uint32_t flags)
+{
+ err = 0;
+}
+
+void
+ClientSession::stub_setClientSessionErrorCode(int result)
+{
+ ClientsesErrorCode_ = result;
+}
+
+ClientSession::ClientSession()
+{
+}
+
+ClientSession::ClientSession(pfc_ipcsess_t *sess)
+{
+}
+
+/*
+ * Destructor of the IPC client session instance.
+ */
+ClientSession::~ClientSession()
+{
+ arg_parameters.clear();
+}
+
+int
+ClientSession::reset(const char* name, pfc_ipcid_t service)
+{
+ return 0;
+}
+
+int
+ClientSession::reset(const std::string& name, pfc_ipcid_t service)
+{
+ return 0;
+}
+
+int
+ClientSession::setTimeout(const pfc_timespec_t* timeout)
+{
+ return 0;
+}
+
+int
+ClientSession::invoke(pfc_ipcresp_t& response)
+{
+ response = ipcresp_;
+ return err_;
+}
+
+void ClientSession::stub_setinvoke(pfc_ipcresp_t ipcresp,int err)
+{
+ ipcresp_=ipcresp;
+ err_=err;
+}
+int
+ClientSession::cancel(pfc_bool_t discard)
+{
+ return 0;
+}
+
+int
+ClientSession::forward(ClientSession &sess, uint32_t begin, uint32_t end)
+{
+ return 0;
+}
+
+ int
+ClientSession::forward(ServerSession &sess, uint32_t begin, uint32_t end)
+{
+ return 0;
+}
+
+ int
+ClientSession::forwardTo(ServerSession &sess, uint32_t begin, uint32_t end)
+{
+ return 0;
+}
+
+// Signed 8-bit value.
+int
+ClientSession::addOutput(int8_t data)
+{
+ return addOutPut_;
+}
+
+int
+ClientSession::addOutput(void)
+{
+ return addOutPut_;
+}
+
+int
+ClientSession::addOutputInt8(int8_t data)
+{
+ return addOutPut_;
+}
+
+// Unsigned 8-bit value.
+int
+ClientSession::addOutput(uint8_t data)
+{
+ return addOutPut_;
+}
+
+int
+ClientSession::addOutputUint8(uint8_t data)
+{
+ return addOutPut_;
+}
+
+// Signed 16-bit value.
+int
+ClientSession::addOutput(int16_t data)
+{
+ return addOutPut_;
+}
+
+int
+ClientSession::addOutputInt16(int16_t data)
+{
+ return addOutPut_;
+}
+
+// Unsigned 16-bit value.
+int
+ClientSession::addOutput(uint16_t data)
+{
+ return addOutPut_;
+}
+
+int
+ClientSession::addOutputUint16(uint16_t data)
+{
+ return addOutPut_;
+}
+
+// Signed 32-bit value.
+int
+ClientSession::addOutput(int32_t /*data*/)
+{
+ return addOutPut_;
+}
+
+int
+ClientSession::addOutputInt32(int32_t /*data*/)
+{
+ return addOutPut_;
+}
+
+// Unsigned 32-bit value.
+int
+ClientSession::addOutput(uint32_t data)
+{
+ for (std::list<uint32_t>::iterator it(add_output_list.begin());
+ it != add_output_list.end(); ++it) {
+ uint32_t data_l = *it;
+ if (data == data_l) {
+ return 0;
+ }
+ }
+ return 1;
+}
+
+int
+ClientSession::addOutput(key_ctr&)
+{
+ return addOutPut_;
+}
+
+int
+ClientSession::addOutput(val_ctr&)
+{
+ return addOutPut_;
+}
+
+int
+ClientSession::addOutput(key_boundary_t&)
+{
+ return addOutPut_;
+}
+
+int
+ClientSession::addOutput(key_logical_port)
+{
+ return addOutPut_;
+}
+
+int
+ClientSession::addOutput(val_logical_port&)
+{
+ return addOutPut_;
+}
+
+int
+ClientSession::addOutput(val_logical_port_st&)
+{
+ return addOutPut_;
+}
+
+ void
+ClientSession::stub_setAddOutput(uint32_t data)
+{
+ add_output_list.push_front(data);
+}
+
+ int
+ClientSession::addOutputUint32(uint32_t /*data*/)
+{
+ return addOutPut_;
+}
+
+// Signed 64-bit value.
+int
+ClientSession::addOutput(int64_t /*data*/)
+{
+ return addOutPut_;
+}
+
+int
+ClientSession::addOutputInt64(int64_t /*data*/)
+{
+ return addOutPut_;
+}
+
+// Unsigned 64-bit value.
+int
+ClientSession::addOutput(uint64_t /*data*/)
+{
+ return addOutPut_;
+}
+
+int
+ClientSession::addOutputUint64(uint64_t /*data*/)
+{
+ return addOutPut_;
+}
+
+// Single precision floating point.
+int
+ClientSession::addOutput(float /*data*/)
+{
+ return addOutPut_;
+}
+
+int
+ClientSession::addOutputFloat(float /*data*/)
+{
+ return addOutPut_;
+}
+
+// Double precision floating point.
+int
+ClientSession::addOutput(double /*data*/)
+{
+ return addOutPut_;
+}
+
+int
+ClientSession::addOutputDouble(double /*data*/)
+{
+ return addOutPut_;
+}
+
+// IPv4 address.
+int
+ClientSession::addOutput(struct in_addr& /*data*/)
+{
+ return addOutPut_;
+}
+
+// IPv6 address.
+int
+ClientSession::addOutput(struct in6_addr& /*data*/)
+{
+ return addOutPut_;
+}
+
+// String. (pointer)
+int
+ClientSession::addOutput(const char* data)
+{
+ for (std::list<const char*>::iterator it(add_output_str.begin());
+ it != add_output_str.end(); ++it) {
+ const char* data_l = *it;
+ std::string str(data);
+ if (str.compare(data_l) == 0) {
+ return 0;
+ }
+ }
+ return 1;
+}
+
+void
+ClientSession::stub_setAddOutput(const char* data)
+{
+ add_output_str.push_front(data);
+}
+
+// String. (std::string)
+int
+ClientSession::addOutput(const std::string& data)
+{
+ return addOutPut_;
+}
+
+// Binary data.
+int
+ClientSession::addOutput(const uint8_t* data, uint32_t length)
+{
+ return addOutPut_;
+}
+
+// IPC structure specified by pfc_ipcstdef_t.
+int
+ClientSession::addOutput(const pfc_ipcstdef_t& def, pfc_cptr_t data)
+{
+ return addOutPut_;
+}
+
+void
+ClientSession::stub_setAddOutput(int result)
+{
+ addOutPut_ = result;
+}
+
+// Signed 8-bit integer.
+int
+ClientSession::getResponse(uint32_t index, int8_t& data)
+{
+ return responseResult_;
+}
+
+// Unsigned 8-bit integer.
+int
+ClientSession::getResponse(uint32_t index, uint8_t& data)
+{
+ return responseResult_;
+}
+
+// Signed 16-bit integer.
+int
+ClientSession::getResponse(uint32_t index, int16_t& data)
+{
+ return responseResult_;
+}
+
+// Unsigned 16-bit integer.
+int
+ClientSession::getResponse(uint32_t index, uint16_t& data)
+{
+ return responseResult_;
+}
+
+// Signed 32-bit integer.
+int
+ClientSession::getResponse(uint32_t index, int32_t& data)
+{
+ return responseResult_;
+}
+
+// Unsigned 32-bit integer.
+int
+ClientSession::getResponse(uint32_t index, uint32_t& data)
+{
+ if (arg_map.count(index) != 0) {
+ data = arg_map[index];
+ return 0;
+ }
+ return 1;
+}
+
+// Signed 64-bit integer.
+int
+ClientSession::getResponse(uint32_t index, int64_t& data)
+{
+ return responseResult_;
+}
+
+// Unsigned 64-bit integer.
+int
+ClientSession::getResponse(uint32_t index, uint64_t& data)
+{
+ return responseResult_;
+}
+
+// Single precision floating point.
+int
+ClientSession::getResponse(uint32_t index, float& data)
+{
+ return responseResult_;
+}
+
+// Double precision floating point.
+int
+ClientSession::getResponse(uint32_t index, double& data)
+{
+ return responseResult_;
+}
+
+// IPv4 address.
+int
+ClientSession::getResponse(uint32_t index, struct in_addr& data)
+{
+ return responseResult_;
+}
+
+// IPv6 address.
+int
+ClientSession::getResponse(uint32_t index, struct in6_addr& data)
+{
+ return responseResult_;
+}
+
+int
+ClientSession::getResponse(uint32_t index, const char*& data)
+{
+ return responseResult_;
+}
+
+int
+ClientSession::getResponse(uint32_t index, const uint8_t*& data,
+ uint32_t& length)
+{
+ return responseResult_;
+}
+
+int
+ClientSession::getResponse(uint32_t index, const pfc_ipcstdef_t& def,
+ pfc_ptr_t datap)
+{
+ return responseResult_;
+}
+
+int
+ClientSession::getResponse(uint32_t index, key_ctr& data)
+{
+ return responseResult_;
+}
+
+int
+ClientSession::getResponse(uint32_t index, val_phys_path_fault_alarm_t& data)
+{
+ return responseResult_;
+}
+
+int
+ClientSession::getResponse(uint32_t index, key_ctr_domain_t& data)
+{
+ return responseResult_;
+}
+
+int
+ClientSession::getResponse(uint32_t index, key_switch_t& data)
+{
+ return responseResult_;
+}
+
+int
+ClientSession::getResponse(uint32_t index, key_port_t& data)
+{
+ return responseResult_;
+}
+
+int
+ClientSession::getResponse(uint32_t index, val_port_st& data)
+{
+ return responseResult_;
+}
+
+int
+ClientSession::getResponse(uint32_t index, val_switch_st& data)
+{
+ return responseResult_;
+}
+
+int
+ClientSession::getResponse(uint32_t index, key_link_t& data)
+{
+ return responseResult_;
+}
+
+int
+ClientSession::getResponse(uint32_t index, val_link_st& data)
+{
+ return responseResult_;
+}
+
+int
+ClientSession::getResponse(uint32_t index, val_ctr_st& data)
+{
+ return responseResult_;
+}
+
+int
+ClientSession::getResponse(uint32_t index, val_ctr_domain_st& data)
+{
+ return responseResult_;
+}
+
+int
+ClientSession::getResponse(uint32_t index, key_logical_port_t& data)
+{
+ return responseResult_;
+}
+
+int
+ClientSession::getResponse(uint32_t index, val_logical_port_st& data)
+{
+ return responseResult_;
+}
+
+int
+ClientSession::getResponse(uint32_t index, key_logical_member_port_t& data)
+{
+ return responseResult_;
+}
+
+void
+ClientSession::stub_setResponse(int result)
+{
+ responseResult_ = result;
+}
+
+void
+ClientSession::stub_setResponse(uint32_t index,uint32_t value)
+{
+ arg_map.insert(std::make_pair(index,value) );
+}
+
+uint32_t
+ClientSession::getResponseCount(void)
+{
+ return argCount_;
+}
+
+void
+ClientSession::stub_setResponseCount(int argCount)
+{
+ argCount_=argCount;
+}
+
+ int
+ClientSession::getResponseType(uint32_t index, pfc_ipctype_t& type)
+{
+ if (arg_parameters.count(index) != 0) {
+ type = arg_parameters[index];
+ return 0;
+ }
+ return 1;
+}
+
+void
+ClientSession::stub_setResponsetype(uint32_t index,pfc_ipctype_t ipctype)
+{
+ arg_parameters.insert(std::make_pair(index,ipctype) );
+}
+
+int
+ClientSession::getResponseStructName(uint32_t index, const char*& name)
+{
+ if (structNameMap.count(index) != 0) {
+ name = structNameMap[index].c_str();
+ return 0;
+ }
+ return 1;
+}
+
+int
+ClientSession::getResponseStructName(uint32_t index, std::string& name)
+{
+ if (structNameMap.count(index) != 0) {
+ name = structNameMap[index];
+ return 0;
+ }
+ return 1;
+}
+
+void
+ClientSession::stub_setResponseStructName(uint32_t index, std::string& name)
+{
+ structNameMap.insert(std::make_pair(index,name));
+}
+
+void
+ClientSession::clearStubData(void)
+{
+ arg_parameters.clear();
+ structNameMap.clear();
+ arg_map.clear();
+ add_output_list.clear();
+ add_output_str.clear();
+}
+
+} // ipc
+} // core
+} // pfc
--- /dev/null
+/*
+ * Copyright (c) 2012-2013 NEC Corporation
+ * All rights reserved.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this
+ * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
+ */
+
+#include <string.h>
+#include <pfcxx/module.hh>
+
+namespace pfc {
+namespace core {
+
+Module* Module::physical = NULL;
+Module* Module::tcLib = NULL;
+
+Module *
+Module::getModule(const char* moduleName) {
+ if (!strcmp(moduleName, "uppl")) {
+ return physical;
+ }
+ if (!strcmp(moduleName, "tclib")) {
+ return tcLib;
+ }
+
+ return NULL;
+}
+
+}
+}
+++ /dev/null
-#
-# Copyright (c) 2013 NEC Corporation
-# All rights reserved.
-#
-# This program and the accompanying materials are made available under the
-# terms of the Eclipse Public License v1.0 which accompanies this
-# distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
-#
-
-##
-## Makefile that includes tclib module stub to run unit tests for UPPL module.
-##
-
-
-
-
-
-CPPFLAGS = -g
-
-OBJS=../stub_objs
-
-SRC_DIR = ../../../../../../modules
-STUB_DIR =..
-INCLUDE = -I$(STUB_DIR)/include \
- -I$(STUB_DIR)/include/cxx \
- -I$(STUB_DIR)/include/cxx/pfcxx \
- -I$(SRC_DIR)/../core/include \
- -I$(SRC_DIR)/../include \
- -I$(SRC_DIR)/../core/libs/libpfc_ipc \
- -I$(SRC_DIR)/../dist/target/objs/core_include \
- -I$(SRC_DIR)/../dist/target/objs/core/include \
- -I$(SRC_DIR)/../dist/target/objs/include \
- -I$(SRC_DIR)/upll/include \
- -I$(SRC_DIR)/dal \
-
-
-all: $(OBJS)/tclib_module.o
-
-clean :
- @(cd $(OBJS); rm -rf $(OBJ) tclib_module.o)
-
-$(OBJS)/tclib_module.o :tclib_module.cc tclib_module.hh
- $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(INCLUDE) -c $< -o $@
-
-
-
-
-
-
/*
- * Copyright (c) 2012-2013 NEC Corporation
- * All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this
- * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
- */
-
+* Copyright (c) 2012-2013 NEC Corporation
+* All rights reserved.
+*
+* This program and the accompanying materials are made available under the
+* terms of the Eclipse Public License v1.0 which accompanies this
+* distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
+*/
#include "tclib_module.hh"
uint32_t TcLibModule::keyIndex;
TcLibInterface* TcLibModule::pTcLibInterface_=0;
+static TcLibModule theInstance(NULL);
+
+void
+TcLibModule::stub_loadtcLibModule(void) {
+ pfc::core::Module::tcLib = &theInstance;
+}
+
+void
+TcLibModule::stub_unloadtcLibModule(void) {
+ pfc::core::Module::tcLib = NULL;
+}
+
TcApiCommonRet TcLibModule::TcLibRegisterHandler(TcLibInterface* handler) {
pTcLibInterface_ = handler;
return stub_getMappedResultCode(TcLibModule::REGISTER);
/*
- * Copyright (c) 2012-2013 NEC Corporation
- * All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this
- * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
- */
+* Copyright (c) 2012-2013 NEC Corporation
+* All rights reserved.
+*
+* This program and the accompanying materials are made available under the
+* terms of the Eclipse Public License v1.0 which accompanies this
+* distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
+*/
#ifndef _UNC_TCLIB_MODULE_HH_
#define _UNC_TCLIB_MODULE_HH_
-#include "cxx/pfcxx/module.hh"
-#include <cxx/pfcxx/synch.hh>
+#include <pfcxx/module.hh>
+#include <pfcxx/synch.hh>
#include <uncxx/tclib/tclib_interface.hh>
-#include "tclib_struct_defs.hh"
+#include <tclib_struct_defs.hh>
#include <string>
namespace unc {
class TcLibInterface;
class TcLibModule : public pfc::core::Module {
- public:
-
- enum TCApiCommonRet {
- REGISTER,
- AUDIT_CONTROLLER,
- VALIDATE_UPDATE,
- READ_KEY_VAL,
- WRITE_CONTROLLER,
- WRITE_KEY_VALUE,
- IS_READ_KEY,
- IS_WRITE_KEY,
- KEY_INDEX,
-
- };
-
- enum TCCommonRet {
- VALIDATE_OPER_TYPE,
- VALIDATE_COMMIT_OPER,
- VALIDATE_AUDIT_OPER,
- VALIDATE_UPLL_COMMIT,
- VALIDATE_DRIVER_COMMIT,
- VALIDATE_UPLL_AUDIT,
- VALIDATE_DRIVER_AUDIT,
- UPDATE_CONTROLLER_KEY,
- NOTIFY_SESSION_CONFIG,
- COMMIT_TRANS_START,
- COMMIT_VOTE_GLOBAL,
- COMMIT_TRANS,
- COMMIT_DRIVER_VOTE,
- COMMIT_DRIVER_RESULT,
- COMMIT_GLOBAL_ABORT,
- AUDIT_TRANS_START,
- AUDIT_VOTE_GLOBAL,
- AUDIT_TRANS,
- AUDIT_DRIVER_VOTE,
- AUDIT_DRIVER_RESULT,
- AUDIT_GLOBAL_ABORT,
- SAVE_CONFIGURATION,
- CLEAR_START_UP,
- ABORT_CANDIDATE,
- AUDIT_CONFIG,
- SET_UP,
- SET_UP_COMPLETE,
- };
-
- TcLibModule(const pfc_modattr_t *mattr):
- pfc::core::Module(mattr){
-
+public:
+ enum TCApiCommonRet {
+ REGISTER,
+ AUDIT_CONTROLLER,
+ VALIDATE_UPDATE,
+ READ_KEY_VAL,
+ WRITE_CONTROLLER,
+ WRITE_KEY_VALUE,
+ IS_READ_KEY,
+ IS_WRITE_KEY,
+ KEY_INDEX,
+ };
+
+ enum TCCommonRet {
+ VALIDATE_OPER_TYPE,
+ VALIDATE_COMMIT_OPER,
+ VALIDATE_AUDIT_OPER,
+ VALIDATE_UPLL_COMMIT,
+ VALIDATE_DRIVER_COMMIT,
+ VALIDATE_UPLL_AUDIT,
+ VALIDATE_DRIVER_AUDIT,
+ UPDATE_CONTROLLER_KEY,
+ NOTIFY_SESSION_CONFIG,
+ COMMIT_TRANS_START,
+ COMMIT_VOTE_GLOBAL,
+ COMMIT_TRANS,
+ COMMIT_DRIVER_VOTE,
+ COMMIT_DRIVER_RESULT,
+ COMMIT_GLOBAL_ABORT,
+ AUDIT_TRANS_START,
+ AUDIT_VOTE_GLOBAL,
+ AUDIT_TRANS,
+ AUDIT_DRIVER_VOTE,
+ AUDIT_DRIVER_RESULT,
+ AUDIT_GLOBAL_ABORT,
+ SAVE_CONFIGURATION,
+ CLEAR_START_UP,
+ ABORT_CANDIDATE,
+ AUDIT_CONFIG,
+ SET_UP,
+ SET_UP_COMPLETE,
+ };
+
+ TcLibModule(const pfc_modattr_t *mattr) : pfc::core::Module(mattr) {
}
~TcLibModule() {
-
}
-
pfc_bool_t init() {
- return true;
+ return true;
}
-
pfc_bool_t fini() {
- return true;
+ return true;
}
pfc_ipcresp_t ipcService(pfc::core::ipc::ServerSession& sess,
pfc_ipcid_t service) {
- return pfc_ipcresp_t();
-}
+ return pfc_ipcresp_t();
+ }
TcApiCommonRet TcLibRegisterHandler(TcLibInterface* handler);
TcApiCommonRet TcLibAuditControllerRequest(std::string controller_id);
-
TcApiCommonRet TcLibValidateUpdateMsg(uint32_t sessionid, uint32_t configid);
TcApiCommonRet TcLibReadKeyValueDataInfo(std::string controller_id,
void* key_data,
void* value_data);
- private:
-
+private:
TcCommonRet ValidateOperTypeSequence(TcMsgOperType oper_type);
-
TcCommonRet ValidateCommitOperSequence(TcMsgOperType oper_type);
-
TcCommonRet ValidateAuditOperSequence(TcMsgOperType oper_type);
-
TcCommonRet ValidateUpllUpplCommitSequence(TcMsgOperType oper_type);
-
TcCommonRet ValidateDriverCommitSequence(TcMsgOperType oper_type);
-
TcCommonRet ValidateUpllUpplAuditSequence(TcMsgOperType oper_type);
-
TcCommonRet ValidateDriverAuditSequence(TcMsgOperType oper_type);
-
TcApiCommonRet IsReadKeyValueAllowed();
TcApiCommonRet IsWriteKeyValueAllowed();
-
TcCommonRet UpdateControllerKeyList();
TcCommonRet NotifySessionConfig();
-
TcCommonRet CommitTransStartEnd(TcMsgOperType oper_type,
TcCommitTransactionMsg commit_trans_msg);
-
TcCommonRet CommitVoteGlobal(TcMsgOperType oper_type,
TcCommitTransactionMsg commit_trans_msg);
-
TcCommonRet CommitTransaction();
-
TcCommonRet CommitDriverVoteGlobal();
-
TcCommonRet CommitDriverResult();
-
TcCommonRet CommitGlobalAbort();
TcCommonRet AuditTransStartEnd(TcMsgOperType oper_type,
TcCommonRet SaveConfiguaration();
-
TcCommonRet ClearStartup();
TcCommonRet AbortCandidate();
//stub Methods
static inline void Stub_setDriverId(unc_keytype_ctrtype_t driverid ) {
- driverId = driverid;
+ driverId = driverid;
}
static inline void stub_setControllerType(unc_keytype_ctrtype_t cntrlrType) {
- controllerType = cntrlrType;
+ controllerType = cntrlrType;
}
static inline void stub_setKeyIndex(uint32_t index) {
- keyIndex = index;
- }
-
- static void stub_setTcCommonRetcode(TcLibModule::TCCommonRet methodType ,TcCommonRet res_code) {
- method_tccommon_map.insert(std::make_pair(methodType,res_code));
+ keyIndex = index;
}
- static void stub_setTCApiCommonRetcode(TcLibModule::TCApiCommonRet methodType,TcApiCommonRet res_code) {
- method_tcapi_map.insert(std::make_pair(methodType,res_code));
+ static void stub_setTcCommonRetcode(TcLibModule::TCCommonRet methodType,
+ TcCommonRet res_code) {
+ method_tccommon_map.insert(std::make_pair(methodType,res_code));
}
- static void stub_loadtcLibModule() {
- const pfc_modattr_t *attr;
- tcLib=static_cast<pfc::core::Module*>( new TcLibModule(attr) );
+ static void stub_setTCApiCommonRetcode(TcLibModule::TCApiCommonRet methodType,
+ TcApiCommonRet res_code) {
+ method_tcapi_map.insert(std::make_pair(methodType,res_code));
}
- static void stub_unloadtcLibModule() {
- tcLib=NULL;
- }
+ static void stub_loadtcLibModule(void);
+ static void stub_unloadtcLibModule(void);
static void stub_clearTcLibStubData() {
- method_tccommon_map.clear();
- method_tcapi_map.clear();
-
+ method_tccommon_map.clear();
+ method_tcapi_map.clear();
}
- private:
+
static TcApiCommonRet stub_getMappedResultCode(TcLibModule::TCApiCommonRet);
static TcCommonRet stub_getMappedResultCode(TcLibModule::TCCommonRet);
+++ /dev/null
-/*
- * Copyright (c) 2012-2013 NEC Corporation
- * All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this
- * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
- */
-
-
-
-#include "../../../../../../modules/tclib/include/tclib_struct_defs.hh"
-
--- /dev/null
+/*
+ * Copyright (c) 2013 NEC Corporation
+ * All rights reserved.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this
+ * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
+ */
+
+#ifndef _TEST_UPPL_UT_STUB_H
+#define _TEST_UPPL_UT_STUB_H
+
+/*
+ * Include stub header files.
+ */
+
+#include "stub/include/core_include/pfc/ipc_client.h"
+#include "stub/clstat/clstat_api.h"
+
+#ifdef __cplusplus
+#include "stub/include/cxx/pfcxx/ipc_server.hh"
+#include "stub/include/cxx/pfcxx/ipc_client.hh"
+#include "stub/include/cxx/pfcxx/module.hh"
+#include "stub/ODBC/include/odbcm_mgr.hh"
+#include "stub/tclib_module/tclib_module.hh"
+#endif /* __cplusplus */
+
+#endif /* !_TEST_UPPL_UT_STUB_H */
--- /dev/null
+/*
+ * Copyright (c) 2013 NEC Corporation
+ * All rights reserved.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this
+ * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
+ */
+
+#ifndef _TEST_UPPL_UT_UTIL_HH
+#define _TEST_UPPL_UT_UTIL_HH
+
+/*
+ * Miscellaneous utility.
+ */
+#include <stdlib.h>
+#include <string.h>
+#include <gtest/gtest.h>
+
+namespace unc {
+namespace uppl {
+namespace test {
+
+/*
+ * Base class for test environment.
+ */
+class UpplTestEnv
+ : public ::testing::Test
+{
+protected:
+ virtual void SetUp();
+ virtual void TearDown();
+};
+
+} // test
+} // uppl
+} // unc
+
+#endif /* !_TEST_UPPL_UT_UTIL_HH */
--- /dev/null
+/*
+ * Copyright (c) 2013 NEC Corporation
+ * All rights reserved.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this
+ * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
+ */
+
+/*
+ * misc.cc - Miscellaneous utilities.
+ */
+
+#include <pfcxx/ipc_server.hh>
+#include <tclib_module.hh>
+#include "PhysicalLayerStub.hh"
+#include "ut_util.hh"
+
+using namespace unc::uppl::test;
+using namespace unc::tclib;
+using namespace pfc::core::ipc;
+
+/*
+ * Set up test environment.
+ */
+void
+UpplTestEnv::SetUp()
+{
+ TcLibModule::stub_loadtcLibModule();
+ TcLibModule::stub_setTCApiCommonRetcode(TcLibModule::REGISTER,
+ TC_API_COMMON_SUCCESS);
+
+ PhysicalLayerStub::loadphysicallayer();
+}
+
+/*
+ * Clean up test environment.
+ */
+void
+UpplTestEnv::TearDown()
+{
+ ServerSession::clearStubData();
+ ODBCManager::clearStubData();
+ PhysicalLayerStub::unloadphysicallayer();
+ TcLibModule::stub_unloadtcLibModule();
+}