question: public void testDivideRoundHalfDownNeg2 ( ) { String a = "-37361671119238118911893939591735" ; int aScale = 10 ; String b = "74723342238476237823787879183470" ; int bScale = 15 ; String c = "0E+5" ; int resScale = - 5 ; BigDecimal aNumber = new BigDecimal ( new BigInteger ( a ) , aScale ) ; BigDecimal bNumber = new BigDecimal ( new BigInteger ( b ) , bScale ) ; BigDecimal result = aNumber . divide ( bNumber , resScale , BigDecimal . ROUND_HALF_DOWN ) ; assertEquals ( "incorrect value" , c , result . toString ( ) ) ; assertEquals ( "incorrect scale" , resScale , result . scale ( ) ) ; }
target:  Divide: rounding mode is ROUND_HALF_UP, result is negative; equidistant