Changeset View
Changeset View
Standalone View
Standalone View
swh/model/hypothesis_strategies.py
Show First 20 Lines • Show All 233 Lines • ▼ Show 20 Lines | |||||
def contents(): | def contents(): | ||||
return one_of(present_contents(), skipped_contents()) | return one_of(present_contents(), skipped_contents()) | ||||
def present_contents_d(): | def present_contents_d(): | ||||
return builds( | return builds( | ||||
dict, | dict, | ||||
data=binary(max_size=4096), | data=binary(max_size=4096), | ||||
ctime=optional(datetimes()), | |||||
status=one_of(just('visible'), just('hidden')), | status=one_of(just('visible'), just('hidden')), | ||||
) | ) | ||||
def present_contents(): | def present_contents(): | ||||
return present_contents_d().map(lambda d: Content.from_data(**d)) | return present_contents_d().map(lambda d: Content.from_data(**d)) | ||||
@composite | @composite | ||||
def skipped_contents_d(draw): | def skipped_contents_d(draw): | ||||
result = BaseContent._hash_data(draw(binary(max_size=4096))) | result = BaseContent._hash_data(draw(binary(max_size=4096))) | ||||
result.pop('data') | result.pop('data') | ||||
nullify_attrs = draw( | nullify_attrs = draw( | ||||
sets(sampled_from(['sha1', 'sha1_git', 'sha256', 'blake2s256'])) | sets(sampled_from(['sha1', 'sha1_git', 'sha256', 'blake2s256'])) | ||||
) | ) | ||||
for k in nullify_attrs: | for k in nullify_attrs: | ||||
result[k] = None | result[k] = None | ||||
result['reason'] = draw(pgsql_text()) | result['reason'] = draw(pgsql_text()) | ||||
result['status'] = 'absent' | result['status'] = 'absent' | ||||
result['ctime'] = draw(optional(datetimes())) | |||||
return result | return result | ||||
def skipped_contents(): | def skipped_contents(): | ||||
return skipped_contents_d().map(SkippedContent.from_dict) | return skipped_contents_d().map(SkippedContent.from_dict) | ||||
def branch_names(): | def branch_names(): | ||||
▲ Show 20 Lines • Show All 102 Lines • Show Last 20 Lines |