def test_immutable_refresh(self, mock_send_request):

        model = Immutable()
        model.key = 'value'
        self.assertFalse(model.refresh(force=False))

        self.assertRaises(dockercloud.ApiError, model.refresh, force=True)

        Immutable.endpoint = 'resource_uri'
        Immutable.subsystem = 'subsystem'
        model.resource_uri = 'api/subsystem/%s/resource_uri/uuid' % Immutable._api_version
        model._resource_uri = model.resource_uri
        mock_send_request.side_effect = [{'newkey': 'newvalue'}, None]
        self.assertTrue(model.refresh(force=True))
        self.assertEqual('newvalue', model.newkey)
        mock_send_request.assert_called_with('GET', model._resource_uri)

        self.assertFalse(model.refresh(force=True))
        mock_send_request.assert_called_with('GET', model._resource_uri)