Coverage for manila/tests/share/drivers/qnap/fakes.py: 91%

203 statements  

« prev     ^ index     » next       coverage.py v7.11.0, created at 2026-02-18 22:19 +0000

1# Copyright (c) 2016 QNAP Systems, Inc. 

2# All Rights Reserved. 

3# 

4# Licensed under the Apache License, Version 2.0 (the "License"); you may 

5# not use this file except in compliance with the License. You may obtain 

6# a copy of the License at 

7# 

8# http://www.apache.org/licenses/LICENSE-2.0 

9# 

10# Unless required by applicable law or agreed to in writing, software 

11# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT 

12# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the 

13# License for the specific language governing permissions and limitations 

14# under the License. 

15 

16FAKE_RES_DETAIL_DATA_LOGIN = """ 

17 <QDocRoot version="1.0"> 

18 <authPassed><![CDATA[1]]></authPassed> 

19 <authSid><![CDATA[fakeSid]]></authSid> 

20 </QDocRoot>""" 

21 

22FAKE_RES_DETAIL_DATA_GETBASIC_INFO_ES_1_1_1 = """ 

23 <QDocRoot version="1.0"> 

24 <model> 

25 <displayModelName><![CDATA[ES1640dc]]></displayModelName> 

26 <internalModelName><![CDATA[ES1640dc]]></internalModelName> 

27 </model> 

28 <firmware> 

29 <version><![CDATA[1.1.1]]></version> 

30 </firmware> 

31 </QDocRoot>""" 

32 

33FAKE_RES_DETAIL_DATA_GETBASIC_INFO_ES_1_1_3 = """ 

34 <QDocRoot version="1.0"> 

35 <model> 

36 <displayModelName><![CDATA[ES1640dc]]></displayModelName> 

37 <internalModelName><![CDATA[ES1640dc]]></internalModelName> 

38 </model> 

39 <firmware> 

40 <version><![CDATA[1.1.3]]></version> 

41 </firmware> 

42 </QDocRoot>""" 

43 

44FAKE_RES_DETAIL_DATA_GETBASIC_INFO_ES_2_0_0 = """ 

45 <QDocRoot version="1.0"> 

46 <model> 

47 <displayModelName><![CDATA[ES1640dc]]></displayModelName> 

48 <internalModelName><![CDATA[ES1640dc]]></internalModelName> 

49 </model> 

50 <firmware> 

51 <version><![CDATA[2.0.0]]></version> 

52 </firmware> 

53 </QDocRoot>""" 

54 

55FAKE_RES_DETAIL_DATA_GETBASIC_INFO_ES_2_1_0 = """ 

56 <QDocRoot version="1.0"> 

57 <model> 

58 <displayModelName><![CDATA[ES1640dc]]></displayModelName> 

59 <internalModelName><![CDATA[ES1640dc]]></internalModelName> 

60 </model> 

61 <firmware> 

62 <version><![CDATA[2.1.0]]></version> 

63 </firmware> 

64 </QDocRoot>""" 

65 

66FAKE_RES_DETAIL_DATA_GETBASIC_INFO_ES_2_2_0 = """ 

67 <QDocRoot version="1.0"> 

68 <model> 

69 <displayModelName><![CDATA[ES1640dc]]></displayModelName> 

70 <internalModelName><![CDATA[ES1640dc]]></internalModelName> 

71 </model> 

72 <firmware> 

73 <version><![CDATA[2.2.0]]></version> 

74 </firmware> 

75 </QDocRoot>""" 

76 

77FAKE_RES_DETAIL_DATA_GETBASIC_INFO_TS_4_0_0 = """ 

78 <QDocRoot version="1.0"> 

79 <model> 

80 <displayModelName><![CDATA[TS-870U]]></displayModelName> 

81 <internalModelName><![CDATA[TS-870U]]></internalModelName> 

82 </model> 

83 <firmware> 

84 <version><![CDATA[4.0.0]]></version> 

85 </firmware> 

86 </QDocRoot>""" 

