public final void testMultiplication() {
Duration duration = new Duration(5, 1.0);
Duration result = duration.multiply(100.0);
Assert.assertTrue(result.equalsEpsilon(new Duration(500, 100.0), Constants.Epsilon10));
result = Duration.multiply(duration, 100.0);
Assert.assertTrue(result.equalsEpsilon(new Duration(500, 100.0), Constants.Epsilon10));
duration = new Duration(0, 5000.1);
result = duration.multiply(100.0);
Assert.assertTrue(result.equalsEpsilon(new Duration(5, 68010.0), Constants.Epsilon10));
result = Duration.multiply(duration, 100.0);
Assert.assertTrue(result.equalsEpsilon(new Duration(5, 68010.0), Constants.Epsilon10));
duration = new Duration(1, 43200.0);
result = duration.multiply(0.5);
Assert.assertTrue(result.equalsEpsilon(new Duration(0, 64800.0), Constants.Epsilon10));
result = Duration.multiply(duration, 0.5);
Assert.assertTrue(result.equalsEpsilon(new Duration(0, 64800.0), Constants.Epsilon10));
duration = new Duration(5, 1.0);
result = duration.multiply(100.5);
Assert.assertTrue(result.equalsEpsilon(new Duration(502, 43300.5), Constants.Epsilon10));
result = Duration.multiply(duration, 100.5);
Assert.assertTrue(result.equalsEpsilon(new Duration(502, 43300.5), Constants.Epsilon10));
result = Duration.multiply(duration, -0.5);
Assert.assertTrue(result.equalsEpsilon(new Duration(-2, -43200.5), Constants.Epsilon10));
duration = new Duration(0, 18 * 3600);
result = Duration.multiply(duration, -2D);
Assert.assertEquals(-12 * 3600, result.getSeconds(), 0d);
Assert.assertEquals((int) -1, (int) result.getDays());
duration = new Duration(1, 4 * 3600);
result = Duration.multiply(duration, -0.5);