[Urgent] Modify FakeNeutronContext and FakeSession
[Urgent] Modify FakeNeutronContext and FakeSession

1. What is the problem
Neutron now reads project_id field from Context object for privilege
validation, but in our unit tests, FakeNeutronContext object which
simulates Context object doesn't have project_id, thus unit tests
fail to pass.

Also, Neutron now calls expunge method in Session object which the
simulation object FakeSession doesn't have that method.

2. What is the solution to the problem
Add project_id field to FakeNeutronContext object, and make sure
project_id fields set in FakeNeutronContext object and resource
object are the same.

Use __getattr__ to return a dummy method if the method hasn't been
defined in FakeSession object.

3. What the features need to be implemented to the Tricircle
   to realize the solution
No new feature introduced.

Change-Id: I58fb446dc7837065a60aafd5c6c6262840b60e21

stackforge/tricircle,openstack/tricircle,stackforge/tricircle,openstack/tricircle