Commit Graph
100 Commits
Author SHA1 Message Date
Takafumi Arakaki a4922774c0 Fix the previous error 2013-05-23 15:32:32 +02:00
Takafumi Arakaki ce92fd946b Add failing test: test_goto_assignments_keyword 2013-05-23 15:32:32 +02:00
Takafumi Arakaki 58031d34fe Merge pull request #231 from tkf/sith
Add sith.py, a script for random smoke test
2013-05-23 04:22:25 -07:00
Takafumi Arakaki 286279f14a Show default value for --record 2013-05-23 00:53:45 +02:00
Takafumi Arakaki d246192df0 Add short options 2013-05-23 00:49:20 +02:00
Takafumi Arakaki fd0ec772fb Fix: record was not saved 2013-05-23 00:20:11 +02:00
Takafumi Arakaki cee0d4cf2f Generate better help / add more help 2013-05-23 00:00:25 +02:00
Takafumi Arakaki 8bf5f9d539 Report attacking by "." 2013-05-22 23:33:01 +02:00
Takafumi Arakaki 2dee71ff4b Ignore jedi.NotFoundError 2013-05-22 23:14:32 +02:00
Takafumi Arakaki 6d026ec1af Add --(i)pdb option 2013-05-22 23:11:50 +02:00
Takafumi Arakaki 1e209aed37 Add 'show' command 2013-05-22 23:00:19 +02:00
Takafumi Arakaki 311025258e Print exception 2013-05-22 22:51:34 +02:00
Takafumi Arakaki 0fecb0a780 Add sith.py, a script for random smoke test 2013-05-22 22:33:58 +02:00
Takafumi Arakaki 0ee2c16551 Add TestDefinedNames.test_nested_class 2013-05-21 20:16:44 +02:00
Takafumi Arakaki 91f3d524de Document test_full_name.py 2013-05-21 16:57:40 +02:00
Takafumi Arakaki 851238386f Fix tests for defined_names + full_name 2013-05-21 14:23:59 +02:00
Takafumi Arakaki 5d6719ed8c Add tests for defined_names + full_name 2013-05-21 14:23:58 +02:00
Takafumi Arakaki 339ebbbf4e Fix TestFullNameWithCompletions.test_from_import 2013-05-21 12:30:21 +02:00
Takafumi Arakaki f4982606d8 Refactor tests for full_name 2013-05-21 12:10:03 +02:00
Takafumi Arakaki 6acf34efd3 Fix: api.defined_names was run against wrong scope
when there is only one class is defined in the module.
2013-05-19 05:08:18 +02:00
Takafumi Arakaki e011683ea4 dedent source before passing it to defined_names
test_nested_definitions fails now
2013-05-19 05:08:18 +02:00
Takafumi Arakaki 6fadfb573c Refactor TestDefinedNames 2013-05-19 05:08:18 +02:00
Takafumi Arakaki 29f74c245d Move tests for defined_names to test_defined_names.py 2013-05-19 05:08:18 +02:00
Takafumi Arakaki 200d29713e Make defined_names importable at top-level 2013-05-19 05:08:17 +02:00
Takafumi Arakaki 4bd03d0c74 Document JediRLCompleter 2013-05-19 00:52:41 +02:00
Takafumi Arakaki 3b3310ee3e Determine readline delims programmatically 2013-05-19 00:42:00 +02:00
Takafumi Arakaki 6a8a06fd0b Improve JediRLCompleter for minor cases 2013-05-19 00:42:00 +02:00
Takafumi Arakaki 0c85642e6b Add utils.JediRLCompleter 2013-05-19 00:41:58 +02:00
Takafumi Arakaki 27f8b342e1 Document utils.setup_readline 2013-05-19 00:41:48 +02:00
Takafumi Arakaki 134dab174d Setup intersphinx module for linking Python doc
For example, :mod:`readline` links to the corresponding page.
2013-05-18 23:26:13 +02:00
Takafumi Arakaki 7a8ea56b05 Document jedi.replstartup usage 2013-05-18 23:26:13 +02:00
Takafumi Arakaki ee5f96f119 Fix test failure
The bug was introduced when I merged branch 'interpreter-api' at
5f2477d5bf.
This patch redo (part of) 2846fe980b.
2013-05-18 23:25:54 +02:00
Takafumi Arakaki 5f2477d5bf Merge branch 'interpreter-api' into dev
Conflicts:
	jedi/__init__.py
	test/test_regression.py

