package Ġcom . ant wer kz Ċ Ċ import Ġcom . ant wer kz . os win . Mongo Client Ċ Ċ import Ġorg . testng . annotations . Test Ġas Ġtest Ċ import Ġcom . ant wer kz . os win . document Ċ import Ġcom . ant wer kz . os win . eq Ċ import Ġcom . ant wer kz . os win . and Ċ import Ġkotlin . test . assertEquals Ċ import Ġkotlin . test . assertFalse Ċ import Ġcom . ant wer kz . os win . lte Ċ import Ġorg . mongodb . Mongo Cursor Ċ import Ġorg . mongodb . Document Ċ import Ġcom . ant wer kz . os win . each Ċ import Ġcom . ant wer kz . os win . or Ċ import Ġcom . ant wer kz . os win . lt Ċ import Ġcom . ant wer kz . os win . gt Ċ Ċ public Ġclass ĠMongo Client Test Ġ{ ĊĠ Ġtest Ġfun Ġinsert () Ġ{ ĊĠĠĠ Ġval Ġmongo Client Ġ= ĠMongo Client () ĊĊĠĠĠ Ġval Ġcollection Ġ= Ġmongo Client . get Database (" os win "). get Collection (" test ") ĊĊĠĠĠ Ġcollection . drop () ĊĊĠĠĠ Ġfor Ġ( i Ġin Ġ 1 .. 2 0 ) Ġ{ ĊĠĠĠĠĠ Ġcollection . insert ( document ("_ id " Ġto Ġi , Ġ" a " Ġto Ġ" b ", Ġ" number " Ġto Ġi )) ĊĠĠĠ Ġ} ĊĊĠĠĠ ĠassertEquals ( document (" a " Ġto Ġ" b ", Ġ"_ id " Ġto Ġ 4 , Ġ" number " Ġto Ġ 4 ), Ġcollection . find (" number " Ġeq Ġ 4 ) ĊĠĠĠĠĠĠĠ Ġ. invoke (). next ()) ĊĊĠĠĠ ĠassertFalse ( collection . find ( and (" number " Ġeq Ġ 1 2 L , Ġ" a " Ġeq Ġ" bed ")) ĊĠĠĠĠĠĠĠ Ġ. invoke (). hasNext ()) ĊĊĠĠĠ ĠassertEquals ( 1 3 , Ġcount ( collection . find ( and (" number " Ġl te Ġ 1 3 , Ġ" a " Ġeq Ġ" b ")) ĊĠĠĠĠĠĠĠ Ġ. invoke ())) ĊĊĠĠĠ ĠassertEquals ( 1 3 , Ġcount ( collection . find ( or (" number " Ġlt Ġ 1 3 , Ġ" number " Ġgt Ġ 1 9 )) ĊĠĠĠĠĠĠĠ Ġ. invoke ())) ĊĠ Ġ} ĊĊĠ Ġfun Ġcount ( mongo Cursor : ĠMongo Cursor < Document >): ĠInt Ġ{ ĊĠĠĠ Ġvar Ġcount Ġ= Ġ 0 ĊĠĠĠ Ġmongo Cursor . each ({ Ġcount ++ Ġ}) ĊĠĠĠ Ġreturn Ġcount ĊĠ Ġ} Ċ }