87 

88FAKE_RES_DETAIL_DATA_GETBASIC_INFO_TS_4_3_0 = """ 

89 <QDocRoot version="1.0"> 

90 <model> 

91 <displayModelName><![CDATA[TS-870U]]></displayModelName> 

92 <internalModelName><![CDATA[TS-870U]]></internalModelName> 

93 </model> 

94 <firmware> 

95 <version><![CDATA[4.3.0]]></version> 

96 </firmware> 

97 </QDocRoot>""" 

98 

99FAKE_RES_DETAIL_DATA_GETBASIC_INFO_TES_TS_4_0_0 = """ 

100 <QDocRoot version="1.0"> 

101 <model> 

102 <displayModelName><![CDATA[TES-1885U]]></displayModelName> 

103 <internalModelName><![CDATA[TS-1885U]]></internalModelName> 

104 </model> 

105 <firmware> 

106 <version><![CDATA[4.0.0]]></version> 

107 </firmware> 

108 </QDocRoot>""" 

109 

110FAKE_RES_DETAIL_DATA_GETBASIC_INFO_TES_TS_4_3_0 = """ 

111 <QDocRoot version="1.0"> 

112 <model> 

113 <displayModelName><![CDATA[TES-1885U]]></displayModelName> 

114 <internalModelName><![CDATA[TS-1885U]]></internalModelName> 

115 </model> 

116 <firmware> 

117 <version><![CDATA[4.3.0]]></version> 

118 </firmware> 

119 </QDocRoot>""" 

120 

121FAKE_RES_DETAIL_DATA_GETBASIC_INFO_TES_ES_1_1_1 = """ 

122 <QDocRoot version="1.0"> 

123 <model> 

124 <displayModelName><![CDATA[TES-1885U]]></displayModelName> 

125 <internalModelName><![CDATA[ES-1885U]]></internalModelName> 

126 </model> 

127 <firmware> 

128 <version><![CDATA[1.1.1]]></version> 

129 </firmware> 

130 </QDocRoot>""" 

131 

132FAKE_RES_DETAIL_DATA_GETBASIC_INFO_TES_ES_1_1_3 = """ 

133 <QDocRoot version="1.0"> 

134 <model> 

135 <displayModelName><![CDATA[TES-1885U]]></displayModelName> 

136 <internalModelName><![CDATA[ES-1885U]]></internalModelName> 

137 </model> 

138 <firmware> 

139 <version><![CDATA[1.1.3]]></version> 

140 </firmware> 

141 </QDocRoot>""" 

142 

143FAKE_RES_DETAIL_DATA_GETBASIC_INFO_TES_ES_2_0_0 = """ 

144 <QDocRoot version="1.0"> 

145 <model> 

146 <displayModelName><![CDATA[TES-1885U]]></displayModelName> 

147 <internalModelName><![CDATA[ES-1885U]]></internalModelName> 

148 </model> 

149 <firmware> 

150 <version><![CDATA[2.0.0]]></version> 

151 </firmware> 

152 </QDocRoot>""" 

153 

154FAKE_RES_DETAIL_DATA_GETBASIC_INFO_TES_ES_2_1_0 = """ 

155 <QDocRoot version="1.0"> 

156 <model> 

157 <displayModelName><![CDATA[TES-1885U]]></displayModelName> 

158 <internalModelName><![CDATA[ES-1885U]]></internalModelName> 

159 </model> 

160 <firmware> 

161 <version><![CDATA[2.1.0]]></version> 

162 </firmware> 

163 </QDocRoot>""" 

164 

165FAKE_RES_DETAIL_DATA_GETBASIC_INFO_TES_ES_2_2_0 = """ 

166 <QDocRoot version="1.0"> 

167 <model> 

168 <displayModelName><![CDATA[TES-1885U]]></displayModelName> 

169 <internalModelName><![CDATA[ES-1885U]]></internalModelName> 

170 </model> 

171 <firmware> 

172 <version><![CDATA[2.2.0]]></version> 

173 </firmware> 

174 </QDocRoot>""" 

