当前位置: 首页>>代码示例>>Python>>正文


Python commands.formfile函数代码示例

本文整理汇总了Python中twill.commands.formfile函数的典型用法代码示例。如果您正苦于以下问题:Python formfile函数的具体用法?Python formfile怎么用?Python formfile使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。


在下文中一共展示了formfile函数的12个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: upload

 def upload(self, input):
     self.get("/tool_runner/index?tool_id=upload1")
     tc.fv("1", "file_type", "bed")
     tc.fv("1", "dbkey", input.get('dbkey', '?'))
     tc.formfile("1", "file_data", input['file_path'])
     tc.submit("runtool_btn")
     tc.code(200)
开发者ID:ARTbio,项目名称:galaxy,代码行数:7,代码来源:check_galaxy.py

示例2: test_image_processing_library_error

    def test_image_processing_library_error(self):
        """
        If the image processing library errors while preparing a photo, report a
        helpful message to the user and log the error. The photo is not added
        to the user's profile.
        """
        # Get a copy of the error log.
        string_log = StringIO.StringIO()
        logger = logging.getLogger()
        my_log = logging.StreamHandler(string_log)
        logger.addHandler(my_log)
        logger.setLevel(logging.ERROR)

        self.login_with_twill()
        tc.go(make_twill_url('http://openhatch.org/people/paulproteus/'))
        tc.follow('photo')
        # This is a special image from issue166 that passes Django's image
        # validation tests but causes an exception during zlib decompression.
        tc.formfile('edit_photo', 'photo', photo('static/images/corrupted.png'))
        tc.submit()
        tc.code(200)

        self.assert_("Something went wrong while preparing this" in tc.show())
        p = Person.objects.get(user__username='paulproteus')
        self.assertFalse(p.photo.name)

        # an error message was logged during photo processing.
        self.assert_("zlib.error" in string_log.getvalue())
        logger.removeHandler(my_log)
开发者ID:boblannon,项目名称:oh-mainline,代码行数:29,代码来源:tests.py

示例3: upload_file

 def upload_file(self, fname, ftype='auto', dbkey='hg17'):
     """Uploads a file"""
     fname = self.get_fname(fname)
     tc.go("./tool_runner/index?tool_id=upload1")
     tc.fv("1","file_type", ftype)
     tc.fv("1","dbkey", dbkey)
     tc.formfile("1","file_data", fname)
     tc.submit("runtool_btn")
     self.home()
开发者ID:blankenberg,项目名称:galaxy-central,代码行数:9,代码来源:twilltestcase.py

示例4: test_set_avatar

 def test_set_avatar(self):
     self.login_with_twill()
     for image in (photo('static/sample-photo.png'),
                   photo('static/sample-photo.jpg')):
         url = 'http://openhatch.org/people/paulproteus/'
         tc.go(make_twill_url(url))
         tc.follow('photo')
         tc.formfile('edit_photo', 'photo', image)
         tc.submit()
         # Now check that the photo == what we uploaded
         p = Person.objects.get(user__username='paulproteus')
         self.assert_(p.photo.read() ==
                 open(image).read())
开发者ID:boblannon,项目名称:oh-mainline,代码行数:13,代码来源:tests.py

示例5: test_set_avatar_too_wide

 def test_set_avatar_too_wide(self):
     self.login_with_twill()
     for image in [photo('static/images/too-wide.jpg'),
                   photo('static/images/too-wide.png')]:
         url = 'http://openhatch.org/people/paulproteus/'
         tc.go(make_twill_url(url))
         tc.follow('photo')
         tc.formfile('edit_photo', 'photo', image)
         tc.submit()
         # Now check that the photo is 200px wide
         p = Person.objects.get(user__username='paulproteus')
         image_as_stored = Image.open(p.photo.file)
         w, h = image_as_stored.size
         self.assertEqual(w, 200)
开发者ID:aishahalim,项目名称:OpenHatch,代码行数:14,代码来源:tests.py

示例6: annotate

def annotate(params, proteins, \
             url="http://signalfind.org/tatfind.html", force=False):
    """
    Interfaces with the TatFind web service at (http://signalfind.org/tatfind.html)
    to predict if protein sequences contain Twin-Arginine Translocation (Tat)
    signal peptides.
    """
    # set the user-agent so web services can block us if they want ... :/
    python_version = sys.version.split()[0]
    agent("Python-urllib/%s (twill; inmembrane)" % python_version)

    outfn = 'tatfind.out'
    log_stderr("# TatFind(web) %s > %s" % (params['fasta'], outfn))

    if not force and os.path.isfile(outfn):
        log_stderr("# -> skipped: %s already exists" % outfn)
        fh = open(outfn, 'r')
        proteins = parse_tatfind_output(fh, proteins)
        fh.close()
        return proteins

    # dump extraneous output into this blackhole so we don't see it
    if not __DEBUG__: twill.set_output(StringIO.StringIO())

    go(url)
    if __DEBUG__: showforms()
    formfile("1", "seqFile", params["fasta"])
    submit()
    if __DEBUG__: show()

    tatfind_output = show()
    if __DEBUG__: log_stderr(tatfind_output)

    # write raw TatFind output to a file
    fh = open(outfn, 'w')
    fh.write(tatfind_output)
    fh.close()

    proteins = parse_tatfind_output(tatfind_output.split("\n"), proteins)

    return proteins
