示例#1
0
    def test_argparse(self):
        """
        Same as above but setting up options using ruffus.cmdline.get_argparse
            --verbose on its own increases the verbosity by one
            --verbose NNN (re)sets the verbosity to NNN whatever the previous state
            --verbose NNN:MMM sets the verbose_abbreviated_path to MMM
        """

        parser = cmdline.get_argparse(
            description='WHAT DOES THIS PIPELINE DO?')

        import sys

        sys.argv = ["test", "--verbose", "--verbose=2"]
        options = parser.parse_args()
        handle_verbose(options)
        self.assertTrue(options.verbose == 2)
        self.assertTrue(options.verbose_abbreviated_path == None)

        sys.argv = ["test", "--verbose", "--verbose=3", "--verbose"]
        options = parser.parse_args()
        handle_verbose(options)
        self.assertTrue(options.verbose == 4)
        self.assertTrue(options.verbose_abbreviated_path == None)

        sys.argv = ["test", "--verbose", "--verbose=5:3", "--verbose"]
        options = parser.parse_args()
        handle_verbose(options)
        self.assertTrue(options.verbose == 6)
        self.assertTrue(options.verbose_abbreviated_path == 3)

        sys.argv = [
            "test", "--verbose", "--verbose=5:3", "--verbose", "--verbose=7",
            "--verbose"
        ]
        options = parser.parse_args()
        handle_verbose(options)
        self.assertTrue(options.verbose == 8)
        self.assertTrue(options.verbose_abbreviated_path == 3)

        sys.argv = [
            "test", "--verbose", "--verbose=5:3", "--verbose", "--verbose=7:5",
            "--verbose"
        ]
        options = parser.parse_args()
        handle_verbose(options)
        self.assertTrue(options.verbose == 8)
        self.assertTrue(options.verbose_abbreviated_path == 5)
示例#2
0
    def test_argparse(self):
        """
        Same as above but setting up options using ruffus.cmdline.get_argparse
            --verbose on its own increases the verbosity by one
            --verbose NNN (re)sets the verbosity to NNN whatever the previous state
            --verbose NNN:MMM sets the verbose_abbreviated_path to MMM
        """

        parser = cmdline.get_argparse(description='WHAT DOES THIS PIPELINE DO?')

        import sys

        sys.argv = ["test", "--verbose", "--verbose=2"]
        options = parser.parse_args()
        handle_verbose(options)
        self.assertTrue(options.verbose==2)
        self.assertTrue(options.verbose_abbreviated_path==None)

        sys.argv = ["test", "--verbose", "--verbose=3", "--verbose"]
        options = parser.parse_args()
        handle_verbose(options)
        self.assertTrue(options.verbose==4)
        self.assertTrue(options.verbose_abbreviated_path==None)

        sys.argv = ["test", "--verbose", "--verbose=5:3", "--verbose"]
        options = parser.parse_args()
        handle_verbose(options)
        self.assertTrue(options.verbose==6)
        self.assertTrue(options.verbose_abbreviated_path==3)

        sys.argv = ["test", "--verbose", "--verbose=5:3", "--verbose", "--verbose=7", "--verbose"]
        options = parser.parse_args()
        handle_verbose(options)
        self.assertTrue(options.verbose==8)
        self.assertTrue(options.verbose_abbreviated_path==3)

        sys.argv = ["test", "--verbose", "--verbose=5:3", "--verbose", "--verbose=7:5", "--verbose"]
        options = parser.parse_args()
        handle_verbose(options)
        self.assertTrue(options.verbose==8)
        self.assertTrue(options.verbose_abbreviated_path==5)