175 

176FAKE_RES_DETAIL_DATA_GETBASIC_INFO_ERROR = """ 

177 <QDocRoot version="1.0"> 

178 <model> 

179 <displayModelName><![CDATA[TTS-1885U]]></displayModelName> 

180 <internalModelName><![CDATA[TTS-1885U]]></internalModelName> 

181 </model> 

182 <firmware> 

183 <version><![CDATA[1.1.3]]></version> 

184 </firmware> 

185 </QDocRoot>""" 

186 

187FAKE_RES_DETAIL_DATA_SHARE_INFO = """ 

188 <QDocRoot version="1.0"> 

189 <authPassed><![CDATA[1]]></authPassed> 

190 <Volume_Info> 

191 <row> 

192 <vol_no><![CDATA[fakeNo]]></vol_no> 

193 <vol_label><![CDATA[fakeShareName]]></vol_label> 

194 </row> 

195 </Volume_Info> 

196 <result><![CDATA[0]]></result> 

197 </QDocRoot>""" 

198 

199FAKE_RES_DETAIL_DATA_VOLUME_INFO = """ 

200 <QDocRoot version="1.0"> 

201 <authPassed><![CDATA[1]]></authPassed> 

202 <Volume_Info> 

203 <row> 

204 <vol_no><![CDATA[fakeNo]]></vol_no> 

205 <size><![CDATA[10]]></size> 

206 <vol_mount_path>fakeMountPath</vol_mount_path> 

207 <dedup><![CDATA[off]]></dedup> 

208 <compression><![CDATA[1]]></compression> 

209 <thin_pro><![CDATA[1]]></thin_pro> 

210 <cache><![CDATA[0]]></cache> 

211 </row> 

212 </Volume_Info> 

213 <result><![CDATA[0]]></result> 

214 </QDocRoot>""" 

215 

216FAKE_RES_DETAIL_DATA_SNAPSHOT = """ 

217 <QDocRoot version="1.0"> 

218 <authPassed><![CDATA[1]]></authPassed> 

219 <SnapshotList> 

220 <row> 

221 <snapshot_id><![CDATA[fakeSnapshotId]]></snapshot_id> 

222 <snapshot_name><![CDATA[fakeSnapshotName]]></snapshot_name> 

223 <parent_size>10</parent_size> 

224 </row> 

225 </SnapshotList> 

226 <result><![CDATA[0]]></result> 

227 </QDocRoot>""" 

228 

229FAKE_RES_DETAIL_DATA_SPECIFIC_POOL_INFO = """ 

230 <QDocRoot version="1.0"> 

231 <authPassed><![CDATA[1]]></authPassed> 

232 <Pool_Index> 

233 <row> 

234 <poolIndex><![CDATA[fakePoolIndex]]></poolIndex> 

235 <poolID><![CDATA[fakePoolId]]></poolID> 

236 <pool_status><![CDATA[0]]></pool_status> 

237 <capacity_bytes><![CDATA[930213412209]]></capacity_bytes> 

238 <allocated_bytes><![CDATA[1480470528]]></allocated_bytes> 

239 <freesize_bytes><![CDATA[928732941681]]></freesize_bytes> 

240 <lun_meta_reserve_ratio><![CDATA[0.0315]]></lun_meta_reserve_ratio> 

241 <pool_capacity><![CDATA[866 GB]]></pool_capacity> 

242 <pool_allocated><![CDATA[1.38 GB]]></pool_allocated> 

243 <pool_freesize><![CDATA[865 GB]]></pool_freesize> 

244 <pool_threshold><![CDATA[80 %]]></pool_threshold> 

245 <pool_used><![CDATA[0 %]]></pool_used> 

246 <pool_available><![CDATA[100 %]]></pool_available> 

247 <pool_owner><![CDATA[SCA]]></pool_owner> 

248 <pool_type><![CDATA[mirror]]></pool_type> 

249 <pool_dedup><![CDATA[1.00]]></pool_dedup> 

250 <pool_bound><![CDATA[0]]></pool_bound> 

251 <pool_progress><![CDATA[0]]></pool_progress> 

252 <pool_scrub><![CDATA[0]]></pool_scrub> 

253 </row> 

254 </Pool_Index> 

255 <result><![CDATA[0]]></result> 

256 </QDocRoot>""" 

