Best Python code snippet using assertpy_python
u1fsfsm.py
Source:u1fsfsm.py
1"""This is a generated python file"""2# make pylint accept this3# pylint: disable-msg=C03014state_machine = {'events': {u'AQ_DIR_DELETE_ERROR': [{'ACTION': u'md.create(path=path, uuid=uuid, type=type) aq.query(uuid=uuid)',5 'ACTION_FUNC': u'',6 'COMMENTS': u'the user deleted something we couldnt delete from the server. Re create.',7 'PARAMETERS': {u'hash_eq_local_hash': u'NA',8 u'hash_eq_server_hash': u'NA',9 u'not_authorized': u'T',10 u'not_available': u'F'},11 'STATE': {u'changed': u'NA',12 u'has_metadata': u'F',13 u'is_directory': u'NA'},14 'STATE_OUT': {u'changed': u'NONE',15 u'has_metadata': u'T',16 u'is_directory': u'T'}},17 {'ACTION': u'md.create(path=path, uuid=uuid, type=type) aq.query(uuid=uuid)',18 'ACTION_FUNC': u'',19 'COMMENTS': u'the user deleted something we couldnt delete from the server. Re create.',20 'PARAMETERS': {u'hash_eq_local_hash': u'NA',21 u'hash_eq_server_hash': u'NA',22 u'not_authorized': u'F',23 u'not_available': u'T'},24 'STATE': {u'changed': u'NA',25 u'has_metadata': u'F',26 u'is_directory': u'NA'},27 'STATE_OUT': {u'changed': u'NONE',28 u'has_metadata': u'T',29 u'is_directory': u'T'}},30 {'ACTION': u'NA',31 'ACTION_FUNC': u'',32 'COMMENTS': u'',33 'PARAMETERS': {u'hash_eq_local_hash': u'NA',34 u'hash_eq_server_hash': u'NA',35 u'not_authorized': u'NA',36 u'not_available': u'*'},37 'STATE': {u'changed': u'NA',38 u'has_metadata': u'F',39 u'is_directory': u'NA'},40 'STATE_OUT': {u'changed': u'*',41 u'has_metadata': u'*',42 u'is_directory': u'*'}},43 {'ACTION': u'NA',44 'ACTION_FUNC': u'',45 'COMMENTS': u'',46 'PARAMETERS': {u'hash_eq_local_hash': u'NA',47 u'hash_eq_server_hash': u'NA',48 u'not_authorized': u'*',49 u'not_available': u'NA'},50 'STATE': {u'changed': u'NA',51 u'has_metadata': u'F',52 u'is_directory': u'NA'},53 'STATE_OUT': {u'changed': u'*',54 u'has_metadata': u'*',55 u'is_directory': u'*'}},56 {'ACTION': u'NA',57 'ACTION_FUNC': u'',58 'COMMENTS': u'',59 'PARAMETERS': {u'hash_eq_local_hash': u'NA',60 u'hash_eq_server_hash': u'NA',61 u'not_authorized': u'*',62 u'not_available': u'NA'},63 'STATE': {u'changed': u'*',64 u'has_metadata': u'T',65 u'is_directory': u'*'},66 'STATE_OUT': {u'changed': u'*',67 u'has_metadata': u'*',68 u'is_directory': u'*'}},69 {'ACTION': u'NA',70 'ACTION_FUNC': u'',71 'COMMENTS': u'',72 'PARAMETERS': {u'hash_eq_local_hash': u'NA',73 u'hash_eq_server_hash': u'NA',74 u'not_authorized': u'NA',75 u'not_available': u'*'},76 'STATE': {u'changed': u'*',77 u'has_metadata': u'T',78 u'is_directory': u'*'},79 'STATE_OUT': {u'changed': u'*',80 u'has_metadata': u'*',81 u'is_directory': u'*'}},82 {'ACTION': u'CONFLICT, recreate from deleted uuid',83 'ACTION_FUNC': u'',84 'COMMENTS': u'the user deleted something we could not delete from the server and replaced it with stuff. Move user files to conflict and re download stuff from the server',85 'PARAMETERS': {u'hash_eq_local_hash': u'NA',86 u'hash_eq_server_hash': u'NA',87 u'not_authorized': u'F',88 u'not_available': u'T'},89 'STATE': {u'changed': u'!SERVER',90 u'has_metadata': u'T',91 u'is_directory': u'*'},92 'STATE_OUT': {u'changed': u'NONE',93 u'has_metadata': u'T',94 u'is_directory': u'T'}},95 {'ACTION': u'DESPAIR',96 'ACTION_FUNC': u'',97 'COMMENTS': u'the user deleted something we could not delete from the server and replaced it with stuff. Move user files to conflict and re download stuff from the server',98 'PARAMETERS': {u'hash_eq_local_hash': u'NA',99 u'hash_eq_server_hash': u'NA',100 u'not_authorized': u'F',101 u'not_available': u'T'},102 'STATE': {u'changed': u'SERVER',103 u'has_metadata': u'T',104 u'is_directory': u'*'},105 'STATE_OUT': {u'changed': u'*',106 u'has_metadata': u'*',107 u'is_directory': u'*'}},108 {'ACTION': u'CONFLICT',109 'ACTION_FUNC': u'',110 'COMMENTS': u'the user deleted something we could not delete from the server and replaced it with stuff. Move user files to conflict and re download stuff from the server',111 'PARAMETERS': {u'hash_eq_local_hash': u'NA',112 u'hash_eq_server_hash': u'NA',113 u'not_authorized': u'T',114 u'not_available': u'F'},115 'STATE': {u'changed': u'*',116 u'has_metadata': u'T',117 u'is_directory': u'*'},118 'STATE_OUT': {u'changed': u'NONE',119 u'has_metadata': u'T',120 u'is_directory': u'T'}},121 {'ACTION': u'PANIC',122 'ACTION_FUNC': u'',123 'COMMENTS': u'',124 'PARAMETERS': {u'hash_eq_local_hash': u'NA',125 u'hash_eq_server_hash': u'NA',126 u'not_authorized': u'F',127 u'not_available': u'F'},128 'STATE': {u'changed': u'*',129 u'has_metadata': u'*',130 u'is_directory': u'*'},131 'STATE_OUT': {u'changed': u'NONE',132 u'has_metadata': u'T',133 u'is_directory': u'T'}},134 {'ACTION': u'NA',135 'ACTION_FUNC': u'',136 'COMMENTS': u'',137 'PARAMETERS': {u'hash_eq_local_hash': u'NA',138 u'hash_eq_server_hash': u'NA',139 u'not_authorized': u'T',140 u'not_available': u'T'},141 'STATE': {u'changed': u'*',142 u'has_metadata': u'*',143 u'is_directory': u'*'},144 'STATE_OUT': {u'changed': u'*',145 u'has_metadata': u'*',146 u'is_directory': u'*'}}],147 u'AQ_DIR_DELETE_OK': [{'ACTION': u'pass',148 'ACTION_FUNC': u'nothing',149 'COMMENTS': u'vanilla case',150 'PARAMETERS': {u'hash_eq_local_hash': u'NA',151 u'hash_eq_server_hash': u'NA',152 u'not_authorized': u'NA',153 u'not_available': u'NA'},154 'STATE': {u'changed': u'NA',155 u'has_metadata': u'F',156 u'is_directory': u'NA'},157 'STATE_OUT': {u'changed': u'=',158 u'has_metadata': u'=',159 u'is_directory': u'='}},160 {'ACTION': u'pass',161 'ACTION_FUNC': u'nothing',162 'COMMENTS': u'we deleted something the user recreated, someone else is taking care of uploading this changes',163 'PARAMETERS': {u'hash_eq_local_hash': u'NA',164 u'hash_eq_server_hash': u'NA',165 u'not_authorized': u'NA',166 u'not_available': u'NA'},167 'STATE': {u'changed': u'NONE',168 u'has_metadata': u'T',169 u'is_directory': u'T'},170 'STATE_OUT': {u'changed': u'=',171 u'has_metadata': u'=',172 u'is_directory': u'='}},173 {'ACTION': u'pass',174 'ACTION_FUNC': u'nothing',175 'COMMENTS': u'we deleted something the user recreated, someone else is taking care of uploading this changes',176 'PARAMETERS': {u'hash_eq_local_hash': u'NA',177 u'hash_eq_server_hash': u'NA',178 u'not_authorized': u'NA',179 u'not_available': u'NA'},180 'STATE': {u'changed': u'LOCAL',181 u'has_metadata': u'T',182 u'is_directory': u'T'},183 'STATE_OUT': {u'changed': u'=',184 u'has_metadata': u'=',185 u'is_directory': u'='}},186 {'ACTION': u'DESPAIR',187 'ACTION_FUNC': u'DESPAIR',188 'COMMENTS': u'somehow we lost ordering of stuff and we got a new file and changes since we tried to delete this file',189 'PARAMETERS': {u'hash_eq_local_hash': u'NA',190 u'hash_eq_server_hash': u'NA',191 u'not_authorized': u'NA',192 u'not_available': u'NA'},193 'STATE': {u'changed': u'SERVER',194 u'has_metadata': u'T',195 u'is_directory': u'*'},196 'STATE_OUT': {u'changed': u'*',197 u'has_metadata': u'*',198 u'is_directory': u'*'}},199 {'ACTION': u'pass',200 'ACTION_FUNC': u'nothing',201 'COMMENTS': u'',202 'PARAMETERS': {u'hash_eq_local_hash': u'NA',203 u'hash_eq_server_hash': u'NA',204 u'not_authorized': u'NA',205 u'not_available': u'NA'},206 'STATE': {u'changed': u'!SERVER',207 u'has_metadata': u'T',208 u'is_directory': u'F'},209 'STATE_OUT': {u'changed': u'=',210 u'has_metadata': u'=',211 u'is_directory': u'='}}],212 u'AQ_DIR_NEW_ERROR': [{'ACTION': u'pass',213 'ACTION_FUNC': u'release_marker_error',214 'COMMENTS': u'',215 'PARAMETERS': {u'hash_eq_local_hash': u'NA',216 u'hash_eq_server_hash': u'NA',217 u'not_authorized': u'*',218 u'not_available': u'*'},219 'STATE': {u'changed': u'*',220 u'has_metadata': u'F',221 u'is_directory': u'*'},222 'STATE_OUT': {u'changed': u'=',223 u'has_metadata': u'=',224 u'is_directory': u'='}},225 {'ACTION': u'CONFLICT',226 'ACTION_FUNC': u'filedir_error_in_creation',227 'COMMENTS': u'',228 'PARAMETERS': {u'hash_eq_local_hash': u'NA',229 u'hash_eq_server_hash': u'NA',230 u'not_authorized': u'*',231 u'not_available': u'*'},232 'STATE': {u'changed': u'*',233 u'has_metadata': u'*',234 u'is_directory': u'T'},235 'STATE_OUT': {u'changed': u'NA',236 u'has_metadata': u'F',237 u'is_directory': u'NA'}},238 {'ACTION': u'pass',239 'ACTION_FUNC': u'release_marker_error',240 'COMMENTS': u'',241 'PARAMETERS': {u'hash_eq_local_hash': u'NA',242 u'hash_eq_server_hash': u'NA',243 u'not_authorized': u'*',244 u'not_available': u'*'},245 'STATE': {u'changed': u'*',246 u'has_metadata': u'*',247 u'is_directory': u'F'},248 'STATE_OUT': {u'changed': u'=',249 u'has_metadata': u'=',250 u'is_directory': u'='}}],251 u'AQ_DIR_NEW_OK': [{'ACTION': u'aq.uuid_map.set(marker, new_id)',252 'ACTION_FUNC': u'release_marker_ok',253 'COMMENTS': u"it's a file now",254 'PARAMETERS': {u'hash_eq_local_hash': u'NA',255 u'hash_eq_server_hash': u'NA',256 u'not_authorized': u'NA',257 u'not_available': u'NA'},258 'STATE': {u'changed': u'*',259 u'has_metadata': u'T',260 u'is_directory': u'F'},261 'STATE_OUT': {u'changed': u'=',262 u'has_metadata': u'=',263 u'is_directory': u'='}},264 {'ACTION': u'aq.uuid_map.set(marker, new_id)',265 'ACTION_FUNC': u'release_marker_ok',266 'COMMENTS': u'the dir was now gone',267 'PARAMETERS': {u'hash_eq_local_hash': u'NA',268 u'hash_eq_server_hash': u'NA',269 u'not_authorized': u'NA',270 u'not_available': u'NA'},271 'STATE': {u'changed': u'NA',272 u'has_metadata': u'F',273 u'is_directory': u'NA'},274 'STATE_OUT': {u'changed': u'=',275 u'has_metadata': u'=',276 u'is_directory': u'='}},277 {'ACTION': u'md.set(mdid, server_uuid=server_uuid)\nPANIC',278 'ACTION_FUNC': u'DESPAIR',279 'COMMENTS': u'',280 'PARAMETERS': {u'hash_eq_local_hash': u'NA',281 u'hash_eq_server_hash': u'NA',282 u'not_authorized': u'NA',283 u'not_available': u'NA'},284 'STATE': {u'changed': u'SERVER',285 u'has_metadata': u'T',286 u'is_directory': u'T'},287 'STATE_OUT': {u'changed': u'NONE',288 u'has_metadata': u'T',289 u'is_directory': u'='}},290 {'ACTION': u'md.set(mdid, server_uuid=server_uuid)\nRESCAN',291 'ACTION_FUNC': u'new_local_dir_created',292 'COMMENTS': u'',293 'PARAMETERS': {u'hash_eq_local_hash': u'NA',294 u'hash_eq_server_hash': u'NA',295 u'not_authorized': u'NA',296 u'not_available': u'NA'},297 'STATE': {u'changed': u'NONE',298 u'has_metadata': u'T',299 u'is_directory': u'T'},300 'STATE_OUT': {u'changed': u'=',301 u'has_metadata': u'=',302 u'is_directory': u'='}}],303 u'AQ_DOWNLOAD_DOES_NOT_EXIST': [{'ACTION': u'',304 'ACTION_FUNC': u'delete_file',305 'COMMENTS': u"Directory doesn't exist anymore, remove it",306 'PARAMETERS': {u'hash_eq_local_hash': u'NA',307 u'hash_eq_server_hash': u'NA',308 u'not_authorized': u'NA',309 u'not_available': u'NA'},310 'STATE': {u'changed': u'*',311 u'has_metadata': u'T',312 u'is_directory': u'T'},313 'STATE_OUT': {u'changed': u'NA',314 u'has_metadata': u'F',315 u'is_directory': u'NA'}},316 {'ACTION': u'',317 'ACTION_FUNC': u'delete_file',318 'COMMENTS': u"File doesn't exist anymore, remove it",319 'PARAMETERS': {u'hash_eq_local_hash': u'NA',320 u'hash_eq_server_hash': u'NA',321 u'not_authorized': u'NA',322 u'not_available': u'NA'},323 'STATE': {u'changed': u'!LOCAL',324 u'has_metadata': u'T',325 u'is_directory': u'F'},326 'STATE_OUT': {u'changed': u'NA',327 u'has_metadata': u'F',328 u'is_directory': u'NA'}},329 {'ACTION': u'',330 'ACTION_FUNC': u'conflict_and_delete',331 'COMMENTS': u"File doesn't exist on server, but has local changes",332 'PARAMETERS': {u'hash_eq_local_hash': u'NA',333 u'hash_eq_server_hash': u'NA',334 u'not_authorized': u'NA',335 u'not_available': u'NA'},336 'STATE': {u'changed': u'LOCAL',337 u'has_metadata': u'T',338 u'is_directory': u'F'},339 'STATE_OUT': {u'changed': u'NA',340 u'has_metadata': u'F',341 u'is_directory': u'NA'}},342 {'ACTION': u'pass',343 'ACTION_FUNC': u'nothing',344 'COMMENTS': u'',345 'PARAMETERS': {u'hash_eq_local_hash': u'NA',346 u'hash_eq_server_hash': u'NA',347 u'not_authorized': u'NA',348 u'not_available': u'NA'},349 'STATE': {u'changed': u'*',350 u'has_metadata': u'F',351 u'is_directory': u'*'},352 'STATE_OUT': {u'changed': u'=',353 u'has_metadata': u'=',354 u'is_directory': u'='}}],355 u'AQ_DOWNLOAD_ERROR': [{'ACTION': u'md.remove_partial(uuid);',356 'ACTION_FUNC': u'remove_partial',357 'COMMENTS': u'error while downloading, remove the partial file',358 'PARAMETERS': {u'hash_eq_local_hash': u'*',359 u'hash_eq_server_hash': u'*',360 u'not_authorized': u'T',361 u'not_available': u'F'},362 'STATE': {u'changed': u'*',363 u'has_metadata': u'T',364 u'is_directory': u'*'},365 'STATE_OUT': {u'changed': u'NONE',366 u'has_metadata': u'=',367 u'is_directory': u'='}},368 {'ACTION': u'md.remove_partial(uuid);',369 'ACTION_FUNC': u'remove_partial',370 'COMMENTS': u'error while downloading, remove the partial file',371 'PARAMETERS': {u'hash_eq_local_hash': u'*',372 u'hash_eq_server_hash': u'*',373 u'not_authorized': u'F',374 u'not_available': u'T'},375 'STATE': {u'changed': u'*',376 u'has_metadata': u'T',377 u'is_directory': u'*'},378 'STATE_OUT': {u'changed': u'NONE',379 u'has_metadata': u'=',380 u'is_directory': u'='}},381 {'ACTION': u'NA',382 'ACTION_FUNC': u'',383 'COMMENTS': u'',384 'PARAMETERS': {u'hash_eq_local_hash': u'*',385 u'hash_eq_server_hash': u'*',386 u'not_authorized': u'T',387 u'not_available': u'T'},388 'STATE': {u'changed': u'*',389 u'has_metadata': u'T',390 u'is_directory': u'*'},391 'STATE_OUT': {u'changed': u'*',392 u'has_metadata': u'*',393 u'is_directory': u'*'}},394 {'ACTION': u'PANIC',395 'ACTION_FUNC': u'remove_partial',396 'COMMENTS': u'Should DESPAIR, but ATM we handle this in the handle_AQ_DOWNLOAD_ERROR as we have an extra error type returned by AQ when the .partial file is deleted by the user',397 'PARAMETERS': {u'hash_eq_local_hash': u'*',398 u'hash_eq_server_hash': u'*',399 u'not_authorized': u'F',400 u'not_available': u'F'},401 'STATE': {u'changed': u'*',402 u'has_metadata': u'T',403 u'is_directory': u'*'},404 'STATE_OUT': {u'changed': u'NONE',405 u'has_metadata': u'=',406 u'is_directory': u'='}},407 {'ACTION': u'NA',408 'ACTION_FUNC': u'',409 'COMMENTS': u'',410 'PARAMETERS': {u'hash_eq_local_hash': u'*',411 u'hash_eq_server_hash': u'*',412 u'not_authorized': u'*',413 u'not_available': u'NA'},414 'STATE': {u'changed': u'*',415 u'has_metadata': u'T',416 u'is_directory': u'*'},417 'STATE_OUT': {u'changed': u'*',418 u'has_metadata': u'*',419 u'is_directory': u'*'}},420 {'ACTION': u'NA',421 'ACTION_FUNC': u'',422 'COMMENTS': u'',423 'PARAMETERS': {u'hash_eq_local_hash': u'*',424 u'hash_eq_server_hash': u'*',425 u'not_authorized': u'NA',426 u'not_available': u'*'},427 'STATE': {u'changed': u'*',428 u'has_metadata': u'T',429 u'is_directory': u'*'},430 'STATE_OUT': {u'changed': u'*',431 u'has_metadata': u'*',432 u'is_directory': u'*'}},433 {'ACTION': u'pass',434 'ACTION_FUNC': u'nothing',435 'COMMENTS': u'',436 'PARAMETERS': {u'hash_eq_local_hash': u'*',437 u'hash_eq_server_hash': u'*',438 u'not_authorized': u'*',439 u'not_available': u'*'},440 'STATE': {u'changed': u'*',441 u'has_metadata': u'F',442 u'is_directory': u'*'},443 'STATE_OUT': {u'changed': u'=',444 u'has_metadata': u'=',445 u'is_directory': u'='}}],446 u'AQ_DOWNLOAD_FINISHED': [{'ACTION': u'NA',447 'ACTION_FUNC': u'',448 'COMMENTS': u'',449 'PARAMETERS': {u'hash_eq_local_hash': u'*',450 u'hash_eq_server_hash': u'NA',451 u'not_authorized': u'NA',452 u'not_available': u'NA'},453 'STATE': {u'changed': u'*',454 u'has_metadata': u'T',455 u'is_directory': u'*'},456 'STATE_OUT': {u'changed': u'=',457 u'has_metadata': u'=',458 u'is_directory': u'='}},459 {'ACTION': u'NA',460 'ACTION_FUNC': u'',461 'COMMENTS': u'',462 'PARAMETERS': {u'hash_eq_local_hash': u'NA',463 u'hash_eq_server_hash': u'*',464 u'not_authorized': u'NA',465 u'not_available': u'NA'},466 'STATE': {u'changed': u'*',467 u'has_metadata': u'T',468 u'is_directory': u'*'},469 'STATE_OUT': {u'changed': u'=',470 u'has_metadata': u'=',471 u'is_directory': u'='}},472 {'ACTION': u'pass',473 'ACTION_FUNC': u'nothing',474 'COMMENTS': u'file was removed while we where downloading',475 'PARAMETERS': {u'hash_eq_local_hash': u'*',476 u'hash_eq_server_hash': u'*',477 u'not_authorized': u'NA',478 u'not_available': u'NA'},479 'STATE': {u'changed': u'NA',480 u'has_metadata': u'F',481 u'is_directory': u'*'},482 'STATE_OUT': {u'changed': u'=',483 u'has_metadata': u'=',484 u'is_directory': u'='}},485 {'ACTION': u'pass',486 'ACTION_FUNC': u'nothing',487 'COMMENTS': u'cancelled by e.g. SV_HASH_NEW',488 'PARAMETERS': {u'hash_eq_local_hash': u'T',489 u'hash_eq_server_hash': u'T',490 u'not_authorized': u'NA',491 u'not_available': u'NA'},492 'STATE': {u'changed': u'NONE',493 u'has_metadata': u'T',494 u'is_directory': u'F'},495 'STATE_OUT': {u'changed': u'=',496 u'has_metadata': u'=',497 u'is_directory': u'='}},498 {'ACTION': u'NA',499 'ACTION_FUNC': u'',500 'COMMENTS': u'NONE, T, F is a falacy (NONE implies server_hash == local_hash)',501 'PARAMETERS': {u'hash_eq_local_hash': u'F',502 u'hash_eq_server_hash': u'T',503 u'not_authorized': u'NA',504 u'not_available': u'NA'},505 'STATE': {u'changed': u'NONE',506 u'has_metadata': u'T',507 u'is_directory': u'F'},508 'STATE_OUT': {u'changed': u'*',509 u'has_metadata': u'*',510 u'is_directory': u'*'}},511 {'ACTION': u'NA',512 'ACTION_FUNC': u'',513 'COMMENTS': u'NONE, F, T is a falacy (NONE implies server_hash == local_hash)',514 'PARAMETERS': {u'hash_eq_local_hash': u'T',515 u'hash_eq_server_hash': u'F',516 u'not_authorized': u'NA',517 u'not_available': u'NA'},518 'STATE': {u'changed': u'NONE',519 u'has_metadata': u'T',520 u'is_directory': u'F'},521 'STATE_OUT': {u'changed': u'*',522 u'has_metadata': u'*',523 u'is_directory': u'*'}},524 {'ACTION': u'pass',525 'ACTION_FUNC': u'nothing',526 'COMMENTS': u'cancelled by e.g. SV_HASH_NEW',527 'PARAMETERS': {u'hash_eq_local_hash': u'F',528 u'hash_eq_server_hash': u'F',529 u'not_authorized': u'NA',530 u'not_available': u'NA'},531 'STATE': {u'changed': u'NONE',532 u'has_metadata': u'T',533 u'is_directory': u'F'},534 'STATE_OUT': {u'changed': u'=',535 u'has_metadata': u'=',536 u'is_directory': u'='}},537 {'ACTION': u'NA',538 'ACTION_FUNC': u'',539 'COMMENTS': u'SERVER, T, T is a falacy (SERVER implies server_hash != local_hash)',540 'PARAMETERS': {u'hash_eq_local_hash': u'T',541 u'hash_eq_server_hash': u'T',542 u'not_authorized': u'NA',543 u'not_available': u'NA'},544 'STATE': {u'changed': u'SERVER',545 u'has_metadata': u'T',546 u'is_directory': u'F'},547 'STATE_OUT': {u'changed': u'*',548 u'has_metadata': u'*',549 u'is_directory': u'*'}},550 {'ACTION': u'md.commit_partial(uuid, local_hash=hash)',551 'ACTION_FUNC': u'commit_file',552 'COMMENTS': u'this is the vainilla case',553 'PARAMETERS': {u'hash_eq_local_hash': u'F',554 u'hash_eq_server_hash': u'T',555 u'not_authorized': u'NA',556 u'not_available': u'NA'},557 'STATE': {u'changed': u'SERVER',558 u'has_metadata': u'T',559 u'is_directory': u'F'},560 'STATE_OUT': {u'changed': u'NONE',561 u'has_metadata': u'=',562 u'is_directory': u'='}},563 {'ACTION': u'',564 'ACTION_FUNC': u'nothing',565 'COMMENTS': u'not what we want',566 'PARAMETERS': {u'hash_eq_local_hash': u'T',567 u'hash_eq_server_hash': u'F',568 u'not_authorized': u'NA',569 u'not_available': u'NA'},570 'STATE': {u'changed': u'SERVER',571 u'has_metadata': u'T',572 u'is_directory': u'F'},573 'STATE_OUT': {u'changed': u'LOCAL',574 u'has_metadata': u'=',575 u'is_directory': u'='}},576 {'ACTION': u'pass',577 'ACTION_FUNC': u'nothing',578 'COMMENTS': u'another download is already in progress',579 'PARAMETERS': {u'hash_eq_local_hash': u'F',580 u'hash_eq_server_hash': u'F',581 u'not_authorized': u'NA',582 u'not_available': u'NA'},583 'STATE': {u'changed': u'SERVER',584 u'has_metadata': u'T',585 u'is_directory': u'F'},586 'STATE_OUT': {u'changed': u'=',587 u'has_metadata': u'=',588 u'is_directory': u'='}},589 {'ACTION': u'NA',590 'ACTION_FUNC': u'',591 'COMMENTS': u'LOCAL, T, T is a falacy (LOCAL implies server_hash != local_hash)',592 'PARAMETERS': {u'hash_eq_local_hash': u'T',593 u'hash_eq_server_hash': u'T',594 u'not_authorized': u'NA',595 u'not_available': u'NA'},596 'STATE': {u'changed': u'LOCAL',597 u'has_metadata': u'T',598 u'is_directory': u'F'},599 'STATE_OUT': {u'changed': u'*',600 u'has_metadata': u'*',601 u'is_directory': u'*'}},602 {'ACTION': u'pass',603 'ACTION_FUNC': u'nothing',604 'COMMENTS': u'cancelled by e.g. SV_HASH_NEW',605 'PARAMETERS': {u'hash_eq_local_hash': u'F',606 u'hash_eq_server_hash': u'T',607 u'not_authorized': u'NA',608 u'not_available': u'NA'},609 'STATE': {u'changed': u'LOCAL',610 u'has_metadata': u'T',611 u'is_directory': u'F'},612 'STATE_OUT': {u'changed': u'=',613 u'has_metadata': u'=',614 u'is_directory': u'='}},615 {'ACTION': u'pass',616 'ACTION_FUNC': u'nothing',617 'COMMENTS': u'cancelled by e.g. SV_HASH_NEW',618 'PARAMETERS': {u'hash_eq_local_hash': u'T',619 u'hash_eq_server_hash': u'F',620 u'not_authorized': u'NA',621 u'not_available': u'NA'},622 'STATE': {u'changed': u'LOCAL',623 u'has_metadata': u'T',624 u'is_directory': u'F'},625 'STATE_OUT': {u'changed': u'=',626 u'has_metadata': u'=',627 u'is_directory': u'='}},628 {'ACTION': u'pass',629 'ACTION_FUNC': u'nothing',630 'COMMENTS': u'cancelled by e.g. SV_HASH_NEW',631 'PARAMETERS': {u'hash_eq_local_hash': u'F',632 u'hash_eq_server_hash': u'F',633 u'not_authorized': u'NA',634 u'not_available': u'NA'},635 'STATE': {u'changed': u'LOCAL',636 u'has_metadata': u'T',637 u'is_directory': u'F'},638 'STATE_OUT': {u'changed': u'=',639 u'has_metadata': u'=',640 u'is_directory': u'='}},641 {'ACTION': u'pass',642 'ACTION_FUNC': u'DESPAIR',643 'COMMENTS': u'we dont download directories anymore',644 'PARAMETERS': {u'hash_eq_local_hash': u'!NA',645 u'hash_eq_server_hash': u'!NA',646 u'not_authorized': u'NA',647 u'not_available': u'NA'},648 'STATE': {u'changed': u'NONE',649 u'has_metadata': u'T',650 u'is_directory': u'T'},651 'STATE_OUT': {u'changed': u'=',652 u'has_metadata': u'=',653 u'is_directory': u'='}},654 {'ACTION': u'merge_from_partial(uuid)',655 'ACTION_FUNC': u'DESPAIR',656 'COMMENTS': u'we dont download directories anymore',657 'PARAMETERS': {u'hash_eq_local_hash': u'!NA',658 u'hash_eq_server_hash': u'T',659 u'not_authorized': u'NA',660 u'not_available': u'NA'},661 'STATE': {u'changed': u'SERVER',662 u'has_metadata': u'T',663 u'is_directory': u'T'},664 'STATE_OUT': {u'changed': u'NONE',665 u'has_metadata': u'=',666 u'is_directory': u'='}},667 {'ACTION': u'pass',668 'ACTION_FUNC': u'DESPAIR',669 'COMMENTS': u'we dont download directories anymore',670 'PARAMETERS': {u'hash_eq_local_hash': u'!NA',671 u'hash_eq_server_hash': u'F',672 u'not_authorized': u'NA',673 u'not_available': u'NA'},674 'STATE': {u'changed': u'SERVER',675 u'has_metadata': u'T',676 u'is_directory': u'T'},677 'STATE_OUT': {u'changed': u'SERVER',678 u'has_metadata': u'=',679 u'is_directory': u'='}}],680 u'AQ_FILE_DELETE_ERROR': [{'ACTION': u'md.create(path=path, uuid=uuid, type=type) aq.query(uuid=uuid)',681 'ACTION_FUNC': u'',682 'COMMENTS': u'the user deleted something we couldnt delete from the server. Re create.',683 'PARAMETERS': {u'hash_eq_local_hash': u'NA',684 u'hash_eq_server_hash': u'NA',685 u'not_authorized': u'T',686 u'not_available': u'F'},687 'STATE': {u'changed': u'NA',688 u'has_metadata': u'F',689 u'is_directory': u'NA'},690 'STATE_OUT': {u'changed': u'NONE',691 u'has_metadata': u'T',692 u'is_directory': u'F'}},693 {'ACTION': u'md.create(path=path, uuid=uuid, type=type) aq.query(uuid=uuid)',694 'ACTION_FUNC': u'',695 'COMMENTS': u'the user deleted something we couldnt delete from the server. Re create.',696 'PARAMETERS': {u'hash_eq_local_hash': u'NA',697 u'hash_eq_server_hash': u'NA',698 u'not_authorized': u'F',699 u'not_available': u'T'},700 'STATE': {u'changed': u'NA',701 u'has_metadata': u'F',702 u'is_directory': u'NA'},703 'STATE_OUT': {u'changed': u'NONE',704 u'has_metadata': u'T',705 u'is_directory': u'='}},706 {'ACTION': u'NA',707 'ACTION_FUNC': u'',708 'COMMENTS': u'',709 'PARAMETERS': {u'hash_eq_local_hash': u'NA',710 u'hash_eq_server_hash': u'NA',711 u'not_authorized': u'NA',712 u'not_available': u'*'},713 'STATE': {u'changed': u'NA',714 u'has_metadata': u'F',715 u'is_directory': u'NA'},716 'STATE_OUT': {u'changed': u'*',717 u'has_metadata': u'*',718 u'is_directory': u'*'}},719 {'ACTION': u'NA',720 'ACTION_FUNC': u'',721 'COMMENTS': u'',722 'PARAMETERS': {u'hash_eq_local_hash': u'NA',723 u'hash_eq_server_hash': u'NA',724 u'not_authorized': u'*',725 u'not_available': u'NA'},726 'STATE': {u'changed': u'NA',727 u'has_metadata': u'F',728 u'is_directory': u'NA'},729 'STATE_OUT': {u'changed': u'*',730 u'has_metadata': u'*',731 u'is_directory': u'*'}},732 {'ACTION': u'NA',733 'ACTION_FUNC': u'',734 'COMMENTS': u'',735 'PARAMETERS': {u'hash_eq_local_hash': u'NA',736 u'hash_eq_server_hash': u'NA',737 u'not_authorized': u'*',738 u'not_available': u'NA'},739 'STATE': {u'changed': u'*',740 u'has_metadata': u'T',741 u'is_directory': u'*'},742 'STATE_OUT': {u'changed': u'*',743 u'has_metadata': u'*',744 u'is_directory': u'*'}},745 {'ACTION': u'NA',746 'ACTION_FUNC': u'',747 'COMMENTS': u'',748 'PARAMETERS': {u'hash_eq_local_hash': u'NA',749 u'hash_eq_server_hash': u'NA',750 u'not_authorized': u'NA',751 u'not_available': u'*'},752 'STATE': {u'changed': u'*',753 u'has_metadata': u'T',754 u'is_directory': u'*'},755 'STATE_OUT': {u'changed': u'*',756 u'has_metadata': u'*',757 u'is_directory': u'*'}},758 {'ACTION': u'CONFLICT, recreate from deleted uuid',759 'ACTION_FUNC': u'',760 'COMMENTS': u'the user deleted something we could not delete from the server and replaced it with stuff. Move user files to conflict and re download stuff from the server',761 'PARAMETERS': {u'hash_eq_local_hash': u'NA',762 u'hash_eq_server_hash': u'NA',763 u'not_authorized': u'F',764 u'not_available': u'T'},765 'STATE': {u'changed': u'!SERVER',766 u'has_metadata': u'T',767 u'is_directory': u'*'},768 'STATE_OUT': {u'changed': u'NONE',769 u'has_metadata': u'T',770 u'is_directory': u'F'}},771 {'ACTION': u'DESPAIR',772 'ACTION_FUNC': u'DESPAIR',773 'COMMENTS': u'the user deleted something we could not delete from the server and replaced it with stuff. Move user files to conflict and re download stuff from the server',774 'PARAMETERS': {u'hash_eq_local_hash': u'NA',775 u'hash_eq_server_hash': u'NA',776 u'not_authorized': u'F',777 u'not_available': u'T'},778 'STATE': {u'changed': u'SERVER',779 u'has_metadata': u'T',780 u'is_directory': u'*'},781 'STATE_OUT': {u'changed': u'*',782 u'has_metadata': u'*',783 u'is_directory': u'*'}},784 {'ACTION': u'CONFLICT',785 'ACTION_FUNC': u'',786 'COMMENTS': u'the user deleted something we could not delete from the server and replaced it with stuff. Move user files to conflict and re download stuff from the server',787 'PARAMETERS': {u'hash_eq_local_hash': u'NA',788 u'hash_eq_server_hash': u'NA',789 u'not_authorized': u'T',790 u'not_available': u'F'},791 'STATE': {u'changed': u'*',792 u'has_metadata': u'T',793 u'is_directory': u'*'},794 'STATE_OUT': {u'changed': u'NONE',795 u'has_metadata': u'T',796 u'is_directory': u'T'}},797 {'ACTION': u'PANIC',798 'ACTION_FUNC': u'',799 'COMMENTS': u'',800 'PARAMETERS': {u'hash_eq_local_hash': u'NA',801 u'hash_eq_server_hash': u'NA',802 u'not_authorized': u'F',803 u'not_available': u'F'},804 'STATE': {u'changed': u'*',805 u'has_metadata': u'*',806 u'is_directory': u'*'},807 'STATE_OUT': {u'changed': u'NONE',808 u'has_metadata': u'T',809 u'is_directory': u'F'}},810 {'ACTION': u'NA',811 'ACTION_FUNC': u'',812 'COMMENTS': u'',813 'PARAMETERS': {u'hash_eq_local_hash': u'NA',814 u'hash_eq_server_hash': u'NA',815 u'not_authorized': u'T',816 u'not_available': u'T'},817 'STATE': {u'changed': u'*',818 u'has_metadata': u'*',819 u'is_directory': u'*'},820 'STATE_OUT': {u'changed': u'*',821 u'has_metadata': u'*',822 u'is_directory': u'*'}}],823 u'AQ_FILE_DELETE_OK': [{'ACTION': u'pass',824 'ACTION_FUNC': u'nothing',825 'COMMENTS': u'vanilla case',826 'PARAMETERS': {u'hash_eq_local_hash': u'NA',827 u'hash_eq_server_hash': u'NA',828 u'not_authorized': u'NA',829 u'not_available': u'NA'},830 'STATE': {u'changed': u'NA',831 u'has_metadata': u'F',832 u'is_directory': u'NA'},833 'STATE_OUT': {u'changed': u'=',834 u'has_metadata': u'=',835 u'is_directory': u'='}},836 {'ACTION': u'pass',837 'ACTION_FUNC': u'nothing',838 'COMMENTS': u'/c',839 'PARAMETERS': {u'hash_eq_local_hash': u'NA',840 u'hash_eq_server_hash': u'NA',841 u'not_authorized': u'NA',842 u'not_available': u'NA'},843 'STATE': {u'changed': u'NONE',844 u'has_metadata': u'T',845 u'is_directory': u'F'},846 'STATE_OUT': {u'changed': u'=',847 u'has_metadata': u'=',848 u'is_directory': u'='}},849 {'ACTION': u'pass',850 'ACTION_FUNC': u'nothing',851 'COMMENTS': u'we deleted something the user recreated, someone else is taking care of uploading this changes',852 'PARAMETERS': {u'hash_eq_local_hash': u'NA',853 u'hash_eq_server_hash': u'NA',854 u'not_authorized': u'NA',855 u'not_available': u'NA'},856 'STATE': {u'changed': u'LOCAL',857 u'has_metadata': u'T',858 u'is_directory': u'F'},859 'STATE_OUT': {u'changed': u'=',860 u'has_metadata': u'=',861 u'is_directory': u'='}},862 {'ACTION': u'DESPAIR',863 'ACTION_FUNC': u'DESPAIR',864 'COMMENTS': u'somehow we lost ordering of stuff and we got a new file and changes since we tried to delete this file',865 'PARAMETERS': {u'hash_eq_local_hash': u'NA',866 u'hash_eq_server_hash': u'NA',867 u'not_authorized': u'NA',868 u'not_available': u'NA'},869 'STATE': {u'changed': u'SERVER',870 u'has_metadata': u'T',871 u'is_directory': u'*'},872 'STATE_OUT': {u'changed': u'*',873 u'has_metadata': u'*',874 u'is_directory': u'*'}},875 {'ACTION': u'pass',876 'ACTION_FUNC': u'nothing',877 'COMMENTS': u'',878 'PARAMETERS': {u'hash_eq_local_hash': u'NA',879 u'hash_eq_server_hash': u'NA',880 u'not_authorized': u'NA',881 u'not_available': u'NA'},882 'STATE': {u'changed': u'!SERVER',883 u'has_metadata': u'T',884 u'is_directory': u'T'},885 'STATE_OUT': {u'changed': u'=',886 u'has_metadata': u'=',887 u'is_directory': u'='}}],888 u'AQ_FILE_MOVE_OK': [{'ACTION': u'',889 'ACTION_FUNC': u'nothing',890 'COMMENTS': u'deleted locally',891 'PARAMETERS': {u'hash_eq_local_hash': u'NA',892 u'hash_eq_server_hash': u'NA',893 u'not_authorized': u'NA',894 u'not_available': u'NA'},895 'STATE': {u'changed': u'NA',896 u'has_metadata': u'F',897 u'is_directory': u'NA'},898 'STATE_OUT': {u'changed': u'*',899 u'has_metadata': u'*',900 u'is_directory': u'*'}},901 {'ACTION': u'',902 'ACTION_FUNC': u'nothing',903 'COMMENTS': u'vanilla case',904 'PARAMETERS': {u'hash_eq_local_hash': u'NA',905 u'hash_eq_server_hash': u'NA',906 u'not_authorized': u'NA',907 u'not_available': u'NA'},908 'STATE': {u'changed': u'*',909 u'has_metadata': u'T',910 u'is_directory': u'*'},911 'STATE_OUT': {u'changed': u'=',912 u'has_metadata': u'T',913 u'is_directory': u'='}}],914 u'AQ_FILE_NEW_ERROR': [{'ACTION': u'pass',915 'ACTION_FUNC': u'release_marker_error',916 'COMMENTS': u'',917 'PARAMETERS': {u'hash_eq_local_hash': u'NA',918 u'hash_eq_server_hash': u'NA',919 u'not_authorized': u'*',920 u'not_available': u'*'},921 'STATE': {u'changed': u'NA',922 u'has_metadata': u'F',923 u'is_directory': u'NA'},924 'STATE_OUT': {u'changed': u'=',925 u'has_metadata': u'=',926 u'is_directory': u'='}},927 {'ACTION': u'CONFLICT',928 'ACTION_FUNC': u'filedir_error_in_creation',929 'COMMENTS': u'',930 'PARAMETERS': {u'hash_eq_local_hash': u'NA',931 u'hash_eq_server_hash': u'NA',932 u'not_authorized': u'*',933 u'not_available': u'*'},934 'STATE': {u'changed': u'*',935 u'has_metadata': u'*',936 u'is_directory': u'F'},937 'STATE_OUT': {u'changed': u'NA',938 u'has_metadata': u'F',939 u'is_directory': u'NA'}},940 {'ACTION': u'pass',941 'ACTION_FUNC': u'release_marker_error',942 'COMMENTS': u'',943 'PARAMETERS': {u'hash_eq_local_hash': u'NA',944 u'hash_eq_server_hash': u'NA',945 u'not_authorized': u'*',946 u'not_available': u'*'},947 'STATE': {u'changed': u'*',948 u'has_metadata': u'*',949 u'is_directory': u'T'},950 'STATE_OUT': {u'changed': u'=',951 u'has_metadata': u'=',952 u'is_directory': u'='}}],953 u'AQ_FILE_NEW_OK': [{'ACTION': u'md.set(mdid, server_uuid=server_uuid)',954 'ACTION_FUNC': u'new_local_file_created',955 'COMMENTS': u'',956 'PARAMETERS': {u'hash_eq_local_hash': u'NA',957 u'hash_eq_server_hash': u'NA',958 u'not_authorized': u'NA',959 u'not_available': u'NA'},960 'STATE': {u'changed': u'NONE',961 u'has_metadata': u'T',962 u'is_directory': u'F'},963 'STATE_OUT': {u'changed': u'=',964 u'has_metadata': u'=',965 u'is_directory': u'='}},966 {'ACTION': u'md.set(mdid, server_uuid=server_uuid)',967 'ACTION_FUNC': u'new_local_file_created',968 'COMMENTS': u'we got IN_FILE_CHANGED and HQ_HASH_NEW between IN_FILE_NEW and AQ_FILE_NEW_OK',969 'PARAMETERS': {u'hash_eq_local_hash': u'NA',970 u'hash_eq_server_hash': u'NA',971 u'not_authorized': u'NA',972 u'not_available': u'NA'},973 'STATE': {u'changed': u'LOCAL',974 u'has_metadata': u'T',975 u'is_directory': u'F'},976 'STATE_OUT': {u'changed': u'=',977 u'has_metadata': u'=',978 u'is_directory': u'='}},979 {'ACTION': u'aq.uuid_map.set(marker, new_id)',980 'ACTION_FUNC': u'release_marker_ok',981 'COMMENTS': u'file deleted locally',982 'PARAMETERS': {u'hash_eq_local_hash': u'NA',983 u'hash_eq_server_hash': u'NA',984 u'not_authorized': u'NA',985 u'not_available': u'NA'},986 'STATE': {u'changed': u'NA',987 u'has_metadata': u'F',988 u'is_directory': u'NA'},989 'STATE_OUT': {u'changed': u'=',990 u'has_metadata': u'=',991 u'is_directory': u'='}},992 {'ACTION': u"Node got node_id with a SV_FILE_NEW and now it's uploading something",993 'ACTION_FUNC': u'nothing',994 'COMMENTS': u'',995 'PARAMETERS': {u'hash_eq_local_hash': u'NA',996 u'hash_eq_server_hash': u'NA',997 u'not_authorized': u'NA',998 u'not_available': u'NA'},999 'STATE': {u'changed': u'SERVER',1000 u'has_metadata': u'T',1001 u'is_directory': u'F'},1002 'STATE_OUT': {u'changed': u'=',1003 u'has_metadata': u'=',1004 u'is_directory': u'='}},1005 {'ACTION': u'aq.uuid_map.set(marker, new_id)',1006 'ACTION_FUNC': u'release_marker_ok',1007 'COMMENTS': u"it's a directory now",1008 'PARAMETERS': {u'hash_eq_local_hash': u'NA',1009 u'hash_eq_server_hash': u'NA',1010 u'not_authorized': u'NA',1011 u'not_available': u'NA'},1012 'STATE': {u'changed': u'*',1013 u'has_metadata': u'T',1014 u'is_directory': u'T'},1015 'STATE_OUT': {u'changed': u'=',1016 u'has_metadata': u'=',1017 u'is_directory': u'='}}],1018 u'AQ_MOVE_ERROR': [{'ACTION': u'md.create(path=path, uuid=target_uuid, type=type)\naq.query(uuid=target_uuid)',1019 'ACTION_FUNC': u'clean_move_limbo',1020 'COMMENTS': u'deleted after local move and move failed on server. ',1021 'PARAMETERS': {u'hash_eq_local_hash': u'NA',1022 u'hash_eq_server_hash': u'NA',1023 u'not_authorized': u'NA',1024 u'not_available': u'NA'},1025 'STATE': {u'changed': u'NA',1026 u'has_metadata': u'F',1027 u'is_directory': u'NA'},1028 'STATE_OUT': {u'changed': u'=',1029 u'has_metadata': u'=',1030 u'is_directory': u'='}},1031 {'ACTION': u'move file to conflict\nquery(uuid=source.parent)\nquery(uuid=dest.parent)\n',1032 'ACTION_FUNC': u'clean_move_limbo',1033 'COMMENTS': u'something bad happened. Conflict and rescan',1034 'PARAMETERS': {u'hash_eq_local_hash': u'NA',1035 u'hash_eq_server_hash': u'NA',1036 u'not_authorized': u'NA',1037 u'not_available': u'NA'},1038 'STATE': {u'changed': u'*',1039 u'has_metadata': u'T',1040 u'is_directory': u'*'},1041 'STATE_OUT': {u'changed': u'=',1042 u'has_metadata': u'=',1043 u'is_directory': u'='}}],1044 u'AQ_MOVE_OK': [{'ACTION': u'pass',1045 'ACTION_FUNC': u'clean_move_limbo',1046 'COMMENTS': u'deleted after move',1047 'PARAMETERS': {u'hash_eq_local_hash': u'NA',1048 u'hash_eq_server_hash': u'NA',1049 u'not_authorized': u'NA',1050 u'not_available': u'NA'},1051 'STATE': {u'changed': u'NA',1052 u'has_metadata': u'F',1053 u'is_directory': u'NA'},1054 'STATE_OUT': {u'changed': u'=',1055 u'has_metadata': u'=',1056 u'is_directory': u'='}},1057 {'ACTION': u'pass',1058 'ACTION_FUNC': u'clean_move_limbo',1059 'COMMENTS': u'everything good',1060 'PARAMETERS': {u'hash_eq_local_hash': u'NA',1061 u'hash_eq_server_hash': u'NA',1062 u'not_authorized': u'NA',1063 u'not_available': u'NA'},1064 'STATE': {u'changed': u'*',1065 u'has_metadata': u'T',1066 u'is_directory': u'*'},1067 'STATE_OUT': {u'changed': u'=',1068 u'has_metadata': u'=',1069 u'is_directory': u'='}}],1070 u'AQ_UNLINK_ERROR': [{'ACTION': u'remove the node from trash',1071 'ACTION_FUNC': u'remove_trash',1072 'COMMENTS': u'',1073 'PARAMETERS': {u'hash_eq_local_hash': u'NA',1074 u'hash_eq_server_hash': u'NA',1075 u'not_authorized': u'NA',1076 u'not_available': u'NA'},1077 'STATE': {u'changed': u'*',1078 u'has_metadata': u'*',1079 u'is_directory': u'*'},1080 'STATE_OUT': {u'changed': u'=',1081 u'has_metadata': u'=',1082 u'is_directory': u'='}}],1083 u'AQ_UNLINK_OK': [{'ACTION': u'remove the node from trash',1084 'ACTION_FUNC': u'remove_trash',1085 'COMMENTS': u'',1086 'PARAMETERS': {u'hash_eq_local_hash': u'NA',1087 u'hash_eq_server_hash': u'NA',1088 u'not_authorized': u'NA',1089 u'not_available': u'NA'},1090 'STATE': {u'changed': u'*',1091 u'has_metadata': u'*',1092 u'is_directory': u'*'},1093 'STATE_OUT': {u'changed': u'=',1094 u'has_metadata': u'=',1095 u'is_directory': u'='}}],1096 u'AQ_UPLOAD_ERROR': [{'ACTION': u'pass',1097 'ACTION_FUNC': u'nothing',1098 'COMMENTS': u'',1099 'PARAMETERS': {u'hash_eq_local_hash': u'*',1100 u'hash_eq_server_hash': u'*',1101 u'not_authorized': u'*',1102 u'not_available': u'*'},1103 'STATE': {u'changed': u'NA',1104 u'has_metadata': u'F',1105 u'is_directory': u'NA'},1106 'STATE_OUT': {u'changed': u'=',1107 u'has_metadata': u'=',1108 u'is_directory': u'='}},1109 {'ACTION': u'NA',1110 'ACTION_FUNC': u'',1111 'COMMENTS': u'',1112 'PARAMETERS': {u'hash_eq_local_hash': u'*',1113 u'hash_eq_server_hash': u'*',1114 u'not_authorized': u'*',1115 u'not_available': u'NA'},1116 'STATE': {u'changed': u'*',1117 u'has_metadata': u'T',1118 u'is_directory': u'*'},1119 'STATE_OUT': {u'changed': u'*',1120 u'has_metadata': u'*',1121 u'is_directory': u'*'}},1122 {'ACTION': u'NA',1123 'ACTION_FUNC': u'',1124 'COMMENTS': u'',1125 'PARAMETERS': {u'hash_eq_local_hash': u'*',1126 u'hash_eq_server_hash': u'*',1127 u'not_authorized': u'NA',1128 u'not_available': u'*'},1129 'STATE': {u'changed': u'*',1130 u'has_metadata': u'T',1131 u'is_directory': u'*'},1132 'STATE_OUT': {u'changed': u'*',1133 u'has_metadata': u'*',1134 u'is_directory': u'*'}},1135 {'ACTION': u'',1136 'ACTION_FUNC': u'nothing',1137 'COMMENTS': u'',1138 'PARAMETERS': {u'hash_eq_local_hash': u'*',1139 u'hash_eq_server_hash': u'*',1140 u'not_authorized': u'F',1141 u'not_available': u'F'},1142 'STATE': {u'changed': u'*',1143 u'has_metadata': u'T',1144 u'is_directory': u'F'},1145 'STATE_OUT': {u'changed': u'=',1146 u'has_metadata': u'=',1147 u'is_directory': u'='}},1148 {'ACTION': u'NA',1149 'ACTION_FUNC': u'',1150 'COMMENTS': u'',1151 'PARAMETERS': {u'hash_eq_local_hash': u'*',1152 u'hash_eq_server_hash': u'*',1153 u'not_authorized': u'T',1154 u'not_available': u'T'},1155 'STATE': {u'changed': u'*',1156 u'has_metadata': u'T',1157 u'is_directory': u'F'},1158 'STATE_OUT': {u'changed': u'*',1159 u'has_metadata': u'*',1160 u'is_directory': u'*'}},1161 {'ACTION': u'pass',1162 'ACTION_FUNC': u'nothing',1163 'COMMENTS': u'',1164 'PARAMETERS': {u'hash_eq_local_hash': u'*',1165 u'hash_eq_server_hash': u'*',1166 u'not_authorized': u'F',1167 u'not_available': u'T'},1168 'STATE': {u'changed': u'*',1169 u'has_metadata': u'T',1170 u'is_directory': u'F'},1171 'STATE_OUT': {u'changed': u'=',1172 u'has_metadata': u'=',1173 u'is_directory': u'='}},1174 {'ACTION': u'pass',1175 'ACTION_FUNC': u'nothing',1176 'COMMENTS': u'',1177 'PARAMETERS': {u'hash_eq_local_hash': u'*',1178 u'hash_eq_server_hash': u'*',1179 u'not_authorized': u'T',1180 u'not_available': u'F'},1181 'STATE': {u'changed': u'*',1182 u'has_metadata': u'T',1183 u'is_directory': u'F'},1184 'STATE_OUT': {u'changed': u'=',1185 u'has_metadata': u'=',1186 u'is_directory': u'='}},1187 {'ACTION': u'DESPAIR',1188 'ACTION_FUNC': u'DESPAIR',1189 'COMMENTS': u'we never try to upload directories',1190 'PARAMETERS': {u'hash_eq_local_hash': u'*',1191 u'hash_eq_server_hash': u'*',1192 u'not_authorized': u'!NA',1193 u'not_available': u'!NA'},1194 'STATE': {u'changed': u'*',1195 u'has_metadata': u'T',1196 u'is_directory': u'T'},1197 'STATE_OUT': {u'changed': u'*',1198 u'has_metadata': u'*',1199 u'is_directory': u'*'}}],1200 u'AQ_UPLOAD_FINISHED': [{'ACTION': u'pass',1201 'ACTION_FUNC': u'nothing',1202 'COMMENTS': u'',1203 'PARAMETERS': {u'hash_eq_local_hash': u'*',1204 u'hash_eq_server_hash': u'*',1205 u'not_authorized': u'NA',1206 u'not_available': u'NA'},1207 'STATE': {u'changed': u'NA',1208 u'has_metadata': u'F',1209 u'is_directory': u'NA'},1210 'STATE_OUT': {u'changed': u'=',1211 u'has_metadata': u'=',1212 u'is_directory': u'='}},1213 {'ACTION': u'NA',1214 'ACTION_FUNC': u'',1215 'COMMENTS': u'',1216 'PARAMETERS': {u'hash_eq_local_hash': u'NA',1217 u'hash_eq_server_hash': u'*',1218 u'not_authorized': u'NA',1219 u'not_available': u'NA'},1220 'STATE': {u'changed': u'*',1221 u'has_metadata': u'T',1222 u'is_directory': u'F'},1223 'STATE_OUT': {u'changed': u'*',1224 u'has_metadata': u'*',1225 u'is_directory': u'*'}},1226 {'ACTION': u'NA',1227 'ACTION_FUNC': u'',1228 'COMMENTS': u'',1229 'PARAMETERS': {u'hash_eq_local_hash': u'*',1230 u'hash_eq_server_hash': u'NA',1231 u'not_authorized': u'NA',1232 u'not_available': u'NA'},1233 'STATE': {u'changed': u'*',1234 u'has_metadata': u'T',1235 u'is_directory': u'F'},1236 'STATE_OUT': {u'changed': u'*',1237 u'has_metadata': u'*',1238 u'is_directory': u'*'}},1239 {'ACTION': u'md.upload_finished(mdid, server_hash=hash)',1240 'ACTION_FUNC': u'commit_upload',1241 'COMMENTS': u'',1242 'PARAMETERS': {u'hash_eq_local_hash': u'T',1243 u'hash_eq_server_hash': u'T',1244 u'not_authorized': u'NA',1245 u'not_available': u'NA'},1246 'STATE': {u'changed': u'NONE',1247 u'has_metadata': u'T',1248 u'is_directory': u'F'},1249 'STATE_OUT': {u'changed': u'=',1250 u'has_metadata': u'=',1251 u'is_directory': u'='}},1252 {'ACTION': u'NA',1253 'ACTION_FUNC': u'',1254 'COMMENTS': u'',1255 'PARAMETERS': {u'hash_eq_local_hash': u'F',1256 u'hash_eq_server_hash': u'T',1257 u'not_authorized': u'NA',1258 u'not_available': u'NA'},1259 'STATE': {u'changed': u'NONE',1260 u'has_metadata': u'T',1261 u'is_directory': u'F'},1262 'STATE_OUT': {u'changed': u'*',1263 u'has_metadata': u'*',1264 u'is_directory': u'*'}},1265 {'ACTION': u'NA',1266 'ACTION_FUNC': u'',1267 'COMMENTS': u'',1268 'PARAMETERS': {u'hash_eq_local_hash': u'T',1269 u'hash_eq_server_hash': u'F',1270 u'not_authorized': u'NA',1271 u'not_available': u'NA'},1272 'STATE': {u'changed': u'NONE',1273 u'has_metadata': u'T',1274 u'is_directory': u'F'},1275 'STATE_OUT': {u'changed': u'*',1276 u'has_metadata': u'*',1277 u'is_directory': u'*'}},1278 {'ACTION': u'md.upload_finished(mdid, server_hash=hash)',1279 'ACTION_FUNC': u'commit_upload',1280 'COMMENTS': u'',1281 'PARAMETERS': {u'hash_eq_local_hash': u'F',1282 u'hash_eq_server_hash': u'F',1283 u'not_authorized': u'NA',1284 u'not_available': u'NA'},1285 'STATE': {u'changed': u'NONE',1286 u'has_metadata': u'T',1287 u'is_directory': u'F'},1288 'STATE_OUT': {u'changed': u'LOCAL',1289 u'has_metadata': u'=',1290 u'is_directory': u'='}},1291 {'ACTION': u'NA',1292 'ACTION_FUNC': u'',1293 'COMMENTS': u'',1294 'PARAMETERS': {u'hash_eq_local_hash': u'T',1295 u'hash_eq_server_hash': u'T',1296 u'not_authorized': u'NA',1297 u'not_available': u'NA'},1298 'STATE': {u'changed': u'SERVER',1299 u'has_metadata': u'T',1300 u'is_directory': u'F'},1301 'STATE_OUT': {u'changed': u'*',1302 u'has_metadata': u'*',1303 u'is_directory': u'*'}},1304 {'ACTION': u'NA',1305 'ACTION_FUNC': u'',1306 'COMMENTS': u'',1307 'PARAMETERS': {u'hash_eq_local_hash': u'T',1308 u'hash_eq_server_hash': u'T',1309 u'not_authorized': u'NA',1310 u'not_available': u'NA'},1311 'STATE': {u'changed': u'LOCAL',1312 u'has_metadata': u'T',1313 u'is_directory': u'F'},1314 'STATE_OUT': {u'changed': u'*',1315 u'has_metadata': u'*',1316 u'is_directory': u'*'}},1317 {'ACTION': u'md.upload_finished(mdid, server_hash=hash)',1318 'ACTION_FUNC': u'commit_upload',1319 'COMMENTS': u'',1320 'PARAMETERS': {u'hash_eq_local_hash': u'F',1321 u'hash_eq_server_hash': u'T',1322 u'not_authorized': u'NA',1323 u'not_available': u'NA'},1324 'STATE': {u'changed': u'SERVER',1325 u'has_metadata': u'T',1326 u'is_directory': u'F'},1327 'STATE_OUT': {u'changed': u'=',1328 u'has_metadata': u'=',1329 u'is_directory': u'='}},1330 {'ACTION': u'md.upload_finished(mdid, server_hash=hash)',1331 'ACTION_FUNC': u'reput_file_from_ok',1332 'COMMENTS': u'we finished a download, but this download should have been cancelled. So the real upload will conflict. Reschedule upload.',1333 'PARAMETERS': {u'hash_eq_local_hash': u'F',1334 u'hash_eq_server_hash': u'T',1335 u'not_authorized': u'NA',1336 u'not_available': u'NA'},1337 'STATE': {u'changed': u'LOCAL',1338 u'has_metadata': u'T',1339 u'is_directory': u'F'},1340 'STATE_OUT': {u'changed': u'NONE',1341 u'has_metadata': u'=',1342 u'is_directory': u'='}},1343 {'ACTION': u'cancel download; commit upload',1344 'ACTION_FUNC': u'cancel_and_commit',1345 'COMMENTS': u'we couldnt cancel an upload and we overwrote what was on the server',1346 'PARAMETERS': {u'hash_eq_local_hash': u'T',1347 u'hash_eq_server_hash': u'F',1348 u'not_authorized': u'NA',1349 u'not_available': u'NA'},1350 'STATE': {u'changed': u'SERVER',1351 u'has_metadata': u'T',1352 u'is_directory': u'F'},1353 'STATE_OUT': {u'changed': u'NONE',1354 u'has_metadata': u'T',1355 u'is_directory': u'='}},1356 {'ACTION': u'md.upload_finished(mdid, server_hash=hash)',1357 'ACTION_FUNC': u'commit_upload',1358 'COMMENTS': u'',1359 'PARAMETERS': {u'hash_eq_local_hash': u'T',1360 u'hash_eq_server_hash': u'F',1361 u'not_authorized': u'NA',1362 u'not_available': u'NA'},1363 'STATE': {u'changed': u'LOCAL',1364 u'has_metadata': u'T',1365 u'is_directory': u'F'},1366 'STATE_OUT': {u'changed': u'NONE',1367 u'has_metadata': u'=',1368 u'is_directory': u'='}},1369 {'ACTION': u'md.upload_finished(mdid, server_hash=hash)',1370 'ACTION_FUNC': u'commit_upload',1371 'COMMENTS': u'',1372 'PARAMETERS': {u'hash_eq_local_hash': u'F',1373 u'hash_eq_server_hash': u'F',1374 u'not_authorized': u'NA',1375 u'not_available': u'NA'},1376 'STATE': {u'changed': u'SERVER',1377 u'has_metadata': u'T',1378 u'is_directory': u'F'},1379 'STATE_OUT': {u'changed': u'SERVER',1380 u'has_metadata': u'=',1381 u'is_directory': u'='}},1382 {'ACTION': u'md.upload_finished(mdid, server_hash=hash)',1383 'ACTION_FUNC': u'reput_file_from_ok',1384 'COMMENTS': u'',1385 'PARAMETERS': {u'hash_eq_local_hash': u'F',1386 u'hash_eq_server_hash': u'F',1387 u'not_authorized': u'NA',1388 u'not_available': u'NA'},1389 'STATE': {u'changed': u'LOCAL',1390 u'has_metadata': u'T',1391 u'is_directory': u'F'},1392 'STATE_OUT': {u'changed': u'NONE',1393 u'has_metadata': u'=',1394 u'is_directory': u'='}},1395 {'ACTION': u'DESPAIR',1396 'ACTION_FUNC': u'DESPAIR',1397 'COMMENTS': u'we never try to upload directories',1398 'PARAMETERS': {u'hash_eq_local_hash': u'*',1399 u'hash_eq_server_hash': u'*',1400 u'not_authorized': u'NA',1401 u'not_available': u'NA'},1402 'STATE': {u'changed': u'*',1403 u'has_metadata': u'T',1404 u'is_directory': u'T'},1405 'STATE_OUT': {u'changed': u'*',1406 u'has_metadata': u'*',1407 u'is_directory': u'*'}}],1408 u'FS_DIR_CREATE': [{'ACTION': u'mdid = md.create(path=path)\naq.makefile(mdid)',1409 'ACTION_FUNC': u'new_local_dir',1410 'COMMENTS': u'',1411 'PARAMETERS': {u'hash_eq_local_hash': u'NA',1412 u'hash_eq_server_hash': u'NA',1413 u'not_authorized': u'NA',1414 u'not_available': u'NA'},1415 'STATE': {u'changed': u'NA',1416 u'has_metadata': u'F',1417 u'is_directory': u'NA'},1418 'STATE_OUT': {u'changed': u'NONE',1419 u'has_metadata': u'T',1420 u'is_directory': u'T'}},1421 {'ACTION': u'pass',1422 'ACTION_FUNC': u'nothing',1423 'COMMENTS': u'duplicate IN_DIRECTORY_NEW',1424 'PARAMETERS': {u'hash_eq_local_hash': u'NA',1425 u'hash_eq_server_hash': u'NA',1426 u'not_authorized': u'NA',1427 u'not_available': u'NA'},1428 'STATE': {u'changed': u'SERVER',1429 u'has_metadata': u'T',1430 u'is_directory': u'*'},1431 'STATE_OUT': {u'changed': u'=',1432 u'has_metadata': u'=',1433 u'is_directory': u'='}},1434 {'ACTION': u'pass',1435 'ACTION_FUNC': u'nothing',1436 'COMMENTS': u'duplicate IN_DIRECTORY_NEW',1437 'PARAMETERS': {u'hash_eq_local_hash': u'NA',1438 u'hash_eq_server_hash': u'NA',1439 u'not_authorized': u'NA',1440 u'not_available': u'NA'},1441 'STATE': {u'changed': u'NONE',1442 u'has_metadata': u'T',1443 u'is_directory': u'F'},1444 'STATE_OUT': {u'changed': u'NONE',1445 u'has_metadata': u'T',1446 u'is_directory': u'F'}},1447 {'ACTION': u'DESPAIR',1448 'ACTION_FUNC': u'DESPAIR',1449 'COMMENTS': u'...?',1450 'PARAMETERS': {u'hash_eq_local_hash': u'NA',1451 u'hash_eq_server_hash': u'NA',1452 u'not_authorized': u'NA',1453 u'not_available': u'NA'},1454 'STATE': {u'changed': u'LOCAL',1455 u'has_metadata': u'T',1456 u'is_directory': u'F'},1457 'STATE_OUT': {u'changed': u'*',1458 u'has_metadata': u'*',1459 u'is_directory': u'*'}},1460 {'ACTION': u'pass',1461 'ACTION_FUNC': u'nothing',1462 'COMMENTS': u'duplicate IN_DIRECTORY_NEW',1463 'PARAMETERS': {u'hash_eq_local_hash': u'NA',1464 u'hash_eq_server_hash': u'NA',1465 u'not_authorized': u'NA',1466 u'not_available': u'NA'},1467 'STATE': {u'changed': u'NONE',1468 u'has_metadata': u'T',1469 u'is_directory': u'T'},1470 'STATE_OUT': {u'changed': u'NONE',1471 u'has_metadata': u'T',1472 u'is_directory': u'T'}}],1473 u'FS_DIR_DELETE': [{'ACTION': u'pass',1474 'ACTION_FUNC': u'nothing',1475 'COMMENTS': u'this is the result of a delete we did',1476 'PARAMETERS': {u'hash_eq_local_hash': u'NA',1477 u'hash_eq_server_hash': u'NA',1478 u'not_authorized': u'NA',1479 u'not_available': u'NA'},1480 'STATE': {u'changed': u'NA',1481 u'has_metadata': u'F',1482 u'is_directory': u'NA'},1483 'STATE_OUT': {u'changed': u'=',1484 u'has_metadata': u'=',1485 u'is_directory': u'='}},1486 {'ACTION': u'aq.delete_file(uuid, type=type); md.remove(uuid)',1487 'ACTION_FUNC': u'delete_on_server',1488 'COMMENTS': u'when deleting files we remove the metadata, server rescan will find this again and downloadi it if we are shutdown before this delete has gone up. Generations may break this. ',1489 'PARAMETERS': {u'hash_eq_local_hash': u'NA',1490 u'hash_eq_server_hash': u'NA',1491 u'not_authorized': u'NA',1492 u'not_available': u'NA'},1493 'STATE': {u'changed': u'NONE',1494 u'has_metadata': u'T',1495 u'is_directory': u'*'},1496 'STATE_OUT': {u'changed': u'NA',1497 u'has_metadata': u'F',1498 u'is_directory': u'NA'}},1499 {'ACTION': u'',1500 'ACTION_FUNC': u'DESPAIR',1501 'COMMENTS': u'delete of file when it should be a dir is bad',1502 'PARAMETERS': {u'hash_eq_local_hash': u'NA',1503 u'hash_eq_server_hash': u'NA',1504 u'not_authorized': u'NA',1505 u'not_available': u'NA'},1506 'STATE': {u'changed': u'LOCAL',1507 u'has_metadata': u'T',1508 u'is_directory': u'F'},1509 'STATE_OUT': {u'changed': u'NA',1510 u'has_metadata': u'F',1511 u'is_directory': u'NA'}},1512 {'ACTION': u'',1513 'ACTION_FUNC': u'DESPAIR',1514 'COMMENTS': u'delete of file when it should be a dir is bad',1515 'PARAMETERS': {u'hash_eq_local_hash': u'NA',1516 u'hash_eq_server_hash': u'NA',1517 u'not_authorized': u'NA',1518 u'not_available': u'NA'},1519 'STATE': {u'changed': u'SERVER',1520 u'has_metadata': u'T',1521 u'is_directory': u'F'},1522 'STATE_OUT': {u'changed': u'NA',1523 u'has_metadata': u'F',1524 u'is_directory': u'NA'}},1525 {'ACTION': u'md.cancel_download(md); md.remove(uuid)',1526 'ACTION_FUNC': u'deleted_dir_while_downloading',1527 'COMMENTS': u'',1528 'PARAMETERS': {u'hash_eq_local_hash': u'NA',1529 u'hash_eq_server_hash': u'NA',1530 u'not_authorized': u'NA',1531 u'not_available': u'NA'},1532 'STATE': {u'changed': u'SERVER',1533 u'has_metadata': u'T',1534 u'is_directory': u'T'},1535 'STATE_OUT': {u'changed': u'NA',1536 u'has_metadata': u'F',1537 u'is_directory': u'NA'}}],1538 u'FS_DIR_MOVE': [{'ACTION': u'',1539 'ACTION_FUNC': u'nothing',1540 'COMMENTS': u'side efect of local move',1541 'PARAMETERS': {u'hash_eq_local_hash': u'NA',1542 u'hash_eq_server_hash': u'NA',1543 u'not_authorized': u'NA',1544 u'not_available': u'NA'},1545 'STATE': {u'changed': u'NA',1546 u'has_metadata': u'F',1547 u'is_directory': u'NA'},1548 'STATE_OUT': {u'changed': u'NA',1549 u'has_metadata': u'F',1550 u'is_directory': u'NA'}},1551 {'ACTION': u'aq.move()',1552 'ACTION_FUNC': u'client_moved',1553 'COMMENTS': u'vanilla case',1554 'PARAMETERS': {u'hash_eq_local_hash': u'NA',1555 u'hash_eq_server_hash': u'NA',1556 u'not_authorized': u'NA',1557 u'not_available': u'NA'},1558 'STATE': {u'changed': u'NONE',1559 u'has_metadata': u'T',1560 u'is_directory': u'*'},1561 'STATE_OUT': {u'changed': u'=',1562 u'has_metadata': u'T',1563 u'is_directory': u'='}},1564 {'ACTION': u'cancel upload; move; restart upload',1565 'ACTION_FUNC': u'moved_dirty_local',1566 'COMMENTS': u'we got a move while we were downloading it',1567 'PARAMETERS': {u'hash_eq_local_hash': u'NA',1568 u'hash_eq_server_hash': u'NA',1569 u'not_authorized': u'NA',1570 u'not_available': u'NA'},1571 'STATE': {u'changed': u'LOCAL',1572 u'has_metadata': u'T',1573 u'is_directory': u'F'},1574 'STATE_OUT': {u'changed': u'NONE',1575 u'has_metadata': u'T',1576 u'is_directory': u'F'}},1577 {'ACTION': u'cancel_download; move; query',1578 'ACTION_FUNC': u'moved_dirty_server',1579 'COMMENTS': u'we got a move while we were downloading it',1580 'PARAMETERS': {u'hash_eq_local_hash': u'NA',1581 u'hash_eq_server_hash': u'NA',1582 u'not_authorized': u'NA',1583 u'not_available': u'NA'},1584 'STATE': {u'changed': u'SERVER',1585 u'has_metadata': u'T',1586 u'is_directory': u'*'},1587 'STATE_OUT': {u'changed': u'NONE',1588 u'has_metadata': u'T',1589 u'is_directory': u'='}}],1590 u'FS_FILE_CLOSE_WRITE': [{'ACTION': u'pass',1591 'ACTION_FUNC': u'nothing',1592 'COMMENTS': u'changes from a file that no longer exists',1593 'PARAMETERS': {u'hash_eq_local_hash': u'NA',1594 u'hash_eq_server_hash': u'NA',1595 u'not_authorized': u'NA',1596 u'not_available': u'NA'},1597 'STATE': {u'changed': u'NA',1598 u'has_metadata': u'F',1599 u'is_directory': u'*'},1600 'STATE_OUT': {u'changed': u'=',1601 u'has_metadata': u'=',1602 u'is_directory': u'='}},1603 {'ACTION': u'DESPAIR',1604 'ACTION_FUNC': u'DESPAIR',1605 'COMMENTS': u'event cant happen in directories',1606 'PARAMETERS': {u'hash_eq_local_hash': u'NA',1607 u'hash_eq_server_hash': u'NA',1608 u'not_authorized': u'NA',1609 u'not_available': u'NA'},1610 'STATE': {u'changed': u'*',1611 u'has_metadata': u'T',1612 u'is_directory': u'T'},1613 'STATE_OUT': {u'changed': u'*',1614 u'has_metadata': u'*',1615 u'is_directory': u'*'}},1616 {'ACTION': u'hq.insert(path)',1617 'ACTION_FUNC': u'calculate_hash',1618 'COMMENTS': u'',1619 'PARAMETERS': {u'hash_eq_local_hash': u'NA',1620 u'hash_eq_server_hash': u'NA',1621 u'not_authorized': u'NA',1622 u'not_available': u'NA'},1623 'STATE': {u'changed': u'*',1624 u'has_metadata': u'T',1625 u'is_directory': u'F'},1626 'STATE_OUT': {u'changed': u'=',1627 u'has_metadata': u'=',1628 u'is_directory': u'='}}],1629 u'FS_FILE_CREATE': [{'ACTION': u'mdid = md.create(path=path)\naq.makefile(mdid)',1630 'ACTION_FUNC': u'new_local_file',1631 'COMMENTS': u'',1632 'PARAMETERS': {u'hash_eq_local_hash': u'NA',1633 u'hash_eq_server_hash': u'NA',1634 u'not_authorized': u'NA',1635 u'not_available': u'NA'},1636 'STATE': {u'changed': u'NA',1637 u'has_metadata': u'F',1638 u'is_directory': u'NA'},1639 'STATE_OUT': {u'changed': u'NONE',1640 u'has_metadata': u'T',1641 u'is_directory': u'F'}},1642 {'ACTION': u'',1643 'ACTION_FUNC': u'nothing',1644 'COMMENTS': u'ignore this. We created the file.',1645 'PARAMETERS': {u'hash_eq_local_hash': u'NA',1646 u'hash_eq_server_hash': u'NA',1647 u'not_authorized': u'NA',1648 u'not_available': u'NA'},1649 'STATE': {u'changed': u'SERVER',1650 u'has_metadata': u'T',1651 u'is_directory': u'*'},1652 'STATE_OUT': {u'changed': u'=',1653 u'has_metadata': u'=',1654 u'is_directory': u'='}},1655 {'ACTION': u'pass',1656 'ACTION_FUNC': u'nothing',1657 'COMMENTS': u"As we're ignoring some files, we are in the situation where some editors move the file to something we ignore, and then create the file again, so we receive the FS_FILE_CREATE for a node that we actually have",1658 'PARAMETERS': {u'hash_eq_local_hash': u'NA',1659 u'hash_eq_server_hash': u'NA',1660 u'not_authorized': u'NA',1661 u'not_available': u'NA'},1662 'STATE': {u'changed': u'NONE',1663 u'has_metadata': u'T',1664 u'is_directory': u'F'},1665 'STATE_OUT': {u'changed': u'=',1666 u'has_metadata': u'=',1667 u'is_directory': u'='}},1668 {'ACTION': u'pass',1669 'ACTION_FUNC': u'nothing',1670 'COMMENTS': u"Same as before, but we're uploading that node we already have.",1671 'PARAMETERS': {u'hash_eq_local_hash': u'NA',1672 u'hash_eq_server_hash': u'NA',1673 u'not_authorized': u'NA',1674 u'not_available': u'NA'},1675 'STATE': {u'changed': u'LOCAL',1676 u'has_metadata': u'T',1677 u'is_directory': u'F'},1678 'STATE_OUT': {u'changed': u'=',1679 u'has_metadata': u'=',1680 u'is_directory': u'='}},1681 {'ACTION': u'log warning',1682 'ACTION_FUNC': u'nothing',1683 'COMMENTS': u'duplicate IN_FILE_NEW',1684 'PARAMETERS': {u'hash_eq_local_hash': u'NA',1685 u'hash_eq_server_hash': u'NA',1686 u'not_authorized': u'NA',1687 u'not_available': u'NA'},1688 'STATE': {u'changed': u'NONE',1689 u'has_metadata': u'T',1690 u'is_directory': u'T'},1691 'STATE_OUT': {u'changed': u'NONE',1692 u'has_metadata': u'T',1693 u'is_directory': u'F'}}],1694 u'FS_FILE_DELETE': [{'ACTION': u'pass',1695 'ACTION_FUNC': u'nothing',1696 'COMMENTS': u'this is the result of a delete we did',1697 'PARAMETERS': {u'hash_eq_local_hash': u'NA',1698 u'hash_eq_server_hash': u'NA',1699 u'not_authorized': u'NA',1700 u'not_available': u'NA'},1701 'STATE': {u'changed': u'NA',1702 u'has_metadata': u'F',1703 u'is_directory': u'NA'},1704 'STATE_OUT': {u'changed': u'=',1705 u'has_metadata': u'=',1706 u'is_directory': u'='}},1707 {'ACTION': u'aq.delete_file(uuid, type=type); md.remove(uuid)',1708 'ACTION_FUNC': u'delete_on_server',1709 'COMMENTS': u'when deleting files we remove the metadata, server rescan will find this again and downloadi it if we are shutdown before this delete has gone up. Generations may break this. ',1710 'PARAMETERS': {u'hash_eq_local_hash': u'NA',1711 u'hash_eq_server_hash': u'NA',1712 u'not_authorized': u'NA',1713 u'not_available': u'NA'},1714 'STATE': {u'changed': u'NONE',1715 u'has_metadata': u'T',1716 u'is_directory': u'*'},1717 'STATE_OUT': {u'changed': u'NA',1718 u'has_metadata': u'F',1719 u'is_directory': u'NA'}},1720 {'ACTION': u'aq.cancel_upload(uuid); aq.delete_file(uuid); md.remove(uuid)',1721 'ACTION_FUNC': u'cancel_upload_and_delete_on_server',1722 'COMMENTS': u'',1723 'PARAMETERS': {u'hash_eq_local_hash': u'NA',1724 u'hash_eq_server_hash': u'NA',1725 u'not_authorized': u'NA',1726 u'not_available': u'NA'},1727 'STATE': {u'changed': u'LOCAL',1728 u'has_metadata': u'T',1729 u'is_directory': u'F'},1730 'STATE_OUT': {u'changed': u'NA',1731 u'has_metadata': u'F',1732 u'is_directory': u'NA'}},1733 {'ACTION': u'aq.cancel_download(uuid); aq.delete_file(uuid)\n md.remove(uuid)',1734 'ACTION_FUNC': u'cancel_download_and_delete_on_server',1735 'COMMENTS': u'This is policy. We could declare this to be a conflict. But we should assume that the client knows what he is doing',1736 'PARAMETERS': {u'hash_eq_local_hash': u'NA',1737 u'hash_eq_server_hash': u'NA',1738 u'not_authorized': u'NA',1739 u'not_available': u'NA'},1740 'STATE': {u'changed': u'SERVER',1741 u'has_metadata': u'T',1742 u'is_directory': u'F'},1743 'STATE_OUT': {u'changed': u'NA',1744 u'has_metadata': u'F',1745 u'is_directory': u'NA'}},1746 {'ACTION': u'',1747 'ACTION_FUNC': u'DESPAIR',1748 'COMMENTS': u'',1749 'PARAMETERS': {u'hash_eq_local_hash': u'NA',1750 u'hash_eq_server_hash': u'NA',1751 u'not_authorized': u'NA',1752 u'not_available': u'NA'},1753 'STATE': {u'changed': u'SERVER',1754 u'has_metadata': u'T',1755 u'is_directory': u'T'},1756 'STATE_OUT': {u'changed': u'NA',1757 u'has_metadata': u'F',1758 u'is_directory': u'NA'}}],1759 u'FS_FILE_MOVE': [{'ACTION': u'',1760 'ACTION_FUNC': u'nothing',1761 'COMMENTS': u'side efect of local move',1762 'PARAMETERS': {u'hash_eq_local_hash': u'NA',1763 u'hash_eq_server_hash': u'NA',1764 u'not_authorized': u'NA',1765 u'not_available': u'NA'},1766 'STATE': {u'changed': u'NA',1767 u'has_metadata': u'F',1768 u'is_directory': u'NA'},1769 'STATE_OUT': {u'changed': u'NA',1770 u'has_metadata': u'F',1771 u'is_directory': u'NA'}},1772 {'ACTION': u'aq.move()',1773 'ACTION_FUNC': u'client_moved',1774 'COMMENTS': u'vanilla case',1775 'PARAMETERS': {u'hash_eq_local_hash': u'NA',1776 u'hash_eq_server_hash': u'NA',1777 u'not_authorized': u'NA',1778 u'not_available': u'NA'},1779 'STATE': {u'changed': u'NONE',1780 u'has_metadata': u'T',1781 u'is_directory': u'*'},1782 'STATE_OUT': {u'changed': u'=',1783 u'has_metadata': u'T',1784 u'is_directory': u'='}},1785 {'ACTION': u'cancel upload; move; restart upload',1786 'ACTION_FUNC': u'moved_dirty_local',1787 'COMMENTS': u'we got a move while we were downloading it',1788 'PARAMETERS': {u'hash_eq_local_hash': u'NA',1789 u'hash_eq_server_hash': u'NA',1790 u'not_authorized': u'NA',1791 u'not_available': u'NA'},1792 'STATE': {u'changed': u'LOCAL',1793 u'has_metadata': u'T',1794 u'is_directory': u'F'},1795 'STATE_OUT': {u'changed': u'NONE',1796 u'has_metadata': u'T',1797 u'is_directory': u'F'}},1798 {'ACTION': u'cancel_download; move; query',1799 'ACTION_FUNC': u'moved_dirty_server',1800 'COMMENTS': u'we got a move while we were downloading it',1801 'PARAMETERS': {u'hash_eq_local_hash': u'NA',1802 u'hash_eq_server_hash': u'NA',1803 u'not_authorized': u'NA',1804 u'not_available': u'NA'},1805 'STATE': {u'changed': u'SERVER',1806 u'has_metadata': u'T',1807 u'is_directory': u'*'},1808 'STATE_OUT': {u'changed': u'NONE',1809 u'has_metadata': u'T',1810 u'is_directory': u'='}}],1811 u'HQ_HASH_ERROR': [{'ACTION': u'',1812 'ACTION_FUNC': u'nothing',1813 'COMMENTS': u'it was deleted at some point',1814 'PARAMETERS': {u'hash_eq_local_hash': u'NA',1815 u'hash_eq_server_hash': u'NA',1816 u'not_authorized': u'NA',1817 u'not_available': u'NA'},1818 'STATE': {u'changed': u'NA',1819 u'has_metadata': u'F',1820 u'is_directory': u'NA'},1821 'STATE_OUT': {u'changed': u'NA',1822 u'has_metadata': u'F',1823 u'is_directory': u'NA'}},1824 {'ACTION': u'DESPAIR',1825 'ACTION_FUNC': u'DESPAIR',1826 'COMMENTS': u'we should never be hashing a directory',1827 'PARAMETERS': {u'hash_eq_local_hash': u'NA',1828 u'hash_eq_server_hash': u'NA',1829 u'not_authorized': u'NA',1830 u'not_available': u'NA'},1831 'STATE': {u'changed': u'*',1832 u'has_metadata': u'T',1833 u'is_directory': u'T'},1834 'STATE_OUT': {u'changed': u'*',1835 u'has_metadata': u'*',1836 u'is_directory': u'*'}},1837 {'ACTION': u'hq.insert(path)',1838 'ACTION_FUNC': u'calculate_hash',1839 'COMMENTS': u'we need to re send the hash to the HQ',1840 'PARAMETERS': {u'hash_eq_local_hash': u'NA',1841 u'hash_eq_server_hash': u'NA',1842 u'not_authorized': u'NA',1843 u'not_available': u'NA'},1844 'STATE': {u'changed': u'*',1845 u'has_metadata': u'T',1846 u'is_directory': u'F'},1847 'STATE_OUT': {u'changed': u'=',1848 u'has_metadata': u'=',1849 u'is_directory': u'='}}],1850 u'HQ_HASH_NEW': [{'ACTION': u'NA',1851 'ACTION_FUNC': u'',1852 'COMMENTS': u'',1853 'PARAMETERS': {u'hash_eq_local_hash': u'*',1854 u'hash_eq_server_hash': u'NA',1855 u'not_authorized': u'NA',1856 u'not_available': u'NA'},1857 'STATE': {u'changed': u'*',1858 u'has_metadata': u'T',1859 u'is_directory': u'*'},1860 'STATE_OUT': {u'changed': u'=',1861 u'has_metadata': u'=',1862 u'is_directory': u'='}},1863 {'ACTION': u'NA',1864 'ACTION_FUNC': u'',1865 'COMMENTS': u'',1866 'PARAMETERS': {u'hash_eq_local_hash': u'NA',1867 u'hash_eq_server_hash': u'*',1868 u'not_authorized': u'NA',1869 u'not_available': u'NA'},1870 'STATE': {u'changed': u'*',1871 u'has_metadata': u'T',1872 u'is_directory': u'*'},1873 'STATE_OUT': {u'changed': u'=',1874 u'has_metadata': u'=',1875 u'is_directory': u'='}},1876 {'ACTION': u'md.set(mdid, stat=stat)',1877 'ACTION_FUNC': u'save_stat',1878 'COMMENTS': u'hash == local_hash == server_hash; nothing changed but the file was \u201ctouched\u201d',1879 'PARAMETERS': {u'hash_eq_local_hash': u'!NA',1880 u'hash_eq_server_hash': u'T',1881 u'not_authorized': u'NA',1882 u'not_available': u'NA'},1883 'STATE': {u'changed': u'NONE',1884 u'has_metadata': u'T',1885 u'is_directory': u'F'},1886 'STATE_OUT': {u'changed': u'=',1887 u'has_metadata': u'=',1888 u'is_directory': u'='}},1889 {'ACTION': u'',1890 'ACTION_FUNC': u'reput_file',1891 'COMMENTS': u'just to be on the safe side, we try to put the file again.',1892 'PARAMETERS': {u'hash_eq_local_hash': u'!NA',1893 u'hash_eq_server_hash': u'T',1894 u'not_authorized': u'NA',1895 u'not_available': u'NA'},1896 'STATE': {u'changed': u'LOCAL',1897 u'has_metadata': u'T',1898 u'is_directory': u'F'},1899 'STATE_OUT': {u'changed': u'LOCAL',1900 u'has_metadata': u'=',1901 u'is_directory': u'='}},1902 {'ACTION': u'md.set(mdid, local_hash=hash)\naq.putfile(*mdid)',1903 'ACTION_FUNC': u'put_file',1904 'COMMENTS': u'plain \u201cuser modified the file on this machine\u201d case',1905 'PARAMETERS': {u'hash_eq_local_hash': u'!NA',1906 u'hash_eq_server_hash': u'F',1907 u'not_authorized': u'NA',1908 u'not_available': u'NA'},1909 'STATE': {u'changed': u'NONE',1910 u'has_metadata': u'T',1911 u'is_directory': u'F'},1912 'STATE_OUT': {u'changed': u'LOCAL',1913 u'has_metadata': u'=',1914 u'is_directory': u'='}},1915 {'ACTION': u'',1916 'ACTION_FUNC': u'nothing',1917 'COMMENTS': u'we dont send directories to hq. This is old. Ignore.',1918 'PARAMETERS': {u'hash_eq_local_hash': u'F',1919 u'hash_eq_server_hash': u'F',1920 u'not_authorized': u'NA',1921 u'not_available': u'NA'},1922 'STATE': {u'changed': u'NONE',1923 u'has_metadata': u'T',1924 u'is_directory': u'T'},1925 'STATE_OUT': {u'changed': u'SERVER',1926 u'has_metadata': u'=',1927 u'is_directory': u'='}},1928 {'ACTION': u'NA',1929 'ACTION_FUNC': u'nothing',1930 'COMMENTS': u'',1931 'PARAMETERS': {u'hash_eq_local_hash': u'T',1932 u'hash_eq_server_hash': u'F',1933 u'not_authorized': u'NA',1934 u'not_available': u'NA'},1935 'STATE': {u'changed': u'NONE',1936 u'has_metadata': u'T',1937 u'is_directory': u'T'},1938 'STATE_OUT': {u'changed': u'*',1939 u'has_metadata': u'*',1940 u'is_directory': u'*'}},1941 {'ACTION': u'pass',1942 'ACTION_FUNC': u'nothing',1943 'COMMENTS': u'the directories are the same',1944 'PARAMETERS': {u'hash_eq_local_hash': u'!NA',1945 u'hash_eq_server_hash': u'T',1946 u'not_authorized': u'NA',1947 u'not_available': u'NA'},1948 'STATE': {u'changed': u'NONE',1949 u'has_metadata': u'T',1950 u'is_directory': u'T'},1951 'STATE_OUT': {u'changed': u'=',1952 u'has_metadata': u'=',1953 u'is_directory': u'='}},1954 {'ACTION': u'md.set(mdid, local_hash=hash)\naq.putfile(*mdid)',1955 'ACTION_FUNC': u'reput_file',1956 'COMMENTS': u'another upload is in progress',1957 'PARAMETERS': {u'hash_eq_local_hash': u'!NA',1958 u'hash_eq_server_hash': u'F',1959 u'not_authorized': u'NA',1960 u'not_available': u'NA'},1961 'STATE': {u'changed': u'LOCAL',1962 u'has_metadata': u'T',1963 u'is_directory': u'F'},1964 'STATE_OUT': {u'changed': u'LOCAL',1965 u'has_metadata': u'=',1966 u'is_directory': u'='}},1967 {'ACTION': u'md.set(mdid, local_hash=hash)\naq.cancel_download(mdid)',1968 'ACTION_FUNC': u'converges_to_server',1969 'COMMENTS': u'local file already has server changes that are being downloaded',1970 'PARAMETERS': {u'hash_eq_local_hash': u'!NA',1971 u'hash_eq_server_hash': u'T',1972 u'not_authorized': u'NA',1973 u'not_available': u'NA'},1974 'STATE': {u'changed': u'SERVER',1975 u'has_metadata': u'T',1976 u'is_directory': u'F'},1977 'STATE_OUT': {u'changed': u'NONE',1978 u'has_metadata': u'=',1979 u'is_directory': u'='}},1980 {'ACTION': u'CONFLICT',1981 'ACTION_FUNC': u'file_conflict',1982 'COMMENTS': u'local file was modified by the user while download of next version was in progress',1983 'PARAMETERS': {u'hash_eq_local_hash': u'!NA',1984 u'hash_eq_server_hash': u'F',1985 u'not_authorized': u'NA',1986 u'not_available': u'NA'},1987 'STATE': {u'changed': u'SERVER',1988 u'has_metadata': u'T',1989 u'is_directory': u'F'},1990 'STATE_OUT': {u'changed': u'SERVER',1991 u'has_metadata': u'T',1992 u'is_directory': u'='}},1993 {'ACTION': u'',1994 'ACTION_FUNC': u'nothing',1995 'COMMENTS': u'we dont send directories to hq. This is old. Ignore.',1996 'PARAMETERS': {u'hash_eq_local_hash': u'!NA',1997 u'hash_eq_server_hash': u'T',1998 u'not_authorized': u'NA',1999 u'not_available': u'NA'},2000 'STATE': {u'changed': u'SERVER',2001 u'has_metadata': u'T',2002 u'is_directory': u'T'},2003 'STATE_OUT': {u'changed': u'NONE',2004 u'has_metadata': u'=',2005 u'is_directory': u'='}},2006 {'ACTION': u'',2007 'ACTION_FUNC': u'nothing',2008 'COMMENTS': u'we dont send directories to hq. This is old. Ignore.',2009 'PARAMETERS': {u'hash_eq_local_hash': u'!NA',2010 u'hash_eq_server_hash': u'F',2011 u'not_authorized': u'NA',2012 u'not_available': u'NA'},2013 'STATE': {u'changed': u'SERVER',2014 u'has_metadata': u'T',2015 u'is_directory': u'T'},2016 'STATE_OUT': {u'changed': u'=',2017 u'has_metadata': u'=',2018 u'is_directory': u'='}},2019 {'ACTION': u'pass',2020 'ACTION_FUNC': u'nothing',2021 'COMMENTS': u'',2022 'PARAMETERS': {u'hash_eq_local_hash': u'*',2023 u'hash_eq_server_hash': u'*',2024 u'not_authorized': u'NA',2025 u'not_available': u'NA'},2026 'STATE': {u'changed': u'*',2027 u'has_metadata': u'F',2028 u'is_directory': u'*'},2029 'STATE_OUT': {u'changed': u'=',2030 u'has_metadata': u'=',2031 u'is_directory': u'='}}],2032 u'LR_SCAN_ERROR': [{'ACTION': u'',2033 'ACTION_FUNC': u'nothing',2034 'COMMENTS': u'it was deleted at some point',2035 'PARAMETERS': {u'hash_eq_local_hash': u'NA',2036 u'hash_eq_server_hash': u'NA',2037 u'not_authorized': u'NA',2038 u'not_available': u'NA'},2039 'STATE': {u'changed': u'NA',2040 u'has_metadata': u'F',2041 u'is_directory': u'NA'},2042 'STATE_OUT': {u'changed': u'NA',2043 u'has_metadata': u'F',2044 u'is_directory': u'NA'}},2045 {'ACTION': u'DESPAIR',2046 'ACTION_FUNC': u'DESPAIR',2047 'COMMENTS': u'we should never be local-scanning a file',2048 'PARAMETERS': {u'hash_eq_local_hash': u'NA',2049 u'hash_eq_server_hash': u'NA',2050 u'not_authorized': u'NA',2051 u'not_available': u'NA'},2052 'STATE': {u'changed': u'*',2053 u'has_metadata': u'T',2054 u'is_directory': u'F'},2055 'STATE_OUT': {u'changed': u'*',2056 u'has_metadata': u'*',2057 u'is_directory': u'*'}},2058 {'ACTION': u'RESCAN',2059 'ACTION_FUNC': u'rescan_dir',2060 'COMMENTS': u'we need to re start the local rescan',2061 'PARAMETERS': {u'hash_eq_local_hash': u'NA',2062 u'hash_eq_server_hash': u'NA',2063 u'not_authorized': u'NA',2064 u'not_available': u'NA'},2065 'STATE': {u'changed': u'*',2066 u'has_metadata': u'T',2067 u'is_directory': u'T'},2068 'STATE_OUT': {u'changed': u'=',2069 u'has_metadata': u'=',2070 u'is_directory': u'='}}],2071 u'SV_DIR_NEW': [{'ACTION': u'md.create(path=path, uuid=uuid, type=type)\naq.query(uuid=uuid)',2072 'ACTION_FUNC': u'new_dir',2073 'COMMENTS': u'good case, we send a query to see if there are anychanges we need to merge',2074 'PARAMETERS': {u'hash_eq_local_hash': u'NA',2075 u'hash_eq_server_hash': u'NA',2076 u'not_authorized': u'NA',2077 u'not_available': u'NA'},2078 'STATE': {u'changed': u'NA',2079 u'has_metadata': u'F',2080 u'is_directory': u'NA'},2081 'STATE_OUT': {u'changed': u'NONE',2082 u'has_metadata': u'T',2083 u'is_directory': u'T'}},2084 {'ACTION': u'CONFLICT',2085 'ACTION_FUNC': u'new_dir_on_server_with_local_file',2086 'COMMENTS': u'',2087 'PARAMETERS': {u'hash_eq_local_hash': u'NA',2088 u'hash_eq_server_hash': u'NA',2089 u'not_authorized': u'NA',2090 u'not_available': u'NA'},2091 'STATE': {u'changed': u'*',2092 u'has_metadata': u'T',2093 u'is_directory': u'F'},2094 'STATE_OUT': {u'changed': u'NONE',2095 u'has_metadata': u'T',2096 u'is_directory': u'T'}},2097 {'ACTION': u'list the dir to get new info and converge',2098 'ACTION_FUNC': u'new_dir_on_server_with_local_dir',2099 'COMMENTS': u'',2100 'PARAMETERS': {u'hash_eq_local_hash': u'NA',2101 u'hash_eq_server_hash': u'NA',2102 u'not_authorized': u'NA',2103 u'not_available': u'NA'},2104 'STATE': {u'changed': u'*',2105 u'has_metadata': u'T',2106 u'is_directory': u'T'},2107 'STATE_OUT': {u'changed': u'NONE',2108 u'has_metadata': u'T',2109 u'is_directory': u'T'}}],2110 u'SV_FILE_DELETED': [{'ACTION': u'pass',2111 'ACTION_FUNC': u'nothing',2112 'COMMENTS': u'we deleted something and the server did the same',2113 'PARAMETERS': {u'hash_eq_local_hash': u'NA',2114 u'hash_eq_server_hash': u'NA',2115 u'not_authorized': u'NA',2116 u'not_available': u'NA'},2117 'STATE': {u'changed': u'NA',2118 u'has_metadata': u'F',2119 u'is_directory': u'NA'},2120 'STATE_OUT': {u'changed': u'=',2121 u'has_metadata': u'=',2122 u'is_directory': u'='}},2123 {'ACTION': u'md.remove(uuid)',2124 'ACTION_FUNC': u'delete_file',2125 'COMMENTS': u'',2126 'PARAMETERS': {u'hash_eq_local_hash': u'NA',2127 u'hash_eq_server_hash': u'NA',2128 u'not_authorized': u'NA',2129 u'not_available': u'NA'},2130 'STATE': {u'changed': u'NONE',2131 u'has_metadata': u'T',2132 u'is_directory': u'*'},2133 'STATE_OUT': {u'changed': u'NA',2134 u'has_metadata': u'F',2135 u'is_directory': u'NA'}},2136 {'ACTION': u'CONFLICT; md.remove(uuid)',2137 'ACTION_FUNC': u'conflict_and_delete',2138 'COMMENTS': u'',2139 'PARAMETERS': {u'hash_eq_local_hash': u'NA',2140 u'hash_eq_server_hash': u'NA',2141 u'not_authorized': u'NA',2142 u'not_available': u'NA'},2143 'STATE': {u'changed': u'LOCAL',2144 u'has_metadata': u'T',2145 u'is_directory': u'F'},2146 'STATE_OUT': {u'changed': u'NA',2147 u'has_metadata': u'F',2148 u'is_directory': u'NA'}},2149 {'ACTION': u'md.cancel_download(uuid); md.remove(uuid)',2150 'ACTION_FUNC': u'file_gone_wile_downloading',2151 'COMMENTS': u'we are still downloading some content we dont care about anymore',2152 'PARAMETERS': {u'hash_eq_local_hash': u'NA',2153 u'hash_eq_server_hash': u'NA',2154 u'not_authorized': u'NA',2155 u'not_available': u'NA'},2156 'STATE': {u'changed': u'SERVER',2157 u'has_metadata': u'T',2158 u'is_directory': u'F'},2159 'STATE_OUT': {u'changed': u'NA',2160 u'has_metadata': u'F',2161 u'is_directory': u'NA'}},2162 {'ACTION': u'md.cancel_download(md); md.remove(uuid)',2163 'ACTION_FUNC': u'file_gone_wile_downloading',2164 'COMMENTS': u'we are still downloading some content we dont care about anymore',2165 'PARAMETERS': {u'hash_eq_local_hash': u'NA',2166 u'hash_eq_server_hash': u'NA',2167 u'not_authorized': u'NA',2168 u'not_available': u'NA'},2169 'STATE': {u'changed': u'SERVER',2170 u'has_metadata': u'T',2171 u'is_directory': u'T'},2172 'STATE_OUT': {u'changed': u'NA',2173 u'has_metadata': u'F',2174 u'is_directory': u'NA'}}],2175 u'SV_FILE_NEW': [{'ACTION': u'md.create(path=path, uuid=uuid, type=type)\naq.query(uuid=uuid)',2176 'ACTION_FUNC': u'new_file',2177 'COMMENTS': u'good case, we send a query to see if there are anychanges we need to merge',2178 'PARAMETERS': {u'hash_eq_local_hash': u'NA',2179 u'hash_eq_server_hash': u'NA',2180 u'not_authorized': u'NA',2181 u'not_available': u'NA'},2182 'STATE': {u'changed': u'NA',2183 u'has_metadata': u'F',2184 u'is_directory': u'NA'},2185 'STATE_OUT': {u'changed': u'NONE',2186 u'has_metadata': u'T',2187 u'is_directory': u'F'}},2188 {'ACTION': u"Didn't find the node by node_id, but found it by path",2189 'ACTION_FUNC': u'new_server_file_having_local',2190 'COMMENTS': u'',2191 'PARAMETERS': {u'hash_eq_local_hash': u'NA',2192 u'hash_eq_server_hash': u'NA',2193 u'not_authorized': u'NA',2194 u'not_available': u'NA'},2195 'STATE': {u'changed': u'*',2196 u'has_metadata': u'T',2197 u'is_directory': u'*'},2198 'STATE_OUT': {u'changed': u'=',2199 u'has_metadata': u'=',2200 u'is_directory': u'='}}],2201 u'SV_HASH_NEW': [{'ACTION': u'NA',2202 'ACTION_FUNC': u'',2203 'COMMENTS': u'',2204 'PARAMETERS': {u'hash_eq_local_hash': u'*',2205 u'hash_eq_server_hash': u'NA',2206 u'not_authorized': u'NA',2207 u'not_available': u'NA'},2208 'STATE': {u'changed': u'*',2209 u'has_metadata': u'T',2210 u'is_directory': u'*'},2211 'STATE_OUT': {u'changed': u'=',2212 u'has_metadata': u'=',2213 u'is_directory': u'='}},2214 {'ACTION': u'NA',2215 'ACTION_FUNC': u'',2216 'COMMENTS': u'',2217 'PARAMETERS': {u'hash_eq_local_hash': u'NA',2218 u'hash_eq_server_hash': u'*',2219 u'not_authorized': u'NA',2220 u'not_available': u'NA'},2221 'STATE': {u'changed': u'*',2222 u'has_metadata': u'T',2223 u'is_directory': u'*'},2224 'STATE_OUT': {u'changed': u'=',2225 u'has_metadata': u'=',2226 u'is_directory': u'='}},2227 {'ACTION': u'pass',2228 'ACTION_FUNC': u'nothing',2229 'COMMENTS': u'server side changes while trying to delete something',2230 'PARAMETERS': {u'hash_eq_local_hash': u'*',2231 u'hash_eq_server_hash': u'*',2232 u'not_authorized': u'NA',2233 u'not_available': u'NA'},2234 'STATE': {u'changed': u'NA',2235 u'has_metadata': u'F',2236 u'is_directory': u'*'},2237 'STATE_OUT': {u'changed': u'NA',2238 u'has_metadata': u'=',2239 u'is_directory': u'='}},2240 {'ACTION': u'pass',2241 'ACTION_FUNC': u'nothing',2242 'COMMENTS': u'no news is good news',2243 'PARAMETERS': {u'hash_eq_local_hash': u'T',2244 u'hash_eq_server_hash': u'T',2245 u'not_authorized': u'NA',2246 u'not_available': u'NA'},2247 'STATE': {u'changed': u'NONE',2248 u'has_metadata': u'T',2249 u'is_directory': u'F'},2250 'STATE_OUT': {u'changed': u'=',2251 u'has_metadata': u'=',2252 u'is_directory': u'='}},2253 {'ACTION': u'NA',2254 'ACTION_FUNC': u'',2255 'COMMENTS': u'NONE, T, F is a falacy (NONE implies server_hash == local_hash)',2256 'PARAMETERS': {u'hash_eq_local_hash': u'F',2257 u'hash_eq_server_hash': u'T',2258 u'not_authorized': u'NA',2259 u'not_available': u'NA'},2260 'STATE': {u'changed': u'NONE',2261 u'has_metadata': u'T',2262 u'is_directory': u'F'},2263 'STATE_OUT': {u'changed': u'*',2264 u'has_metadata': u'*',2265 u'is_directory': u'*'}},2266 {'ACTION': u'NA',2267 'ACTION_FUNC': u'',2268 'COMMENTS': u'NONE, F, T is a falacy (NONE implies server_hash == local_hash)',2269 'PARAMETERS': {u'hash_eq_local_hash': u'T',2270 u'hash_eq_server_hash': u'F',2271 u'not_authorized': u'NA',2272 u'not_available': u'NA'},2273 'STATE': {u'changed': u'NONE',2274 u'has_metadata': u'T',2275 u'is_directory': u'F'},2276 'STATE_OUT': {u'changed': u'*',2277 u'has_metadata': u'*',2278 u'is_directory': u'*'}},2279 {'ACTION': u'md.set(uuid, server_hash=hash)\npartial = md.create_partial(uuid)\naq.getcontent(*partial)',2280 'ACTION_FUNC': u'get_file',2281 'COMMENTS': u'',2282 'PARAMETERS': {u'hash_eq_local_hash': u'F',2283 u'hash_eq_server_hash': u'F',2284 u'not_authorized': u'NA',2285 u'not_available': u'NA'},2286 'STATE': {u'changed': u'NONE',2287 u'has_metadata': u'T',2288 u'is_directory': u'F'},2289 'STATE_OUT': {u'changed': u'SERVER',2290 u'has_metadata': u'=',2291 u'is_directory': u'='}},2292 {'ACTION': u'NA',2293 'ACTION_FUNC': u'',2294 'COMMENTS': u'SERVER, T, T is a impossible (SERVER implies server_hash != local_hash)',2295 'PARAMETERS': {u'hash_eq_local_hash': u'T',2296 u'hash_eq_server_hash': u'T',2297 u'not_authorized': u'NA',2298 u'not_available': u'NA'},2299 'STATE': {u'changed': u'SERVER',2300 u'has_metadata': u'T',2301 u'is_directory': u'F'},2302 'STATE_OUT': {u'changed': u'*',2303 u'has_metadata': u'*',2304 u'is_directory': u'*'}},2305 {'ACTION': u'pass',2306 'ACTION_FUNC': u'nothing',2307 'COMMENTS': u'A download for a content object with the same hash is already in progress',2308 'PARAMETERS': {u'hash_eq_local_hash': u'F',2309 u'hash_eq_server_hash': u'T',2310 u'not_authorized': u'NA',2311 u'not_available': u'NA'},2312 'STATE': {u'changed': u'SERVER',2313 u'has_metadata': u'T',2314 u'is_directory': u'F'},2315 'STATE_OUT': {u'changed': u'=',2316 u'has_metadata': u'=',2317 u'is_directory': u'='}},2318 {'ACTION': u'md.remove_partial(uuid)\nmd.set(uuid, server_hash=hash)\naq.cancel_download(uuid)',2319 'ACTION_FUNC': u'server_file_changed_back',2320 'COMMENTS': u"the local file is equal to the file that is now on the server, but a download is in progress from an older version of the server. Removing the partial ensures that we never complete the download (thus we avoid the dreaded !!! state) Note that this makes it important for AQ_DOWNLOAD_FINISHED to 'pass' on downloads that aren't partials",2321 'PARAMETERS': {u'hash_eq_local_hash': u'T',2322 u'hash_eq_server_hash': u'F',2323 u'not_authorized': u'NA',2324 u'not_available': u'NA'},2325 'STATE': {u'changed': u'SERVER',2326 u'has_metadata': u'T',2327 u'is_directory': u'F'},2328 'STATE_OUT': {u'changed': u'NONE',2329 u'has_metadata': u'=',2330 u'is_directory': u'='}},2331 {'ACTION': u'aq.cancel_download(uuid)\nmd.set(uuid, server_hash=hash)\npartial = md.get_partial(uuid)\naq.getcontent(*partial)',2332 'ACTION_FUNC': u'reget_file',2333 'COMMENTS': u'a download was in progress but the server changed again. Note that this makes it important for AQ_DOWNLOAD_FINISHED to check the server hash.',2334 'PARAMETERS': {u'hash_eq_local_hash': u'F',2335 u'hash_eq_server_hash': u'F',2336 u'not_authorized': u'NA',2337 u'not_available': u'NA'},2338 'STATE': {u'changed': u'SERVER',2339 u'has_metadata': u'T',2340 u'is_directory': u'F'},2341 'STATE_OUT': {u'changed': u'SERVER',2342 u'has_metadata': u'=',2343 u'is_directory': u'='}},2344 {'ACTION': u'NA',2345 'ACTION_FUNC': u'',2346 'COMMENTS': u'LOCAL, T, T is a impossible (LOCAL implies server_hash != local_hash)',2347 'PARAMETERS': {u'hash_eq_local_hash': u'T',2348 u'hash_eq_server_hash': u'T',2349 u'not_authorized': u'NA',2350 u'not_available': u'NA'},2351 'STATE': {u'changed': u'LOCAL',2352 u'has_metadata': u'T',2353 u'is_directory': u'F'},2354 'STATE_OUT': {u'changed': u'*',2355 u'has_metadata': u'*',2356 u'is_directory': u'*'}},2357 {'ACTION': u'aq.upload()',2358 'ACTION_FUNC': u'reput_file_from_local',2359 'COMMENTS': u'The upload was interrupted, just try it again. ',2360 'PARAMETERS': {u'hash_eq_local_hash': u'F',2361 u'hash_eq_server_hash': u'T',2362 u'not_authorized': u'NA',2363 u'not_available': u'NA'},2364 'STATE': {u'changed': u'LOCAL',2365 u'has_metadata': u'T',2366 u'is_directory': u'F'},2367 'STATE_OUT': {u'changed': u'=',2368 u'has_metadata': u'=',2369 u'is_directory': u'='}},2370 {'ACTION': u'aq.cancel_upload(uuid)\nmd.set(uuid, server_hash=hash)',2371 'ACTION_FUNC': u'server_file_now_matches',2372 'COMMENTS': u"there's a small chance that the cancel fails, in which case we're simply redundant",2373 'PARAMETERS': {u'hash_eq_local_hash': u'T',2374 u'hash_eq_server_hash': u'F',2375 u'not_authorized': u'NA',2376 u'not_available': u'NA'},2377 'STATE': {u'changed': u'LOCAL',2378 u'has_metadata': u'T',2379 u'is_directory': u'F'},2380 'STATE_OUT': {u'changed': u'NONE',2381 u'has_metadata': u'=',2382 u'is_directory': u'='}},2383 {'ACTION': u'CONFLICT',2384 'ACTION_FUNC': u'local_file_conflict',2385 'COMMENTS': u'',2386 'PARAMETERS': {u'hash_eq_local_hash': u'F',2387 u'hash_eq_server_hash': u'F',2388 u'not_authorized': u'NA',2389 u'not_available': u'NA'},2390 'STATE': {u'changed': u'LOCAL',2391 u'has_metadata': u'T',2392 u'is_directory': u'F'},2393 'STATE_OUT': {u'changed': u'SERVER',2394 u'has_metadata': u'T',2395 u'is_directory': u'='}},2396 {'ACTION': u'pass',2397 'ACTION_FUNC': u'DESPAIR',2398 'COMMENTS': u'cant set hash on directories',2399 'PARAMETERS': {u'hash_eq_local_hash': u'!NA',2400 u'hash_eq_server_hash': u'T',2401 u'not_authorized': u'NA',2402 u'not_available': u'NA'},2403 'STATE': {u'changed': u'NONE',2404 u'has_metadata': u'T',2405 u'is_directory': u'T'},2406 'STATE_OUT': {u'changed': u'=',2407 u'has_metadata': u'=',2408 u'is_directory': u'='}},2409 {'ACTION': u'md.set(uuid, server_hash=hash)\npartial = md.create_partial(uuid)\naq.getcontent(*partial)',2410 'ACTION_FUNC': u'DESPAIR',2411 'COMMENTS': u'cant set hash on directories',2412 'PARAMETERS': {u'hash_eq_local_hash': u'!NA',2413 u'hash_eq_server_hash': u'F',2414 u'not_authorized': u'NA',2415 u'not_available': u'NA'},2416 'STATE': {u'changed': u'NONE',2417 u'has_metadata': u'T',2418 u'is_directory': u'T'},2419 'STATE_OUT': {u'changed': u'SERVER',2420 u'has_metadata': u'=',2421 u'is_directory': u'='}},2422 {'ACTION': u'aq.cancel_download(uuid) \nmd.set(uuid, server_hash=hash)',2423 'ACTION_FUNC': u'DESPAIR',2424 'COMMENTS': u'cant set hash on directories',2425 'PARAMETERS': {u'hash_eq_local_hash': u'!NA',2426 u'hash_eq_server_hash': u'T',2427 u'not_authorized': u'NA',2428 u'not_available': u'NA'},2429 'STATE': {u'changed': u'SERVER',2430 u'has_metadata': u'T',2431 u'is_directory': u'T'},2432 'STATE_OUT': {u'changed': u'SERVER',2433 u'has_metadata': u'=',2434 u'is_directory': u'='}},2435 {'ACTION': u'aq.cancel_download(uuid)\nmd.set(uuid, server_hash=hash)\npartial = md.get_partial(uuid)\naq.getcontent(*partial)',2436 'ACTION_FUNC': u'DESPAIR',2437 'COMMENTS': u'cant set hash on directories',2438 'PARAMETERS': {u'hash_eq_local_hash': u'!NA',2439 u'hash_eq_server_hash': u'F',2440 u'not_authorized': u'NA',2441 u'not_available': u'NA'},2442 'STATE': {u'changed': u'SERVER',2443 u'has_metadata': u'T',2444 u'is_directory': u'T'},2445 'STATE_OUT': {u'changed': u'NONE',2446 u'has_metadata': u'=',2447 u'is_directory': u'='}}],2448 u'SV_MOVED': [{'ACTION': u'DESPAIR',2449 'ACTION_FUNC': u'DESPAIR',2450 'COMMENTS': u'',2451 'PARAMETERS': {u'hash_eq_local_hash': u'NA',2452 u'hash_eq_server_hash': u'NA',2453 u'not_authorized': u'NA',2454 u'not_available': u'NA'},2455 'STATE': {u'changed': u'NA',2456 u'has_metadata': u'F',2457 u'is_directory': u'NA'},2458 'STATE_OUT': {u'changed': u'*',2459 u'has_metadata': u'*',2460 u'is_directory': u'*'}},2461 {'ACTION': u'md.move(uuid)',2462 'ACTION_FUNC': u'server_moved',2463 'COMMENTS': u'all pending changes should arrive to the moved file\naq should remove the destination if its there',2464 'PARAMETERS': {u'hash_eq_local_hash': u'NA',2465 u'hash_eq_server_hash': u'NA',2466 u'not_authorized': u'NA',2467 u'not_available': u'NA'},2468 'STATE': {u'changed': u'!SERVER',2469 u'has_metadata': u'T',2470 u'is_directory': u'*'},2471 'STATE_OUT': {u'changed': u'=',2472 u'has_metadata': u'T',2473 u'is_directory': u'='}},2474 {'ACTION': u'cancel_download; move; query',2475 'ACTION_FUNC': u'server_moved_dirty',2476 'COMMENTS': u'we got a move while we were downloading it',2477 'PARAMETERS': {u'hash_eq_local_hash': u'NA',2478 u'hash_eq_server_hash': u'NA',2479 u'not_authorized': u'NA',2480 u'not_available': u'NA'},2481 'STATE': {u'changed': u'SERVER',2482 u'has_metadata': u'T',2483 u'is_directory': u'*'},2484 'STATE_OUT': {u'changed': u'=',2485 u'has_metadata': u'T',2486 u'is_directory': u'='}}]},2487 'invalid': [{u'changed': u'NONE',2488 u'has_metadata': u'F',2489 u'is_directory': u'T'},2490 {u'changed': u'SERVER',2491 u'has_metadata': u'F',2492 u'is_directory': u'T'},2493 {u'changed': u'LOCAL',2494 u'has_metadata': u'F',2495 u'is_directory': u'T'},2496 {u'changed': u'NONE',2497 u'has_metadata': u'F',2498 u'is_directory': u'F'},2499 {u'changed': u'SERVER',2500 u'has_metadata': u'F',2501 u'is_directory': u'F'},2502 {u'changed': u'LOCAL',2503 u'has_metadata': u'F',2504 u'is_directory': u'F'},2505 {u'changed': u'NONE',2506 u'has_metadata': u'F',2507 u'is_directory': u'NA'},2508 {u'changed': u'SERVER',2509 u'has_metadata': u'F',2510 u'is_directory': u'NA'},2511 {u'changed': u'LOCAL',2512 u'has_metadata': u'F',2513 u'is_directory': u'NA'},2514 {u'changed': u'NONE',2515 u'has_metadata': u'T',2516 u'is_directory': u'NA'},2517 {u'changed': u'SERVER',2518 u'has_metadata': u'T',2519 u'is_directory': u'NA'},2520 {u'changed': u'LOCAL',2521 u'has_metadata': u'T',2522 u'is_directory': u'NA'},2523 {u'changed': u'NA',2524 u'has_metadata': u'T',2525 u'is_directory': u'NA'},2526 {u'changed': u'NA',2527 u'has_metadata': u'T',2528 u'is_directory': u'F'},2529 {u'changed': u'NA',2530 u'has_metadata': u'T',2531 u'is_directory': u'T'},2532 {u'changed': u'LOCAL',2533 u'has_metadata': u'T',2534 u'is_directory': u'T'},2535 {u'changed': u'NA',2536 u'has_metadata': u'F',2537 u'is_directory': u'T'},2538 {u'changed': u'NA',2539 u'has_metadata': u'F',2540 u'is_directory': u'F'}],2541 'parameters': {u'hash_eq_local_hash': u'hash == md.local_hash',2542 u'hash_eq_server_hash': u'hash == md.server_hash',2543 u'not_authorized': u'error == not authorized',2544 u'not_available': u'error == not available'},2545 'state_vars': {u'changed': u'changed',2546 u'has_metadata': u'\u2203 md',...
configuration_file_response.py
Source:configuration_file_response.py
...80 :type: str81 """82 self._last_read_hash = last_read_hash83 @property84 def is_directory(self):85 """Gets the is_directory of this ConfigurationFileResponse. # noqa: E50186 If Tgstation.Server.Api.Models.Response.ConfigurationFileResponse.Path represents a directory # noqa: E50187 :return: The is_directory of this ConfigurationFileResponse. # noqa: E50188 :rtype: bool89 """90 return self._is_directory91 @is_directory.setter92 def is_directory(self, is_directory):93 """Sets the is_directory of this ConfigurationFileResponse.94 If Tgstation.Server.Api.Models.Response.ConfigurationFileResponse.Path represents a directory # noqa: E50195 :param is_directory: The is_directory of this ConfigurationFileResponse. # noqa: E50196 :type: bool97 """98 self._is_directory = is_directory99 @property100 def access_denied(self):101 """Gets the access_denied of this ConfigurationFileResponse. # noqa: E501102 If access to the Tgstation.Server.Api.Models.IConfigurationFile file was denied for the operation # noqa: E501103 :return: The access_denied of this ConfigurationFileResponse. # noqa: E501104 :rtype: bool105 """106 return self._access_denied...
typio_test.py
Source:typio_test.py
1import unittest2from typio import Entry3class TestTypio(unittest.TestCase):4 def test_default_patterns(self):5 entry = Entry({6 "origin": "github",7 "name": "Mockito",8 "url": "https://github.com/mockito/mockito",9 "language": "Java",10 "commit": "v2.11.0",11 })12 # By default, everything should be included13 self.assertFalse(entry.ignorable('src/main', is_directory=True))14 self.assertFalse(entry.ignorable('src/main/java/Main.java', is_directory=False))15 self.assertFalse(entry.ignorable('src/test', is_directory=True))16 self.assertFalse(entry.ignorable('src/test/java/Test.java', is_directory=False))17 self.assertFalse(entry.ignorable('gradle', is_directory=True))18 self.assertFalse(entry.ignorable('README.md', is_directory=False))19 # Except hidden files20 self.assertTrue(entry.ignorable('.github', is_directory=True))21 self.assertTrue(entry.ignorable('.gitignore', is_directory=False))22 def test_custom_patterns(self):23 entry = Entry({24 "origin": "github",25 "name": "Mockito",26 "url": "https://github.com/mockito/mockito",27 "language": "Java",28 "commit": "v2.11.0",29 "includes": ["/src/", "*.gradle", "*.properties"],30 "excludes": ["/src/javadoc/", "/src/conf/"],31 })32 # Everything under stc/main should be included33 self.assertFalse(entry.ignorable('src/main', is_directory=True))34 self.assertFalse(entry.ignorable('src/main/java/Main.java', is_directory=False))35 # Everything under src/javadoc should be ignored36 self.assertTrue(entry.ignorable('src/javadoc', is_directory=True))37 self.assertTrue(entry.ignorable('src/javadoc/index.html', is_directory=False))38 # Hidden files should be ignored39 self.assertTrue(entry.ignorable('.github', is_directory=True))40 self.assertTrue(entry.ignorable('.gitignore', is_directory=False))41 # Non specified folders should be ignored42 self.assertTrue(entry.ignorable('gradle', is_directory=True))43 def test_default_extensions(self):44 entry = Entry({45 "origin": "github",46 "name": "Mockito",47 "url": "https://github.com/mockito/mockito",48 "language": "Java",49 "commit": "v2.11.0"50 })51 # There is no filtering on extension by default52 self.assertFalse(entry.ignorable('src/main/java/Main.java', is_directory=False))53 self.assertFalse(entry.ignorable('src/main/go/main.go', is_directory=False))54 self.assertFalse(entry.ignorable('src/main/c/main.h', is_directory=False))55 self.assertFalse(entry.ignorable('README.md', is_directory=False))56 self.assertFalse(entry.ignorable('README.adoc', is_directory=False))57 self.assertFalse(entry.ignorable('README', is_directory=False))58 def test_custom_extensions(self):59 entry = Entry({60 "origin": "github",61 "name": "Mockito",62 "url": "https://github.com/mockito/mockito",63 "language": "Java",64 "commit": "v2.11.0",65 "extensions": ["java", "h", "adoc"]66 })67 # There is no filtering on extension by default68 self.assertFalse(entry.ignorable('src/main/java/Main.java', is_directory=False))69 self.assertTrue(entry.ignorable('src/main/go/main.go', is_directory=False))70 self.assertFalse(entry.ignorable('src/main/c/main.h', is_directory=False))71 self.assertTrue(entry.ignorable('src/README.md', is_directory=False))72 self.assertFalse(entry.ignorable('src/README.adoc', is_directory=False))73 self.assertTrue(entry.ignorable('src/README', is_directory=False))74 def test_root_files(self):75 entry = Entry({76 "origin": "github",77 "name": "Mockito",78 "url": "https://github.com/mockito/mockito",79 "language": "Java",80 "commit": "v2.11.0",81 "includes": ["src"]82 })83 # There is no filtering on extension by default84 self.assertTrue(entry.ignorable('docs', is_directory=True))85 self.assertTrue(entry.ignorable('docs/index.html', is_directory=False))86 self.assertFalse(entry.ignorable('src/main/go/main.go', is_directory=False))87 self.assertFalse(entry.ignorable('README.md', is_directory=False))88 self.assertFalse(entry.ignorable('LICENSE', is_directory=False))89if __name__ == '__main__':...
Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!