Ejemplo n.º 1
0
 def test_dagda_check_full_happy_path(self):
     sys.argv = ['dagda.py', 'check', '-i', 'jboss/wildfly']
     parsed_args = DagdaCLIParser()
     self.assertEqual(parsed_args.get_command(), 'check')
     self.assertEqual(parsed_args.get_extra_args().get_docker_image_name(),
                      'jboss/wildfly')
     self.assertEqual(parsed_args.get_extra_args().get_container_id(), None)
Ejemplo n.º 2
0
 def test_dagda_history_full_happy_path(self):
     sys.argv = ['dagda.py', 'history', 'jboss/wildfly']
     parsed_args = DagdaCLIParser()
     self.assertEqual(parsed_args.get_command(), 'history')
     self.assertEqual(parsed_args.get_extra_args().get_docker_image_name(),
                      'jboss/wildfly')
     self.assertEqual(parsed_args.get_extra_args().get_report_id(), None)
Ejemplo n.º 3
0
 def test_dagda_agent_full_happy_path(self):
     sys.argv = ['dagda.py', 'agent', 'localhost:5000', '-i', 'alpine']
     parsed_args = DagdaCLIParser()
     self.assertEqual(parsed_args.get_command(), 'agent')
     self.assertEqual(parsed_args.get_extra_args().get_dagda_server(), 'localhost:5000')
     self.assertEqual(parsed_args.get_extra_args().get_docker_image_name(), 'alpine')
     self.assertEqual(parsed_args.get_extra_args().get_container_id(), None)
Ejemplo n.º 4
0
 def test_dagda_monitor_full_happy_path(self):
     sys.argv = ['dagda.py', 'monitor', '69dbf26ab368', '--start']
     parsed_args = DagdaCLIParser()
     self.assertEqual(parsed_args.get_command(), 'monitor')
     self.assertEqual(parsed_args.get_extra_args().get_container_id(), '69dbf26ab368')
     self.assertTrue(parsed_args.get_extra_args().is_start())
     self.assertFalse(parsed_args.get_extra_args().is_stop())
Ejemplo n.º 5
0
 def test_dagda_start_full_happy_path(self):
     sys.argv = ['dagda.py', 'start', '--server_host', 'localhost', '--server_port', '5555']
     parsed_args = DagdaCLIParser()
     self.assertEqual(parsed_args.get_command(), 'start')
     self.assertEqual(parsed_args.get_extra_args().get_server_host(), 'localhost')
     self.assertEqual(parsed_args.get_extra_args().get_server_port(), 5555)
     self.assertEqual(parsed_args.get_extra_args().get_mongodb_host(), None)
     self.assertEqual(parsed_args.get_extra_args().get_mongodb_port(), None)
Ejemplo n.º 6
0
 def test_dagda_start_full_happy_path(self):
     sys.argv = ['dagda.py', 'start', '--server_host', 'localhost', '--server_port', '5555']
     parsed_args = DagdaCLIParser()
     self.assertEqual(parsed_args.get_command(), 'start')
     self.assertEqual(parsed_args.get_extra_args().get_server_host(), 'localhost')
     self.assertEqual(parsed_args.get_extra_args().get_server_port(), 5555)
     self.assertEqual(parsed_args.get_extra_args().get_mongodb_host(), None)
     self.assertEqual(parsed_args.get_extra_args().get_mongodb_port(), None)
Ejemplo n.º 7
0
 def test_dagda_docker_happy_path(self):
     sys.argv = [
         'dagda.py',
         'docker',
         'images',
     ]
     parsed_args = DagdaCLIParser()
     self.assertEqual(parsed_args.get_command(), 'docker')
     self.assertEqual(parsed_args.get_extra_args().get_command(), 'images')
Ejemplo n.º 8
0
 def test_dagda_history_happy_path(self):
     os.environ['DAGDA_HOST'] = str('localhost')
     os.environ['DAGDA_PORT'] = str('50000')
     sys.argv = ['dagda.py', 'history']
     parsed_args = DagdaCLIParser()
     try:
         execute_dagda_cmd(parsed_args.get_command(), parsed_args.get_extra_args())
         self.fail()
     except requests.exceptions.ConnectionError as err:
         err = DagdaCLITestSuite._get_path(err)
         self.assertEqual(err, '/v1/history')