开发者ID:boscoh,项目名称:inmembrane,代码行数:41,代码来源:tatfind_web.py

示例7: upload

 def upload(self, file):
     self.get("/tool_runner/index?tool_id=upload1")
     tc.fv("1","file_type", "bed")
     tc.formfile("1","file_data", file)
     tc.submit("runtool_btn")
     tc.code(200)
开发者ID:HullUni-bioinformatics,项目名称:ReproPhyloGalaxy,代码行数:6,代码来源:check_galaxy.py

示例8: annotate

def annotate(params, proteins, \
             url="http://rbf.bioinfo.tw/"+
                 "~sachen/OMPpredict/"+
                 "TMBETADISC-RBF-Content.html", force=False):
  """
  Interfaces with the TatFind web service at 
  (http://rbf.bioinfo.tw/~sachen/OMPpredict/TMBETADISC-RBF.php) 
  to predict if protein sequence is likely to be an outer membrane beta-barrel.
  
  Note that the default URL we use it different to the regular form used
  by web browsers, since we need to bypass some AJAX fun.
  """
  # TODO: automatically split large sets into multiple jobs
  #       since TMBETADISC seems to not like more than take 
  #       ~5000 seqs at a time
  if len(proteins) >= 5000:
    log_stderr("# ERROR: TMBETADISC-RBF(web): tends to fail with > ~5000 sequences.")
    return
  
  # set the user-agent so web services can block us if they want ... :/
  python_version = sys.version.split()[0]
  agent("Python-urllib/%s (twill; inmembrane)" % python_version)
  
  outfn = 'tmbetadisc-rbf.out'
  log_stderr("# TMBETADISC-RBF(web) %s > %s" % (params['fasta'], outfn))
  
  if not force and os.path.isfile(outfn):
    log_stderr("# -> skipped: %s already exists" % outfn)
    fh = open(outfn, 'r')
    proteins = parse_tmbetadisc_output(fh.read(), proteins)
    fh.close()
    return proteins
  
  # dump extraneous output into this blackhole so we don't see it
  if not __DEBUG__: twill.set_output(StringIO.StringIO())
  
  go(url)
  if __DEBUG__: showforms()
  formfile("1", "userfile", params["fasta"])
  fv("1", "format", "file")

  # set the user defined method
  method_map = {"aa":"Amino Acid Composition",
                "dp":"Depipetide Composition",
                "aadp":"Amino Acid & Depipetide Composition",
                "pssm":"PSSM"}
  if dict_get(params, 'tmbetadisc_rbf_method'):
    try:
      method = method_map[params['tmbetadisc_rbf_method']]
    except KeyError:
      log_stderr("# ERROR: Invalid setting from tmbetadisc_rbf_method. \
                    Must be set to aa, dp, aadp or pssm.")
      sys.exit()

  #fv("1", "select", "Amino Acid Composition")
  #fv("1", "select", "Depipetide Composition")
  #fv("1", "select", "Amino Acid & Depipetide Composition")
  #fv("1", "select", "PSSM")
  fv("1", "select", method)
  
  submit()
  
  waiting_page = show()
  if __DEBUG__: log_stderr(waiting_page)

  for l in waiting_page.split('\n'):
    if l.find("TMBETADISC-RBF-action.php?UniqueName=") != -1:
      result_url = l.split("'")[1]

  time.sleep(5)
  
  go(result_url)
  
  output = show()
  if __DEBUG__: log_stderr(output)
  
  # write raw output to a file
  fh = open(outfn, 'w')
  fh.write(output)
  fh.close()
  
  proteins = parse_tmbetadisc_output(output, proteins) 
  
  return proteins
开发者ID:BioinformaticsArchive,项目名称:inmembrane,代码行数:84,代码来源:tmbetadisc_rbf_web.py

示例9: test

