いくつかの事前定義されたプロパティを持つ MBUser という基本クラスが必要です。これらのプロパティは変更したくないものです。クライアントが MBUser にプロパティを追加する場合は、MBUser をサブクラス化し、追加のプロパティをそこに配置することをお勧めします。
API コードは、クライアントが実際に MBUser をサブクラス化するかどうかを認識しませんが、問題にはなりません。ID で MBUser を取得するだけでよいと考えていました。だから私はこれがうまくいくと思っていました:
def test_CreateNSUser_FetchMBUser(self):
from nsuser import NSUser
id = create_unique_id()
user = NSUser(id = id)
user.put()
# changing MBUser.get.. to NSUser.get makes this test succeed
get_user = MBUser.get_by_id(id)
self.assertIsNotNone(get_user)
ここで、NSUser は MBUser のサブクラスです。テストは失敗します。
- なぜ私はこれを行うことができないのですか?
- 回避策は何ですか?