Commit Graph

176 Commits

Author SHA1 Message Date
Jason Gerard DeRose
ba6cb2bf92 127: Removed depreciated identity.py 2008-08-13 00:47:54 +00:00
Jason Gerard DeRose
f8d9a62c29 126: Renamed plugins.py to Plugins/example.py 2008-08-13 00:43:23 +00:00
Jason Gerard DeRose
d5b0bc1b54 125: Added some generic auto-import stuff 2008-08-13 00:40:13 +00:00
Jason Gerard DeRose
70cbe10624 124: Fixed case in example in ReadOnly class docstring 2008-08-12 23:45:36 +00:00
Jason Gerard DeRose
7db3aae1b2 123: API.finalize() now raises AssetionError if called more than once; added corresponding unit tests 2008-08-12 23:40:36 +00:00
Jason Gerard DeRose
64054a673c 122: The dictorary interface to CLI now has keys build using to_cli(), rather than converting at each call 2008-08-12 23:33:02 +00:00
Jason Gerard DeRose
b72cfa5dcc 121: Renamed API.__call__() method to API.finalize() 2008-08-12 22:52:37 +00:00
Jason Gerard DeRose
f767543fe7 120: Moved ProxyTarget below Proxy to emphasize relationship with Plugin; added docstrings for ProxyTarget.implements() and implemented_by() classmethods; fixed typo in Plugin.finalize() docstring 2008-08-12 22:40:06 +00:00
Jason Gerard DeRose
8640523632 119: Added ProxyTarget.implemented_by() classmethod; added corresponding unit tests 2008-08-12 21:45:54 +00:00
Jason Gerard DeRose
9ac8a8b499 118: Added user_login.default() method as another example; print_call() now prints sorted by the keys in ascending order 2008-08-12 19:22:48 +00:00
Jason Gerard DeRose
4acb7567c4 117: Improved readability of cmd.print_call() 2008-08-12 18:02:49 +00:00
Jason Gerard DeRose
7bbeb2db69 116: Added a user_initials property plugin to demostrate default() method 2008-08-12 17:42:21 +00:00
Jason Gerard DeRose
99d7638ff5 115: CLI now parses out kw args; cmd.__call__() now uses print_n_call() to give feedback on the calling 2008-08-12 16:49:23 +00:00
Jason Gerard DeRose
bc4b26ffca 114: Fixed cmd.__get_options(); more work on CLI 2008-08-12 02:03:47 +00:00
Jason Gerard DeRose
902614a762 113: Fixed regex used in attr.__init__(); added unit tests for mthd.get_options() 2008-08-11 22:12:23 +00:00
Jason Gerard DeRose
afdbc42b2e 112: More work on cli.py 2008-08-11 21:38:30 +00:00
Jason Gerard DeRose
c1a125256b 111: Minor changes to mthd and prop classes; updated mthd and prop unit tests 2008-08-11 21:14:07 +00:00
Jason Gerard DeRose
9282418291 110: Started fleshing out more in cli.py 2008-08-11 19:35:57 +00:00
Jason Gerard DeRose
5313e5a491 109: Cleanups in cmd; added unit tests for cmd.validate() 2008-08-11 19:11:26 +00:00
Jason Gerard DeRose
8a6ece2ffb 108: Changed cmd.default() so that it now only return dictionary of values for which defaults were generated; updated unit tests 2008-08-11 17:57:07 +00:00
Jason Gerard DeRose
fd6c215d59 107: Some cleanup in cmd; added unit tests for cmd.default() method 2008-08-11 17:37:33 +00:00
Jason Gerard DeRose
8aee8e060c 106: Fixed some typos in cmd.__get_options(); added unit tests for cmd.options and cmd.normalize() 2008-08-11 16:29:37 +00:00
Jason Gerard DeRose
879133d28a 105: Added a default implementation of cmd.get_options; added corresponding unit tests 2008-08-11 00:21:12 +00:00
Jason Gerard DeRose
f6b69a5905 104: public.option now subclasses from plugable.Plugin; cleaned up unit tests for option 2008-08-10 22:23:22 +00:00
Jason Gerard DeRose
d7958f3fde 103: Fixed missing API.__keys assignment 2008-08-09 19:48:47 +00:00
Jason Gerard DeRose
0edb22c9ac 102: After the API instance calls plugin.finalize(), it also calls plugin.__lock__() 2008-08-09 19:39:58 +00:00
Jason Gerard DeRose
543aea31a4 101: Registrar now subclasses from ReadOnly 2008-08-09 19:33:13 +00:00
Jason Gerard DeRose
0e532cd7b3 100: Cleaned up NameSpace docstrings; cleanup up NameSpace unit tests 2008-08-09 19:28:01 +00:00
Jason Gerard DeRose
e756e12718 99: Cleaned up unit tests for plugable.Plugin 2008-08-09 19:09:10 +00:00
Jason Gerard DeRose
5315514f6c 98: Completed docstrings in Proxy 2008-08-09 18:58:46 +00:00
Jason Gerard DeRose
9712eae51c 97: Some whitespace and docstring cleanup; Plugin now subclasses from ProxyTarget 2008-08-09 05:19:40 +00:00
Jason Gerard DeRose
409f688ef5 96: Fixed typo is ReadOnly docstring 2008-08-09 04:37:37 +00:00
Jason Gerard DeRose
72f3132d2b 95: Improved docstrings for ReadOnly class; added ReadOnly.__islocked__() method; added corresponding unit tests 2008-08-09 04:35:06 +00:00
Jason Gerard DeRose
3495c67d57 94: Renamed Proxy._clone() method to Proxy.__clone__(); updated unit tests 2008-08-09 01:46:12 +00:00
Jason Gerard DeRose
cc5b017494 93: Added Proxy.implements() method; addeded corresponding unit tests 2008-08-09 01:06:42 +00:00
Jason Gerard DeRose
45201e31c1 92: Added ProxyTarget.name property; added corresponding unit tests 2008-08-08 23:26:17 +00:00
Jason Gerard DeRose
e3811f3f45 91: Fleshed out docstrings in plugable.Proxy 2008-08-08 23:07:22 +00:00
Jason Gerard DeRose
5a1223e943 90: Renamed plugable.Abstract to ProxyTarget, which now subclasses from ReadOnly; updated unit tests 2008-08-08 22:45:09 +00:00
Jason Gerard DeRose
6f144fbaf0 89: Moved ClassChecker from test_public.py into tstutil.py; improved unit tests for plugable.ReadOnly 2008-08-08 22:13:49 +00:00
Jason Gerard DeRose
1744723d11 88: Renamed ReadOnly._lock() to ReadOnly.__lock__(); updated subclasses and unit tests 2008-08-08 21:49:09 +00:00
Jason Gerard DeRose
3fe13d5945 87: Moved to_cli(), from_cli() functions from plugable.py into new cli.py file; moved corresponding unit tests into new test_cli.py file 2008-08-08 21:46:23 +00:00
Jason Gerard DeRose
fdfa827a36 86: Actually change *all* tab indentation to 4-space: 'sed s/\t/ /g' 2008-08-08 21:40:03 +00:00
Jason Gerard DeRose
58a3b1d091 85: Added ReadOnly._lock() method to make class easier to use; updated subclasses and unit tests 2008-08-08 21:28:56 +00:00
Jason Gerard DeRose
6dc60a18c7 84: Renamed Proxy.__public to Proxy.__public__ so it works with Abstract.implements() 2008-08-08 20:55:08 +00:00
Jason Gerard DeRose
b0976a5208 83: Added unit tests for plugable.Abstract 2008-08-08 20:39:34 +00:00
Jason Gerard DeRose
d171dc9011 82: Cleaned up unit tests for public.option; added some doodles in plugable.Base 2008-08-08 19:53:45 +00:00
Jason Gerard DeRose
8e46824815 81: Switch from tab to 4-space indentation 2008-08-08 17:11:29 +00:00
Jason Gerard DeRose
f656e31a7e 80: Cleaned up docstring for option.normalize() 2008-08-08 16:43:24 +00:00
Jason Gerard DeRose
b3fc5f9a41 79: More work on option and cmd 2008-08-08 06:18:12 +00:00
Jason Gerard DeRose
9ee10d383d 78: Renamed opt to option; started fleshing out cmd more 2008-08-08 04:47:42 +00:00
Jason Gerard DeRose
62dc9a78fd 77: A few stylistic changes 2008-08-07 23:11:02 +00:00
Jason Gerard DeRose
14a0658464 76: Fleshed out opt.validate(); added corresponding unit tests 2008-08-07 06:23:02 +00:00
Jason Gerard DeRose
8cbd8343be 75: Fixed opt.__rules_iter; added corresponding unit tests 2008-08-07 06:02:46 +00:00
Jason Gerard DeRose
2cc88a7a32 74: Finished opt.__rules_iter(); is_rule(obj) now returns False if obj is not callable; updated unit tests 2008-08-07 05:02:56 +00:00
Jason Gerard DeRose
8a6041b797 73: Started work on validation rules for opt; added corresponding unit tests 2008-08-07 04:51:21 +00:00
Jason Gerard DeRose
fadbae6420 72: Started work on public.opt class; added corresponding unit tests 2008-08-07 03:38:49 +00:00
Jason Gerard DeRose
f904cb0422 71: Proxy now uses base.__public__ instead of base.public; updated unit tests 2008-08-07 00:51:34 +00:00
Jason Gerard DeRose
778a019129 70: Plugin.__repr__ now again returns 'module_name.class_name()' form; updated unit test 2008-08-07 00:35:51 +00:00
Jason Gerard DeRose
19dbd57141 69: Made Proxy.base a private attribute; updated unit tests 2008-08-07 00:21:50 +00:00
Jason Gerard DeRose
7335af8a9e 68: Ported to changes in NameSpace, Proxy; updated unit tests 2008-08-07 00:14:38 +00:00
Jason Gerard DeRose
03bad04e7b 67: Deleted NameSpace, Proxy; renamed NameSpace2, Proxy2 to NameSpace, Proxy 2008-08-06 23:22:29 +00:00
Jason Gerard DeRose
e63453a858 66: Added NameSpace2 (bit simpler than NameSpace, better suited to Proxy2); added corresponding unit tests 2008-08-06 22:59:50 +00:00
Jason Gerard DeRose
f13f1226b4 65: Finished simplified Proxy2 class; updated unit tests 2008-08-06 21:54:56 +00:00
Jason Gerard DeRose
0c7769473c 64: Almost finish with Proxy2, where base class is passed to __init__ and methods use @export decorator; added corresponding unit tests 2008-08-06 20:38:07 +00:00
Jason Gerard DeRose
57534ca5a0 63: Started fleshing out public.cmd 2008-08-06 15:54:27 +00:00
Jason Gerard DeRose
495f96a73f 62: NameSpace no longer takes base=base kwarg 2008-08-06 15:06:39 +00:00
Jason Gerard DeRose
4e825ba2d9 61: Proxy now does a setattr for all callable attributes in __slots__ (and uses __getattr__ for rest 2008-08-06 14:59:54 +00:00
Jason Gerard DeRose
293b31ac75 60: Remeved depreciated base.py, crud.py; remeved corresponding test_base.py, test_crud.py 2008-08-06 14:30:21 +00:00
Jason Gerard DeRose
62d2cd65f2 59: Removed NameSpace.__call__ method (returned max_len) 2008-08-06 14:27:33 +00:00
Jason Gerard DeRose
2081987186 58: A bit of docstring cleanup in plugable.py 2008-08-06 14:22:38 +00:00
Jason Gerard DeRose
e618d99bc7 57: to_cli() function no longer replaces '__' with '.'; from_cli() function no longer replaces '.' with '__'; updated unit tests 2008-08-06 03:58:15 +00:00
Jason Gerard DeRose
8865f516df 56: Fixed Proxy.__call__ 2008-08-06 03:51:33 +00:00
Jason Gerard DeRose
277685439c 55: Cleaned up print_api() function in ipa script 2008-08-06 03:27:00 +00:00
Jason Gerard DeRose
c6f69e1c66 54: Added plugable.Proxy._clone() method; fleshed out public.obj; updated unit tests; port ipa script 2008-08-06 02:00:18 +00:00
Jason Gerard DeRose
f31f7813fe 53: Changed plugable.Registar so the same plugin can be added to in the ns for more than one base (for cmd and mthd) 2008-08-05 23:34:59 +00:00
Jason Gerard DeRose
159207514f 52: Got cli working against new framework 2008-08-05 22:21:57 +00:00
Jason Gerard DeRose
1fce1487f9 51: Moved old_plugins.py back to plugins.py 2008-08-05 21:28:29 +00:00
Jason Gerard DeRose
175dfc121a 50: Moved plugins.py to old_plugins.py 2008-08-05 21:14:37 +00:00
Jason Gerard DeRose
f193dcba27 49: Added public.PublicAPI class; added some basic unit tests for same 2008-08-05 21:10:49 +00:00
Jason Gerard DeRose
907107001b 48: Added public.py with base classes for 'public' api used for XML-RPC, CLI, and UI; added corresponding unit stests 2008-08-05 07:39:50 +00:00
Jason Gerard DeRose
56fa454fdd 47: Added plugable.check_identifier() function; added corresponding unit tests 2008-08-05 06:33:09 +00:00
Jason Gerard DeRose
d134b48306 46: plugable.API now takes allowed base class in __init__ and creates Registrar at API.register, thereby coupling the two; updated correspending unit tests 2008-08-05 05:12:09 +00:00
Jason Gerard DeRose
2b3c2238f6 45: Fixed docstring typo in plugable.__doc__ 2008-08-05 04:40:44 +00:00
Jason Gerard DeRose
42c53b2a53 44: Added Plugin.finalize() method called by API after all plugin instances are created; updated corresponding unit tests 2008-08-05 04:24:19 +00:00
Jason Gerard DeRose
c3bf5ad857 43: Fleshed out new plugable.API class; added corresponding unit tests 2008-08-05 03:21:52 +00:00
Jason Gerard DeRose
74f5719078 42: plugable.Plugin.__init__() now takes the plugable.API instance as its single argument 2008-08-01 21:25:46 +00:00
Jason Gerard DeRose
a0f480a414 41: New plugable.NameSpace now has attributes set for each member; updated unit tests 2008-08-01 20:58:48 +00:00
Jason Gerard DeRose
f3762a76c0 40: Rewrote dictionary interface for plugable.NameSpace to better suite new architecture 2008-08-01 20:42:35 +00:00
Jason Gerard DeRose
4fe8e52ecb 39: Added unit tests for Registrar.__iter__() 2008-08-01 07:00:08 +00:00
Jason Gerard DeRose
8881e4a543 38: dict interface of Registrar now works with both classes and strings as the key 2008-08-01 06:44:30 +00:00
Jason Gerard DeRose
5eac2ea15f 37: Renamed tstutil.yes_raises() to raises(); changed test_plugable.py to use raises() throughout 2008-08-01 06:02:29 +00:00
Jason Gerard DeRose
4ac7ad99d6 36: Added more functionality to tests.tstutil; added corresponding tests.test_tstutil unit tests 2008-08-01 05:44:11 +00:00
Jason Gerard DeRose
8a964d02b5 35: Renamed unit_common.py to tstutil.py 2008-08-01 03:15:50 +00:00
Jason Gerard DeRose
31fc955355 34: Added tests.unit_common with frequently used utility functions; split ro __setattr__, __delattr__ methods out of Proxy and into new ReadOnly base class; added corresponding unit tests 2008-08-01 03:12:17 +00:00
Jason Gerard DeRose
f53dec2600 33: Finished unit tests for plugable.Proxy 2008-08-01 01:47:49 +00:00
Jason Gerard DeRose
a131ebf724 32: Added Plugin and Proxy base classes in plugable module, along with to_cli() and from_cli() functions; added correspending unit tests 2008-07-31 22:36:15 +00:00
Jason Gerard DeRose
d7569a84b9 31: Renamed exceptions.py to errors.py 2008-07-31 18:57:10 +00:00
Jason Gerard DeRose
bc1675dc38 30: Added plugable module with more generic implementation of Registrar; added corresponding unit tests 2008-07-28 04:34:25 +00:00
Jason Gerard DeRose
8b64314359 29: Some experimentation to make the Registar more generalized 2008-07-25 03:17:24 +00:00
Jason Gerard DeRose
fc33f5d359 28: Added new base.Register class that is a more generic way of doing the plugin registration and doesn't itself instatiate any plugins; added corresponding unit tests 2008-07-22 06:41:33 +00:00