END_TEST START_TEST (test_state_writer_null_string) { bool send = true; uint64_t value = stateWriter(&SIGNALS[1], SIGNALS, SIGNAL_COUNT, (const char*)NULL, &send); fail_if(send); send = true; value = stateWriter(&SIGNALS[1], SIGNALS, SIGNAL_COUNT, (cJSON*)NULL, &send); fail_if(send); }
END_TEST START_TEST (test_write_unknown_state) { bool send = true; stateWriter(&SIGNALS[1], SIGNALS, SIGNAL_COUNT, cJSON_CreateString("not_a_state"), &send); fail_if(send); }
END_TEST START_TEST (test_state_writer) { bool send = true; uint64_t value = stateWriter(&SIGNALS[1], SIGNALS, SIGNAL_COUNT, cJSON_CreateString(SIGNAL_STATES[0][1].name), &send); ck_assert_int_eq(value, 0x2000000000000000LLU); fail_unless(send); }
uint64_t stateWriter(CanSignal* signal, CanSignal* signals, int signalCount, cJSON* value, bool* send, uint64_t data) { if(value == NULL) { debug("Can't write state of NULL -- not sending\r\n"); } else { return stateWriter(signal, signals, signalCount, value->valuestring, send, data); } *send = false; return 0; }
bool CXmlSerializeHelper::Write(ISerializedObject *pObject, TSerializeFunc serializeFunc, void *pArgument /*= NULL*/) { assert(pObject); bool bResult = false; if (CXmlSerializedObject *pXmlObject = GetXmlSerializedObject(pObject)) { pXmlObject->CreateRootNode(); ISerialize *pWriter = GetWriter(pXmlObject->GetXmlNode()); TSerialize stateWriter(pWriter); bResult = serializeFunc(stateWriter, pArgument); } return bResult; }
uint64_t stateWriter(CanSignal* signal, CanSignal* signals, int signalCount, cJSON* value, bool* send) { return stateWriter(signal, signals, signalCount, value, send, 0); }