Ejemplo n.º 9
0
 def test_dagda_monitor_stop_full_happy_path(self):
     os.environ['DAGDA_HOST'] = str('localhost')
     os.environ['DAGDA_PORT'] = str('50000')
     sys.argv = ['dagda.py', 'monitor', '69dbf26ab368', '--stop']
     parsed_args = DagdaCLIParser()
     try:
         execute_dagda_cmd(parsed_args.get_command(), parsed_args.get_extra_args())
         self.fail()
     except requests.exceptions.ConnectionError as err:
         err = DagdaCLITestSuite._get_path(err)
         self.assertEqual(err, '/v1/monitor/containers/69dbf26ab368/stop')
Ejemplo n.º 10
0
 def test_dagda_vuln_exploit_info_happy_path(self):
     os.environ['DAGDA_HOST'] = str('localhost')
     os.environ['DAGDA_PORT'] = str('50000')
     sys.argv = ['dagda.py', 'vuln', '--exploit_db_info', '2002']
     parsed_args = DagdaCLIParser()
     try:
         execute_dagda_cmd(parsed_args.get_command(), parsed_args.get_extra_args())
         self.fail()
     except requests.exceptions.ConnectionError as err:
         err = DagdaCLITestSuite._get_path(err)
         self.assertEqual(err, '/v1/vuln/exploit/2002/details')
Ejemplo n.º 11
0
 def test_dagda_vuln_product_version_happy_path(self):
     os.environ['DAGDA_HOST'] = str('localhost')
     os.environ['DAGDA_PORT'] = str('50000')
     sys.argv = ['dagda.py', 'vuln', '--product', 'openldap', '--product_version', '2.2.20']
     parsed_args = DagdaCLIParser()
     try:
         execute_dagda_cmd(parsed_args.get_command(), parsed_args.get_extra_args())
         self.fail()
     except requests.exceptions.ConnectionError as err:
         err = DagdaCLITestSuite._get_path(err)
         self.assertEqual(err, '/v1/vuln/products/openldap/2.2.20')
Ejemplo n.º 12
0
 def test_dagda_history_is_fp_with_version_full_happy_path(self):
     os.environ['DAGDA_HOST'] = str('localhost')
     os.environ['DAGDA_PORT'] = str('50000')
     sys.argv = ['dagda.py', 'history', 'jboss/wildfly', '--is_fp', 'openldap:2.2.20']
     parsed_args = DagdaCLIParser()
     try:
         execute_dagda_cmd(parsed_args.get_command(), parsed_args.get_extra_args())
         self.fail()
     except requests.exceptions.ConnectionError as err:
         err = DagdaCLITestSuite._get_path(err)
         self.assertEqual(err, '/v1/history/jboss/wildfly/fp/openldap/2.2.20')
Ejemplo n.º 13
0
 def test_dagda_check_container_full_happy_path(self):
     os.environ['DAGDA_HOST'] = str('localhost')
     os.environ['DAGDA_PORT'] = str('50000')
     sys.argv = ['dagda.py', 'check', '-c', '697f6f235558']
     parsed_args = DagdaCLIParser()
     try:
         execute_dagda_cmd(parsed_args.get_command(), parsed_args.get_extra_args())
         self.fail()
     except requests.exceptions.ConnectionError as err:
         err = DagdaCLITestSuite._get_path(err)
         self.assertEqual(err, '/v1/check/containers/697f6f235558')
Ejemplo n.º 14
0
 def test_dagda_docker_events_happy_path(self):
     os.environ['DAGDA_HOST'] = str('localhost')
     os.environ['DAGDA_PORT'] = str('50000')
     sys.argv = [
         'dagda.py', 'docker', 'events', '--event_from', 'FROM',
         '--event_type', 'TYPE', '--event_action', 'ACTION'
     ]
     parsed_args = DagdaCLIParser()
     try:
         execute_dagda_cmd(parsed_args.get_command(),
                           parsed_args.get_extra_args())
         self.fail()
     except requests.exceptions.ConnectionError as err:
         err = DagdaCLITestSuite._get_path(err)
         self.assertEqual(
             err,
             '/v1/docker/events?event_action=ACTION&event_from=FROM&event_type=TYPE'
         )
Ejemplo n.º 15
0
 def test_dagda_vuln_full_happy_path(self):
     sys.argv = ['dagda.py', 'vuln', '--product', 'openldap', '--product_version', '2.2.20']
     parsed_args = DagdaCLIParser()
     self.assertEqual(parsed_args.get_command(), 'vuln')
     self.assertEqual(parsed_args.get_extra_args().get_product(), 'openldap')
     self.assertEqual(parsed_args.get_extra_args().get_product_version(), '2.2.20')
     self.assertFalse(parsed_args.get_extra_args().is_initialization_required())
     self.assertFalse(parsed_args.get_extra_args().is_init_status_requested())
