Ejemplo n.º 1
0
    def test_set_connection(self):
        vol = cinderlib.Volume(self.backend, size=1, name='disk')
        conn = cinderlib.Connection(self.backend, volume=vol, connector={})

        self.assertEqual(0,
                         len(sqla_api.volume_attachment_get_all(self.context)))

        self.persistence.set_connection(conn)

        db_entries = sqla_api.volume_attachment_get_all(self.context)
        self.assertEqual(1, len(db_entries))

        ovo_conn = cinder_ovos.VolumeAttachment(self.context)
        ovo_conn._from_db_object(ovo_conn._context, ovo_conn, db_entries[0])
        cl_conn = cinderlib.Connection(vol.backend, volume=vol, __ovo=ovo_conn)

        self.assertEqualObj(conn, cl_conn)
Ejemplo n.º 2
0
    def test_set_connection(self):
        vol = cinderlib.Volume(self.backend, size=1, name='disk')
        conn = cinderlib.Connection(self.backend, volume=vol, connector={})

        self.assertDictEqual({}, self.persistence.connections)

        self.persistence.set_connection(conn)
        self.assertDictEqual({conn.id: conn}, self.persistence.connections)
Ejemplo n.º 3
0
 def create_connections(self):
     vols = self.create_n_volumes(2)
     conns = []
     for i, vol in enumerate(vols):
         conn = cinderlib.Connection(self.backend, volume=vol)
         conns.append(conn)
         self.persistence.set_connection(conn)
     return self.sorted(conns)
Ejemplo n.º 4
0
 def test_get_connections_by_multiple(self):
     vol = self.create_volumes([{'size': 1}])[0]
     conns = [
         cinderlib.Connection(self.backend, volume=vol) for i in range(2)
     ]
     [self.persistence.set_connection(conn) for conn in conns]
     res = self.persistence.get_connections(volume_id=vol.id,
                                            connection_id=conns[0].id)
     self.assertListEqualObj([conns[0]], self.sorted(res))
Ejemplo n.º 5
0
 def test_get_connections_by_volume(self):
     conns = self.create_connections()
     vol = conns[0].volume
     expected_conns = [
         conns[0], cinderlib.Connection(self.backend, volume=vol)
     ]
     self.persistence.set_connection(expected_conns[1])
     res = self.persistence.get_connections(volume_id=vol.id)
     self.assertListEqualObj(self.sorted(expected_conns), self.sorted(res))
Ejemplo n.º 6
0
 def test_delete_connection_not_found(self):
     conns = self.create_connections()
     fake_conn = cinderlib.Connection(
         self.backend,
         volume=conns[0].volume,
         connection_info={'conn': {
             'data': {}
         }})
     self.persistence.delete_connection(fake_conn)
     res = self.persistence.get_connections()
     self.assertListEqualObj(conns, self.sorted(res))