filter/txnBuf: Use fully-qualified App ID.

Use the fully-qualified app ID when creating the in-memory datastore for
transaction buffer. Previously, transaction buffer would use the
standard App ID, while production datastore would use the
fully-qualified App ID, causing key incompatibility errors in
production.

Cleanup impl/memory's NewDatastore function to not install superfluous
services into the Context. This draws a cleaner line between
impl/memory's dual purposes as both a rich testing enviornment and a
production-grade in-memory datastore.

In addition, have impl/memory's info service differentiate between the
two. This causes tests for filter/txnBuf to properly fail lacking this
fix, enabling regression protection.

To support this, impl/memory's Info service will now parse the supplied
App ID. If it contains a "~" character, it is split into fully-qualified
and regular AppID. Otherwise, the two will be the same.

BUG=

Review-Url: https://codereview.chromium.org/1929423002
6 files changed
tree: 4ced398d2048262adb0bf0050d13faf2471bb441
  1. filter/
  2. impl/
  3. infra/
  4. service/
  5. tools/
  6. .travis.yml
  7. codereview.settings
  8. doc.go
  9. LICENSE
  10. pre-commit-go.yml
  11. PRESUBMIT.py
  12. README.md
  13. symbols.go
README.md

gae: A Google AppEngine SDK wrapper

designed for testing and extensibility

THIS PACKAGE HAS NO API COMPATIBILITY GUARANTEES. USE UNPINNED AT YOUR OWN PERIL.

(but generally it should be pretty stableish).

GoDoc Build Status Coverage Status

Installing

go get -u github.com/luci/gae/...

Why/What/How

See the godocs.

Versioning

  • Branch master contains the latest code.

Contributing

  • Sign the Google CLA.
  • Make sure your user.email and user.name are configured in git config.
  • Install the pcg git hook: go get -u github.com/maruel/pre-commit-go/cmd/... && pcg

Run the following to setup the code review tool and create your first review:

git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git $HOME/src/depot_tools
export PATH="$PATH:$HOME/src/depot_tools"
cd $GOROOT/github.com/luci/gae
git new-branch work
# or `git checkout -b work origin/master` if you like typing more.

# hack hack

git commit -a -m "This is awesome\nR=joe@example.com"
# This will ask for your Google Account credentials.
git cl upload -s
# Wait for LGTM over email.
# Check Commit Queue checkbox in Rietveld codereview site.
# See it tested and landed automatically.

Use git cl help and git cl help <cmd> for more details.