def test():
    url = twilltestlib.get_url()
            
    # test empty page get_title
    namespaces.new_local_dict()
    twill.commands.reset_browser()
    browser = twill.get_browser()
    try:
        browser.get_title()
        assert 0, "should never get here"
    except BrowserStateError:
        pass

    ### now test a few special cases
    
    commands.go(url)
    commands.go('/login')
    commands.showforms()

    # test no matching forms
    try:
        commands.fv('2', 'submit', '1')
        assert 0
    except TwillAssertionError:
        pass

    # test regexp match
    commands.fv('1', '.*you', '1')


    # test ambiguous match to value
    commands.go('/testform')
    commands.fv('1', 'selecttest', 'val')
    commands.fv('1', 'selecttest', 'value1')
    commands.fv('1', 'selecttest', 'selvalue1')
    commands.formclear('1')
    try:
        commands.fv('1', 'selecttest', 'value')
        assert 0
    except ClientForm.ItemNotFoundError:
        pass

    # test ambiguous match to name
    commands.go('/testform')
    try:
        commands.fv('1', 'item_', 'value')
        assert 0
    except Exception:
        pass

    try:
        commands.formfile('1', 'selecttest', 'null')
        assert 0
    except Exception:
        pass

    commands.go('http://www.google.com/')
    browser.get_title()

    # test the twill script.
    twilltestlib.execute_twill_script('test-form.twill', initial_url=url)
开发者ID:t0ster,项目名称:twill,代码行数:61,代码来源:test-form.py

示例10: upload_list

def upload_list(browser, pagename, uploads):

    # get the file sizes for later comparison.
    filesizes = []
    for fn in uploads:
        filesizes.append(os.stat(fn)[stat.ST_SIZE])
    filesizes.reverse()  # because they get listed newest first.

    # Upload copy #1.
    t.go(host + "index.php/Special:Upload")
    t.formfile("1", "wpUploadFile", uploads[0])
    t.fv("1", "wpDestFile", pagename)
    t.fv("1", "wpUploadDescription", "Uploading %s" % pagename)
    t.submit("wpUpload")

    # Verify that we succeeded.
    t.find("File:%s" % pagename)

    for fn in uploads[1:]:
        # propose that we upload a replacement
        t.go(host + "index.php?title=Special:Upload&wpDestFile=%s&wpForReUpload=1" % pagename)
        t.formfile("1", "wpUploadFile", fn)
        t.fv("1", "wpUploadDescription", "Uploading %s as %s" % (fn, pagename))
        t.submit("wpUpload")

    # get the URLs for the thumbnails
    urls = []
    for url in re.finditer(
        r'<td><a href="([^"]*?)"><img alt="Thumbnail for version .*?" src="(.*?)"', browser.get_html()
    ):
        urls.append(url.group(1))
        urls.append(url.group(2))

    print filesizes
    for i, url in enumerate(urls):
        t.go(url)
        if i % 2 == 0 and len(browser.get_html()) != filesizes[i / 2]:
            print i, len(browser.get_html()), filesizes[i / 2]
            t.find("Files differ in size")
        t.code("200")
        t.back()

    # delete all versions
    t.go(host + "index.php?title=File:%s&action=delete" % pagename)
    # after we get the confirmation page, commit to the action.
    t.fv("1", "wpReason", "Test Deleting...")
    t.submit("mw-filedelete-submit")

    # make sure that we can't visit their URLs.
    for i, url in enumerate(urls):
        t.go(url)
        if 0 and i % 2 == 1 and i > 0 and browser.get_code() == 200:
            # bug 30192: the archived file's thumbnail doesn't get deleted.
            print "special-casing the last URL"
            continue
        t.code("404")

    # restore the current and archived version.
    t.go(host + "index.php/Special:Undelete/File:%s" % pagename)
    t.fv("1", "wpComment", "Test Restore")
    t.submit("restore")

    # visit the page to make sure that the thumbs get re-rendered properly.
    # when we get the 404 handler working correctly, this won't be needed.
    t.go(host + "index.php?title=File:%s" % pagename)

    # make sure that they got restored correctly.
    for i, url in enumerate(urls):
        t.go(url)
        if i % 2 == 0 and len(browser.get_html()) != filesizes[i / 2]:
            t.find("Files differ in size")
        t.code("200")
        t.back()

    if len(uploads) != 2:
        return

    match = re.search(r'"([^"]+?)" title="[^"]+?">revert', browser.get_html())
    if not match:
        t.find("revert")
    t.go(match.group(1).replace("&amp;", "&"))
开发者ID:realsoc,项目名称:mediawiki-extensions,代码行数:81,代码来源:smtest.py