257 

258FAKE_RES_DETAIL_DATA_GET_HOST_LIST = """ 

259 <QDocRoot version="1.0"> 

260 <authPassed><![CDATA[1]]></authPassed> 

261 <ES_RET_CODE><![CDATA[1]]></ES_RET_CODE> 

262 <host_list> 

263 <host> 

264 <index><![CDATA[fakeHostIndex]]></index> 

265 <hostid><![CDATA[fakeHostId]]></hostid> 

266 <name><![CDATA[manila-fakeHostName]]></name> 

267 <netaddrs> 

268 <ipv4> 

269 <![CDATA[fakeIp]]> 

270 </ipv4> 

271 </netaddrs> 

272 </host> 

273 </host_list> 

274 <result><![CDATA[0]]></result> 

275 </QDocRoot>""" 

276 

277FAKE_RES_DETAIL_DATA_CREATE_SHARE = """ 

278 <QDocRoot version="1.0"> 

279 <authPassed><![CDATA[1]]></authPassed> 

280 <ES_RET_CODE><![CDATA[1]]></ES_RET_CODE> 

281 <func> 

282 <ownContent> 

283 <volumeList> 

284 <volume> 

285 <volumeStatus><![CDATA[fakeStatus]]></volumeStatus> 

286 <volumeLabel><![CDATA[fakeLabel]]></volumeLabel> 

287 <volumeValue><![CDATA[faleValue]]></volumeValue> 

288 </volume> 

289 </volumeList> 

290 </ownContent> 

291 </func> 

292 </QDocRoot>""" 

293 

294FAKE_RES_DETAIL_DATA_ES_RET_CODE_NEGATIVE = """ 

295 <QDocRoot version="1.0"> 

296 <authPassed><![CDATA[1]]></authPassed> 

297 <ES_RET_CODE><![CDATA[-1]]></ES_RET_CODE> 

298 </QDocRoot>""" 

299 

300 

301FAKE_RES_DETAIL_DATA_RESULT_NEGATIVE = """ 

302 <QDocRoot version="1.0"> 

303 <authPassed><![CDATA[1]]></authPassed> 

304 <result><![CDATA[-1]]></result> 

305 </QDocRoot>""" 

306 

307FAKE_RES_DETAIL_DATA_AUTHPASS_FAIL = """ 

308 <QDocRoot version="1.0"> 

309 <authPassed><![CDATA[0]]></authPassed> 

310 </QDocRoot>""" 

311 

312FAKE_RES_DETAIL_DATA_DELETE_SHARE = """ 

313 <QDocRoot version="1.0"> 

314 <authPassed><![CDATA[1]]></authPassed> 

315 <ES_RET_CODE><![CDATA[1]]></ES_RET_CODE> 

316 <result>0</result> 

317 </QDocRoot>""" 

318 

319FAKE_RES_DETAIL_DATA_DELETE_SNAPSHOT = """ 

320 <QDocRoot version="1.0"> 

321 <authPassed><![CDATA[1]]></authPassed> 

322 <ES_RET_CODE><![CDATA[1]]></ES_RET_CODE> 

323 <result>0</result> 

324 </QDocRoot>""" 

325 

326FAKE_RES_DETAIL_DATA_DELETE_SNAPSHOT_SNAPSHOT_NOT_EXIST = """ 

327 <QDocRoot version="1.0"> 

328 <authPassed><![CDATA[1]]></authPassed> 

329 <ES_RET_CODE><![CDATA[1]]></ES_RET_CODE> 

330 <result>-206021</result> 

331 </QDocRoot>""" 

