Rename NotAuthorized exception to Forbidden

The NotAuthorized NovaException has an internal code of 403 which is
actually Forbidden, so rename it appropriately.

This patch doesn't change the external behavior, the status code in
responses will still be 403 but the exception is just named properly.

This is also necessary to create an actual Unauthorized NovaException
with code 401 for use in some Neutron API bug fixes for more granular
error handling from python-neutronclient.

Related-Bug: #1298075

Change-Id: I691fac2e2c797f47c04da7965d7b1c8685c74edb
Regenerate API samples for GET /extensions

In a subsequent commit, I make a change which requires regenerating
this API sample but doing so shows up a bunch of unrelated changes.
This commit simply regenerates the API sample without any functional
changes to highlight the non-functional sample changes.

Change-Id: I5fafff90f20af17d787039568245f598e500405e
Normalize API extension updated timestamp format

It's unusual to include a '+00:00' offset in an ISO8601 timestamp
rather than just using the 'Z' suffix. It's also very weird for our
API to be returning timestamps which aren't in UTC.

Let's make these timestamps consistent with other timestamps by
using UTC always and representing that with a 'Z' suffix. Also,
enforce this in the API sample tests by using a new 'isotime' regexp.

A small number of the extensions in the API sample templates
specified the exact timestamp, so templatize those before regenerating
the API samples for GET /extensions.

Full context here:

  http://lists.openstack.org/pipermail/openstack-dev/2014-April/033971.html

Change-Id: Idf429e55e4ae13738ac531a25ce54b20d395410d
Use actual fake timestamp in API templates

The 2011-01-01T01:02:03Z is seen throughout the images API sample
tests because it is hard-coded in the fake image service. In some
of the API templates, we include the timestamp rather than matching
against a regexp but in many we don't. Let's consistently match
against the actual timestamp we know to expect.

Full context here:

  http://lists.openstack.org/pipermail/openstack-dev/2014-April/033971.html

Change-Id: I727c0aabac0e32b435068c37d535daa8c983364c
Use timeutils.isotime() in images view builder

Rather than using a direct call to strftime() with the same format
as timeutils.isotime() just use isotime() itself.

Full context here:

  http://lists.openstack.org/pipermail/openstack-dev/2014-April/033971.html

Change-Id: Ifeb9e24566e220f80cf8051ec16b8c868908c642
Verify created/updated timestamps are isotime

We format these timestamps using timeutils.isotime() in the server
view builder, so we should check that in the API sample tests rather
than using the generic timestamp regexp.

Full context here:

  http://lists.openstack.org/pipermail/openstack-dev/2014-April/033971.html

Change-Id: Id55f13d8163249275220151dd88c67b47e6176c9
Verify next-available limit timestamps are isotime

We format these timestamps using timeutils.isotime() in the limits
view builder, so we should check that in the API sample tests rather
than using the generic timestamp regexp.

Full context here:

  http://lists.openstack.org/pipermail/openstack-dev/2014-April/033971.html

Change-Id: I14bf2eccec38f271eec8d97e8dca6d46f9d93cb3
Verify created_at cloudpipe timestamp is isotime

We format these timestamps using timeutils.isotime() in the cloudpipe
API extension, so we should check that in the API sample tests rather
than using the generic timestamp regexp.

Full context here:

  http://lists.openstack.org/pipermail/openstack-dev/2014-April/033971.html

Change-Id: I52543f68a512da4064a905e2efa453425ce36dae
Use datetime object for stub created_at timestamp

The stubbed out volumes methods returns a volume object with a
pre-serialized datetime object which doesn't give us the opportunity
to test the serialization code properly. Use a real object instead.

Full context here:

  http://lists.openstack.org/pipermail/openstack-dev/2014-April/033971.html

Change-Id: Ie54a3deaf1c32f3e57d03737e9ea1e9dd66a98d8
Use datetime object for fake network timestamps

The fake networks use a pre-serialized timestamp in str(datetime)
format which which doesn't give us the opportunity to test the
serialization code properly and isn't the format use in practice.

Use real dateime objects instead.

Full context here:

  http://lists.openstack.org/pipermail/openstack-dev/2014-April/033971.html

Change-Id: I5cbe722fb59cdd326b4c75dcfea14f206d71f668
Updated from global requirements

Change-Id: Ia7fe0408883476b40dd0667fd6f56f5d068ca03f
VCDriver - No longer returns uptime due to multiple hosts

The vCenter cluster will have multiple hosts.
The cluster does not have a uptime feature.
Returning uptime of one of the host/longest
running host, can be misleading to the user.
Hence raising NotImplementedError
Closes-Bug:#1313375

Change-Id: I70e5ab35b8944abd7b874762de2af5b01d6a7313
Fix bad Mock calls to assert_called_once()

To actually check if a call was made, we should use
assert_called_once_with. assert_called_once is just a auto-spec'd
method and hence does not really check anything.

Change-Id: I21064dfca2a281683ee3b6ed4926f471bb74dbfa
Merge "Regenerate API samples for GET /extensions"
Merge "Normalize API extension updated timestamp format"
Merge "Use actual fake timestamp in API templates"
Merge "Use timeutils.isotime() in images view builder"
Merge "VCDriver - No longer returns uptime due to multiple hosts"
Merge "Updated from global requirements"
Merge "Rename NotAuthorized exception to Forbidden"