Ejemplo n.º 16
0
 def test_dagda_monitor_full_happy_path(self):
     sys.argv = ['dagda.py', 'monitor', '69dbf26ab368', '--start']
     parsed_args = DagdaCLIParser()
     self.assertEqual(parsed_args.get_command(), 'monitor')
     self.assertEqual(parsed_args.get_extra_args().get_container_id(), '69dbf26ab368')
     self.assertTrue(parsed_args.get_extra_args().is_start())
     self.assertFalse(parsed_args.get_extra_args().is_stop())
Ejemplo n.º 17
0
 def test_dagda_vuln_full_happy_path(self):
     sys.argv = ['dagda.py', 'vuln', '--product', 'openldap', '--product_version', '2.2.20']
     parsed_args = DagdaCLIParser()
     self.assertEqual(parsed_args.get_command(), 'vuln')
     self.assertEqual(parsed_args.get_extra_args().get_product(), 'openldap')
     self.assertEqual(parsed_args.get_extra_args().get_product_version(), '2.2.20')
     self.assertFalse(parsed_args.get_extra_args().is_initialization_required())
     self.assertFalse(parsed_args.get_extra_args().is_init_status_requested())
Ejemplo n.º 18
0
 def test_dagda_agent_full_happy_path(self):
     sys.argv = ['dagda.py', 'agent', 'localhost:5000', '-i', 'alpine']
     parsed_args = DagdaCLIParser()
     self.assertEqual(parsed_args.get_command(), 'agent')
     self.assertEqual(parsed_args.get_extra_args().get_dagda_server(),
                      'localhost:5000')
     self.assertEqual(parsed_args.get_extra_args().get_docker_image_name(),
                      'alpine')
     self.assertEqual(parsed_args.get_extra_args().get_container_id(), None)
Ejemplo n.º 19
0
 def test_dagda_check_full_happy_path(self):
     sys.argv = ['dagda.py', 'check', '-i', 'jboss/wildfly']
     parsed_args = DagdaCLIParser()
     self.assertEqual(parsed_args.get_command(), 'check')
     self.assertEqual(parsed_args.get_extra_args().get_docker_image_name(), 'jboss/wildfly')
     self.assertEqual(parsed_args.get_extra_args().get_container_id(), None)
Ejemplo n.º 20
0
 def test_dagda_docker_happy_path(self):
     sys.argv = ['dagda.py', 'docker', 'images', ]
     parsed_args = DagdaCLIParser()
     self.assertEqual(parsed_args.get_command(), 'docker')
     self.assertEqual(parsed_args.get_extra_args().get_command(), 'images')
Ejemplo n.º 21
0
 def test_check_exit_2(self):
     sys.argv = ['dagda.py', 'fake']
     with self.assertRaises(SystemExit) as cm:
         DagdaCLIParser()
     self.assertEqual(cm.exception.code, 2)
Ejemplo n.º 22
0
        # Executes history sub-command
        elif cmd == 'history':
            # Gets the history
            query_params = ''
            if parsed_args.get_report_id() is not None:
                query_params = '?id=' + parsed_args.get_report_id()
            r = requests.get(dagda_base_url + '/history/' +
                             parsed_args.get_docker_image_name() +
                             query_params)

        # Executes monitor sub-command
        elif cmd == 'monitor':
            if parsed_args.is_start():
                r = requests.post(dagda_base_url + '/monitor/containers/' +
                                  parsed_args.get_container_id() + '/start')
            elif parsed_args.is_stop():
                r = requests.post(dagda_base_url + '/monitor/containers/' +
                                  parsed_args.get_container_id() + '/stop')

        # -- Print cmd output
        if r is not None:
            print(
                json.dumps(json.loads(r.content.decode('utf-8')),
                           sort_keys=True,
                           indent=4))


if __name__ == "__main__":
    main(DagdaCLIParser())
Ejemplo n.º 23
0
 def test_dagda_history_full_happy_path(self):
     sys.argv = ['dagda.py', 'history', 'jboss/wildfly']
     parsed_args = DagdaCLIParser()
     self.assertEqual(parsed_args.get_command(), 'history')
     self.assertEqual(parsed_args.get_extra_args().get_docker_image_name(), 'jboss/wildfly')
     self.assertEqual(parsed_args.get_extra_args().get_report_id(), None)