narrow and narrow_unsafe methods added
This commit is contained in:
@ -147,10 +147,42 @@ static void test()
|
||||
}
|
||||
|
||||
|
||||
void test_narrow()
|
||||
{
|
||||
testDiag("test_narrow");
|
||||
|
||||
NTMultiChannelPtr nullPtr = NTMultiChannel::narrow(PVStructurePtr());
|
||||
testOk(nullPtr.get() == 0, "nullptr narrow");
|
||||
|
||||
nullPtr = NTMultiChannel::narrow(
|
||||
getPVDataCreate()->createPVStructure(
|
||||
NTField::get()->createTimeStamp()
|
||||
)
|
||||
);
|
||||
testOk(nullPtr.get() == 0, "wrong type narrow");
|
||||
|
||||
|
||||
NTMultiChannelBuilderPtr builder = NTMultiChannel::createBuilder();
|
||||
testOk(builder.get() != 0, "Got builder");
|
||||
|
||||
PVStructurePtr pvStructure = builder->
|
||||
createPVStructure();
|
||||
testOk1(pvStructure.get() != 0);
|
||||
if (!pvStructure)
|
||||
return;
|
||||
|
||||
NTMultiChannelPtr ptr = NTMultiChannel::narrow(pvStructure);
|
||||
testOk(ptr.get() != 0, "narrow OK");
|
||||
|
||||
ptr = NTMultiChannel::narrow_unsafe(pvStructure);
|
||||
testOk(ptr.get() != 0, "narrow_unsafe OK");
|
||||
}
|
||||
|
||||
MAIN(testCreateRequest)
|
||||
{
|
||||
testPlan(18);
|
||||
testPlan(24);
|
||||
test();
|
||||
test_narrow();
|
||||
return testDone();
|
||||
}
|
||||
|
||||
|
@ -171,10 +171,44 @@ void test_ntnameValue()
|
||||
|
||||
}
|
||||
|
||||
|
||||
void test_narrow()
|
||||
{
|
||||
testDiag("test_narrow");
|
||||
|
||||
NTNameValuePtr nullPtr = NTNameValue::narrow(PVStructurePtr());
|
||||
testOk(nullPtr.get() == 0, "nullptr narrow");
|
||||
|
||||
nullPtr = NTNameValue::narrow(
|
||||
getPVDataCreate()->createPVStructure(
|
||||
NTField::get()->createTimeStamp()
|
||||
)
|
||||
);
|
||||
testOk(nullPtr.get() == 0, "wrong type narrow");
|
||||
|
||||
|
||||
NTNameValueBuilderPtr builder = NTNameValue::createBuilder();
|
||||
testOk(builder.get() != 0, "Got builder");
|
||||
|
||||
PVStructurePtr pvStructure = builder->
|
||||
value(pvString)->
|
||||
createPVStructure();
|
||||
testOk1(pvStructure.get() != 0);
|
||||
if (!pvStructure)
|
||||
return;
|
||||
|
||||
NTNameValuePtr ptr = NTNameValue::narrow(pvStructure);
|
||||
testOk(ptr.get() != 0, "narrow OK");
|
||||
|
||||
ptr = NTNameValue::narrow_unsafe(pvStructure);
|
||||
testOk(ptr.get() != 0, "narrow_unsafe OK");
|
||||
}
|
||||
|
||||
MAIN(testNTNameValue) {
|
||||
testPlan(31);
|
||||
testPlan(37);
|
||||
test_builder();
|
||||
test_ntnameValue();
|
||||
test_narrow();
|
||||
return testDone();
|
||||
}
|
||||
|
||||
|
@ -48,9 +48,42 @@ void test_builder()
|
||||
|
||||
}
|
||||
|
||||
|
||||
void test_narrow()
|
||||
{
|
||||
testDiag("test_narrow");
|
||||
|
||||
NTNDArrayPtr nullPtr = NTNDArray::narrow(PVStructurePtr());
|
||||
testOk(nullPtr.get() == 0, "nullptr narrow");
|
||||
|
||||
nullPtr = NTNDArray::narrow(
|
||||
getPVDataCreate()->createPVStructure(
|
||||
NTField::get()->createTimeStamp()
|
||||
)
|
||||
);
|
||||
testOk(nullPtr.get() == 0, "wrong type narrow");
|
||||
|
||||
|
||||
NTNDArrayBuilderPtr builder = NTNDArray::createBuilder();
|
||||
testOk(builder.get() != 0, "Got builder");
|
||||
|
||||
PVStructurePtr pvStructure = builder->
|
||||
createPVStructure();
|
||||
testOk1(pvStructure.get() != 0);
|
||||
if (!pvStructure)
|
||||
return;
|
||||
|
||||
NTNDArrayPtr ptr = NTNDArray::narrow(pvStructure);
|
||||
testOk(ptr.get() != 0, "narrow OK");
|
||||
|
||||
ptr = NTNDArray::narrow_unsafe(pvStructure);
|
||||
testOk(ptr.get() != 0, "narrow_unsafe OK");
|
||||
}
|
||||
|
||||
MAIN(testNTNDArray) {
|
||||
testPlan(16);
|
||||
testPlan(22);
|
||||
test_builder();
|
||||
test_narrow();
|
||||
return testDone();
|
||||
}
|
||||
|
||||
|
@ -196,10 +196,44 @@ void test_ntscalarArray()
|
||||
|
||||
}
|
||||
|
||||
|
||||
void test_narrow()
|
||||
{
|
||||
testDiag("test_narrow");
|
||||
|
||||
NTScalarArrayPtr nullPtr = NTScalarArray::narrow(PVStructurePtr());
|
||||
testOk(nullPtr.get() == 0, "nullptr narrow");
|
||||
|
||||
nullPtr = NTScalarArray::narrow(
|
||||
getPVDataCreate()->createPVStructure(
|
||||
NTField::get()->createTimeStamp()
|
||||
)
|
||||
);
|
||||
testOk(nullPtr.get() == 0, "wrong type narrow");
|
||||
|
||||
|
||||
NTScalarArrayBuilderPtr builder = NTScalarArray::createBuilder();
|
||||
testOk(builder.get() != 0, "Got builder");
|
||||
|
||||
PVStructurePtr pvStructure = builder->
|
||||
arrayValue(pvDouble)->
|
||||
createPVStructure();
|
||||
testOk1(pvStructure.get() != 0);
|
||||
if (!pvStructure)
|
||||
return;
|
||||
|
||||
NTScalarArrayPtr ptr = NTScalarArray::narrow(pvStructure);
|
||||
testOk(ptr.get() != 0, "narrow OK");
|
||||
|
||||
ptr = NTScalarArray::narrow_unsafe(pvStructure);
|
||||
testOk(ptr.get() != 0, "narrow_unsafe OK");
|
||||
}
|
||||
|
||||
MAIN(testNTScalarArray) {
|
||||
testPlan(31);
|
||||
testPlan(37);
|
||||
test_builder();
|
||||
test_ntscalarArray();
|
||||
test_narrow();
|
||||
return testDone();
|
||||
}
|
||||
|
||||
|
@ -186,10 +186,43 @@ void test_ntscalar()
|
||||
|
||||
}
|
||||
|
||||
void test_narrow()
|
||||
{
|
||||
testDiag("test_narrow");
|
||||
|
||||
NTScalarPtr nullPtr = NTScalar::narrow(PVStructurePtr());
|
||||
testOk(nullPtr.get() == 0, "nullptr narrow");
|
||||
|
||||
nullPtr = NTScalar::narrow(
|
||||
getPVDataCreate()->createPVStructure(
|
||||
NTField::get()->createTimeStamp()
|
||||
)
|
||||
);
|
||||
testOk(nullPtr.get() == 0, "wrong type narrow");
|
||||
|
||||
|
||||
NTScalarBuilderPtr builder = NTScalar::createBuilder();
|
||||
testOk(builder.get() != 0, "Got builder");
|
||||
|
||||
PVStructurePtr pvStructure = builder->
|
||||
value(pvDouble)->
|
||||
createPVStructure();
|
||||
testOk1(pvStructure.get() != 0);
|
||||
if (!pvStructure)
|
||||
return;
|
||||
|
||||
NTScalarPtr ptr = NTScalar::narrow(pvStructure);
|
||||
testOk(ptr.get() != 0, "narrow OK");
|
||||
|
||||
ptr = NTScalar::narrow_unsafe(pvStructure);
|
||||
testOk(ptr.get() != 0, "narrow_unsafe OK");
|
||||
}
|
||||
|
||||
MAIN(testNTScalar) {
|
||||
testPlan(28);
|
||||
testPlan(34);
|
||||
test_builder();
|
||||
test_ntscalar();
|
||||
test_narrow();
|
||||
return testDone();
|
||||
}
|
||||
|
||||
|
@ -195,11 +195,46 @@ void test_nttable()
|
||||
|
||||
}
|
||||
|
||||
void test_narrow()
|
||||
{
|
||||
testDiag("test_narrow");
|
||||
|
||||
NTTablePtr nullPtr = NTTable::narrow(PVStructurePtr());
|
||||
testOk(nullPtr.get() == 0, "nullptr narrow");
|
||||
|
||||
nullPtr = NTTable::narrow(
|
||||
getPVDataCreate()->createPVStructure(
|
||||
NTField::get()->createTimeStamp()
|
||||
)
|
||||
);
|
||||
testOk(nullPtr.get() == 0, "wrong type narrow");
|
||||
|
||||
|
||||
NTTableBuilderPtr builder = NTTable::createBuilder();
|
||||
testOk(builder.get() != 0, "Got builder");
|
||||
|
||||
PVStructurePtr pvStructure = builder->
|
||||
add("column0", pvDouble)->
|
||||
add("column1", pvString)->
|
||||
add("column2", pvInt)->
|
||||
createPVStructure();
|
||||
testOk1(pvStructure.get() != 0);
|
||||
if (!pvStructure)
|
||||
return;
|
||||
|
||||
NTTablePtr ptr = NTTable::narrow(pvStructure);
|
||||
testOk(ptr.get() != 0, "narrow OK");
|
||||
|
||||
ptr = NTTable::narrow_unsafe(pvStructure);
|
||||
testOk(ptr.get() != 0, "narrow_unsafe OK");
|
||||
}
|
||||
|
||||
MAIN(testNTTable) {
|
||||
testPlan(39);
|
||||
testPlan(45);
|
||||
test_builder();
|
||||
test_labels();
|
||||
test_nttable();
|
||||
test_narrow();
|
||||
return testDone();
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user