Commit Graph

386 Commits

Author SHA1 Message Date
Bo Maryniuk
0d9a06b8c6 Cleaner deprecation process with decorators
* Add deprecation decorator scaffold

* Capture type error and unhandled exceptions while function calls

* Aware of the current and future version of deprecation

* Implement initially is_deprecated decorator

* Add an alias for the capitalization

* Fix capitalization easier way

* Remove an extra line

* Add successor name to the deprecation decorator.

* Granulate logging and error messages.

* Implement function swapper

* Raise later the caught exception

* Clarify exception message

* Save function original name

* Remove an extra line

* Hide an alternative hidden function name in the error message, preserving the error itself

* Rename variable as private

* Add a method to detect if a function is using its previous version

* Message to the log and/or raise an exception accordingly to the status of used function

* Log an error along with the exception

* Add internal method documentation

* Add documentation and usage process for decorator "is_deprecated"

* Add documentation and process usage for the decorator "with_deprecated"

* Hide private method name

* Fix PEP8, re-word the error message

* Deprecate basic uptime function

* Add initial decorator unit test

* Rename old/new functions, mock versions

* Move frequent data to the test setup

* Add logging on EOL exception

* Rename and document high to low version test on is_deprecated

* Implement a test on low to high version of is_deprecated decorator

* Add a correction to the test description

* Remove a dead code

* Implement a test for high to low version on is_deprecated, using with_successor param

* Correct typso adn mistaeks

* Implement high to low version with successor param on is_deprecated

* Setup a virtual name for the module

* Implement test for with_deprecated should raise an exception if same deprecated function not found

* Implement test for with_deprecated an old function is picked up if configured

* Correct test description purpose

* Implement test with_deprecated when no deprecation is requested

* Add logging test to the configured deprecation request

* Add logging testing when deprecated version wasn't requested

* Implement test EOL for with_deprecated decorator

* Correct test explanation

* Rename the test

* Implement with_deprecated no EOL, deprecated other function name

* Implement with_deprecated, deprecated other function name, EOL reached

* Add test description for the with_deprecated + with_name + EOL

* Fix confusing test names

* Add logging test to the is_deprecated decorator when function as not found.

* Add more test point to each test, remove empty lines

* Bugfix: at certain conditions a wrong alias name is reported to the log

* Fix a typo in a comment

* Add test for the logging

* Disable a pylint: None will _never_ be raised

* Fix test for the deprecated "status.uptime" version

* Bugfix: Do not yank raised exceptions

* Remove unnecessary decorator

* Add test for the new uptime

* Add test for the new uptime fails when /proc/uptime does not exists

* Rename old test case

* Skip test for the UTC time, unless freeze time is used.

* Fix pylint

* Fix documentation

* Bugfix: proxy-pass the docstring of the decorated function

* Lint fix
2016-04-06 12:55:45 -06:00
Benjamin Drung
8cada9573f Fix typos of retrieve 2016-04-04 14:27:41 +02:00
Nicole Thomas
03e8b72655 Merge pull request #31904 from rallytime/merge-2015.8
[2015.8] Merge forward from 2015.5 to 2015.8
2016-03-16 11:23:54 -06:00
rallytime
892591a39c More pylint fixes 2016-03-15 15:50:05 -06:00
Bo Maryniuk
1882e1c960 Adjust test 2016-03-08 20:08:18 +01:00
Erik Johnson
763581798b Add unit tests to ensure a valid provider 2016-02-08 15:18:11 -06:00
Sean Jenkins
e44a30620b Remove recurse_list from pillar_source_merging_strategy and add pillar_merge_list (bool) instead 2016-01-19 15:06:30 -07:00
Mike Place
11d27ba694 Mock config module in utils test 2016-01-11 16:31:21 -07:00
Bastiaan Bakker
5226cd8f79 remove trailing whitespace
fix subdict_match test cases
2015-11-25 20:41:13 -07:00
Bastiaan Bakker
44713cdb95 fix issue 29191: only try partial matches when a wildcard has been specified 2015-11-25 20:41:13 -07:00
Mike Place
5b680c938a Merge pull request #28950 from DSRCompany/pr/28812_which
PR 28812 which test fix
2015-11-17 08:32:16 -07:00
Dmitry Kuzmenko
18571000c5 Fix which test in PR#28812 2015-11-17 11:29:41 +03:00
Todd Tomkinson
ba94878f45 marathon and chronos proxy minions 2015-11-12 10:03:38 -07:00
rallytime
9ea33bf0e4 Pylint fixes 2015-10-16 07:22:46 -06:00
Domingo Kiser
4af5b5c33f introduce recurse_list pillar_source_merging_strategy 2015-10-16 05:24:40 -06:00
rallytime
78c85fbb31 Add unit tests for new recursive function 2015-09-29 21:25:47 -06:00
Pedro Algarvio
503e050a75 Sometimes the event system is just too fast 2015-09-04 15:52:06 +01:00
Pedro Algarvio
2f40387290 Add test_event_single_wait_0_no_block_False test case 2015-09-03 19:54:57 +01:00
Pedro Algarvio
ae9c6c9cff Workaround wait=0 meaning a blocking call when non blocking is required 2015-09-03 18:06:43 +01:00
Pedro Algarvio
dc0fec3be3 Restore backwards compatibility to salt.utils.event
Fixes #26848
Refs #26000
2015-09-03 11:11:58 +01:00
Erik Johnson
d30eaee653 Add http basic auth tests 2015-08-29 21:14:20 -05:00
Jenkins
f5131c2b46 More indent 2015-08-20 13:57:36 -06:00
Jenkins
52cde47aaf Fix failing event tests and modify event init
There was a problem wherein two sockets would race to see which was connected first,
causing unit.utils.event_test.TestSaltEvent.test_event_multiple_clients to fail from
time to time. This gives a little breathing room to the second socket.

