Beispiel #1
0
def resolve_remote_path_args(args: argparse.Namespace, attrs: list, incl_trash: bool = True):
    """In-place replaces certain attributes in Namespace by resolved node ID.
    :param attrs: list of attributes that may be given in absolute path form
    :param incl_trash: whether to resolve trashed files
    """
    for id_attr in attrs:
        if hasattr(args, id_attr):
            val = getattr(args, id_attr)
            if not val:
                continue
            if '/' in val:
                v = cache.resolve_path(val, trash=incl_trash)
                if not v:
                    logger.critical('Could not resolve path "%s".' % val)
                    sys.exit(INVALID_ARG_RETVAL)
                logger.info('Resolved "%s" to "%s"' % (val, v))
                setattr(args, id_attr, v)
                setattr(args, id_attr + '_path', val)
            elif not is_valid_id(val):
                logger.critical('Invalid ID format: "%s".' % val)
                sys.exit(INVALID_ARG_RETVAL)
Beispiel #2
0
def resolve_remote_path_args(args: argparse.Namespace, attrs: list, incl_trash: bool = True):
    """In-place replaces certain attributes in Namespace by resolved node ID.
    :param attrs: list of attributes that may be given in absolute path form
    :param incl_trash: whether to resolve trashed files
    """
    for id_attr in attrs:
        if hasattr(args, id_attr):
            val = getattr(args, id_attr)
            if not val:
                continue
            if '/' in val:
                v = cache.resolve_path(val, trash=incl_trash)
                if not v:
                    logger.critical('Could not resolve path "%s".' % val)
                    sys.exit(INVALID_ARG_RETVAL)
                logger.info('Resolved "%s" to "%s"' % (val, v))
                setattr(args, id_attr, v)
                setattr(args, id_attr + '_path', val)
            elif not is_valid_id(val):
                logger.critical('Invalid ID format: "%s".' % val)
                sys.exit(INVALID_ARG_RETVAL)
Beispiel #3
0
 def testInvalidID1(self):
     self.assertFalse(common.is_valid_id('äbcdéfghíjklmnöpqrstüv'))
Beispiel #4
0
 def testInvalidID2(self):
     self.assertFalse(common.is_valid_id('abcdefghijklmnopqrstu'))
Beispiel #5
0
 def testValidIDs(self):
     for _ in range(1000):
         self.assertTrue(common.is_valid_id(gen_rand_id()))
Beispiel #6
0
 def testInvalidID0(self):
     self.assertFalse(common.is_valid_id(''))
Beispiel #7
0
 def testValidID1(self):
     self.assertTrue(common.is_valid_id('0123456789012345678901'))
Beispiel #8
0
 def testValidID3(self):
     self.assertTrue(common.is_valid_id('a0b1c2d3e4f--6h7i8j9k0'))
Beispiel #9
0
 def testValidID1(self):
     self.assertTrue(common.is_valid_id('0123456789012345678901'))
Beispiel #10
0
 def testValidID0(self):
     self.assertTrue(common.is_valid_id('abcdefghijklmnopqrstuv'))
Beispiel #11
0
 def test_get_root_id(self):
     id = metadata.get_root_id()
     self.assertTrue(common.is_valid_id(id))
Beispiel #12
0
 def test_get_root_id(self):
     id = metadata.get_root_id()
     self.assertTrue(common.is_valid_id(id))
Beispiel #13
0
 def testInvalidID2(self):
     self.assertFalse(common.is_valid_id('abcdefghijklmnopqrstu'))
Beispiel #14
0
 def testInvalidID1(self):
     self.assertFalse(common.is_valid_id('äbcdéfghíjklmnöpqrstüv'))
Beispiel #15
0
 def testInvalidID0(self):
     self.assertFalse(common.is_valid_id(''))
Beispiel #16
0
 def testValidIDs(self):
     for _ in range(1000):
         self.assertTrue(common.is_valid_id(gen_rand_id()))
Beispiel #17
0
 def testValidID3(self):
     self.assertTrue(common.is_valid_id('a0b1c2d3e4f--6h7i8j9k0'))
Beispiel #18
0
 def test_get_root_id(self):
     id = self.acd_client.get_root_id()
     self.assertTrue(common.is_valid_id(id))
Beispiel #19
0
 def testValidID0(self):
     self.assertTrue(common.is_valid_id('abcdefghijklmnopqrstuv'))