Example #1
0
    def test_instance_and_proxified_properties(self):

        in_sync_replica_instance = db_utils.create_share_instance(
            status=constants.STATUS_AVAILABLE,
            share_id='fake_id',
            replica_state=constants.REPLICA_STATE_IN_SYNC)
        active_replica_instance = db_utils.create_share_instance(
            status=constants.STATUS_AVAILABLE,
            share_id='fake_id',
            replica_state=constants.REPLICA_STATE_ACTIVE)
        out_of_sync_replica_instance = db_utils.create_share_instance(
            status=constants.STATUS_ERROR,
            share_id='fake_id',
            replica_state=constants.REPLICA_STATE_OUT_OF_SYNC)
        non_replica_instance = db_utils.create_share_instance(
            status=constants.STATUS_CREATING, share_id='fake_id')
        share_instances = [
            in_sync_replica_instance,
            active_replica_instance,
            out_of_sync_replica_instance,
            non_replica_instance,
        ]
        share = db_utils.create_share(instances=share_instances)
        snapshot_instance_list = [
            db_utils.create_snapshot_instance(
                'fake_snapshot_id',
                status=constants.STATUS_CREATING,
                share_instance_id=out_of_sync_replica_instance['id']),
            db_utils.create_snapshot_instance(
                'fake_snapshot_id',
                status=constants.STATUS_ERROR,
                share_instance_id=in_sync_replica_instance['id']),
            db_utils.create_snapshot_instance(
                'fake_snapshot_id',
                status=constants.STATUS_AVAILABLE,
                provider_location='hogsmeade:snapshot1',
                progress='87%',
                share_instance_id=active_replica_instance['id']),
            db_utils.create_snapshot_instance(
                'fake_snapshot_id',
                status=constants.STATUS_MANAGING,
                share_instance_id=non_replica_instance['id']),
        ]
        snapshot = db_utils.create_snapshot(id='fake_snapshot_id',
                                            share_id=share['id'],
                                            instances=snapshot_instance_list)

        # Proxified properties
        self.assertEqual(constants.STATUS_AVAILABLE, snapshot['status'])
        self.assertEqual(constants.STATUS_ERROR, snapshot['aggregate_status'])
        self.assertEqual('hogsmeade:snapshot1', snapshot['provider_location'])
        self.assertEqual('87%', snapshot['progress'])

        # Snapshot properties
        expected_share_name = '-'.join(['share', share['id']])
        self.assertEqual(expected_share_name, snapshot['share_name'])
        self.assertEqual(active_replica_instance['id'],
                         snapshot['instance']['share_instance_id'])
Example #2
0
    def test_instance_and_proxified_properties(self):

        in_sync_replica_instance = db_utils.create_share_instance(
            status=constants.STATUS_AVAILABLE, share_id='fake_id',
            replica_state=constants.REPLICA_STATE_IN_SYNC)
        active_replica_instance = db_utils.create_share_instance(
            status=constants.STATUS_AVAILABLE, share_id='fake_id',
            replica_state=constants.REPLICA_STATE_ACTIVE)
        out_of_sync_replica_instance = db_utils.create_share_instance(
            status=constants.STATUS_ERROR, share_id='fake_id',
            replica_state=constants.REPLICA_STATE_OUT_OF_SYNC)
        non_replica_instance = db_utils.create_share_instance(
            status=constants.STATUS_CREATING, share_id='fake_id')
        share_instances = [
            in_sync_replica_instance, active_replica_instance,
            out_of_sync_replica_instance, non_replica_instance,
        ]
        share = db_utils.create_share(instances=share_instances)
        snapshot_instance_list = [
            db_utils.create_snapshot_instance(
                'fake_snapshot_id',
                status=constants.STATUS_CREATING,
                share_instance_id=out_of_sync_replica_instance['id']),
            db_utils.create_snapshot_instance(
                'fake_snapshot_id',
                status=constants.STATUS_ERROR,
                share_instance_id=in_sync_replica_instance['id']),
            db_utils.create_snapshot_instance(
                'fake_snapshot_id',
                status=constants.STATUS_AVAILABLE,
                provider_location='hogsmeade:snapshot1',
                progress='87%',
                share_instance_id=active_replica_instance['id']),
            db_utils.create_snapshot_instance(
                'fake_snapshot_id',
                status=constants.STATUS_MANAGING,
                share_instance_id=non_replica_instance['id']),
        ]
        snapshot = db_utils.create_snapshot(
            id='fake_snapshot_id', share_id=share['id'],
            instances=snapshot_instance_list)

        # Proxified properties
        self.assertEqual(constants.STATUS_AVAILABLE, snapshot['status'])
        self.assertEqual(constants.STATUS_ERROR, snapshot['aggregate_status'])
        self.assertEqual('hogsmeade:snapshot1', snapshot['provider_location'])
        self.assertEqual('87%', snapshot['progress'])

        # Snapshot properties
        expected_share_name = '-'.join(['share', share['id']])
        self.assertEqual(expected_share_name, snapshot['share_name'])
        self.assertEqual(active_replica_instance['id'],
                         snapshot['instance']['share_instance_id'])
 def setUp(self):
     super(SnapshotAccessTestCase, self).setUp()
     self.driver = self.mock_class("manila.share.driver.ShareDriver",
                                   mock.Mock())
     self.snapshot_access = snapshot_access.ShareSnapshotInstanceAccess(
         db, self.driver)
     self.context = context.get_admin_context()
     share = db_utils.create_share()
     self.snapshot = db_utils.create_snapshot(share_id=share['id'])
     self.snapshot_instance = db_utils.create_snapshot_instance(
         snapshot_id=self.snapshot['id'],
         share_instance_id=self.snapshot['share']['instance']['id'])
