Commit Graph

53 Commits

Author SHA1 Message Date
ZyX 5a50acf16b Add initial tests for configuration reloading
Currently only:
- Test for not reloading configuration if run_once is not True
- Test for reloading main configuration and other configurations triggered by 
  changes in main configuration file

TODO: tests for all other configuration files reloading (colors, colorscheme, 
      theme).
2013-03-31 00:06:49 +04:00
ZyX c6be4426d3 Fix whitespace errors 2013-03-31 00:03:35 +04:00
ZyX c2ceac093f Add replace_item with function, remove os import 2013-03-31 00:02:53 +04:00
ZyX 3ebc16a48c Replace pl.environ/getcwd/home with segment_info 2013-03-30 21:55:00 +04:00
ZyX 29f29213a9 Remove ThreadedSegment.write_lock
Assuming getattr(self, 'update_value') and setattr(self, 'update_value', value) 
are atomic. True with cpython unless somebody defined __getattribute__ or 
__setattr__.
2013-03-30 14:07:24 +04:00
ZyX 27c9a05782 Change indentation of closing }, ], ) and combinations of them 2013-03-25 19:04:18 +04:00
ZyX ada5dede25 Fix network_load test
It was using old network_load.sleep and also was not shutting down network_load 
in case it failed test
2013-03-25 18:45:43 +04:00
ZyX 7646c949e2 Automatically reload configuration
Needs testing
2013-03-25 18:24:17 +04:00
ZyX 80ddbfbf9a Split Powerline.__init__ into __init__ and create_renderer
Target: with long-living Powerline objects periodically reload configuration 
recreating renderer. Use file watchers to watch for configuration. Configuration 
should be able to be safely reloaded in non-blocking mode in a separate thread 
up to the time when it comes to recreating renderer.

This commit does not add anything that actually reloads the configuration, 
multiple runs of .create_renderer were not tested.
2013-03-25 18:24:16 +04:00
ZyX 92652ca5c4 Some fixes for flake8 2013-03-25 00:10:54 +04:00
ZyX 00271c2a0c Shut down network_load segment in tests 2013-03-24 22:24:48 +04:00
ZyX d27c720279 Fix race condition, don’t rely on detect feature
detect feature is to be tested though
2013-03-24 20:36:28 +04:00
ZyX 6c495374a0 Fix exec call for non-python-2.7 2013-03-24 20:03:09 +04:00
ZyX 1351207462 Some fixes for flake8 2013-03-24 19:59:56 +04:00
ZyX 8a51d99389 Some fixes for zsh, remove some exceptions handling
Those exceptions are now handled and logged at top level, thus no need to handle
them in segment.

Ref #330, it is now fixed for zsh/zpython

Note: do not use zsh/zpython + python3, it does not work properly, even though
this changeset contains fixes for it as well

Fixes #360
2013-03-24 19:48:51 +04:00
ZyX ed435f8063 Add required pl argument to segments
Fixes #340
Ref #330
2013-03-24 19:44:01 +04:00
ZyX 840ac0109b Port common.branch segment to KwThreaded*, add common.repository_status 2013-03-24 19:35:25 +04:00
Kim Silkebækken 5caeac26bf Merge remote-tracking branch 'zyx-i/fix-356' into develop 2013-03-24 16:18:44 +01:00
Kim Silkebækken 154fe123fe Merge remote-tracking branch 'zyx-i/ipython-other' into develop 2013-03-24 16:18:26 +01:00
ZyX b517df774b Fix bytes handling on python3
Fixes #356
2013-03-24 05:45:52 +04:00
ZyX c4e5ff8b49 Added support for all powerline prompts (in2, out, rewrite)
Also fixed problem with prompt not really updating.