See: #145
2013-05-18 22:28:56 +02:00
Takafumi Arakaki 3d6ef88795 Add simple PYTHONSTARTUP file 2013-05-12 08:21:55 +02:00
Takafumi Arakaki 52b3a326c4 Revert changes in jedi/modules.py in this branch 2013-05-11 22:01:48 +02:00
Takafumi Arakaki 19b3fef0c5 Remove fast option from api.Script 2013-05-11 21:59:39 +02:00
Takafumi Arakaki a870fece0f Use fast parser in api.Interpreter 2013-05-11 21:47:55 +02:00
Takafumi Arakaki 2846fe980b Remove api._quick_complete 2013-05-11 21:40:00 +02:00
Takafumi Arakaki 08f8dcfae4 Do not repeat defaults in Interpreter.__init__ 2013-05-11 21:37:53 +02:00
Takafumi Arakaki 6af2a0677d Compute default line/column/source_path in api.Script 2013-05-11 21:36:43 +02:00
Takafumi Arakaki 633f582184 Add jedi.interpret.ObjectImporter
and move scope manipulation functions in api.Interpreter to there.
2013-05-11 21:33:57 +02:00
Takafumi Arakaki 17f5b9a79d Fix test failure in Python 3.3
There is a new method introduced in Python 3.3:
http://docs.python.org/3/library/datetime.html#datetime.datetime.timestamp
2013-05-04 18:10:20 +02:00
Takafumi Arakaki 89edb73978 Fix failure due to rebase 2013-05-04 17:58:02 +02:00
Takafumi Arakaki 3d0458bca9 Export Interpreter class to top-level namespace 2013-05-04 17:50:42 +02:00
Takafumi Arakaki e8914e7856 Document api.Interpreter 2013-05-04 17:45:34 +02:00
Takafumi Arakaki 8fc396371c Respect settings.fast_parser 2013-05-04 17:44:59 +02:00
Takafumi Arakaki c2e9ccda2b Fix failing test: args for ModuleWithCursor 2013-05-04 17:44:59 +02:00
Takafumi Arakaki dc47d15de0 Use locals() for tests in TestInterpreterAPI
It is better to check that Interpreter does not fail with the
real name space.  Previously the doctest using locals() failed
because of the bug in _import_raw_namespace.
2013-05-04 17:44:59 +02:00
Takafumi Arakaki a93016db1b Python 2.5 compatibility fix 2013-05-04 17:44:59 +02:00
Takafumi Arakaki af10891096 Document api.Interpreter._genname 2013-05-04 17:44:59 +02:00
Takafumi Arakaki fc79f0e258 Support case like from os.path import join as pjoin 2013-05-04 17:44:59 +02:00
Takafumi Arakaki 6fb42e5f4b Document _import_raw_namespace more 2013-05-04 17:44:59 +02:00
Takafumi Arakaki 12ac71b1fd Document api.Interpreter 2013-05-04 17:44:59 +02:00
Takafumi Arakaki b4e3d1d65d Fix test_complete_raw_instance example
'dt.strftime("%Y").up' does not work even if with `api.Script`.
Change it to the one that can be handled by Jedi.
2013-05-04 17:44:59 +02:00
Takafumi Arakaki 45cad4c83b Fake imports should locate before fake statements 2013-05-04 17:44:59 +02:00
Takafumi Arakaki 06c03cafa2 Implement the case where raw object is an instance
There is still a bug in this implementation.
The corresponding test fails.
2013-05-04 17:44:58 +02:00
Takafumi Arakaki 11abd92d2b Support alias in _make_fakeimport 2013-05-04 17:44:58 +02:00
Takafumi Arakaki cf48d1272d Use proper interface to add fake Import object 2013-05-04 17:44:58 +02:00
Takafumi Arakaki 17770356e2 Implement the case where raw object is a module
Previously failing test_complete_raw_module is passed.
2013-05-04 17:44:58 +02:00
Takafumi Arakaki fb197c42ab Add tests for api.Interpreter (2/3 fail) 2013-05-04 17:44:58 +02:00
Takafumi Arakaki 3266aa2d00 Improve api.Interpreter docstring 2013-05-04 17:43:37 +02:00
Takafumi Arakaki 842fbfce8a Add api.Interpreter: Jedi API for Python REPLs 2013-05-04 17:43:37 +02:00
Takafumi Arakaki 944b3200a0 Fix allow_failures syntax
allow_failures.env requires a string when matrix/global is not used?
Also, indent is changed to fit with other entries.
2013-04-10 17:28:15 +02:00
Takafumi Arakaki 658bcb6421 Install coveralls only when needed 2013-04-10 17:23:50 +02:00
Takafumi Arakaki 8e4a76ca1b Allow TOXENV=cov to fail in travis-ci 2013-04-10 17:09:36 +02:00
Takafumi Arakaki af22409059 Separate tox env for coverage check 2013-04-10 17:08:20 +02:00
Takafumi Arakaki aca1cbfa4b Use "jedi/cpython-27" instead of "jedi/2.7" for FS cache 2013-03-20 16:46:55 +01:00
Takafumi Arakaki 27d007adba Compare version using "!="
Cache is not forward compatible.
2013-03-20 12:21:22 +01:00
Takafumi Arakaki 942b66ba5b Separate directory for each Python version 2013-03-20 12:21:22 +01:00
Takafumi Arakaki f8d3339f2f Remove old version of FS cache automatically 2013-03-20 12:21:22 +01:00
Takafumi Arakaki 8734e0efe2 Use cPickle if available 2013-03-19 20:33:15 +01:00
Takafumi Arakaki d1150cfdae List allowed attributes in Generator.__getattr__ 2013-03-17 13:56:54 +01:00
Takafumi Arakaki 2cc6edfa7c Fix Completion.follow_definition 2013-03-16 22:57:31 +01:00
Takafumi Arakaki 6a2e535bcb Add er.Generator.__getattr__ 2013-03-16 21:50:05 +01:00
Takafumi Arakaki c25ee531a2 AttributeError: 'Generator' object has no attribute 'start_pos'
Running py.test raises this error:
```tb
test/test_api_classes.py:50: in <module>
>   @pytest.mark.parametrize('definition', make_definitions())
test/test_api_classes.py:38: in make_definitions
>       definitions += script.definition()
jedi/api_classes.py:44: in wrapper
>       result = func(*args, **kwds)
jedi/api.py:274: in definition
>                   if not isinstance(s, imports.ImportPath._GlobalNamespace)])
jedi/api_classes.py:418: in __init__
>       super(Definition, self).__init__(definition, definition.start_pos)
E       AttributeError: 'Generator' object has no attribute 'start_pos'
```
2013-03-16 21:50:05 +01:00
Takafumi Arakaki febc65be6f Skip test_no_duplicate_modules for jedi.__init__ 2013-03-16 21:28:27 +01:00
Takafumi Arakaki 4aac06eb86 Remove tags for known failures due to the import hack 2013-03-16 21:18:37 +01:00
Takafumi Arakaki f5fee5f0df Fix wrong imports
- "from _compatibility import ..." (not in circular imports)
- "from jedi import builtin" (one of circular imports)
- "api_classes = api.api_classes"
  ("from jedi import api_classes" is not supported)
