[yt-svn] commit/yt: 2 new changesets

commits-noreply at bitbucket.org commits-noreply at bitbucket.org
Wed Mar 9 09:17:13 PST 2016


2 new commits in yt:

https://bitbucket.org/yt_analysis/yt/commits/a46cdf422dd3/
Changeset:   a46cdf422dd3
Branch:      yt
User:        xarthisius
Date:        2016-03-02 20:56:29+00:00
Summary:     Convert nose_runner to use queue
Affected #:  3 files

diff -r 75b45347c44d52c1d4a32ee1b56356879848d92d -r a46cdf422dd3017c050dda808be736e6a6ff8b27 tests/nose_runner.py
--- a/tests/nose_runner.py
+++ b/tests/nose_runner.py
@@ -1,54 +1,100 @@
 import sys
 import os
 import yaml
-import multiprocessing as mp
+import multiprocessing
 import nose
-import glob
-from contextlib import closing
+from cStringIO import StringIO
 from yt.config import ytcfg
 from yt.utilities.answer_testing.framework import AnswerTesting
 
 
-def run_job(argv):
-    with closing(open(str(os.getpid()) + ".out", "w")) as fstderr:
-        cur_stderr = sys.stderr
-        sys.stderr = fstderr
-        answer = argv[0]
+class NoseWorker(multiprocessing.Process):
+
+    def __init__(self, task_queue, result_queue):
+        multiprocessing.Process.__init__(self)
+        self.task_queue = task_queue
+        self.result_queue = result_queue
+
+    def run(self):
+        proc_name = self.name
+        while True:
+            next_task = self.task_queue.get()
+            if next_task is None:
+                print("%s: Exiting" % proc_name)
+                self.task_queue.task_done()
+                break
+            print '%s: %s' % (proc_name, next_task)
+            result = next_task()
+            self.task_queue.task_done()
+            self.result_queue.put(result)
+        return
+
+class NoseTask(object):
+    def __init__(self, argv):
+        self.argv = argv
+        self.name = argv[0]
+
+    def __call__(self):
+        old_stderr = sys.stderr
+        sys.stderr = mystderr = StringIO()
         test_dir = ytcfg.get("yt", "test_data_dir")
         answers_dir = os.path.join(test_dir, "answers")
