Wednesday, October 3, 2012

Re: Using Cloud SQL in Unit Test

Hi Fabian,

I'm stuck on the same thing actually, i've written a question there :

Did find anything to solve this? Because it looks like it's been a while :)

Thank you!!!

On Tuesday, October 25, 2011 1:38:32 PM UTC-4, Fabian Kajzar wrote:
Hi,

thank you for your answer, but sadly it didn´t changes anything. Still
get the same errors :(

Any other guesses?

Kind regards
Fabian

2011/10/25 Chandana Napagoda <cnap...@gmail.com>:
> Hi,
>
> I think for local test case "datanucleus rdbms" jar need. I have attached
> here it. Try to add it to your class path and try to execute test cases and
> let us know the results.
>
>
> Regards,
> Chandana
> http://cnapagoda.blogspot.com
>
> On Tue, Oct 25, 2011 at 8:44 AM, Fabian Kajzar <fabian...@googlemail.com>
> wrote:
>>
>> Hi folks,
>>
>> i used this setup and it works fine as long as i start a app engine
>> server. (it uses then my local mysql server)
>>
>> But i would like to use it also when i run my unit test. But when i
>> try this, i always get this error:
>>
>> com.google.apphosting.api.ApiProxy$CallNotFoundException: The API
>> package 'rdbms' or call 'OpenConnection()' was not found.
>>        at
>> com.google.apphosting.api.ApiProxy.makeSyncCall(ApiProxy.java:98)
>>        at
>> com.google.appengine.api.rdbms.RdbmsApiProxyClient$ApiProxyBlockingInterface.makeSyncCall(RdbmsApiProxyClient.java:89)
>>        at
>> com.google.appengine.api.rdbms.RdbmsApiProxyClient$ApiProxyBlockingInterface.openConnection(RdbmsApiProxyClient.java:75)
>>        at
>> com.google.cloud.sql.jdbc.internal.SqlProtoClient.openConnection(SqlProtoClient.java:58)
>>        at com.google.cloud.sql.jdbc.Driver.connect(Driver.java:58)
>>        at com.google.cloud.sql.jdbc.Driver.connect(Driver.java:26)
>>        at java.sql.DriverManager.getConnection(DriverManager.java:582)
>>        at java.sql.DriverManager.getConnection(DriverManager.java:207)
>>        at
>> de.worldcup.appengine.server.BackendServlet.createTurnamentDBTable(BackendServlet.java:28)
>>        at
>> de.worldcup.appengine.test.TurnamentTest.setUp(TurnamentTest.java:30)
>>        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>        at
>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>        at
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>        at java.lang.reflect.Method.invoke(Method.java:597)
>>        at
>> org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44)
>>        at
>> org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
>>        at
>> org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41)
>>        at
>> org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:27)
>>        at
>> org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31)
>>        at
>> org.junit.runners.BlockJUnit4ClassRunner.runNotIgnored(BlockJUnit4ClassRunner.java:79)
>>        at
>> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:71)
>>        at
>> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:49)
>>        at org.junit.runners.ParentRunner$3.run(ParentRunner.java:193)
>>        at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:52)
>>        at
>> org.junit.runners.ParentRunner.runChildren(ParentRunner.java:191)
>>        at org.junit.runners.ParentRunner.access$000(ParentRunner.java:42)
>>        at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:184)
>>        at org.junit.runners.ParentRunner.run(ParentRunner.java:236)
>>        at
>> org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50)
>>        at
>> org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
>>        at
>> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
>>        at
>> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
>>        at
>> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
>>        at
>> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
>>
>> so i tried to use a LocalServiceTestHelper (the
>> LocalXMPPServiceTestConfig). Now i always get the error:
>>
>> java.lang.IllegalStateException: System property rdbms.driver must be set.
>>        at
>> com.google.appengine.api.rdbms.dev.LocalRdbmsProperties.registerDriver(LocalRdbmsProperties.java:79)
>>        at
>> com.google.appengine.api.rdbms.dev.LocalRdbmsServiceLocalDriver.init(LocalRdbmsServiceLocalDriver.java:70)
>>        at
>> com.google.appengine.api.rdbms.dev.LocalRdbmsService.init(LocalRdbmsService.java:85)
>>        at
>> com.google.appengine.tools.development.ApiProxyLocalImpl.startServices(ApiProxyLocalImpl.java:561)
>>        at
>> com.google.appengine.tools.development.ApiProxyLocalImpl.access$700(ApiProxyLocalImpl.java:46)
>>        at
>> com.google.appengine.tools.development.ApiProxyLocalImpl$2.run(ApiProxyLocalImpl.java:544)
>>        at
>> com.google.appengine.tools.development.ApiProxyLocalImpl$2.run(ApiProxyLocalImpl.java:542)
>>        at java.security.AccessController.doPrivileged(Native Method)
>>        at
>> com.google.appengine.tools.development.ApiProxyLocalImpl.getService(ApiProxyLocalImpl.java:541)
>>        at
>> com.google.appengine.tools.development.ApiProxyLocalImpl$AsyncApiCall.callInternal(ApiProxyLocalImpl.java:457)
>>        at
>> com.google.appengine.tools.development.ApiProxyLocalImpl$AsyncApiCall.call(ApiProxyLocalImpl.java:436)
>>        at
>> com.google.appengine.tools.development.ApiProxyLocalImpl$AsyncApiCall.call(ApiProxyLocalImpl.java:415)
>>        at
>> java.util.concurrent.Executors$PrivilegedCallable$1.run(Executors.java:463)
>>        at java.security.AccessController.doPrivileged(Native Method)
>>        at
>> java.util.concurrent.Executors$PrivilegedCallable.call(Executors.java:460)
>>        at
>> java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
>>        at java.util.concurrent.FutureTask.run(FutureTask.java:138)
>>        at
>> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
>>        at
>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
>>        at java.lang.Thread.run(Thread.java:680)
>>
>> any ideas?
>>
>> Kind regards,
>> Fabian
>>
>> 2011/10/24 Manilal K M <libr...@gmail.com>:
>> > On 24 October 2011 07:53, Fabian <fabian...@googlemail.com> wrote:
>> >> Hi folks,
>> >>
>> >> is it possible to use a local mysql server instead of the cloud sql
>> >> when executing unit tests?
>> >
>> > Here are the steps to configure local MySQL server:
>> >
>> > http://code.google.com/apis/sql/docs/developers_guide_java.html#using_the_java_development_server
>> >
>> > Hope this helps.
>> >
>> > --
>> > Manilal K M : മണിലാല്‍ കെ എം.
>> > http://libregeek.blogspot.com
>> >
>
>

No comments:

Post a Comment