コード例 #1
0
ファイル: tests.py プロジェクト: lculiuyanlong/Archery-1
 def test_execute_check_normal_sql_with_Exception(self, _inception_engine):
     sql = 'update user set id=1'
     _inception_engine.return_value.execute_check.side_effect = RuntimeError(
     )
     new_engine = MysqlEngine(instance=self.ins1)
     with self.assertRaises(RuntimeError):
         new_engine.execute_check(db_name=0, sql=sql)
コード例 #2
0
 def test_execute_check_select_sql(self):
     sql = 'select * from user'
     row = ReviewResult(id=1, errlevel=2,
                        stagestatus='驳回高危SQL',
                        errormessage='仅支持DML和DDL语句,查询语句请使用SQL查询功能!',
                        sql=sql)
     new_engine = MysqlEngine(instance=self.ins1)
     check_result = new_engine.execute_check(db_name='archery', sql=sql)
     self.assertIsInstance(check_result, ReviewSet)
     self.assertEqual(check_result.rows[0].__dict__, row.__dict__)
コード例 #3
0
 def test_execute_check_critical_sql(self):
     self.sys_config.set('critical_ddl_regex', '^|update')
     self.sys_config.get_all_config()
     sql = 'update user set id=1'
     row = ReviewResult(id=1, errlevel=2,
                        stagestatus='驳回高危SQL',
                        errormessage='禁止提交匹配' + '^|update' + '条件的语句!',
                        sql=sql)
     new_engine = MysqlEngine(instance=self.ins1)
     check_result = new_engine.execute_check(db_name='archery', sql=sql)
     self.assertIsInstance(check_result, ReviewSet)
     self.assertEqual(check_result.rows[0].__dict__, row.__dict__)
コード例 #4
0
 def test_execute_check_normal_sql(self, _inception_engine):
     sql = 'update user set id=1'
     row = ReviewResult(id=1,
                        errlevel=0,
                        stagestatus='Audit completed',
                        errormessage='None',
                        sql=sql,
                        affected_rows=0,
                        execute_time=0, )
     _inception_engine.return_value.execute_check.return_value = ReviewSet(full_sql=sql, rows=[row])
     new_engine = MysqlEngine(instance=self.ins1)
     check_result = new_engine.execute_check(db_name='archery', sql=sql)
     self.assertIsInstance(check_result, ReviewSet)
     self.assertEqual(check_result.rows[0].__dict__, row.__dict__)