Esempio n. 1
0
 async def _load_adversaries(self, plugin):
     for filename in glob.iglob('%s/adversaries/**/*.yml' % plugin.data_dir,
                                recursive=True):
         for adv in self.strip_yml(filename):
             adversary = Adversary.load(adv)
             adversary.access = plugin.access
             await self.store(adversary)
Esempio n. 2
0
 async def _construct_adversary_for_op(self, adversary_id):
     adv = await self.get_service('data_svc').locate(
         'adversaries', match=dict(adversary_id=adversary_id))
     if adv:
         return copy.deepcopy(adv[0])
     return Adversary.load(
         dict(adversary_id='ad-hoc',
              name='ad-hoc',
              description='an empty adversary profile',
              atomic_ordering=[]))
 async def _construct_and_dump_adversary(self, adversary_id: str):
     adv = await self.services['data_svc'].locate(
         'adversaries', match=dict(adversary_id=adversary_id))
     if not adv:
         adv = Adversary.load(
             dict(adversary_id='ad-hoc',
                  name='ad-hoc',
                  description='an empty adversary profile',
                  atomic_ordering=[]))
     else:
         adv = adv[0]
     return AdversarySchema().dump(adv)
Esempio n. 4
0
 async def load_adversary_file(self, filename, access):
     for adv in self.strip_yml(filename):
         adversary = Adversary.load(adv)
         adversary.access = access
         await self.store(adversary)
Esempio n. 5
0
def expected_new_adversary_dump(new_adversary_payload):
    adversary = Adversary.load(new_adversary_payload)
    return adversary.schema.dump(adversary)
Esempio n. 6
0
def expected_new_duplicate_id_adversary_dump(
        new_adversary_duplicate_id_payload):
    payload = new_adversary_duplicate_id_payload.copy()
    payload.pop('id')
    adversary = Adversary.load(payload)
    return adversary.schema.dump(adversary)