2013-03-16 21:03:34 +01:00
Takafumi Arakaki 07ba6658dd Add test_no_duplicate_modules 2013-03-16 20:44:00 +01:00
Takafumi Arakaki df08122639 Fix a failure when run with Python 3 2013-03-15 14:51:59 +01:00
Takafumi Arakaki be33f0ad98 Fix previously failing test_follow_definition 2013-03-15 14:39:51 +01:00
Takafumi Arakaki c8c1113c55 Test generator and lambda 2013-03-15 14:26:58 +01:00
Takafumi Arakaki a0c796087a Generate "param" definition in make_definitions 2013-03-15 14:24:42 +01:00
Takafumi Arakaki 956ad50276 Make more examples in make_definitions 2013-03-15 14:13:55 +01:00
Takafumi Arakaki f791e96d9d Fix failing test_basedefinition_type 2013-03-15 13:54:19 +01:00
Takafumi Arakaki 3caebcb5aa Add test_basedefinition_type 2013-03-15 13:54:17 +01:00
Takafumi Arakaki f70e425c4a Lowercase the str returned by BaseDefinition.type 2013-03-15 13:08:55 +01:00
Takafumi Arakaki 6659a532ac Remove --assert=plain 2013-03-15 00:25:10 +01:00
Takafumi Arakaki 7cf70a3f0a Do not clear cache in __del__
Prior to this change, running
`py.test --assert=rewrite test/test_integration.py` fails with errors
due to:

```py
cls = <class 'jedi.recursion.ExecutionRecursionDecorator'>

    @classmethod
    def cleanup(cls):
>       cls.parent_execution_funcs.pop()
E       IndexError: pop from empty list

recursion.py:127: IndexError
```

Similar errors occurred in travis occasionally:
- https://travis-ci.org/davidhalter/jedi/jobs/5449831
- https://travis-ci.org/davidhalter/jedi/jobs/5512538

I think this is because GC calls __del__ at random point during
actual execution of ExecutionRecursionDecorator.__call__.
As --assert=rewrite works by AST dynamically, I guess that it
is harder for Python's GC to clean up code and therefore GC
happens sometime later.  Although this is just a random guess,
as `tox -- --assert=rewrite` works with this patch now, I think
this is a good change.
2013-03-15 00:21:46 +01:00
Takafumi Arakaki 841d46684f Skip test in Python 3. It is a known bug.
See: #161
2013-03-14 22:21:58 +01:00
Takafumi Arakaki edc7148320 Fix test_modulepickling_change_cache_dir failure 2013-03-14 22:15:34 +01:00
Takafumi Arakaki 860cf7b974 Add test_modulepickling_change_cache_dir 2013-03-14 22:15:07 +01:00
Takafumi Arakaki ee03f3ae0d Use pytest_(un)configure to setup cache_directory 2013-03-14 20:43:10 +01:00
Takafumi Arakaki 95aed3c54e Exclude docs directory from test search 2013-03-14 19:20:20 +01:00
Takafumi Arakaki 3881f8d6ed Do not collect setup.py as a test 2013-03-14 14:31:32 +01:00
Takafumi Arakaki fbccdd3f70 Run doctests in the main py.test run 2013-03-14 14:15:00 +01:00
Takafumi Arakaki 3d647d3f3d Use --quiet when installing tox 2013-03-14 10:35:20 +01:00
Takafumi Arakaki 191e8f690b Simplify .travis.yml 2013-03-14 10:33:28 +01:00
Takafumi Arakaki 7a9e374a65 Use original exception value when reraise 2013-03-13 23:54:19 +01:00
Takafumi Arakaki 93bd00bba4 Document rethrow_uncaught/reraise 2013-03-13 23:50:40 +01:00