Пример #1
0
    def GetExec(self, optList, frame):
        # Respond to the "muscle" command.
        self.frame = frame
        plugin_exe = r"C:/Program Files (x86)/py27/Lib/site-packages/Muscle.exe"
        self.outfile = r".\plugins\muscle.txt"
        self.outtype = "fasta"
        cline = MuscleCommandline(plugin_exe, out=self.outfile)
        if '1ProfileCheck' in self.frame.paramBoxes:
            if self.frame.paramBoxes['1ProfileCheck'].GetValue():
                cline.profile = True
                cline.in1 = r"C:\Users\francis\Documents\Monguis\BioGui\plugins\my_seq.fasta"
                cline.in2 = r"C:\Users\francis\Documents\Monguis\BioGui\plugins\my_seq.fasta"
            else:
                cline.input = r"C:\Users\francis\Documents\Monguis\BioGui\plugins\my_seq.fasta"
        if '1DiagCheck' in self.frame.paramBoxes:
            if self.frame.paramBoxes['1DiagCheck'].GetValue():
                cline.diags = True
                if "DiagLenSpin" in self.frame.paramBoxes:
                    cline.diaglength = int(
                        self.frame.paramBoxes["DiagLenSpin"])
                if "DiagMargSpin" in self.frame.paramBoxes:
                    cline.diaglength = int(
                        self.frame.paramBoxes["DiagMargSpin"])
                if "DiagBreakSpin" in self.frame.paramBoxes:
                    cline.diaglength = int(
                        self.frame.paramBoxes["DiagBreakSpin"])
            elif "GapPenSpin" in self.frame.paramBoxes:
                cline.gapopen = float(
                    self.frame.paramBoxes["GapPenSpin"].GetValue())
            else:
                cline.input = r"C:\Users\francis\Documents\Monguis\BioGui\plugins\my_seq.fasta"
        if self.frame.abet == "AA":
            cline.seqtype = "protein"
        elif self.frame.abet == "DNA" or self.frame.abet == "RNA":
            cline.seqtype = "nucleo"
        else:
            cline.seqtype = "auto"

        if self.frame.options:
            cline.objscore = str(self.boxList[9].GetValue())
            cline.weight1 = str(self.boxList[13].GetValue())
            cline.weight2 = str(self.boxList[15].GetValue())
            cline.anchorspacing = int(self.boxList[17].GetValue())
            cline.center = float(self.boxList[19].GetValue())
            cline.hydro = int(self.boxList[21].GetValue())
            cline.hydrofactor = float(self.boxList[23].GetValue())
            cline.maxhours = float(self.boxList[25].GetValue())
            cline.maxiters = int(self.boxList[27].GetValue())
            cline.maxtrees = int(self.boxList[29].GetValue())
            cline.minbestcolscore = float(self.boxList[31].GetValue())
            cline.minsmoothscore = float(self.boxList[33].GetValue())
            cline.smoothscoreceil = float(self.boxList[35].GetValue())
            cline.smoothwindow = int(self.boxList[37].GetValue())
            cline.sueff = float(self.boxList[39].GetValue())

        return str(cline)
Пример #2
0
 def GetExec(self, optList, frame):
     # Respond to the "muscle" command.
     self.frame = frame
     plugin_exe = r"C:/Program Files (x86)/py27/Lib/site-packages/Muscle.exe"
     self.outfile=r".\plugins\muscle.txt"
     self.outtype="fasta"
     cline = MuscleCommandline(plugin_exe,out=self.outfile)
     if '1ProfileCheck' in self.frame.paramBoxes:
         if self.frame.paramBoxes['1ProfileCheck'].GetValue():
             cline.profile = True
             cline.in1 = r"C:\Users\francis\Documents\Monguis\BioGui\plugins\my_seq.fasta"
             cline.in2 = r"C:\Users\francis\Documents\Monguis\BioGui\plugins\my_seq.fasta"
         else:
             cline.input = r"C:\Users\francis\Documents\Monguis\BioGui\plugins\my_seq.fasta"
     if '1DiagCheck' in self.frame.paramBoxes:
         if self.frame.paramBoxes['1DiagCheck'].GetValue():
             cline.diags=True
             if "DiagLenSpin" in self.frame.paramBoxes:
                 cline.diaglength=int(self.frame.paramBoxes["DiagLenSpin"])
             if "DiagMargSpin" in self.frame.paramBoxes:
                 cline.diaglength=int(self.frame.paramBoxes["DiagMargSpin"])
             if "DiagBreakSpin" in self.frame.paramBoxes:
                 cline.diaglength=int(self.frame.paramBoxes["DiagBreakSpin"])
         elif "GapPenSpin" in self.frame.paramBoxes:
             cline.gapopen=float(self.frame.paramBoxes["GapPenSpin"].GetValue())
         else:
             cline.input=r"C:\Users\francis\Documents\Monguis\BioGui\plugins\my_seq.fasta"
     if self.frame.abet=="AA":
         cline.seqtype="protein"
     elif self.frame.abet=="DNA" or self.frame.abet=="RNA":
         cline.seqtype="nucleo"
     else:
         cline.seqtype="auto"
     
     
     if self.frame.options:
         cline.objscore=str(self.boxList[9].GetValue())
         cline.weight1=str(self.boxList[13].GetValue())
         cline.weight2=str(self.boxList[15].GetValue())
         cline.anchorspacing=int(self.boxList[17].GetValue())
         cline.center=float(self.boxList[19].GetValue())
         cline.hydro=int(self.boxList[21].GetValue())
         cline.hydrofactor=float(self.boxList[23].GetValue())
         cline.maxhours=float(self.boxList[25].GetValue())
         cline.maxiters=int(self.boxList[27].GetValue())
         cline.maxtrees=int(self.boxList[29].GetValue())
         cline.minbestcolscore=float(self.boxList[31].GetValue())
         cline.minsmoothscore=float(self.boxList[33].GetValue())
         cline.smoothscoreceil=float(self.boxList[35].GetValue())
         cline.smoothwindow=int(self.boxList[37].GetValue())
         cline.sueff=float(self.boxList[39].GetValue())
     
     return str(cline)