Example #4
0
 def setUp(self):
     super(SnapshotAccessTestCase, self).setUp()
     self.driver = self.mock_class("manila.share.driver.ShareDriver",
                                   mock.Mock())
     self.snapshot_access = snapshot_access.ShareSnapshotInstanceAccess(
         db, self.driver)
     self.context = context.get_admin_context()
     share = db_utils.create_share()
     self.snapshot = db_utils.create_snapshot(share_id=share['id'])
     self.snapshot_instance = db_utils.create_snapshot_instance(
         snapshot_id=self.snapshot['id'],
         share_instance_id=self.snapshot['share']['instance']['id'])
    def _setup_snapshot_instance_data(self, instance=None):
        if instance is None:
            share_instance = db_utils.create_share_instance(
                status=constants.STATUS_AVAILABLE, share_id='fake_share_id_1')
            instance = db_utils.create_snapshot_instance(
                'fake_snapshot_id_1',
                status=constants.STATUS_AVAILABLE,
                share_instance_id=share_instance['id'])

        req = fakes.HTTPRequest.blank('/v2/fake/snapshot-instances/%s/action' %
                                      instance['id'],
                                      version=self.api_version)
        req.method = 'POST'
        req.headers['content-type'] = 'application/json'
        req.headers['X-Openstack-Manila-Api-Version'] = self.api_version

        return instance, req
    def _setup_snapshot_instance_data(self, instance=None):
        if instance is None:
            share_instance = db_utils.create_share_instance(
                status=constants.STATUS_AVAILABLE,
                share_id='fake_share_id_1')
            instance = db_utils.create_snapshot_instance(
                'fake_snapshot_id_1',
                status=constants.STATUS_AVAILABLE,
                share_instance_id=share_instance['id'])

        path = '/v2/fake/snapshot-instances/%s/action' % instance['id']
        req = fakes.HTTPRequest.blank(path, version=self.api_version,
                                      script_name=path)
        req.method = 'POST'
        req.headers['content-type'] = 'application/json'
        req.headers['X-Openstack-Manila-Api-Version'] = self.api_version

        return instance, req
    def setUp(self):
        super(ShareSnapshotInstanceExportLocationsAPITest, self).setUp()
        self.controller = (
            exp_loc.ShareSnapshotInstanceExportLocationController())

        self.share = db_utils.create_share()
        self.snapshot = db_utils.create_snapshot(
            status=constants.STATUS_AVAILABLE, share_id=self.share['id'])
        self.snapshot_instance = db_utils.create_snapshot_instance(
            'fake_snapshot_id_1',
            status=constants.STATUS_CREATING,
            share_instance_id=self.share['instance']['id'])

        self.values = {
            'share_snapshot_instance_id': self.snapshot_instance['id'],
            'path': 'fake/user_path',
            'is_admin_only': True,
        }
        self.el = db_api.share_snapshot_instance_export_location_create(
            context.get_admin_context(), self.values)
        self.req = self._get_request()
    def setUp(self):
        super(ShareSnapshotInstanceExportLocationsAPITest, self).setUp()
        self.controller = (
            exp_loc.ShareSnapshotInstanceExportLocationController())

        self.share = db_utils.create_share()
        self.snapshot = db_utils.create_snapshot(
            status=constants.STATUS_AVAILABLE,
            share_id=self.share['id'])
        self.snapshot_instance = db_utils.create_snapshot_instance(
            'fake_snapshot_id_1',
            status=constants.STATUS_CREATING,
            share_instance_id=self.share['instance']['id'])

        self.values = {
            'share_snapshot_instance_id': self.snapshot_instance['id'],
            'path': 'fake/user_path',
            'is_admin_only': True,
        }
        self.el = db_api.share_snapshot_instance_export_location_create(
            context.get_admin_context(), self.values)
        self.req = self._get_request()