示例#3
0
    def test_verbose_abbreviated_path (self):
        """
        --verbose NNN:MMM sets the verbose_abbreviated_path to MMM
        """

        #
        # do not override users' verbose_abbreviated_path
        #
        options = t_options()
        # take verbose_abbreviated_path
        setattr(options, "verbose", ["+", "5", "+", "4:3"])
        handle_verbose(options)
        self.assertTrue(options.verbose==4)
        self.assertTrue(options.verbose_abbreviated_path==3)
        # do not override users' verbose_abbreviated_path
        setattr(options, "verbose", ["+", "5", "+", "7:5"])
        handle_verbose(options)
        self.assertTrue(options.verbose==7)
        self.assertTrue(options.verbose_abbreviated_path==3)


        options = t_options()
        # take verbose_abbreviated_path
        setattr(options, "verbose", ["+", "5:3", "+", "7:5", "+"])
        handle_verbose(options)
        self.assertTrue(options.verbose==8)
        self.assertTrue(options.verbose_abbreviated_path==5)
示例#4
0
    def test_verbose (self):
        """
        --verbose on its own increases the verbosity by one
        --verbose NNN (re)sets the verbosity to NNN whatever the previous state
        """

        # options.verbose defined by user to be None
        options = t_options()
        setattr(options, "verbose", None)
        handle_verbose(options)
        self.assertTrue(options.verbose==None)
        self.assertTrue(options.verbose_abbreviated_path is None)

        # options.verbose defined by user to be 0
        options = t_options()
        setattr(options, "verbose", 0)
        handle_verbose(options)
        self.assertTrue(options.verbose==0)
        self.assertTrue(options.verbose_abbreviated_path is None)

        # options.verbose defined by user to be "6"
        options = t_options()
        setattr(options, "verbose", "6")
        handle_verbose(options)
        self.assertTrue(options.verbose==6)
        self.assertTrue(options.verbose_abbreviated_path==None)

        # options.verbose defined by user to be 6
        options = t_options()
        setattr(options, "verbose", 6)
        handle_verbose(options)
        self.assertTrue(options.verbose==6)
        self.assertTrue(options.verbose_abbreviated_path==None)


        # options.verbose defined by user to "+"
        options = t_options()
        setattr(options, "verbose", "+")
        handle_verbose(options)
        self.assertTrue(options.verbose==1)
        self.assertTrue(options.verbose_abbreviated_path==None)

        # --verbose not set
        options = t_options()
        setattr(options, "verbose", [])
        handle_verbose(options)
        self.assertTrue(options.verbose==0)
        self.assertTrue(options.verbose_abbreviated_path==None)

        # --verbose
        options = t_options()
        setattr(options, "verbose", ["+"])
        handle_verbose(options)
        self.assertTrue(options.verbose==1)
        self.assertTrue(options.verbose_abbreviated_path==None)

        # --verbose --verbose 5 --verbose
        options = t_options()
        setattr(options, "verbose", ["+", "5", "+"])
        handle_verbose(options)
        self.assertTrue(options.verbose==6)
        self.assertTrue(options.verbose_abbreviated_path==None)


        # --verbose --verbose 5 --verbose --verbose 4
        # last value overrides the 5
        options = t_options()
        setattr(options, "verbose", ["+", "5", "+", "4"])
        handle_verbose(options)
        self.assertTrue(options.verbose==4)
        self.assertTrue(options.verbose_abbreviated_path==None)
示例#5
0
    #crocodile.reptiles.animal
    #    -> reptiles.results
    #
    #pufferfish.fish.animal
    #    -> fish.results
    """
    for grouping in species_list:
        assert (open(tempdir + grouping + ".results").read() == "".join(
            s + "\n" for s in sorted(species_list[grouping])))


#
#   Necessary to protect the "entry point" of the program under windows.
#       see: http://docs.python.org/library/multiprocessing.html#multiprocessing-programming
#
if __name__ == '__main__':

    if options.debug:
        import os
        os.system("rm -rf %s" % tempdir)
        options = cmdline.handle_verbose(options)
        pipeline_run(target_tasks=options.target_tasks,
                     forcedtorun_tasks=options.forced_tasks,
                     multiprocess=options.jobs,
                     verbose=options.verbose)
        check_species_correct()
        #os.system("rm -rf %s" % tempdir)
        print("OK")
    else:
        cmdline.run(options)