Пример #3
0
 def test_Muscle_with_options(self):
     """Round-trip through app with a switch and valued option"""
     cmdline = MuscleCommandline(muscle_exe)
     cmdline.set_parameter("input", self.infile1)  # "input" is alias for "in"
     cmdline.set_parameter("out", self.outfile2)
     #Use property:
     cmdline.objscore = "sp"
     cmdline.noanchors = True
     self.assertEqual(str(cmdline), _escape_filename(muscle_exe) +
                      " -in Fasta/f002" +
                      " -out Fasta/temp_align_out2.fa" +
                      " -objscore sp -noanchors")
     self.assertEqual(str(eval(repr(cmdline))), str(cmdline))
     output, error = cmdline()
     self.assertEqual(output, "")
     self.assertTrue("ERROR" not in error)
     self.assertTrue(error.strip().startswith("MUSCLE"), output)
Пример #4
0
 def test_Muscle_with_options(self):
     """Round-trip through app with a switch and valued option"""
     cmdline = MuscleCommandline(muscle_exe)
     cmdline.set_parameter("input",
                           self.infile1)  #"input" is alias for "in"
     cmdline.set_parameter("out", self.outfile2)
     #Use property:
     cmdline.objscore = "sp"
     cmdline.noanchors = True
     self.assertEqual(
         str(cmdline), muscle_exe + " -in Fasta/f002" +
         " -out Fasta/temp_align_out2.fa" + " -objscore sp -noanchors")
     self.assertEqual(str(eval(repr(cmdline))), str(cmdline))
     output, error = cmdline()
     self.assertEqual(output, "")
     self.assertTrue("ERROR" not in error)
     self.assertTrue(error.strip().startswith("MUSCLE"), output)
Пример #5
0
 def test_Muscle_with_options(self):
     """Round-trip through app with a switch and valued option."""
     cmdline = MuscleCommandline(muscle_exe)
     cmdline.set_parameter("input", self.infile1) #"input" is alias for "in"
     cmdline.set_parameter("out", self.outfile2)
     #Use property:
     cmdline.objscore = "sp"
     cmdline.noanchors = True
     self.assertEqual(str(cmdline), muscle_exe +\
                      " -in Fasta/f002" + \
                      " -out Fasta/temp_align_out2.fa" + \
                      " -objscore sp -noanchors")
     self.assertEqual(str(eval(repr(cmdline))), str(cmdline))
     stdin, stdout, stderr = generic_run(cmdline)
     self.assertEqual(stdin.return_code, 0)
     self.assertEqual(stdout.read(), "")
     self.assert_("ERROR" not in stderr.read())
     self.assertEqual(str(stdin._cl), str(cmdline))
Пример #6
0
 def test_Muscle_with_options(self):
     """Round-trip through app with a switch and valued option"""
     cmdline = MuscleCommandline(muscle_exe)
     cmdline.set_parameter("input", self.infile1) #"input" is alias for "in"
     cmdline.set_parameter("out", self.outfile2)
     #Use property:
     cmdline.objscore = "sp"
     cmdline.noanchors = True
     self.assertEqual(str(cmdline), muscle_exe +\
                      " -in Fasta/f002" + \
                      " -out Fasta/temp_align_out2.fa" + \
                      " -objscore sp -noanchors")
     self.assertEqual(str(eval(repr(cmdline))), str(cmdline))
     child = subprocess.Popen(str(cmdline),
                              stdout=subprocess.PIPE,
                              stderr=subprocess.PIPE,
                              shell=(sys.platform!="win32"))
     output, error = child.communicate()
     self.assertEqual(child.returncode, 0)
     self.assertEqual(output, "")
     self.assert_("ERROR" not in error)
     del child