Skip to content

Regression

OmeroPy.test.integration.gatewaytest.test_wrapper.TestWrapper.testAllObjectsWrapped (from pytest)

Failing for the past 1 build (Since #554 )
Took 7.6 sec.

Error Message

failed on setup with "ValueError: invalid literal for int() with base 10: b''"

Stacktrace

request = <SubRequest 'author_testimg' for <Function testAllObjectsWrapped>>
gatewaywrapper = <omero.gateway.pytest_fixtures.GatewayWrapper object at 0x7f49b7397f90>

    @pytest.fixture(scope='function')
    def author_testimg(request, gatewaywrapper):
        """
        logs in as Author and returns the test image, creating it first if needed.
        """
        gatewaywrapper.loginAsAuthor()
>       rv = gatewaywrapper.getTestImage(autocreate=True)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

../../../../.venv3/lib64/python3.11/site-packages/omero/gateway/pytest_fixtures.py:81: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
../../../../.venv3/lib64/python3.11/site-packages/omero/gateway/scripts/testdb_create.py:148: in getTestImage
    return dbhelpers.getImage(self.gateway, 'testimg1', forceds=dataset,
../../../../.venv3/lib64/python3.11/site-packages/omero/gateway/scripts/dbhelpers.py:489: in getImage
    i = IMAGES[alias].create()
        ^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <omero.gateway.scripts.dbhelpers.ImageEntry object at 0x7f49a053a2d0>

    def create(self):
        if isinstance(self.dataset, str):
            dataset = DATASETS[self.dataset]
            project = PROJECTS[dataset.project]
            client = USERS[project.owner].login()
            dataset = dataset.get(client)
        else:
            dataset = self.dataset
            client = dataset._conn
        i = self.get(client, dataset)
        if i is not None:
            # print ".. -> image already exists: %s" % self.name
            return i
        # print ".. -> create new image: %s" % self.name
        sys.stderr.write('I')
        if self.filename is False:
            UserEntry.setGroupForSession(
                client, dataset.getDetails().getGroup().getName())
            self._createWithoutPixels(client, dataset)
            return self.get(client, dataset)
        fpath = os.path.join(BASEPATH, self.filename)
        if not os.path.exists(fpath):
            if not os.path.exists(os.path.dirname(fpath)):
                os.makedirs(os.path.dirname(fpath))
            if self.filename.endswith('.fake'):
                # If it's a .fake file, simply create it
                os.close(os.open(fpath, os.O_CREAT | os.O_EXCL))
            else:
                 raise IOError('No such file %s' % fpath)
        host = dataset._conn.c.ic.getProperties().getProperty(
            'omero.host') or 'localhost'
        port = dataset._conn.c.ic.getProperties().getProperty(
            'omero.port') or '4063'
    
        exe = "omero"
        newconn = dataset._conn.clone()
        newconn.connect()
        try:
            UserEntry.setGroupForSession(
                newconn, dataset.getDetails().getGroup().getName())
            session = newconn._sessionUuid
            # print session
            exe += ' -s %s -k %s -p %s import -d %i --output legacy -n' % (
                host, session, port, dataset.getId())
            exe = exe.split() + [self.name, fpath]
            print(' '.join(exe))
            try:
                p = subprocess.Popen(
                    exe,  shell=False, stdout=subprocess.PIPE,
                    stderr=subprocess.PIPE)
            except OSError:
                print("!!Please make sure the 'omero' executable is in PATH")
                return None
    
            pid = p.communicate()
            try:
                img = omero.gateway.ImageWrapper(
                    dataset._conn,
                    dataset._conn.getQueryService().find(
>                       'Pixels', int(pid[0].split(b'\n')[0].strip())).image)
                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
E                       ValueError: invalid literal for int() with base 10: b''

../../../../.venv3/lib64/python3.11/site-packages/omero/gateway/scripts/dbhelpers.py:442: ValueError