ClassCastException using ArgumentCapture for Double in scala
===

I'm having a problem using `ArgumentCapture` for a `Double` in scala. I'm trying to capture a `Double` argument to a mocked trait. The same syntax works fine when trying to capture an `Int`.

Here's an example test:
    
    import org.scalatest.FunSuite
    import org.scalatest.mock.MockitoSugar
    import org.mockito.Mockito._
    import org.mockito.ArgumentCaptor

    trait MockedTrait {
        def mockedDoubleMethod(double: Double)
        def mockedIntegerMethod(integer: Int)
    }

    class ClassUnderTest(myTrait: MockedTrait) {
        def methodUnderTest {
            myTrait.mockedIntegerMethod(3)
            myTrait.mockedDoubleMethod(5.0)
        }
    }

    class MyTest extends FunSuite with MockitoSugar {

        test("A basic test") {
            val myTrait = mock[MockedTrait]

            val classUnderTest = new ClassUnderTest(myTrait)
            classUnderTest.methodUnderTest

            val capturedInteger = ArgumentCaptor.forClass(classOf[Int])
            verify(myTrait).mockedIntegerMethod(capturedInteger.capture)

            val capturedDouble = ArgumentCaptor.forClass(classOf[Double])
            verify(myTrait).mockedDoubleMethod(capturedDouble.capture) // Throws ClassCastException
        }

    }

I get the following exception:

    java.lang.Integer cannot be cast to java.lang.Double
    java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.Double
    	at scala.runtime.BoxesRunTime.unboxToDouble(Unknown Source)
    	at MyTest$$anonfun$1.apply$mcV$sp(MyTest.scala:30)
    	at MyTest$$anonfun$1.apply(MyTest.scala:20)
    	at MyTest$$anonfun$1.apply(MyTest.scala:20)
    	at org.scalatest.FunSuite$$anon$1.apply(FunSuite.scala:1265)
    	at org.scalatest.Suite$class.withFixture(Suite.scala:1968)
    	at MyTest.withFixture(MyTest.scala:18)

Any suggestions?