mirror of
https://github.com/github/codeql.git
synced 2025-12-21 19:26:31 +01:00
Python: More examples of things to handle in find-subclass
This commit is contained in:
@@ -1,4 +1,10 @@
|
|||||||
|
| flask.MethodView~Subclass | find_subclass_test | Member[MethodView] |
|
||||||
|
| flask.MethodView~Subclass | find_subclass_test | Member[clash] |
|
||||||
| flask.View~Subclass | find_subclass_test | Member[A] |
|
| flask.View~Subclass | find_subclass_test | Member[A] |
|
||||||
| flask.View~Subclass | find_subclass_test | Member[B] |
|
| flask.View~Subclass | find_subclass_test | Member[B] |
|
||||||
|
| flask.View~Subclass | find_subclass_test | Member[ViewAliasInExcept] |
|
||||||
|
| flask.View~Subclass | find_subclass_test | Member[ViewAliasInTry] |
|
||||||
| flask.View~Subclass | find_subclass_test | Member[ViewAlias] |
|
| flask.View~Subclass | find_subclass_test | Member[ViewAlias] |
|
||||||
| flask.View~Subclass | find_subclass_test | Member[View] |
|
| flask.View~Subclass | find_subclass_test | Member[View] |
|
||||||
|
| flask.View~Subclass | find_subclass_test | Member[clash3] |
|
||||||
|
| flask.View~Subclass | find_subclass_test | Member[complete_module_alias] |
|
||||||
|
|||||||
@@ -8,3 +8,35 @@ class B(A):
|
|||||||
|
|
||||||
|
|
||||||
ViewAlias = View
|
ViewAlias = View
|
||||||
|
|
||||||
|
try:
|
||||||
|
from flask.views import View as ViewAliasInTry
|
||||||
|
except:
|
||||||
|
from flask.views import View as ViewAliasInExcept
|
||||||
|
|
||||||
|
|
||||||
|
if cond:
|
||||||
|
from flask.views import View as clash # $ MISSING
|
||||||
|
else:
|
||||||
|
from flask.views import MethodView as clash # $ SPURIOUS: MethodView
|
||||||
|
|
||||||
|
if cond:
|
||||||
|
from flask.views import View as clash2 # $ MISSING
|
||||||
|
else:
|
||||||
|
from flask.views import MethodView as clash2 # $ MISSING
|
||||||
|
print(clash2)
|
||||||
|
|
||||||
|
if cond:
|
||||||
|
from flask.views import View as clash3
|
||||||
|
else:
|
||||||
|
from flask.views import MethodView as clash3 # $ MISSING
|
||||||
|
print(clash3)
|
||||||
|
|
||||||
|
import flask.views as containing_module_alias # $ MISSING
|
||||||
|
# now `find_subclass_test.containing_module_alias.View` is an alias of flask.views.View
|
||||||
|
|
||||||
|
# NOTE: this is not valid code, since View is not a module... but it could be in some cases, like for xml.etree.ElementTree, which is actually not a class but a module 😕
|
||||||
|
import flask.views.View as complete_module_alias
|
||||||
|
|
||||||
|
def wrapper():
|
||||||
|
return View # $ MISSING
|
||||||
|
|||||||
Reference in New Issue
Block a user