Fixes #141
2013-03-24 05:23:33 +04:00
ZyX b1f9edab4c Remove get_segment_info and passing segment_info through globals 2013-03-24 05:23:33 +04:00
ZyX 83517f65b9 Make test.sh always check only powerline/config_files directory 2013-03-24 01:42:50 +04:00
ZyX 25806fa075 Added gradient for network_load segment 2013-03-24 01:33:56 +04:00
ZyX 157b849d33 Make weather gradient configurable, add system_load gradient
Also make gradients floating-point and fix #332 by removing “normalized” from 
system_load segment documentation.
2013-03-24 00:55:54 +04:00
ZyX 11aa74c634 Make it use gradient for weather temperature
Ref #301
2013-03-19 23:25:44 +04:00
ZyX 260a0dafcb Add tests for the constantly recreated *Powerline instances 2013-03-19 00:42:32 +04:00
ZyX b0495d028f Do not let daemon threads be stopped while being updated 2013-03-18 07:56:25 +04:00
ZyX fb2e9b6cdb Test all other segments
Still uncovered: email_imap_alert and now_playing
2013-03-17 21:23:27 +04:00
ZyX 84dfac6f8e Avoid using python setup.py test
Closes #295
2013-03-17 21:23:26 +04:00
ZyX f547e8b85f Some fixes for flake8 2013-03-17 21:23:15 +04:00
ZyX 62e731314e Replace memoize with threading where applicable
NOTE: Documentation now gets attached to *classes*, not actual segments. Hiding
      away classes (by changing their names to start with `_`) and/or doing

          self.__doc__ = self.__class__.__doc__

      does not work (hiding classes only hides documentation completely). I am
      not familiar with sphinx enough to say how this should be fixed.

Ref #168
2013-03-17 21:22:33 +04:00
ZyX a4adc92215 Do not import memoize, humanize_bytes and urllib_* in powerline.lib 2013-03-17 21:21:03 +04:00
ZyX 29eccf409b Use psutil module for `user` segment 2013-03-17 13:28:57 +04:00
ZyX c237e66958 Make file_size segment output buffer size 2013-03-15 19:31:08 +04:00
Kim Silkebækken 8cdd12a800 Merge remote-tracking branch 'zyx-i/326-fix-None-handling' into develop 2013-03-15 14:18:03 +01:00
Kim Silkebækken 747c75c1c4 Merge remote-tracking branch 'zyx-i/fix-322' into develop 2013-03-15 14:15:26 +01:00
ZyX 48470221f0 Make git.Repository.status() also return None
Fixes #326
2013-03-14 20:03:26 +04:00
ZyX e24703dbdd Add status_colors argument to branch segments
Closes #206
2013-03-13 16:51:53 +04:00
ZyX 6f3703e312 Improve ambiwidth handling, readd additional_escapes
Fixes #307
2013-03-12 13:11:59 +01:00
ZyX b2b05cb81c Removed underscore_to_camelcase
No need to bother both developers (that need to create class names compatible 
with file name, which is not obvious if not looking into main Powerline class) 
and computer (that needs to recompute class name each time) if it is possible to 
bother only developers (or only computer, but this contributes to higher startup 
times).

About not obvious: when you look into zsh_prompt.py and see only 
ZshPromptRenderer name you only think that powerline upstream is following 
strict code style. You don’t think there is a technical reason for such naming, 
like you don’t think there is technical reason for having blank lines. When you 
look into zsh_prompt.py and see `renderer = ZshPromptRenderer` it is obvious 
that there is technical reason for writing code this way because new variable is 
never used in the module itself.
2013-03-11 22:22:18 +04:00
ZyX 2c445a9356 Add more tests to test_configuration
Dynamic configuration tests. Purpose: make sure that default configuration does 
not throw. Tests catch only very trivial problems (like missing imports after
refactoring)
2013-03-11 22:09:34 +04:00
ZyX d27f7a0411 Add most configuration checks
Changes:

- Add main configuration, colors.json, almost full themes and colorschemes
  checks
- Make powerline.lint.check return whether it had problems
- Make powerline-lint fail if .check reported problems
- Make tests run powerline-lint
- Add the script to the list of the installed scripts

Fixes #278
2013-03-11 19:17:18 +04:00
ZyX 4374e1f71c Fix git/hg repo tests 2013-03-11 15:53:34 +01:00
ZyX a6d48232b0 Add python_test, more exclusions
Fixes #289
2013-03-11 15:53:32 +01:00
Kim Silkebækken 111eaa27e8 Combine vim modelines and Python encoding declarations
Ref #314
2013-03-11 10:40:09 +01:00
Kim Silkebækken 6748701fcb Add vim modelines to all Python files
Added with `sed -i '2i# vim:fenc=utf-8:noet' `find -name '*.py'`` and
fixed in a couple of files without the UTF-8 encoding on top.

Ref #314
2013-03-11 08:11:25 +01:00
Kovid Goyal c70d3b38b6 Add bzr support 2013-03-11 07:09:42 +01:00
ZyX aa0a8bf76d Make tests support python2.6
Old unittest is not working for unknown reason, using unittest2 instead
2013-03-03 21:03:40 +01:00
ZyX 0a05b2961a Add support for with: statement to tests.vim
Also made everything use new vim_module._with where possible
2013-03-03 21:03:34 +01:00