Commit Graph

541 Commits

Author SHA1 Message Date
Foo 10c0c5be5d Add above tests for bash, fish and zsh 2015-03-01 17:25:03 +03:00
Foo 4a3798b43b Fix tcsh renderer: end prompt with a sequence that is not dropped 2015-03-01 17:25:03 +03:00
ZyX 3bf484de25 Break on self.quitting line
This may also cause python-3.2 pdb test to error out.
2015-02-21 19:55:39 +03:00
ZyX 68b43c59be Disable pdb PyPy tests completely
They currently fail for the reason that does not seem related to powerline
(though this problem did not occur before porting tests to pexpect, so this
should be somewhat related (somewhat: PyPy fails on code `return br'\u%04x'
% ord(c)` which is no a valid Python code (`%` can no longer be used with
`bytes()` obects), the whole situation only means that before using pexpect bug
in PyPy was not hit)).
2015-02-21 19:55:39 +03:00
ZyX 0058919c2b Remove blank lines from pdb output
It is the problem that causes python-3.2 pdb tests to fail on travis.
2015-02-21 19:55:39 +03:00
ZyX 9a89d4defa Do not special-case PyPy+ipython 2015-02-21 19:55:39 +03:00
ZyX 74e81bf788 Restore the timeout
There may be a reason for a test to take 3 minutes long, but there is no reason
for the test to take even half a minute long *without any output*.
2015-02-21 19:55:39 +03:00
ZyX 678faed4c2 Force destroying child after everything was done
Normally this line should not do anything useful.
2015-02-21 19:55:39 +03:00
ZyX b7c7d29aa0 Use “non-blocking” read and stop on TIMEOUT and EOF 2015-02-21 19:55:39 +03:00
ZyX deee40505d Do not repeat `if` more times then needed 2015-02-21 19:55:39 +03:00
ZyX 38a05b34d7 Do not use “which ipython” in echo since it is no longer relevant 2015-02-21 19:55:38 +03:00
ZyX 6a6991bcb4 Use 3 minutes for timeout 2015-02-21 19:55:38 +03:00
ZyX 7d98218b64 Do not wait, just .read()
.read() without arguments should read until EOF is received.
2015-02-21 19:55:38 +03:00
ZyX 0a87b558d9 Do not use child.wait(), it hangs 2015-02-21 19:55:38 +03:00
ZyX 0710f2760f Open log as binary file for writing
Child output is binary.
2015-02-21 16:11:04 +03:00
ZyX d5361337c1 Use script to test whether python zsh uses matches $PYTHON 2015-02-21 16:08:50 +03:00
ZyX 0f86bbf819 In place of running ipython executable run IPython module
This should fix the problem with using wrong ipython for tests.
2015-02-21 15:59:10 +03:00
ZyX b2ecb8ca84 Do not append PYTHON to *_REPO paths
$PYTHON variable is sometimes a full path which makes everything fail. It is
also useless move since directories are destroyed after tests and running two
test.sh scripts in parallel is not supported in any case.
2015-02-21 15:59:10 +03:00
ZyX bb6342c12a Tell tmux correct path to shell to use 2015-02-21 15:59:10 +03:00
ZyX d53c780071 Do not use absolute path for tmux socket
Absolute path is too long when using tests in ebuild.
2015-02-21 15:59:10 +03:00
ZyX 1e85f5df15 Disable vterm tests for PyPy completely 2015-02-21 15:59:10 +03:00
ZyX 22162a9656 Replace screen-based tests with pexpect-based tests
Currently works for all tests, but dash ones. Not much of a problem since dash
tests were disabled for being unstable.
2015-02-21 15:59:10 +03:00
ZyX 8524ee35e7 Ignore stderr from printf and env
socat may close pipe before they succeed to write something which results in

    env: write error: Broken pipe