This also only does the pub connect if necessary on SaltEvent instantation.
2015-08-20 13:41:07 -06:00
Colton Myers
bf6c7e82cc Keep the formatted assertMsg 2015-08-18 12:50:24 -06:00
Mike Place
53d4739fa3 Merge pull request #26418 from driskell/fix_discarded_events_2015.8
Fix forward-merged caching from 2015.5 into 2015.8 to be compatible with the new match_func
2015-08-18 08:59:16 -06:00
Jason Woods
63b195987e Fix forward-merged caching from 2015.5 into 2015.8 to be compatible with the new match_func 2015-08-18 14:37:23 +01:00
Pedro Algarvio
a73ca74bc3 White-space lint fix 2015-08-17 15:28:22 +01:00
Pedro Algarvio
8f69530f65 Add the unit tests for Schema in a DictItem properties 2015-08-17 13:20:18 +01:00
Pedro Algarvio
fa826c9ba2 Add a validation test for DictItem required attribute validation 2015-08-17 13:58:22 +01:00
Pedro Algarvio
f74cc21d70 DictItem must also define it's require attribute 2015-08-17 13:56:00 +01:00
Pedro Algarvio
a0af17dbde Double to single quotes 2015-08-17 13:54:12 +01:00
Colton Myers
1c661abc91 Skip failing event tests
@driskell it would be great if you could fix these up when you do your
2015.8 refactor
2015-08-12 10:15:11 -06:00
Colton Myers
426b1631c6 Remove stray subscribe 2015-08-11 23:12:18 -06:00
Colton Myers
1502a39779 Merge remote-tracking branch 'upstream/2015.5' into merge-forward-2015.8
Conflicts:
    conf/minion
    salt/client/__init__.py
    salt/states/dockerio.py
    salt/utils/event.py
    tests/unit/utils/event_test.py
2015-08-11 18:12:21 -06:00
Mike Place
cfb6982227 Adding some dictupdate merge tests
Add new option for top_file_merging_strategy to config

Add master config file option

Adding additional tests

Lexicographical test works

Make default strategy

Simplify to just an option about whether or not to merge

Changes

Implement ordered top files

Implement merge strategies and default top files

Lint

Doc rewrite and start on ordering

Remove debugging

Moving to env_order

Adding env_order

Still writing tests

More tests and docs
2015-08-11 11:28:40 -06:00
Jason Woods
65acf975dd Implement full event caching for subscribed tags
Require all multitasking contexts to subscribe to their events so one call to get_event for one tag does not discard events that should be saved for a subsequent call to get_event with another tag.
Use blocking get_event in batching with very small timeout.
Fixes #25998
2015-08-05 11:58:32 +01:00
Dmitry Kuzmenko
5c6276ac7d Subscribe event to bus is optional now
Once subscribed to publisher SUB socket gets collecting all incoming
messages that is unwanted behavior for fire-only events.
Fixed by using listen=<True|False> constructor argument.
2015-08-03 16:10:38 -06:00
Thomas Jackson
fb4cdc475f Keep track of SyncWrapper's IOLoop usage
While thinking through issues that might cause #25718 I ran into this case-- where you can create 2 sync wrappers with the same parent IOLoop and run into problems because you can't start/stop the loop multiple times like that and have the call tree work correctly. To solve this (since it *should* be the exceptional case) I'm making SyncWrapper keep track of which loops are in use-- then if someone attempts this situation it will simply make another one.
2015-07-29 08:48:33 -07:00
Colton Myers
76e468bc20 Merge remote-tracking branch 'upstream/2015.5' into merge-forward-2015.8
Conflicts:
    doc/topics/cloud/vmware.rst
    salt/cloud/clouds/digital_ocean_v2.py
    salt/cloud/clouds/vmware.py
    salt/daemons/flo/core.py
    salt/modules/hipchat.py
    salt/modules/lxc.py
    salt/modules/rabbitmq.py
    salt/pillar/s3.py
    salt/states/dockerio.py
    salt/states/file.py
    salt/utils/process.py
    salt/utils/s3.py
2015-07-20 13:55:14 -06:00
Mike Place
89d595f002 Lint config_test 2015-07-20 11:18:31 -06:00
Pedro Algarvio
7c0ad43906 Another fix for flattened properties and test cases 2015-07-17 18:24:43 +01:00
Pedro Algarvio
85b191c4b9 Test case to make sure plain string requirements have the same outcome 2015-07-17 17:58:52 +01:00
Pedro Algarvio
6b09ec0c30 Fix requirements items since they broke with the previous 2 commits. 2015-07-17 17:23:17 +01:00
Pedro Algarvio
6e1ee65421 Test case for missing required entries when flattening Schemas 2015-07-17 17:23:07 +01:00
Pedro Algarvio
393a21117e Rename the module 2015-07-16 17:04:22 +01:00
Pedro Algarvio
42bfec8bb5 Let's call it for what it is! 2015-07-16 17:01:42 +01:00
Jonathan Leroy
bc36d05c0c
Support for IPv6 addresses scopes in network.interfaces (ifconfig) 2015-07-15 01:14:32 +02:00
Pedro Algarvio
1388010187 Remove hardcoded maxDiff 2015-07-09 20:59:59 +01:00
Pedro Algarvio
3adb731abc Fixed ordering issue 2015-07-09 20:57:23 +01:00
Pedro Algarvio
cf071eaffa Add test which asserts proper field ordering 2015-07-09 17:32:50 +01:00