本文整理汇总了Python中testtools.matchers.MatchesStructure类的典型用法代码示例。如果您正苦于以下问题:Python MatchesStructure类的具体用法?Python MatchesStructure怎么用?Python MatchesStructure使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了MatchesStructure类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_values
def test_values(self):
task = self.factory.makeBugTask()
with person_logged_in(task.product.owner):
task.transitionToAssignee(self.factory.makePerson())
task.transitionToMilestone(
self.factory.makeMilestone(product=task.product),
task.product.owner)
task.bug.markAsDuplicate(self.factory.makeBug())
flat = self.getBugTaskFlat(task)
self.assertThat(
flat,
MatchesStructure.byEquality(
bugtask=task.id,
bug=task.bug.id,
datecreated=task.datecreated.replace(tzinfo=None),
duplicateof=task.bug.duplicateof.id,
bug_owner=task.bug.owner.id,
information_type=task.bug.information_type.value,
date_last_updated=task.bug.date_last_updated.replace(
tzinfo=None),
heat=task.bug.heat,
product=task.product.id,
productseries=None,
distribution=None,
distroseries=None,
sourcepackagename=None,
status=task.status.value,
importance=task.importance.value,
assignee=task.assignee.id,
milestone=task.milestone.id,
owner=task.owner.id,
active=task.product.active,
access_policies=None,
access_grants=None))
self.assertIsNot(None, flat.fti)
示例2: test_updateWorkItems_merges_with_existing_ones
def test_updateWorkItems_merges_with_existing_ones(self):
spec = self.factory.makeSpecification(
product=self.factory.makeProduct())
login_person(spec.owner)
# Create two work-items in our database.
wi1_data = self._createWorkItemAndReturnDataDict(spec)
wi2_data = self._createWorkItemAndReturnDataDict(spec)
self.assertEqual(2, len(spec.work_items))
# These are the work items we'll be inserting.
new_wi1_data = dict(
title=u'Some Title', status=SpecificationWorkItemStatus.TODO,
assignee=None, milestone=None)
new_wi2_data = dict(
title=u'Other title', status=SpecificationWorkItemStatus.TODO,
assignee=None, milestone=None)
# We want to insert the two work items above in the first and third
# positions respectively, so the existing ones to be moved around
# (e.g. have their sequence updated).
work_items = [new_wi1_data, wi1_data, new_wi2_data, wi2_data]
spec.updateWorkItems(work_items)
# Update our data dicts with the sequences we expect the work items in
# our DB to have.
new_wi1_data['sequence'] = 0
wi1_data['sequence'] = 1
new_wi2_data['sequence'] = 2
wi2_data['sequence'] = 3
self.assertEqual(4, len(spec.work_items))
for data, obj in zip(work_items, list(spec.work_items)):
self.assertThat(obj, MatchesStructure.byEquality(**data))
示例3: test__Version_read
def test__Version_read(self):
session = bones.SessionAPI(self.description)
action = session.Version.read
self.assertThat(action, MatchesStructure.byEquality(
name="read", fullname="Version.read", method="GET",
handler=session.Version, is_restful=True, op=None,
))
示例4: _dup_work_items_set_up
def _dup_work_items_set_up(self):
spec = self.factory.makeSpecification(
product=self.factory.makeProduct())
login_person(spec.owner)
# Create two work-items in our database.
wi1_data = self._createWorkItemAndReturnDataDict(spec)
wi2_data = self._createWorkItemAndReturnDataDict(spec)
# Create a duplicate and a near duplicate, insert into DB.
new_wi1_data = wi2_data.copy()
new_wi2_data = new_wi1_data.copy()
new_wi2_data['status'] = SpecificationWorkItemStatus.DONE
work_items = [new_wi1_data, wi1_data, new_wi2_data, wi2_data]
spec.updateWorkItems(work_items)
# Update our data dicts with the sequences to match data in DB
new_wi1_data['sequence'] = 0
wi1_data['sequence'] = 1
new_wi2_data['sequence'] = 2
wi2_data['sequence'] = 3
self.assertEqual(4, len(spec.work_items))
for data, obj in zip(work_items, spec.work_items):
self.assertThat(obj, MatchesStructure.byEquality(**data))
return spec, work_items
示例5: test_WithNativeArgs
def test_WithNativeArgs(self):
# Options can be passed as the string representations of the
# types the script wants them in.
options = parse_opts([
'--submitter=1',
'--reviewer=2',
'--id=3',
'--id=4',
'--potemplate=5',
'--language=te',
'--not-language',
'--is-current-ubuntu=True',
'--is-current-upstream=False',
'--msgid=Hello',
'--origin=1',
'--force',
])
self.assertThat(options, MatchesStructure.byEquality(
submitter=1,
reviewer=2,
ids=[3, 4],
potemplate=5,
language='te',
not_language=True,
is_current_ubuntu=True,
is_current_upstream=False,
origin=1,
force=True))
示例6: test_if_message_given_message
def test_if_message_given_message(self):
# Annotate.if_message returns an annotated version of the matcher if a
# message is provided.
matcher = Equals(1)
expected = Annotate("foo", matcher)
annotated = Annotate.if_message("foo", matcher)
self.assertThat(annotated, MatchesStructure.fromExample(expected, "annotation", "matcher"))
示例7: test_merge_accesspolicygrants_conflicts
def test_merge_accesspolicygrants_conflicts(self):
# Conflicting AccessPolicyGrants are deleted.
policy = self.factory.makeAccessPolicy()
person = self.factory.makePerson()
person_grantor = self.factory.makePerson()
person_grant = self.factory.makeAccessPolicyGrant(
grantee=person, grantor=person_grantor, policy=policy)
person_grant_date = person_grant.date_created
duplicate = self.factory.makePerson()
duplicate_grantor = self.factory.makePerson()
self.factory.makeAccessPolicyGrant(
grantee=duplicate, grantor=duplicate_grantor, policy=policy)
self._do_premerge(duplicate, person)
with person_logged_in(person):
self._do_merge(duplicate, person)
# Only one grant for the policy exists: the retained person's.
source = getUtility(IAccessPolicyGrantSource)
self.assertThat(
source.findByPolicy([policy]).one(),
MatchesStructure.byEquality(
policy=policy,
grantee=person,
date_created=person_grant_date))
示例8: test__Machines_deployment_status
def test__Machines_deployment_status(self):
session = bones.SessionAPI(self.description, ("a", "b", "c"))
action = session.Machines.deployment_status
self.assertThat(action, MatchesStructure.byEquality(
name="deployment_status", fullname="Machines.deployment_status",
method="GET", handler=session.Machines, is_restful=False,
op="deployment_status",
))
示例9: test_initialisation
def test_initialisation(self):
server_address = factory.getRandomString()
shared_key = factory.getRandomString()
shell = Omshell(server_address, shared_key)
self.assertThat(
shell, MatchesStructure.byEquality(
server_address=server_address,
shared_key=shared_key))
示例10: test_toTerm_empty_description
def test_toTerm_empty_description(self):
archive = self.factory.makeArchive(description='')
vocab = PPAVocabulary()
term = vocab.toTerm(archive)
self.assertThat(term, MatchesStructure.byEquality(
value=archive,
token='%s/%s' % (archive.owner.name, archive.name),
title='No description available'))
示例11: test_getConfigs_maps_distro_and_purpose_to_matching_config
def test_getConfigs_maps_distro_and_purpose_to_matching_config(self):
distro = self.makeDistroWithPublishDirectory()
script = self.makeScript(distro)
script.setUp()
reference_config = getPubConfig(distro.main_archive)
config = script.getConfigs()[distro][ArchivePurpose.PRIMARY]
self.assertThat(
config, MatchesStructure.fromExample(
reference_config, 'temproot', 'distroroot', 'archiveroot'))
示例12: test_getTermByToken
def test_getTermByToken(self):
vocab = InformationTypeVocabulary([InformationType.PUBLIC])
self.assertThat(
vocab.getTermByToken('PUBLIC'),
MatchesStructure.byEquality(
value=InformationType.PUBLIC,
token='PUBLIC',
title='Public',
description=InformationType.PUBLIC.description))
示例13: test_DDEBsGetOverrideFromDEBs
def test_DDEBsGetOverrideFromDEBs(self):
# Test the basic case ensuring that DDEB files always match the
# DEB's overrides.
deb = self.addFile("foo_1.0_i386.deb", "main/devel", "extra")
ddeb = self.addFile("foo-dbgsym_1.0_i386.ddeb", "universe/web", "low")
self.assertMatchDDEBErrors([])
self.upload._overrideDDEBSs()
self.assertThat(ddeb, MatchesStructure.fromExample(deb, "component_name", "section_name", "priority_name"))
示例14: test_productseries_target
def test_productseries_target(self):
ps = self.factory.makeProductSeries()
task = self.factory.makeBugTask(target=ps)
flat = self.getBugTaskFlat(task)
self.assertThat(
flat,
MatchesStructure.byEquality(
product=None, productseries=ps.id, distribution=None,
distroseries=None, sourcepackagename=None, active=True))
示例15: test_sourcepackage_target
def test_sourcepackage_target(self):
sp = self.factory.makeSourcePackage()
task = self.factory.makeBugTask(target=sp)
flat = self.getBugTaskFlat(task)
self.assertThat(
flat,
MatchesStructure.byEquality(
product=None, productseries=None, distribution=None,
distroseries=sp.distroseries.id,
sourcepackagename=sp.sourcepackagename.id, active=True))