GAE/PyでデータストアのLow Level Apiを直接呼んでみる

インターネットでGAE/PyのデータストアLow Level APIを触ってるようなサンプルを探したけど見当たらなかった。しょうがないのでソースを読んでみたらそれっぽいものを見つけたので動かしてみた。

# testLLApi.py

import unittest
from google.appengine.ext import testbed

from google.appengine.api.datastore import Get, Put, Entity
from google.appengine.api.datastore_types import Key

class LLApiTestCase(unittest.TestCase):

  def setUp(self):
    self.testbed = testbed.Testbed()
    self.testbed.setup_env(app_id='ishida-appengine-py')
    self.testbed.activate()
    self.testbed.init_datastore_v3_stub()

  def tearDown(self):
    self.testbed.deactivate()

  def testPutAndGet(self):
    entity = Entity(kind='person')
    entity['name'] = 'ishida'
    entity['age'] = 31

    key = Put(entity)

    stored = Get(key)
    self.assertEqual('ishida', stored['name'])
    self.assertEqual(31, stored['age'])

眠いので詳しいことはまた今度書く。きっと書く。