def test_list(self): logging.debug('') logging.debug('test_list') orig_stdout = sys.stdout orig_stderr = sys.stderr sys.stdout = cStringIO.StringIO() sys.stderr = cStringIO.StringIO() try: argv = ['list'] parser = _get_plugin_parser() options, args = parser.parse_known_args(argv) retval = plugin_list(parser, options, args) self.assertEqual(retval, 0) finally: captured_stdout = sys.stdout.getvalue() captured_stderr = sys.stderr.getvalue() sys.stdout = orig_stdout sys.stderr = orig_stderr logging.debug('captured stdout:') logging.debug(captured_stdout) logging.debug('captured stderr:') logging.debug(captured_stderr) # Just a selection from each category. expected = ['openmdao.lib.architectures.bliss.BLISS', 'openmdao.lib.casehandlers.caseset.CaseArray', 'openmdao.lib.components.broadcaster.Broadcaster', 'openmdao.lib.datatypes.array.Array', 'openmdao.lib.differentiators.finite_difference.FiniteDifference', 'openmdao.lib.doegenerators.central_composite.CentralComposite', 'openmdao.lib.drivers.broydensolver.BroydenSolver', 'openmdao.lib.surrogatemodels.kriging_surrogate.KrigingSurrogate', 'openmdao.main.assembly.Assembly'] for plugin in expected: self.assertTrue(plugin in captured_stdout) sys.stdout = cStringIO.StringIO() sys.stderr = cStringIO.StringIO() try: argv = ['list', '-g', 'driver', '--builtin'] parser = _get_plugin_parser() options, args = parser.parse_known_args(argv) retval = plugin_list(parser, options, args) self.assertEqual(retval, 0) finally: captured_stdout = sys.stdout.getvalue() captured_stderr = sys.stderr.getvalue() sys.stdout = orig_stdout sys.stderr = orig_stderr logging.debug('captured stdout:') logging.debug(captured_stdout) logging.debug('captured stderr:') logging.debug(captured_stderr) if 'openmdao.lib.drivers.doedriver.DOEdriver' not in captured_stdout: self.fail('-g driver filter failed to include') if 'openmdao.main.assembly.Assembly' in captured_stdout: self.fail('-g driver filter failed to exclude') # Errors. argv = ['list', 'stuff'] parser = _get_plugin_parser() options, args = parser.parse_known_args(argv) retval = plugin_list(parser, options, args) self.assertEqual(retval, -1)
def test_list(self): logging.debug('') logging.debug('test_list') orig_stdout = sys.stdout orig_stderr = sys.stderr sys.stdout = cStringIO.StringIO() sys.stderr = cStringIO.StringIO() try: argv = ['list'] parser = _get_plugin_parser() options, args = parser.parse_known_args(argv) retval = plugin_list(parser, options, args) self.assertEqual(retval, 0) finally: captured_stdout = sys.stdout.getvalue() captured_stderr = sys.stderr.getvalue() sys.stdout = orig_stdout sys.stderr = orig_stderr logging.debug('captured stdout:') logging.debug(captured_stdout) logging.debug('captured stderr:') logging.debug(captured_stderr) # Just a selection from each category. expected = [ 'openmdao.lib.architectures.bliss.BLISS', 'openmdao.lib.casehandlers.caseset.CaseArray', 'openmdao.lib.components.broadcaster.Broadcaster', 'openmdao.lib.datatypes.array.Array', 'openmdao.lib.differentiators.finite_difference.FiniteDifference', 'openmdao.lib.doegenerators.central_composite.CentralComposite', 'openmdao.lib.drivers.broydensolver.BroydenSolver', 'openmdao.lib.surrogatemodels.kriging_surrogate.KrigingSurrogate', 'openmdao.main.assembly.Assembly' ] for plugin in expected: self.assertTrue(plugin in captured_stdout) sys.stdout = cStringIO.StringIO() sys.stderr = cStringIO.StringIO() try: argv = ['list', '-g', 'driver', '--builtin'] parser = _get_plugin_parser() options, args = parser.parse_known_args(argv) retval = plugin_list(parser, options, args) self.assertEqual(retval, 0) finally: captured_stdout = sys.stdout.getvalue() captured_stderr = sys.stderr.getvalue() sys.stdout = orig_stdout sys.stderr = orig_stderr logging.debug('captured stdout:') logging.debug(captured_stdout) logging.debug('captured stderr:') logging.debug(captured_stderr) if 'openmdao.lib.drivers.doedriver.DOEdriver' not in captured_stdout: self.fail('-g driver filter failed to include') if 'openmdao.main.assembly.Assembly' in captured_stdout: self.fail('-g driver filter failed to exclude') # Errors. argv = ['list', 'stuff'] parser = _get_plugin_parser() options, args = parser.parse_known_args(argv) retval = plugin_list(parser, options, args) self.assertEqual(retval, -1)