-        if not os.path.isdir(os.path.join(answers_dir, answer)):
-            nose.run(argv=argv + ['--answer-store'],
+        if '--with-answer-testing' in self.argv and \
+                not os.path.isdir(os.path.join(answers_dir, self.name)):
+            nose.run(argv=self.argv + ['--answer-store'],
                      addplugins=[AnswerTesting()], exit=False)
-        nose.run(argv=argv, addplugins=[AnswerTesting()], exit=False)
-    sys.stderr = cur_stderr
+        nose.run(argv=self.argv, addplugins=[AnswerTesting()], exit=False)
+        sys.stderr = old_stderr
+        return mystderr.getvalue()
 
-if __name__ == "__main__":
+    def __str__(self):
+        return 'WILL DO self.name = %s' % self.name
+
+
+def generate_tasks_input():
     test_dir = ytcfg.get("yt", "test_data_dir")
     answers_dir = os.path.join(test_dir, "answers")
     with open('tests/tests_%i.%i.yaml' % sys.version_info[:2], 'r') as obj:
         tests = yaml.load(obj)
 
-    base_argv = ['--local-dir=%s' % answers_dir, '-v', '-s', '--nologcapture',
+    base_argv = ['--local-dir=%s' % answers_dir, '-v',
                  '--with-answer-testing', '--answer-big-data', '--local']
-    args = [['unittests', '-v', '-s', '--nologcapture']]
-    for answer in list(tests.keys()):
+    args = []
+
+    for test in list(tests["other_tests"].keys()):
+        args.append([test] + tests["other_tests"][test])
+    for answer in list(tests["answer_tests"].keys()):
         argv = [answer]
         argv += base_argv
-        argv.append('--xunit-file=%s.xml' % answer)
         argv.append('--answer-name=%s' % answer)
-        argv += tests[answer]
+        argv += tests["answer_tests"][answer]
         args.append(argv)
-    
-    processes = [mp.Process(target=run_job, args=(args[i],))
-                 for i in range(len(args))]
-    for p in processes:
-        p.start()
-    for p in processes:
-        p.join(timeout=7200)
-        if p.is_alive():
-            p.terminate()
-            p.join(timeout=30)
-    for fname in glob.glob("*.out"):
-        with open(fname, 'r') as fin:
-            print(fin.read())
-        os.remove(fname)
+
+    args = [item + ['-s', '--nologcapture', '--xunit-file=%s.xml' % item[0]]
+            for item in args]
+    return args
+
+if __name__ == "__main__":
+    # multiprocessing.log_to_stderr(logging.DEBUG)
+    tasks = multiprocessing.JoinableQueue()
+    results = multiprocessing.Queue()
+
+    num_consumers = 6  # TODO 
+    consumers = [NoseWorker(tasks, results) for i in range(num_consumers)]
+    for w in consumers:
+        w.start()
+
+    num_jobs = 0
+    for job in generate_tasks_input():
+        tasks.put(NoseTask(job))
+        num_jobs += 1
+
+    for i in range(num_consumers):
+        tasks.put(None)
+
+    tasks.join()
+
+    while num_jobs:
+        result = results.get()
+        print(result)
+        num_jobs -= 1

diff -r 75b45347c44d52c1d4a32ee1b56356879848d92d -r a46cdf422dd3017c050dda808be736e6a6ff8b27 tests/tests_2.7.yaml
--- a/tests/tests_2.7.yaml
+++ b/tests/tests_2.7.yaml
@@ -1,51 +1,63 @@
-local_artio_270:
-  - yt/frontends/artio/tests/test_outputs.py
+answer_tests:
+  local_artio_270:
+    - yt/frontends/artio/tests/test_outputs.py
 
-local_athena_270:
-  - yt/frontends/athena
+  local_athena_270:
+    - yt/frontends/athena
 
-local_chombo_270:
-  - yt/frontends/chombo/tests/test_outputs.py
+  local_chombo_270:
+    - yt/frontends/chombo/tests/test_outputs.py
 
-local_enzo_270:
-  - yt/frontends/enzo
+  local_enzo_270:
+    - yt/frontends/enzo
 
-local_fits_270:
-  - yt/frontends/fits/tests/test_outputs.py
+  local_fits_270:
+    - yt/frontends/fits/tests/test_outputs.py
 
-local_flash_270:
-  - yt/frontends/flash/tests/test_outputs.py
+  local_flash_270:
+    - yt/frontends/flash/tests/test_outputs.py
 
-local_gadget_270:
-  - yt/frontends/gadget/tests/test_outputs.py
+  local_gadget_270:
+    - yt/frontends/gadget/tests/test_outputs.py
 
-local_halos_270:
-  - yt/analysis_modules/halo_analysis/tests/test_halo_finders.py
-  - yt/analysis_modules/halo_finding/tests/test_rockstar.py
-  - yt/frontends/owls_subfind/tests/test_outputs.py
+  local_halos_270:
+    - yt/analysis_modules/halo_analysis/tests/test_halo_finders.py
+    - yt/analysis_modules/halo_finding/tests/test_rockstar.py
+    - yt/frontends/owls_subfind/tests/test_outputs.py
+  
+  local_owls_270:
+    - yt/frontends/owls/tests/test_outputs.py
+  
+  local_pw_270:
+    - yt/visualization/tests/test_plotwindow.py:test_attributes
+    - yt/visualization/tests/test_plotwindow.py:test_attributes_wt
+    - yt/visualization/tests/test_profile_plots.py:test_phase_plot_attributes
+    - yt/visualization/tests/test_particle_plot.py:test_particle_projection_answers
+    - yt/visualization/tests/test_particle_plot.py:test_particle_projection_filter
+    - yt/visualization/tests/test_particle_plot.py:test_particle_phase_answers
+  
+  local_tipsy_270:
+    - yt/frontends/tipsy/tests/test_outputs.py
+  
+  local_varia_270:
+    - yt/analysis_modules/radmc3d_export
+    - yt/frontends/moab/tests/test_c5.py
+    - yt/analysis_modules/photon_simulator/tests/test_spectra.py
+    - yt/analysis_modules/photon_simulator/tests/test_sloshing.py
+    - yt/visualization/volume_rendering/tests/test_vr_orientation.py
 
-local_owls_270:
-  - yt/frontends/owls/tests/test_outputs.py
+  local_orion_270:
+    - yt/frontends/boxlib/tests/test_orion.py
+  
+  local_ramses_270:
+    - yt/frontends/ramses/tests/test_outputs.py
+  
+  local_ytdata_270:
+    - yt/frontends/ytdata
 
-local_pw_270:
-  - yt/visualization/tests/test_plotwindow.py:test_attributes
-  - yt/visualization/tests/test_plotwindow.py:test_attributes_wt
-
-local_tipsy_270:
-  - yt/frontends/tipsy/tests/test_outputs.py
-
-local_varia_270:
-  - yt/analysis_modules/radmc3d_export
-  - yt/frontends/moab/tests/test_c5.py
-  - yt/analysis_modules/photon_simulator/tests/test_spectra.py
-  - yt/analysis_modules/photon_simulator/tests/test_sloshing.py
-  - yt/visualization/volume_rendering/tests/test_vr_orientation.py
-
-local_orion_270:
-  - yt/frontends/boxlib/tests/test_orion.py
-
-local_ramses_270:
-  - yt/frontends/ramses/tests/test_outputs.py
-
-local_ytdata_270:
-  - yt/frontends/ytdata
\ No newline at end of file
+other_tests:
+  unittests:
+     - '-v'
+  cookbook:
+     - '-v'
+     - 'doc/source/cookbook/tests/test_cookbook.py'

diff -r 75b45347c44d52c1d4a32ee1b56356879848d92d -r a46cdf422dd3017c050dda808be736e6a6ff8b27 tests/tests_3.4.yaml
--- a/tests/tests_3.4.yaml
+++ b/tests/tests_3.4.yaml
@@ -1,49 +1,57 @@
-local_artio_340:
-  - yt/frontends/artio/tests/test_outputs.py
+answer_tests:
+  local_artio_340:
+    - yt/frontends/artio/tests/test_outputs.py
 
-local_athena_340:
-  - yt/frontends/athena
+  local_athena_340:
+    - yt/frontends/athena
 
-local_chombo_340:
-  - yt/frontends/chombo/tests/test_outputs.py
+  local_chombo_340:
+    - yt/frontends/chombo/tests/test_outputs.py
 
-local_enzo_340:
-  - yt/frontends/enzo
+  local_enzo_340:
+    - yt/frontends/enzo
 
-local_fits_340:
-  - yt/frontends/fits/tests/test_outputs.py
+  local_fits_340:
+    - yt/frontends/fits/tests/test_outputs.py
 
-local_flash_340:
-  - yt/frontends/flash/tests/test_outputs.py
+  local_flash_340:
+    - yt/frontends/flash/tests/test_outputs.py
 
-local_gadget_340:
-  - yt/frontends/gadget/tests/test_outputs.py
+  local_gadget_340:
+    - yt/frontends/gadget/tests/test_outputs.py
 
-local_halos_340:
-  - yt/frontends/owls_subfind/tests/test_outputs.py
+  local_halos_340:
+    - yt/frontends/owls_subfind/tests/test_outputs.py
 
-local_owls_340:
-  - yt/frontends/owls/tests/test_outputs.py
+  local_owls_340:
+    - yt/frontends/owls/tests/test_outputs.py
 
-local_pw_340:
-  - yt/visualization/tests/test_plotwindow.py:test_attributes
-  - yt/visualization/tests/test_plotwindow.py:test_attributes_wt
+  local_pw_340:
+    - yt/visualization/tests/test_plotwindow.py:test_attributes
+    - yt/visualization/tests/test_plotwindow.py:test_attributes_wt
 
-local_tipsy_340:
-  - yt/frontends/tipsy/tests/test_outputs.py
+  local_tipsy_340:
+    - yt/frontends/tipsy/tests/test_outputs.py
 
-local_varia_340:
-  - yt/analysis_modules/radmc3d_export
-  - yt/frontends/moab/tests/test_c5.py
-  - yt/analysis_modules/photon_simulator/tests/test_spectra.py
-  - yt/analysis_modules/photon_simulator/tests/test_sloshing.py
-  - yt/visualization/volume_rendering/tests/test_vr_orientation.py
+  local_varia_340:
+    - yt/analysis_modules/radmc3d_export
+    - yt/frontends/moab/tests/test_c5.py
+    - yt/analysis_modules/photon_simulator/tests/test_spectra.py
+    - yt/analysis_modules/photon_simulator/tests/test_sloshing.py
+    - yt/visualization/volume_rendering/tests/test_vr_orientation.py
 
-local_orion_340:
-  - yt/frontends/boxlib/tests/test_orion.py
+  local_orion_340:
+    - yt/frontends/boxlib/tests/test_orion.py
 
-local_ramses_340:
-  - yt/frontends/ramses/tests/test_outputs.py
+  local_ramses_340:
+    - yt/frontends/ramses/tests/test_outputs.py
 
-local_ytdata_340:
-  - yt/frontends/ytdata
\ No newline at end of file
+  local_ytdata_340:
+    - yt/frontends/ytdata
+
+other_tests:
+  unittests:
+    - '-v'
+  cookbook:
+    - 'doc/source/cookbook/tests/test_cookbook.py'
+    - '-P'


https://bitbucket.org/yt_analysis/yt/commits/7bc62a2db2de/
Changeset:   7bc62a2db2de
Branch:      yt
User:        ngoldbaum
Date:        2016-03-09 17:17:00+00:00
Summary:     Merged in xarthisius/yt (pull request #2010)

[notest] Convert nose_runner to use queue
Affected #:  3 files

diff -r a79baee298d9cc1a4346de3878d0d0ec6d27442c -r 7bc62a2db2deb15cade23e01644d40baff873d96 tests/nose_runner.py
--- a/tests/nose_runner.py
+++ b/tests/nose_runner.py
@@ -1,54 +1,100 @@
 import sys
 import os
 import yaml
-import multiprocessing as mp
+import multiprocessing
 import nose
-import glob
-from contextlib import closing
+from cStringIO import StringIO
 from yt.config import ytcfg
 from yt.utilities.answer_testing.framework import AnswerTesting
 
 
-def run_job(argv):
-    with closing(open(str(os.getpid()) + ".out", "w")) as fstderr:
-        cur_stderr = sys.stderr
-        sys.stderr = fstderr
-        answer = argv[0]
+class NoseWorker(multiprocessing.Process):
+
+    def __init__(self, task_queue, result_queue):
+        multiprocessing.Process.__init__(self)
+        self.task_queue = task_queue
+        self.result_queue = result_queue
+
+    def run(self):
+        proc_name = self.name
+        while True:
+            next_task = self.task_queue.get()
+            if next_task is None:
+                print("%s: Exiting" % proc_name)
+                self.task_queue.task_done()
+                break
+            print '%s: %s' % (proc_name, next_task)
+            result = next_task()
+            self.task_queue.task_done()
+            self.result_queue.put(result)
+        return
+
+class NoseTask(object):
+    def __init__(self, argv):
+        self.argv = argv
+        self.name = argv[0]
+
+    def __call__(self):
+        old_stderr = sys.stderr
+        sys.stderr = mystderr = StringIO()
         test_dir = ytcfg.get("yt", "test_data_dir")
         answers_dir = os.path.join(test_dir, "answers")
-        if not os.path.isdir(os.path.join(answers_dir, answer)):
-            nose.run(argv=argv + ['--answer-store'],
+        if '--with-answer-testing' in self.argv and \
+                not os.path.isdir(os.path.join(answers_dir, self.name)):
+            nose.run(argv=self.argv + ['--answer-store'],
                      addplugins=[AnswerTesting()], exit=False)
-        nose.run(argv=argv, addplugins=[AnswerTesting()], exit=False)
-    sys.stderr = cur_stderr
+        nose.run(argv=self.argv, addplugins=[AnswerTesting()], exit=False)
+        sys.stderr = old_stderr
+        return mystderr.getvalue()
 
-if __name__ == "__main__":
+    def __str__(self):
+        return 'WILL DO self.name = %s' % self.name
+
+
+def generate_tasks_input():
     test_dir = ytcfg.get("yt", "test_data_dir")
     answers_dir = os.path.join(test_dir, "answers")
     with open('tests/tests_%i.%i.yaml' % sys.version_info[:2], 'r') as obj:
         tests = yaml.load(obj)
 
-    base_argv = ['--local-dir=%s' % answers_dir, '-v', '-s', '--nologcapture',
+    base_argv = ['--local-dir=%s' % answers_dir, '-v',
                  '--with-answer-testing', '--answer-big-data', '--local']
-    args = [['unittests', '-v', '-s', '--nologcapture']]
-    for answer in list(tests.keys()):
+    args = []
+
+    for test in list(tests["other_tests"].keys()):
+        args.append([test] + tests["other_tests"][test])
+    for answer in list(tests["answer_tests"].keys()):
         argv = [answer]
         argv += base_argv
-        argv.append('--xunit-file=%s.xml' % answer)
         argv.append('--answer-name=%s' % answer)
-        argv += tests[answer]
+        argv += tests["answer_tests"][answer]
         args.append(argv)
-    
-    processes = [mp.Process(target=run_job, args=(args[i],))
-                 for i in range(len(args))]
-    for p in processes:
-        p.start()
-    for p in processes:
-        p.join(timeout=7200)
-        if p.is_alive():
-            p.terminate()
-            p.join(timeout=30)
-    for fname in glob.glob("*.out"):
-        with open(fname, 'r') as fin:
-            print(fin.read())
-        os.remove(fname)
+
+    args = [item + ['-s', '--nologcapture', '--xunit-file=%s.xml' % item[0]]
+            for item in args]
+    return args
+
+if __name__ == "__main__":
+    # multiprocessing.log_to_stderr(logging.DEBUG)
+    tasks = multiprocessing.JoinableQueue()
+    results = multiprocessing.Queue()
+
+    num_consumers = 6  # TODO 
+    consumers = [NoseWorker(tasks, results) for i in range(num_consumers)]
+    for w in consumers:
+        w.start()
+
+    num_jobs = 0
+    for job in generate_tasks_input():
+        tasks.put(NoseTask(job))
+        num_jobs += 1
+
+    for i in range(num_consumers):
+        tasks.put(None)
+
+    tasks.join()
+
+    while num_jobs:
+        result = results.get()
+        print(result)
+        num_jobs -= 1

diff -r a79baee298d9cc1a4346de3878d0d0ec6d27442c -r 7bc62a2db2deb15cade23e01644d40baff873d96 tests/tests_2.7.yaml
--- a/tests/tests_2.7.yaml
+++ b/tests/tests_2.7.yaml
@@ -1,51 +1,63 @@
-local_artio_270:
-  - yt/frontends/artio/tests/test_outputs.py
+answer_tests:
+  local_artio_270:
+    - yt/frontends/artio/tests/test_outputs.py
 
-local_athena_270:
-  - yt/frontends/athena
+  local_athena_270:
+    - yt/frontends/athena
 
-local_chombo_270:
-  - yt/frontends/chombo/tests/test_outputs.py
+  local_chombo_270:
+    - yt/frontends/chombo/tests/test_outputs.py
 
-local_enzo_270:
-  - yt/frontends/enzo
+  local_enzo_270:
+    - yt/frontends/enzo
 
-local_fits_270:
-  - yt/frontends/fits/tests/test_outputs.py
+  local_fits_270:
+    - yt/frontends/fits/tests/test_outputs.py
 
-local_flash_270:
-  - yt/frontends/flash/tests/test_outputs.py
+  local_flash_270:
+    - yt/frontends/flash/tests/test_outputs.py
 
-local_gadget_270:
-  - yt/frontends/gadget/tests/test_outputs.py
+  local_gadget_270:
+    - yt/frontends/gadget/tests/test_outputs.py
 
-local_halos_270:
-  - yt/analysis_modules/halo_analysis/tests/test_halo_finders.py
-  - yt/analysis_modules/halo_finding/tests/test_rockstar.py
-  - yt/frontends/owls_subfind/tests/test_outputs.py
+  local_halos_270:
+    - yt/analysis_modules/halo_analysis/tests/test_halo_finders.py
+    - yt/analysis_modules/halo_finding/tests/test_rockstar.py
+    - yt/frontends/owls_subfind/tests/test_outputs.py
+  
+  local_owls_270:
+    - yt/frontends/owls/tests/test_outputs.py
+  
+  local_pw_270:
+    - yt/visualization/tests/test_plotwindow.py:test_attributes
+    - yt/visualization/tests/test_plotwindow.py:test_attributes_wt
+    - yt/visualization/tests/test_profile_plots.py:test_phase_plot_attributes
+    - yt/visualization/tests/test_particle_plot.py:test_particle_projection_answers
+    - yt/visualization/tests/test_particle_plot.py:test_particle_projection_filter
+    - yt/visualization/tests/test_particle_plot.py:test_particle_phase_answers
+  
+  local_tipsy_270:
+    - yt/frontends/tipsy/tests/test_outputs.py
+  
+  local_varia_270:
+    - yt/analysis_modules/radmc3d_export
+    - yt/frontends/moab/tests/test_c5.py
+    - yt/analysis_modules/photon_simulator/tests/test_spectra.py
+    - yt/analysis_modules/photon_simulator/tests/test_sloshing.py
+    - yt/visualization/volume_rendering/tests/test_vr_orientation.py
 
-local_owls_270:
-  - yt/frontends/owls/tests/test_outputs.py
+  local_orion_270:
+    - yt/frontends/boxlib/tests/test_orion.py
+  
+  local_ramses_270:
+    - yt/frontends/ramses/tests/test_outputs.py
+  
+  local_ytdata_270:
+    - yt/frontends/ytdata
 
-local_pw_270:
-  - yt/visualization/tests/test_plotwindow.py:test_attributes
-  - yt/visualization/tests/test_plotwindow.py:test_attributes_wt
-
-local_tipsy_270:
-  - yt/frontends/tipsy/tests/test_outputs.py
-
-local_varia_270:
-  - yt/analysis_modules/radmc3d_export
-  - yt/frontends/moab/tests/test_c5.py
-  - yt/analysis_modules/photon_simulator/tests/test_spectra.py
-  - yt/analysis_modules/photon_simulator/tests/test_sloshing.py
-  - yt/visualization/volume_rendering/tests/test_vr_orientation.py
-
-local_orion_270:
-  - yt/frontends/boxlib/tests/test_orion.py
-
-local_ramses_270:
-  - yt/frontends/ramses/tests/test_outputs.py
-
-local_ytdata_270:
-  - yt/frontends/ytdata
\ No newline at end of file
+other_tests:
+  unittests:
+     - '-v'
+  cookbook:
+     - '-v'
+     - 'doc/source/cookbook/tests/test_cookbook.py'

diff -r a79baee298d9cc1a4346de3878d0d0ec6d27442c -r 7bc62a2db2deb15cade23e01644d40baff873d96 tests/tests_3.4.yaml
--- a/tests/tests_3.4.yaml
+++ b/tests/tests_3.4.yaml
@@ -1,49 +1,57 @@
-local_artio_340:
-  - yt/frontends/artio/tests/test_outputs.py
+answer_tests:
+  local_artio_340:
+    - yt/frontends/artio/tests/test_outputs.py
 
-local_athena_340:
-  - yt/frontends/athena
+  local_athena_340:
+    - yt/frontends/athena
 
-local_chombo_340:
-  - yt/frontends/chombo/tests/test_outputs.py
+  local_chombo_340:
+    - yt/frontends/chombo/tests/test_outputs.py
 
-local_enzo_340:
-  - yt/frontends/enzo
+  local_enzo_340:
+    - yt/frontends/enzo
 
-local_fits_340:
-  - yt/frontends/fits/tests/test_outputs.py
+  local_fits_340:
+    - yt/frontends/fits/tests/test_outputs.py
 
-local_flash_340:
-  - yt/frontends/flash/tests/test_outputs.py
+  local_flash_340:
+    - yt/frontends/flash/tests/test_outputs.py
 
-local_gadget_340:
-  - yt/frontends/gadget/tests/test_outputs.py
+  local_gadget_340:
+    - yt/frontends/gadget/tests/test_outputs.py
 
-local_halos_340:
-  - yt/frontends/owls_subfind/tests/test_outputs.py
+  local_halos_340:
+    - yt/frontends/owls_subfind/tests/test_outputs.py
 
-local_owls_340:
-  - yt/frontends/owls/tests/test_outputs.py
+  local_owls_340:
+    - yt/frontends/owls/tests/test_outputs.py
 
-local_pw_340:
-  - yt/visualization/tests/test_plotwindow.py:test_attributes
-  - yt/visualization/tests/test_plotwindow.py:test_attributes_wt
+  local_pw_340:
+    - yt/visualization/tests/test_plotwindow.py:test_attributes
+    - yt/visualization/tests/test_plotwindow.py:test_attributes_wt
 
-local_tipsy_340:
-  - yt/frontends/tipsy/tests/test_outputs.py
+  local_tipsy_340:
+    - yt/frontends/tipsy/tests/test_outputs.py
 
-local_varia_340:
-  - yt/analysis_modules/radmc3d_export
-  - yt/frontends/moab/tests/test_c5.py
-  - yt/analysis_modules/photon_simulator/tests/test_spectra.py
-  - yt/analysis_modules/photon_simulator/tests/test_sloshing.py
-  - yt/visualization/volume_rendering/tests/test_vr_orientation.py
+  local_varia_340:
+    - yt/analysis_modules/radmc3d_export
+    - yt/frontends/moab/tests/test_c5.py
+    - yt/analysis_modules/photon_simulator/tests/test_spectra.py
+    - yt/analysis_modules/photon_simulator/tests/test_sloshing.py
+    - yt/visualization/volume_rendering/tests/test_vr_orientation.py
 
-local_orion_340:
-  - yt/frontends/boxlib/tests/test_orion.py
+  local_orion_340:
+    - yt/frontends/boxlib/tests/test_orion.py
 
-local_ramses_340:
-  - yt/frontends/ramses/tests/test_outputs.py
+  local_ramses_340:
+    - yt/frontends/ramses/tests/test_outputs.py
 
-local_ytdata_340:
-  - yt/frontends/ytdata
\ No newline at end of file
+  local_ytdata_340:
+    - yt/frontends/ytdata
+
+other_tests:
+  unittests:
+    - '-v'
+  cookbook:
+    - 'doc/source/cookbook/tests/test_cookbook.py'
+    - '-P'

Repository URL: https://bitbucket.org/yt_analysis/yt/

--

This is a commit notification from bitbucket.org. You are receiving
this because you have the service enabled, addressing the recipient of
this email.



More information about the yt-svn mailing list