(according to my experience leading printf’s always succeeds to write before
socat closes pipe).
2015-02-21 13:56:58 +03:00
ZyX e6b3bff50a Rerun main() only after running finally block 2015-02-21 04:35:56 +03:00
ZyX 5ecf50b4d8 Use different $HOME 2015-02-21 04:35:56 +03:00
ZyX 683691931d Make sure that there is at least one blank line after full log 2015-02-21 02:38:17 +03:00
ZyX fb0fba6c6d Do not modify $PATH and $LD_LIBRARY_PATH unless on travis 2015-02-21 02:38:17 +03:00
ZyX e7c381a63f Make sure USER and HOME variables are defined 2015-02-21 02:38:17 +03:00
ZyX be3fd917a9 Limit maximum amount of attempts to set register a 2015-02-21 02:38:16 +03:00
ZyX 75c5295a8c Adjust fish version tests for bot-ci-compiled fish 2015-02-21 00:08:12 +03:00
ZyX 0a0af212ad Allow specifying path to libvterm from environment
Uses POWERLINE_LIBVTERM environment variable.
2015-02-20 23:48:26 +03:00
ZyX 8629999379 Make sure that it is possible to use “system” libvterm.so 2015-02-20 23:47:18 +03:00
ZyX 02b31f36bd Only run fish tests for development version or for 2.1.2 and higher
Currently tests also test Vi key bindings support, but it is not in any release 
yet.
2015-02-20 23:37:13 +03:00
ZyX b349d6e390 Make sure that fish tests are not run for old fishes 2015-02-20 23:16:01 +03:00
ZyX 4d09f4fdb0 Do not run Vim tests if Vim is not available, fallback to system Vim 2015-02-20 22:39:50 +03:00
ZyX 8fff21d77b Set the default value for POWERLINE_TMUX_EXE 2015-02-20 22:36:39 +03:00
ZyX feb9a57dc0 Move code that prints tmux logs to test_tmux.py 2015-02-19 11:39:12 +03:00
ZyX f8ba6b021c Restart failed tmux vterm test a few times 2015-02-19 11:39:12 +03:00
ZyX 4c6a2e3e59 Also check that MIME type matches during tests
MIME type names are inconsistent across different systems, so only first
component is used. For example, `file` in Travis Ubuntu detects Python scripts
as `text/x-java`, in Gentoo these are `text/x-python`.

