123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 |
- /******************************************************************
- *
- * uEcho for C
- *
- * Copyright (C) Satoshi Konno 2015
- *
- * This is licensed under BSD-style license, see file COPYING.
- *
- ******************************************************************/
- #include <boost/test/unit_test.hpp>
- #include <stdlib.h>
- #include <uecho/_property.h>
- BOOST_AUTO_TEST_CASE(PropertyListAdd)
- {
- uEchoPropertyList* props = uecho_propertylist_new();
- BOOST_CHECK_EQUAL(uecho_propertylist_size(props), 0);
- for (size_t n = uEchoPropertyCodeMin; n <= uEchoPropertyCodeMax; n++) {
- uEchoProperty* prop = uecho_property_new();
- uecho_property_setcode(prop, n);
- byte* prop_data = (byte*)malloc(n);
- uecho_property_setdata(prop, prop_data, n);
- BOOST_CHECK(uecho_propertylist_add(props, prop));
- free(prop_data);
- }
- BOOST_CHECK_EQUAL(uecho_propertylist_size(props), (uEchoPropertyCodeMax - uEchoPropertyCodeMin + 1));
- for (size_t n = uEchoPropertyCodeMin; n <= uEchoPropertyCodeMax; n++) {
- uEchoProperty* prop = uecho_propertylist_findbycode(props, n);
- BOOST_CHECK(prop);
- BOOST_CHECK_EQUAL(uecho_property_getcode(prop), n);
- BOOST_CHECK_EQUAL(uecho_property_getdatasize(prop), n);
- }
- BOOST_CHECK_EQUAL(uecho_propertylist_size(props), (uEchoPropertyCodeMax - uEchoPropertyCodeMin + 1));
- BOOST_CHECK(uecho_propertylist_clear(props));
- BOOST_CHECK_EQUAL(uecho_propertylist_size(props), 0);
- uecho_propertylist_delete(props);
- }
- BOOST_AUTO_TEST_CASE(PropertyListSet)
- {
- uEchoPropertyList* props = uecho_propertylist_new();
- BOOST_CHECK_EQUAL(uecho_propertylist_size(props), 0);
- for (size_t n = uEchoPropertyCodeMin; n <= uEchoPropertyCodeMax; n++) {
- byte* prop_data = (byte*)malloc(n);
- BOOST_CHECK(uecho_propertylist_setdata(props, n, prop_data, n));
- free(prop_data);
- }
- BOOST_CHECK_EQUAL(uecho_propertylist_size(props), (uEchoPropertyCodeMax - uEchoPropertyCodeMin + 1));
- for (size_t n = uEchoPropertyCodeMin; n <= uEchoPropertyCodeMax; n++) {
- uEchoProperty* prop = uecho_propertylist_findbycode(props, n);
- BOOST_CHECK(prop);
- BOOST_CHECK_EQUAL(uecho_property_getcode(prop), n);
- BOOST_CHECK_EQUAL(uecho_property_getdatasize(prop), n);
- }
- BOOST_CHECK_EQUAL(uecho_propertylist_size(props), (uEchoPropertyCodeMax - uEchoPropertyCodeMin + 1));
- BOOST_CHECK(uecho_propertylist_clear(props));
- BOOST_CHECK_EQUAL(uecho_propertylist_size(props), 0);
- uecho_propertylist_delete(props);
- }
|