示例11: test_data_uploads

    def test_data_uploads(self):  
        # data upload test
        name = 'Upload-test-name'
        self.create_project(name)
        
        tc.follow(name)

        # find the project id
        url = tc.follow('Edit')
        pid = url.split("/")[-2]
        tc.go("/data/upload/simple/%s/" % pid)
        
        # search for then add Demo User to this project
        tc.formfile("1", "File1", conf.testdata('short-data.bed') )
        tc.formfile("1", "File2", conf.testdata('short-good-input.gtrack') )
        tc.formfile("1", "File3", conf.testdata('readcounts.png') )
        tc.submit()

        # verify uploads
        tc.find("short-data.bed")
        tc.find("short-good-input.gtrack")
        tc.find("readcounts.png")

        # visit the dataset            
        tc.follow("short-good-input.gtrack")
        tc.find("waiting")

        # edit the dataset
        tc.follow("Edit")
        tc.fv("1", "name", "short-good-input.gtrack" )
        tc.fv("1", "info","extra-info" )
        tc.submit()
        tc.find("extra-info")

        # upload two results for it
        tc.follow("Add results")
        tc.formfile("1", "content", conf.testdata('short-data.bed') )
        tc.formfile("1", "image", conf.testdata('readcounts.png') )
        tc.submit()
        tc.follow("short-data.bed")
        tc.back()

        # upload one image
        tc.follow("Add results")
        tc.formfile("1", "image", conf.testdata('shift.png') )
        tc.submit()
        tc.follow("shift.png")
        tc.back()

        # back to project view
        tc.follow("Project view")
        self.delete_project(name)
开发者ID:JCVI-Cloud,项目名称:galaxy-tools-prok,代码行数:52,代码来源:functional.py

示例12: annotate

def annotate(params, proteins, \
             url="http://services.cbu.uib.no/tools/bomp/", force=False):
    """
    Uses the BOMP web service (http://services.cbu.uib.no/tools/bomp/) to
    predict if proteins are outer membrane beta-barrels.
    """
    # set the user-agent so web services can block us if they want ... :/
    python_version = sys.version.split()[0]
    agent("Python-urllib/%s (twill; inmembrane/%s)" %
          (python_version, inmembrane.__version__))

    bomp_out = 'bomp.out'
    log_stderr("# BOMP(web) %s > %s" % (params['fasta'], bomp_out))

    if not force and os.path.isfile(bomp_out):
        log_stderr("# -> skipped: %s already exists" % bomp_out)
        bomp_categories = {}
        fh = open(bomp_out, 'r')
        for l in fh:
            words = l.split()
            bomp_category = int(words[-1:][0])
            seqid = parse_fasta_header(l)[0]
            proteins[seqid]['bomp'] = bomp_category
            bomp_categories[seqid] = bomp_category
        fh.close()
        return bomp_categories

    # dump extraneous output into this blackhole so we don't see it
    if not __DEBUG__: twill.set_output(StringIO.StringIO())

    go(url)
    if __DEBUG__: showforms()
    formfile("1", "queryfile", params["fasta"])
    submit()
    if __DEBUG__: show()

    # extract the job id from the page
    links = showlinks()
    job_id = None
    for l in links:
        if l.url.find("viewOutput") != -1:
            # grab job id from "viewOutput?id=16745338"
            job_id = int(l.url.split("=")[1])

    if __DEBUG__: log_stderr("BOMP job id: %d" % job_id)

    if not job_id:
        # something went wrong
        log_stderr("# BOMP error: Can't find job id")
        return

    # parse the HTML table and extract categories
    go("viewOutput?id=%i" % (job_id))

    polltime = 10
    log_stderr("# Waiting for BOMP to finish .")
    while True:
        try:
            find("Not finished")
            log_stderr(".")
        except:
            # Finished ! Pull down the result page.
            log_stderr(". done!\n")
            go("viewOutput?id=%i" % (job_id))
            if __DEBUG__: log_stderr(show())
            break

        # Not finished. We keep polling for a time until
        # we give up
        time.sleep(polltime)
        polltime = polltime * 2
        if polltime >= 7200:  # 2 hours
            log_stderr("# BOMP error: Taking too long.")
            return
        go("viewOutput?id=%i" % (job_id))
        if __DEBUG__: log_stderr(show())

    bomp_html = show()
    if __DEBUG__: log_stderr(bomp_html)

    # Results are in the only <table> on this page, formatted like:
    # <tr><th>gi|107836852|gb|ABF84721.1<th>5</tr>
    soup = BeautifulSoup(bomp_html)
    bomp_categories = {}  # dictionary of {name, category} pairs
    for tr in soup.findAll('tr')[1:]:
        n, c = tr.findAll('th')
        name = parse_fasta_header(n.text.strip())[0]
        category = int(c.text)
        bomp_categories[name] = category

    # write BOMP results to a tab delimited file
    fh = open(bomp_out, 'w')
    for k, v in bomp_categories.iteritems():
        fh.write("%s\t%i\n" % (k, v))
    fh.close()

    if __DEBUG__: log_stderr(str(bomp_categories))

    # label proteins with bomp classification (int) or False
    for name in proteins:
#.........这里部分代码省略.........
开发者ID:boscoh,项目名称:inmembrane,代码行数:101,代码来源:bomp_web.py


注:本文中的twill.commands.formfile函数示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。