332 

333FAKE_RES_DETAIL_DATA_DELETE_SNAPSHOT_SHARE_NOT_EXIST = """ 

334 <QDocRoot version="1.0"> 

335 <authPassed><![CDATA[1]]></authPassed> 

336 <ES_RET_CODE><![CDATA[1]]></ES_RET_CODE> 

337 <result>-200005</result> 

338 </QDocRoot>""" 

339 

340FAKE_RES_DETAIL_DATA_GET_HOST_LIST_API = """ 

341 <QDocRoot version="1.0"> 

342 <authPassed><![CDATA[1]]></authPassed> 

343 <ES_RET_CODE><![CDATA[1]]></ES_RET_CODE> 

344 <content> 

345 <host_list> 

346 <host> 

347 <index><![CDATA[fakeHostIndex]]></index> 

348 <hostid><![CDATA[fakeHostId]]></hostid> 

349 <name><![CDATA[manila-hst-123]]></name> 

350 <netaddrs> 

351 <ipv4> 

352 <![CDATA[fakeIp]]> 

353 </ipv4> 

354 </netaddrs> 

355 </host> 

356 </host_list> 

357 </content> 

358 <result><![CDATA[0]]></result> 

359 </QDocRoot>""" 

360 

361FAKE_RES_DETAIL_DATA_GET_NO_HOST_LIST_API = """ 

362 <QDocRoot version="1.0"> 

363 <authPassed><![CDATA[1]]></authPassed> 

364 <ES_RET_CODE><![CDATA[1]]></ES_RET_CODE> 

365 <content> 

366 </content> 

367 <result><![CDATA[0]]></result> 

368 </QDocRoot>""" 

369 

370FAKE_RES_DETAIL_DATA_CREATE_SNAPSHOT = """ 

371 <QDocRoot version="1.0"> 

372 <authPassed><![CDATA[1]]></authPassed> 

373 <ES_RET_CODE><![CDATA[1]]></ES_RET_CODE> 

374 </QDocRoot>""" 

375 

376 

377class SnapshotClass(object): 

378 """Snapshot Class.""" 

379 

380 size = 0 

381 provider_location = 'fakeShareName@fakeSnapshotName' 

382 

383 def __init__(self, size, provider_location=None): 

384 """Init.""" 

385 self.size = size 

386 self.provider_location = provider_location 

387 

388 def get(self, provider_location): 

389 """Get function.""" 

390 return self.provider_location 

391 

392 def __getitem__(self, arg): 

393 """Getitem.""" 

394 return { 

395 'display_name': 'fakeSnapshotDisplayName', 

396 'id': 'fakeSnapshotId', 

397 'share': {'share_id': 'fakeShareId', 'id': 'fakeId'}, 

398 'share_instance': {'share_id': 'fakeShareId', 'id': 'fakeId'}, 

399 'size': self.size, 

400 'share_instance_id': 'fakeShareId' 

401 }[arg] 

402 

403 def __setitem__(self, key, value): 

404 """Setitem.""" 

405 if key == 'provider_location': 

406 self.provider_location = value 

407 

408 

409class ShareNfsClass(object): 

410 """Share Class.""" 

411 

412 share_proto = 'NFS' 

413 id = '' 

414 size = 0 

415 

416 def __init__(self, share_id, size): 

417 """Init.""" 

418 self.id = share_id 

419 self.size = size 

420 

421 def __getitem__(self, arg): 

422 """Getitem.""" 

423 return { 

424 'share_proto': self.share_proto, 

425 'id': self.id, 

426 'display_name': 'fakeDisplayName', 

427 'export_locations': [{'path': '1.2.3.4:/share/fakeShareName'}], 

428 'host': 'QnapShareDriver', 

429 'size': self.size 

430 }[arg] 

431 

432 def __setitem__(self, key, value): 

433 """Setitem.""" 

434 if key == 'share_proto': 

435 self.share_proto = value 

436 

437 

438class ShareCifsClass(object): 

