### Question:
OrderingStage implements TranslationStage { @Override public void perform(TranslatorContext context) { if(context.getQuery().getOrderings() == null) { return; } QualifierTranslator qualifierTranslator = context.getQualifierTranslator(); for(Ordering ordering : context.getQuery().getOrderings()) { processOrdering(qualifierTranslator, context, ordering); } }  @Override void perform(TranslatorContext context);  }### Answer:
@Test public void perform() { OrderingStage orderingStage = new OrderingStage(); orderingStage.perform(context); Node select = context.getSelectBuilder().build(); Node child = select.getChild(0); assertEquals(1, select.getChildrenCount()); assertThat(child, instanceOf(OrderByNode.class)); assertEquals(1, child.getChildrenCount()); assertThat(child.getChild(0), instanceOf(EmptyNode.class)); assertEquals(2, child.getChild(0).getChildrenCount()); assertThat(child.getChild(0).getChild(0), instanceOf(ColumnNode.class)); assertThat(child.getChild(0).getChild(1), instanceOf(TextNode.class)); ColumnNode columnNode = (ColumnNode)child.getChild(0).getChild(0); assertEquals("path", columnNode.getColumn()); assertEquals("Node { DESC}", child.getChild(0).getChild(1).toString()); }