Travis Ubuntu also uses magic file format different from the one
sys-apps/file-5.22 from Gentoo has, making it impossible to fix the issue by
just copying the files from my system.
2015-02-19 02:48:03 +03:00
ZyX 66c6128b66 Wait less in vterm tmux tests 2015-02-07 11:14:09 +03:00
ZyX 92d4beffa4 Wait more before failing tmux vterm tests
May fix random test failures.
2015-02-07 05:00:37 +03:00
ZyX d57be8324a Do not alter the way keys are fed with PyPy 2015-02-02 00:12:06 +03:00
ZyX f4e3c3099f Remove everything up until `class Foo(object):` in pdb tests
PyPy3 displays prompt two times on the line where `s` is present.
2015-02-01 12:13:56 +03:00
ZyX c3e541d16a Remove empty lines 2015-02-01 12:08:09 +03:00
ZyX 0db8154b9a Document how to pdb bindings with Python-2.6 and update tests 2015-01-31 21:44:43 +03:00
ZyX e63a1c7cb5 Display the log after long wait 2015-01-31 21:34:26 +03:00
ZyX f9d65fb34d Do not wait for too long in do_run_test 2015-01-31 20:25:40 +03:00
ZyX 2ef5107628 Import overrides from environment in PDB prompts 2015-01-31 20:23:10 +03:00
ZyX f74320fba8 Add unit tests for pdb segments 2015-01-31 18:54:13 +03:00
ZyX ef02ab70fb Also test powerline.bindings.pdb module 2015-01-31 18:52:04 +03:00
ZyX 47dbdd571d Add pdb integration tests 2015-01-31 18:52:04 +03:00
ZyX 1e7dc7900d Fix issues found in 1256 pull request
Ref #1256
2015-01-25 12:51:19 +03:00
S0lll0s dd77d420a3 Add BAR (bar ain't recursive) renderer and fitting i3 bindings 2015-01-25 12:26:13 +03:00
ZyX 332a266d87 When testing Vim do not rely on test order and do not save state
This commit refactors `TestVim` test class in test_configuration so that

1. `test_environ_update` does not leave state (value of `powerline_config_paths` 
   global Vim variable) behind other tests can use.
2. `test_local_themes` does not rely on state left from `test_environ_update`, 
   instead using new facility for providing needed value of 
   `Powerline.get_config_paths` call. This facility will be used later in BAR 
   tests.

Ref #1256
2015-01-25 01:58:27 +03:00
ZyX 71322dfe5b Use st-256color terminal for tests
Reasoning:

1. vt* TERMs (used to be vt100 here) make tmux-1.9 use different and identical
   colors for inactive windows. This is not like tmux-1.6: foreground color is
   different from separator color and equal to (0, 102, 153) for some reason
   (separator has correct color). tmux-1.8 is fine, so are older versions
   (though tmux-1.6 and tmux-1.7 do not have highlighting for previously active
   window) and my system tmux-1.9a.
2. screen, xterm and some other non-256color terminals both have the same issue
   and make libvterm emit complains like `Unhandled CSI SGR 3231`.
3. screen-256color, xterm-256color and other -256color terminals make libvterm
   emit complains about unhandled escapes to stderr.
4. `st-256color` does not have any of the above problems, but it may be not
   present on the target system because it is installed with x11-terms/st and
   not with sys-libs/ncurses.

For the given reasons decision was made: to fix tmux-1.9 tests and not make
libvterm emit any data to stderr st-256color $TERM should be used, up until
libvterm has its own terminfo database entry (if it ever will). To make sure
that relevant terminfo entry is present on the target system it should be
distributed with powerline test package. To make distribution not require
modifying anything outside of powerline test directory TERMINFO variable is set.
2015-01-18 05:15:47 +03:00
ZyX 25a56df98b Remove irrelevant logs 2015-01-18 05:15:47 +03:00
ZyX 71d7e3921f Also supply LD_LIBRARY_PATH when killing server 2015-01-18 03:50:12 +03:00
ZyX c93a1b79b3 Run tests for all tmux versions present in deps 2015-01-18 02:47:38 +03:00
ZyX 2debb7c146 Update code according to the changes in deps repository 2015-01-18 02:42:24 +03:00
ZyX 6f6c466bc3 Make sure LD_LIBRARY_PATH and PYTHONPATH are exported
LD_LIBRARY_PATH is required for UCS2 CPython versions.
2015-01-17 00:41:28 +03:00
ZyX f0d0ad1bfd Make sure PyPy3 is not used with vterm tests 2015-01-17 00:26:12 +03:00
ZyX 1e25c5ec42 After failing tmux vterm tests run powerline-config
Its output may give some clue.
2015-01-17 00:26:12 +03:00
ZyX a0edcccecf Increase sleeping time
It appears that just one second is not enough for travis
2015-01-17 00:26:12 +03:00
ZyX 44273f299b Do not print the whole screen unles something went wrong 2015-01-17 00:26:12 +03:00
ZyX faef4585b2 Add support for old tmux versions in tests
Tmux-1.6 does not have special highlighting for previously active window. Other
then that view is identical.
2015-01-17 00:26:12 +03:00
ZyX 9db1e7b76e Use tmux executable from fake PATH for running tmux
Otherwise with system tmux present it may appear that subprocess.check_call will
use it instead.
2015-01-17 00:26:11 +03:00
ZyX 93acec238e Create vterm-based tests that will test tmux support
It is possible that they eventually will be used also for shells: at least this
makes using postproc.py with all its hacks not needed.
2015-01-17 00:26:11 +03:00
ZyX 9511c45e6f Make sure to remove logs before retrying 2015-01-09 17:42:20 +03:00
ZyX 0a8e94d031 When using `rc` remove “read() failed” messages 2015-01-09 17:40:05 +03:00
ZyX c6bf5fb512 Add support for Byron Rakitzis’ rc shell reimplementation
Fixes #1238
2015-01-08 03:32:13 +03:00
ZyX d6e0dc7169 Use more then one attempt to run shell tests
They are rather unstable, especially IPython + PyPy, but others also are.
2015-01-08 03:12:11 +03:00
ZyX 2961e98922 Supply correct config_paths 2015-01-08 03:05:01 +03:00
ZyX 347f20d4be Refactor FSTree to not use reduce as it is not present in Python-3
I.e. it is not builtin and requires heavy variant with trying to import it from
functools.
2015-01-07 19:08:38 +03:00
ZyX 0e75400a7d Make sure that overrides do not affect Vim and IPython
Fixes #1201
2015-01-07 17:51:26 +03:00
ZyX c3e6c2aeab Make POWERLINE_COMMAND a single path without arguments
Ref #1201
2015-01-07 15:07:27 +03:00
ZyX 4d35167b13 Avoid using overrides in $POWERLINE_COMMAND 2015-01-07 01:14:20 +03:00
ZyX 87ebe41f30 Make zsh tests use new environment variables 2015-01-07 01:09:53 +03:00
ZyX 917dfed842 Take overrides from environment variables
Ref #1201
2015-01-07 01:09:53 +03:00
ZyX 1451b4261f Rename `paths` IPython override to `config_paths`
Fixes #1126
2015-01-07 01:09:53 +03:00
ZyX de064558a1 Rename `POWERLINE_THEME_CONFIG` to `POWERLINE_THEME_OVERRIDES`
Ref #1126
2015-01-07 01:09:53 +03:00
ZyX 45ccbee171 Use singular --*-override form for command-line overrides
Ref #1126
2015-01-07 01:09:52 +03:00
ZyX 1c29ea3f8c Use g:powerline_theme_overrides dictionary in place of g:…overrides__
Ref #1126
2015-01-06 20:48:39 +03:00
ZyX 654d4690fc Remove all segments from powerline.segments.common
Ref #1092
2015-01-06 17:01:48 +03:00
ZyX 09afbc4655 Replace underscores with dashes in long options
Fixes #1125
2015-01-06 16:29:54 +03:00
ZyX 16bf16478c Rename `POWERLINE_CONFIG` to `POWERLINE_CONFIG_OVERRIDES`
Fixes #1124
Ref #1126
2015-01-06 16:19:47 +03:00
ZyX 79f6853f4b Rename `detect` to `auto` special values in network segments
Fixes #1205
2015-01-06 16:08:11 +03:00
ZyX c868f9c255 Rename `attr` to `attrs`
Fixes #1199
2015-01-06 16:05:01 +03:00
ZyX 8d05003849 Rename `highlight_group` key to `highlight_groups`
Ref #1199
2015-01-06 15:57:49 +03:00
ZyX 4e6b0a7ec8 Remove Control-P plugin support
If somebody needs to readd it he should make better code, specifically:

- Functions and variables necessary for supporting Control-P need to be defined 
  in a separate initialiazation function that is only called if Control-P was 
  found.
- Segments that show different information must be defined as separate segments 
  that may be put into configuration file.
- Segment functions must not know side they are on.
- Segment functions must not emit `priority`, it must go to configuration file.
- Segment functions must have proper documentation.
- Segment functions must not emit `width` and `align` keys.
- String `Loading...` or the equivalent must be overridable from configuration, 
  same for other interface strings (e.g. what is shown  when `regex` is true).
- Segment functions must have names that make it clear what they emit.

Closes #1244
2015-01-06 03:57:38 +03:00
ZyX 733b09f78c Revert "Add tagbar plugin tests": don’t know how to make it work
This reverts commit fb652d5126.
2015-01-06 02:53:58 +03:00
ZyX fb652d5126 Add tagbar plugin tests 2015-01-06 02:45:48 +03:00
ZyX 548e330fd8 Add NERDTree tests 2015-01-06 01:51:31 +03:00
ZyX 2bd25d7979 Test Command-T plugin 2015-01-06 01:51:31 +03:00
ZyX d8307b03ae Create tests for CtrlP 2015-01-06 01:39:23 +03:00
ZyX d51a50223e Use $ROOT in place of $PWD in run_vim_tests, set $PYTHONPATH
Checking whether this fixes Python-2.6 build failure
2015-01-05 21:28:54 +03:00
ZyX 6b89c8e394 Preserve old value of LD_LIBRARY_PATH 2015-01-03 00:07:07 +03:00
ZyX e86ec8bf99 Make sure not to add colon unless required 2015-01-03 00:04:11 +03:00
ZyX 375a169825 Install bc as it is required by test_shells/test.sh 2015-01-02 23:53:46 +03:00
ZyX c7fe5dbbb4 Use `set -e` for testing shells 2015-01-02 21:31:39 +03:00
ZyX 9374d135f2 Do not install pyuv watcher in Python-2.6
If pyuv watcher is installed then powerline.lib.vcs tests do not pass because
pyuv is missing notify events and INotify watcher is not available.

Ref #1041
2015-01-02 16:06:01 +03:00