439 """Share Class.""" 

440 

441 share_proto = 'CIFS' 

442 id = '' 

443 size = 0 

444 

445 def __init__(self, share_id, size): 

446 """Init.""" 

447 self.id = share_id 

448 self.size = size 

449 

450 def __getitem__(self, arg): 

451 """Getitem.""" 

452 return { 

453 'share_proto': self.share_proto, 

454 'id': self.id, 

455 'display_name': 'fakeDisplayName', 

456 'export_locations': [{'path': '\\\\1.2.3.4\\fakeShareName'}], 

457 'host': 'QnapShareDriver', 

458 'size': self.size 

459 }[arg] 

460 

461 def __setitem__(self, key, value): 

462 """Setitem.""" 

463 if key == 'share_proto': 

464 self.share_proto = value 

465 

466 

467class AccessClass(object): 

468 """Access Class.""" 

469 

470 access_type = 'fakeAccessType' 

471 access_level = 'ro' 

472 access_to = 'fakeIp' 

473 

474 def __init__(self, access_type, access_level, access_to): 

475 """Init.""" 

476 self.access_type = access_type 

477 self.access_level = access_level 

478 self.access_to = access_to 

479 

480 def __getitem__(self, arg): 

481 """Getitem.""" 

482 return { 

483 'access_type': self.access_type, 

484 'access_level': self.access_level, 

485 'access_to': self.access_to, 

486 }[arg] 

487 

488 

489class FakeGetBasicInfoResponseEs_1_1_1(object): 

490 """Fake GetBasicInfo response from ES nas.""" 

491 

492 status = 'fackStatus' 

493 

494 def read(self): 

495 """Mock response.read.""" 

496 return FAKE_RES_DETAIL_DATA_GETBASIC_INFO_ES_1_1_1 

497 

498 

499class FakeGetBasicInfoResponseEs_1_1_3(object): 

500 """Fake GetBasicInfo response from ES nas.""" 

501 

502 status = 'fackStatus' 

503 

504 def read(self): 

505 """Mock response.read.""" 

506 return FAKE_RES_DETAIL_DATA_GETBASIC_INFO_ES_1_1_3 

507 

508 

509class FakeGetBasicInfoResponseEs_2_0_0(object): 

510 """Fake GetBasicInfo response from ES nas.""" 

511 

512 status = 'fackStatus' 

513 

514 def read(self): 

515 """Mock response.read.""" 

516 return FAKE_RES_DETAIL_DATA_GETBASIC_INFO_ES_2_0_0 

517 

518 

519class FakeGetBasicInfoResponseEs_2_1_0(object): 

520 """Fake GetBasicInfo response from ES nas.""" 

521 

522 status = 'fackStatus' 

523 

524 def read(self): 

525 """Mock response.read.""" 

526 return FAKE_RES_DETAIL_DATA_GETBASIC_INFO_ES_2_1_0 

527 

528 

529class FakeGetBasicInfoResponseEs_2_2_0(object): 

530 """Fake GetBasicInfo response from ES nas.""" 

531 

532 status = 'fackStatus' 

533 

534 def read(self): 

535 """Mock response.read.""" 

536 return FAKE_RES_DETAIL_DATA_GETBASIC_INFO_ES_2_2_0 

537 

538 

539class FakeGetBasicInfoResponseTs_4_0_0(object): 

540 """Fake GetBasicInfoTS response from TS nas.""" 

541 

542 status = 'fackStatus' 

543 

544 def read(self): 

545 """Mock response.read.""" 

546 return FAKE_RES_DETAIL_DATA_GETBASIC_INFO_TS_4_0_0 

547 

548 

549class FakeGetBasicInfoResponseTs_4_3_0(object): 

550 """Fake GetBasicInfoTS response from TS nas.""" 

551 

552 status = 'fackStatus' 

553 

554 def read(self): 

555 """Mock response.read.""" 

556 return FAKE_RES_DETAIL_DATA_GETBASIC_INFO_TS_4_3_0 

