//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @Test public void indexContentsShouldStillBeOrderedAfterRemovalOfKey() public virtual void IndexContentsShouldStillBeOrderedAfterRemovalOfKey() { string indexName = "index"; using (Transaction tx = Db.beginTx()) { Db.index().forNodes(indexName); tx.Success(); } long delete; long first; long second; long third; long fourth; using (Transaction tx = Db.beginTx()) { Index <Node> nodeIndex = Db.index().forNodes(indexName); Node node = Db.createNode(); delete = node.Id; nodeIndex.Add(node, "keydelte", "delete"); node = Db.createNode(); second = node.Id; nodeIndex.Add(node, "key", ValueContext.numeric(2)); nodeIndex.Add(node, "keydelte", "delete"); node = Db.createNode(); fourth = node.Id; nodeIndex.Add(node, "key", ValueContext.numeric(4)); nodeIndex.Add(node, "keydelte", "delete"); node = Db.createNode(); first = node.Id; nodeIndex.Add(node, "key", ValueContext.numeric(1)); nodeIndex.Add(node, "keydelte", "delete"); node = Db.createNode(); third = node.Id; nodeIndex.Add(node, "key", ValueContext.numeric(3)); nodeIndex.Add(node, "keydelte", "delete"); tx.Success(); } using (Transaction tx = Db.beginTx()) { Index <Node> nodeIndex = Db.index().forNodes(indexName); IndexHits <Node> query = nodeIndex.query("key", QueryContext.numericRange("key", 2, 3)); assertEquals(2, query.Size()); query.forEachRemaining(node => assertTrue(node.Id == second || node.Id == third)); } using (Transaction tx = Db.beginTx()) { Index <Node> nodeIndex = Db.index().forNodes(indexName); nodeIndex.Remove(Db.getNodeById(delete), "keydelete"); nodeIndex.Remove(Db.getNodeById(first), "keydelete"); nodeIndex.Remove(Db.getNodeById(second), "keydelete"); nodeIndex.Remove(Db.getNodeById(third), "keydelete"); nodeIndex.Remove(Db.getNodeById(fourth), "keydelete"); tx.Success(); } using (Transaction tx = Db.beginTx()) { Index <Node> nodeIndex = Db.index().forNodes(indexName); IndexHits <Node> query = nodeIndex.query("key", QueryContext.numericRange("key", 2, 3)); assertEquals(2, query.Size()); query.forEachRemaining(node => assertTrue(node.Id == second || node.Id == third)); } }