When I upgraded to 1.1.3 from 1.1.2, my App Engine unit tests (built
using the scheme described in another post [1]) started failing with
the following stack trace:
...
File "C:/Program Files/Google/google_appengine\google\appengine\ext\db
\__init__.py", line 617, in put
self._populate_internal_entity()
File "C:/Program Files/Google/google_appengine\google\appengine\ext\db
\__init__.py", line 599, in _populate_internal_entity
self._entity = self._populate_entity(_entity_class=_entity_class)
File "C:/Program Files/Google/google_appengine\google\appengine\ext\db
\__init__.py", line 645, in _populate_entity
_app=self._app)
File "C:/Program Files/Google/google_appengine\google\appengine\api
\datastore.py", line 288, in __init__
_app = datastore_types.ResolveAppId(_app)
File "C:/Program Files/Google/google_appengine\google\appengine\api
\datastore_types.py", line 120, in ResolveAppId
ValidateString(app, '_app', datastore_errors.BadArgumentError)
File "C:/Program Files/Google/google_appengine\google\appengine\api
\datastore_types.py", line 97, in ValidateString
raise exception('%s must not be empty.' % name)
adArgumentError: _app must not be empty.
It turns out that as of 1.1.3, a value for APPLICATION_ID must be
added to your unit test's environment. Easy enough to fix, once I
worked out what was going on.
[1]
http://groups.google.com/group/google-appengine/browse_thread/thread/9bf8102ae975c94c/72c4de36f11ffb02?lnk=gst&q=unittest#72c4de36f11ffb02