557 

558 

559class FakeGetBasicInfoResponseTesTs_4_0_0(object): 

560 """Fake GetBasicInfoTS response from TS nas.""" 

561 

562 status = 'fackStatus' 

563 

564 def read(self): 

565 """Mock response.read.""" 

566 return FAKE_RES_DETAIL_DATA_GETBASIC_INFO_TES_TS_4_0_0 

567 

568 

569class FakeGetBasicInfoResponseTesTs_4_3_0(object): 

570 """Fake GetBasicInfoTS response from TS nas.""" 

571 

572 status = 'fackStatus' 

573 

574 def read(self): 

575 """Mock response.read.""" 

576 return FAKE_RES_DETAIL_DATA_GETBASIC_INFO_TES_TS_4_3_0 

577 

578 

579class FakeGetBasicInfoResponseTesEs_1_1_1(object): 

580 """Fake GetBasicInfoTS response from TS nas.""" 

581 

582 status = 'fackStatus' 

583 

584 def read(self): 

585 """Mock response.read.""" 

586 return FAKE_RES_DETAIL_DATA_GETBASIC_INFO_TES_ES_1_1_1 

587 

588 

589class FakeGetBasicInfoResponseTesEs_1_1_3(object): 

590 """Fake GetBasicInfoTS response from TS nas.""" 

591 

592 status = 'fackStatus' 

593 

594 def read(self): 

595 """Mock response.read.""" 

596 return FAKE_RES_DETAIL_DATA_GETBASIC_INFO_TES_ES_1_1_3 

597 

598 

599class FakeGetBasicInfoResponseTesEs_2_0_0(object): 

600 """Fake GetBasicInfoTS response from TS nas.""" 

601 

602 status = 'fackStatus' 

603 

604 def read(self): 

605 """Mock response.read.""" 

606 return FAKE_RES_DETAIL_DATA_GETBASIC_INFO_TES_ES_2_0_0 

607 

608 

609class FakeGetBasicInfoResponseTesEs_2_1_0(object): 

610 """Fake GetBasicInfoTS response from TS nas.""" 

611 

612 status = 'fackStatus' 

613 

614 def read(self): 

615 """Mock response.read.""" 

616 return FAKE_RES_DETAIL_DATA_GETBASIC_INFO_TES_ES_2_1_0 

617 

618 

619class FakeGetBasicInfoResponseTesEs_2_2_0(object): 

620 """Fake GetBasicInfoTS response from TS nas.""" 

621 

622 status = 'fackStatus' 

623 

624 def read(self): 

625 """Mock response.read.""" 

626 return FAKE_RES_DETAIL_DATA_GETBASIC_INFO_TES_ES_2_2_0 

627 

628 

629class FakeGetBasicInfoResponseError(object): 

630 """Fake GetBasicInfoTS response from TS nas.""" 

631 

632 status = 'fackStatus' 

633 

634 def read(self): 

635 """Mock response.read.""" 

636 return FAKE_RES_DETAIL_DATA_GETBASIC_INFO_ERROR 

637 

638 

639class FakeCreateShareResponse(object): 

640 """Fake login response.""" 

641 

642 status = 'fackStatus' 

643 

644 def read(self): 

645 """Mock response.read.""" 

646 return FAKE_RES_DETAIL_DATA_CREATE_SHARE 

647 

648 

649class FakeDeleteShareResponse(object): 

650 """Fake login response.""" 

651 

652 status = 'fackStatus' 

653 

654 def read(self): 

655 """Mock response.read.""" 

656 return FAKE_RES_DETAIL_DATA_DELETE_SHARE 

657 

658 

659class FakeDeleteSnapshotResponse(object): 

660 """Fake delete snapshot response.""" 

661 

662 status = 'fackStatus' 

663 

664 def read(self): 

665 """Mock response.read.""" 

666 return FAKE_RES_DETAIL_DATA_DELETE_SNAPSHOT 

667 

668 

