Rasmus Wriedt Larsen
2b997ec94a
Python: Add Python 3 Imports tests from internal repo
2020-02-24 15:36:45 +01:00
Rasmus Wriedt Larsen
e7fdfd3d3e
Python: Move subprocess.call so super-class detection works
...
This is a temporary fix!
Added minimal working example (MWE) as a regression, so it's easier to fix the
real problem.
only Python 3 is facing the problem -- and without --max-import-depth=1 the test
times out at 10 minutes :O
2020-02-19 14:12:22 +01:00
Rasmus Wriedt Larsen
87eff7f062
Python: More iterator => iterable renaming
2020-02-19 14:12:22 +01:00
Rebecca Valentine
810efef9de
Adds python3 test
2020-02-18 15:02:47 -08:00
Taus
df3ac49c28
Merge pull request #2700 from RasmusWL/python-taint-iterable-unpacking
...
Python: Handle iterable unpacking in taint tracking
2020-02-17 11:44:25 +01:00
Taus
895f2f74ab
Merge branch 'master' into python-clean-qltest-options
2020-02-12 13:44:41 +01:00
Rasmus Wriedt Larsen
c0b7dcc019
Python: Remove ignored automatic_locations in qltest options files
2020-02-06 14:28:10 +01:00
Rasmus Wriedt Larsen
397c17c4ff
Python: Use --lang=3 in tests
...
With internal update to qltest it will not actually do something.
- also remove it from the tests that never needed it.
2020-02-06 14:20:59 +01:00
Rasmus Wriedt Larsen
cb891a1a49
Python: Clean up six tests
...
We can't understand the real `six.py` file, so we have some internal plumbing
that enables us to handle six anyway. While updating that, I had a hell of a lot
of trouble with these tests.
What we actually want, is to see that we can understand what the values imported
from six are (i.e., their points-to information). I added a few more, that I
think would be useful. If we can figure out all of these, I don't actually care
if we're doing it by understanding the real `six.py` file, or by some internal
trick.
I verified that we don't get results with the real `six.py` file by disabling
our internal tricks, and putting a copy of six.py just next to test.py.
We used to have an other file that would list all the properties we knew and
their value, but that turned out to be a fragile and annoying test, since the
results differed from which version of python you ran it with (3.5 vs 3.8) and
which machine you ran it on (my machien vs jenkins). I don't care about the
results in this file, and I can certainly not eyeball it to see if it's correct
or not.
2020-02-06 13:50:51 +01:00
Rasmus Wriedt Larsen
081d66eaa3
Python: Recognize taint for extended iterable unpacking
2020-01-27 15:28:53 +01:00
Rasmus Wriedt Larsen
1b670354b2
Python: Add tests for extended iterable unpacking
2020-01-27 15:24:55 +01:00
Rasmus Wriedt Larsen
96d5703f2c
Python: Remove use of deprecated methods
2020-01-22 13:45:14 +01:00
Rasmus Wriedt Larsen
fb864b7262
Python: Consolidate tests for django
...
The tests in 3/ was not Python 3 specific anymore
2019-10-29 13:58:07 +01:00
Taus Brock-Nannestad
b2f7b0921b
Python: Add false negative test case.
2019-10-21 14:31:05 +02:00
Taus Brock-Nannestad
99b99ef2b6
Python: Teach py/unreachable-statement about contextlib.suppress.
2019-10-21 14:31:05 +02:00
Taus Brock-Nannestad
e1012d8d5a
Python: Add __aiter__ as a recognised iterator method.
2019-09-23 12:26:16 +02:00
Rebecca Valentine
f503e042fc
Merge pull request #1877 from taus-semmle/python-modernise-non-iterator-query
...
Python: Modernise the `py/non-iterable-in-for-loop` query.
2019-09-12 11:14:40 -07:00
Taus Brock-Nannestad
1013fb7b25
Update .expected file for Python 3 tests.
2019-09-11 14:13:05 +02:00
Taus Brock-Nannestad
8882f1410a
Add test cases for nested subscripts.
2019-09-06 12:01:18 +02:00
Taus Brock-Nannestad
2d45c23d19
Comment out diverging example for now.
...
Otherwise it'll keep timing out until the fix has been pushed to LGTM.com
2019-09-05 13:18:01 +02:00
Taus Brock-Nannestad
4440e02fa5
Add test case for divergence.
2019-09-04 13:23:06 +02:00
Mark Shannon
453ae19881
Python points-to: Add .getAstNode() method to TaintedNode for forward compatibility with upcoming taint-tracking enhancements.
2019-08-16 09:54:11 +01:00
Mark Shannon
6c6e35f541
Python: Enhance points-to to support type-hint analysis.
2019-08-15 11:35:14 +01:00
Mark Shannon
4b242ddc86
Python: Port a few queries to new API.
2019-08-08 11:58:23 +01:00
Mark Shannon
54a8c64b23
Python points-to: Remove negative recursion when using legacy points-to in legacy points-to extensions.
2019-07-18 14:16:52 +01:00
Mark Shannon
30e1cbc5fc
Python: Remove Value.getSource(). It has no use.
2019-06-13 18:23:54 +01:00
Mark Shannon
0c02d3deef
Python: Fix up expected test results for six test.
2019-06-11 15:44:44 +01:00
Mark Shannon
a5ff527ac2
Python: Remove test due to instability across minor versions.
2019-05-14 10:45:43 +01:00
Mark Shannon
2905737a0e
Python points-to: Fix analysis of zero-arg super().
2019-05-13 12:00:38 +01:00
Mark Shannon
d74c76510f
Python points-to: Don't track non-descriptor class attributes on instances. Update more tests.
2019-05-13 11:46:55 +01:00
Mark Shannon
abf0347fce
Python points-to: Split strings into bytes and unicode.
2019-04-26 16:21:47 +01:00
Mark Shannon
48c0cbe51a
Python: improve handling of __all__
2019-04-26 16:21:47 +01:00
Mark Shannon
3bb61e7410
Python points-to: Improve handling of subscripts and sequence inequalities.
2019-04-26 16:21:47 +01:00
Arthur Baars
ba7fdddafb
Change @kind to 'table' for test and sanity checks queries that don't select problems
2019-04-01 11:20:12 +02:00
Mark Shannon
d605dfd542
Python delete extractor tests. Duplicates of internal tests.
2019-02-27 15:35:52 +00:00
Taus
5b127eb676
Merge pull request #914 from markshannon/python-add-2-3-query-tests
...
Python: Add 2/3 specific query tests.
2019-02-12 12:54:29 +01:00
Mark Shannon
52ddd79cab
Python: Add 2/3 specific query tests.
2019-02-08 15:13:17 +00:00
Mark Shannon
49307a72b4
Python: Add 3-only library tests.
2019-02-08 14:39:27 +00:00