use of com.evolveum.midpoint.prism.xnode.ListXNode in project midpoint by Evolveum.
the class TestBeanSerialization method testPipelineItemXsdType.
@Test
public void testPipelineItemXsdType() throws SchemaException {
PipelineDataType bean = new PipelineDataType();
bean.beginItem().value("s1");
PrismContext prismContext = PrismTestUtil.getPrismContext();
RootXNode xnode = prismContext.xnodeSerializer().root(new QName("output")).serializeRealValue(bean);
MapXNode output = (MapXNode) xnode.toMapXNode().get(new QName("output"));
XNode item = ((ListXNode) output.get(PipelineDataType.F_ITEM)).get(0);
assertTrue(item instanceof MapXNode);
XNode value = ((MapXNode) item).get(PipelineItemType.F_VALUE);
assertTrue(value instanceof PrimitiveXNodeImpl);
assertTrue(value.isExplicitTypeDeclaration());
assertEquals(value.getTypeQName(), DOMUtil.XSD_STRING);
// displayValue("output in XML", prismContext.xmlSerializer().root(new QName("output")).serializeRealValue(bean));
}
use of com.evolveum.midpoint.prism.xnode.ListXNode in project midpoint by Evolveum.
the class TestQueryConverter method testAccountFilter.
@Test
public void testAccountFilter() throws Exception {
SearchFilterType filterType = unmarshalFilter(FILTER_ACCOUNT_FILE);
ObjectQuery query = toObjectQuery(ShadowType.class, filterType);
displayQuery(query);
assertNotNull(query);
ObjectFilter filter = query.getFilter();
PrismAsserts.assertAndFilter(filter, 2);
ObjectFilter first = getFilterCondition(filter, 0);
PrismAsserts.assertEqualsFilter(first, ShadowType.F_TAG, PrimitiveType.XSD_STRING, ShadowType.F_TAG);
PrismAsserts.assertEqualsFilterValue((EqualFilter) first, "abc");
ObjectFilter second = getFilterCondition(filter, 1);
PrismAsserts.assertEqualsFilter(second, ShadowType.F_NAME, PolyStringType.COMPLEX_TYPE, ShadowType.F_NAME);
PrismAsserts.assertEqualsFilterValue((EqualFilter) second, createPolyString("someName"));
QueryType convertedQueryType = toQueryType(query);
System.out.println("Re-converted query type");
System.out.println(convertedQueryType.debugDump());
SearchFilterType convertedFilterType = convertedQueryType.getFilter();
MapXNode xFilter = convertedFilterType.serializeToXNode(getPrismContext());
PrismAsserts.assertSize(xFilter, 1);
PrismAsserts.assertSubnode(xFilter, AndFilter.ELEMENT_NAME, MapXNode.class);
MapXNode xandmap = (MapXNode) xFilter.get(AndFilter.ELEMENT_NAME);
PrismAsserts.assertSize(xandmap, 1);
PrismAsserts.assertSubnode(xandmap, EqualFilter.ELEMENT_NAME, ListXNode.class);
ListXNode xequalsList = (ListXNode) xandmap.get(EqualFilter.ELEMENT_NAME);
PrismAsserts.assertSize(xequalsList, 2);
// Element filterClauseElement = convertedFilterType.getFilterClauseAsElement(getPrismContext());
// System.out.println("Serialized filter (JAXB->DOM)");
// System.out.println(DOMUtil.serializeDOMToString(filterClauseElement));
//
// DomAsserts.assertElementQName(filterClauseElement, AndFilter.ELEMENT_NAME);
// DomAsserts.assertSubElements(filterClauseElement, 2);
//
// Element firstSubelement = DOMUtil.getChildElement(filterClauseElement, 0);
// DomAsserts.assertElementQName(firstSubelement, EqualFilter.ELEMENT_NAME);
// Element firstValueElement = DOMUtil.getChildElement(firstSubelement, PrismConstants.Q_VALUE);
// DomAsserts.assertTextContent(firstValueElement, "abc");
//
// Element secondSubelement = DOMUtil.getChildElement(filterClauseElement, 1);
// DomAsserts.assertElementQName(secondSubelement, EqualFilter.ELEMENT_NAME);
// Element secondValueElement = DOMUtil.getChildElement(secondSubelement, PrismConstants.Q_VALUE);
// DomAsserts.assertTextContent(secondValueElement, "someName");
}
Aggregations