669class FakeDeleteSnapshotResponseSnapshotNotExist(object): 

670 """Fake delete snapshot response.""" 

671 

672 status = 'fackStatus' 

673 

674 def read(self): 

675 """Mock response.read.""" 

676 return FAKE_RES_DETAIL_DATA_DELETE_SNAPSHOT_SNAPSHOT_NOT_EXIST 

677 

678 

679class FakeDeleteSnapshotResponseShareNotExist(object): 

680 """Fake delete snapshot response.""" 

681 

682 status = 'fackStatus' 

683 

684 def read(self): 

685 """Mock response.read.""" 

686 return FAKE_RES_DETAIL_DATA_DELETE_SNAPSHOT_SHARE_NOT_EXIST 

687 

688 

689class FakeGetHostListResponse(object): 

690 """Fake host info response.""" 

691 

692 status = 'fackStatus' 

693 

694 def read(self): 

695 """Mock response.read.""" 

696 return FAKE_RES_DETAIL_DATA_GET_HOST_LIST_API 

697 

698 

699class FakeGetNoHostListResponse(object): 

700 """Fake host info response.""" 

701 

702 status = 'fackStatus' 

703 

704 def read(self): 

705 """Mock response.read.""" 

706 return FAKE_RES_DETAIL_DATA_GET_NO_HOST_LIST_API 

707 

708 

709class FakeAuthPassFailResponse(object): 

710 """Fake pool info response.""" 

711 

712 status = 'fackStatus' 

713 

714 def read(self): 

715 """Mock response.read.""" 

716 return FAKE_RES_DETAIL_DATA_AUTHPASS_FAIL 

717 

718 

719class FakeEsResCodeNegativeResponse(object): 

720 """Fake pool info response.""" 

721 

722 status = 'fackStatus' 

723 

724 def read(self): 

725 """Mock response.read.""" 

726 return FAKE_RES_DETAIL_DATA_ES_RET_CODE_NEGATIVE 

727 

728 

729class FakeResultNegativeResponse(object): 

730 """Fake pool info response.""" 

731 

732 status = 'fackStatus' 

733 

734 def read(self): 

735 """Mock response.read.""" 

736 return FAKE_RES_DETAIL_DATA_RESULT_NEGATIVE 

737 

738 

739class FakeLoginResponse(object): 

740 """Fake login response.""" 

741 

742 status = 'fackStatus' 

743 

744 def read(self): 

745 """Mock response.read.""" 

746 return FAKE_RES_DETAIL_DATA_LOGIN 

747 

748 

749class FakeSpecificPoolInfoResponse(object): 

750 """Fake pool info response.""" 

751 

752 status = 'fackStatus' 

753 

754 def read(self): 

755 """Mock response.read.""" 

756 return FAKE_RES_DETAIL_DATA_SPECIFIC_POOL_INFO 

757 

758 

759class FakeShareInfoResponse(object): 

760 """Fake pool info response.""" 

761 

762 status = 'fackStatus' 

763 

764 def read(self): 

765 """Mock response.read.""" 

766 return FAKE_RES_DETAIL_DATA_SHARE_INFO 

767 

768 

769class FakeSnapshotInfoResponse(object): 

770 """Fake pool info response.""" 

771 

772 status = 'fackStatus' 

773 

774 def read(self): 

775 """Mock response.read.""" 

776 return FAKE_RES_DETAIL_DATA_SNAPSHOT 

777 

778 

779class FakeSpecificVolInfoResponse(object): 

780 """Fake pool info response.""" 

781 

782 status = 'fackStatus' 

783 

784 def read(self): 

785 """Mock response.read.""" 

786 return FAKE_RES_DETAIL_DATA_VOLUME_INFO 

787 

788 

789class FakeCreateSnapshotResponse(object): 

790 """Fake pool info response.""" 

791 

792 status = 'fackStatus' 

793 

794 def read(self): 

795 """Mock response.read.""" 

796 return FAKE_RES_DETAIL_DATA_CREATE_SNAPSHOT