Have you taken a look at this page in the docs?

http://code.google.com/appengine/docs/java/howto/unittesting.html

It shows you how to set up a standalone environment for JUnit. It looks like
you're writing your tests using a custom Testing class, but the same
principles should apply.

On Fri, Jan 15, 2010 at 12:06 AM, Siddharth Patnaik <[email protected]>wrote:

> I would like to run my test cases (CRUD operations on my business
> objects) in a stand alone manner. When i am performing any CRUD
> operation in a stand alone way i am getting the following exception.
> It is clear that the persistence handler needs a context. How can i
> provide that?
>
>
> INFO: Finished performing appengine-specific metadata validation for
> com.tripgether.persistance.bo.User
> java.lang.NullPointerException: No API environment is registered for
> this thread.
>        at
> com.google.appengine.api.datastore.DatastoreApiHelper.getCurrentAppId
> (DatastoreApiHelper.java:67)
>        at
>
> com.google.appengine.api.datastore.DatastoreApiHelper.getCurrentAppIdNamespace
> (DatastoreApiHelper.java:77)
>        at com.google.appengine.api.datastore.Key.<init>(Key.java:100)
>        at com.google.appengine.api.datastore.Key.<init>(Key.java:85)
>        at com.google.appengine.api.datastore.Key.<init>(Key.java:81)
>        at com.google.appengine.api.datastore.Entity.<init>(Entity.java:103)
>        at com.google.appengine.api.datastore.Entity.<init>(Entity.java:84)
>        at org.datanucleus.store.appengine.DatastoreFieldManager.<init>
> (DatastoreFieldManager.java:167)
>        at
>
> org.datanucleus.store.appengine.DatastorePersistenceHandler.insertPreProcess
> (DatastorePersistenceHandler.java:316)
>        at
> org.datanucleus.store.appengine.DatastorePersistenceHandler.insertObjects
> (DatastorePersistenceHandler.java:236)
>        at
> org.datanucleus.store.appengine.DatastorePersistenceHandler.insertObject
> (DatastorePersistenceHandler.java:225)
>        at org.datanucleus.state.JDOStateManagerImpl.internalMakePersistent
> (JDOStateManagerImpl.java:3185)
>        at org.datanucleus.state.JDOStateManagerImpl.makePersistent
> (JDOStateManagerImpl.java:3161)
>        at org.datanucleus.ObjectManagerImpl.persistObjectInternal
> (ObjectManagerImpl.java:1298)
>        at org.datanucleus.ObjectManagerImpl.persistObject
> (ObjectManagerImpl.java:1175)
>        at org.datanucleus.jdo.JDOPersistenceManager.jdoMakePersistent
> (JDOPersistenceManager.java:669)
>        at org.datanucleus.jdo.JDOPersistenceManager.makePersistent
> (JDOPersistenceManager.java:694)
>        at com.tripgether.persistance.TestCRUD.main(TestCRUD.java:27)
>
> --
> You received this message because you are subscribed to the Google Groups
> "Google App Engine" group.
> To post to this group, send email to [email protected].
> To unsubscribe from this group, send email to
> [email protected]<google-appengine%[email protected]>
> .
> For more options, visit this group at
> http://groups.google.com/group/google-appengine?hl=en.
>
>
>
>


-- 
Ikai Lan
Developer Programs Engineer, Google App Engine
--
You received this message because you are subscribed to the Google Groups "Google App Engine" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to [email protected].
For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.

Reply via email to