puppet 0.23.2 → 0.24.0
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of puppet might be problematic. Click here for more details.
- data/CHANGELOG +112 -1
- data/README +1 -1
- data/Rakefile +1 -2
- data/bin/filebucket +2 -3
- data/bin/puppet +55 -39
- data/bin/puppetca +20 -11
- data/bin/puppetd +30 -31
- data/bin/puppetdoc +27 -28
- data/bin/puppetmasterd +24 -42
- data/bin/puppetrun +3 -4
- data/bin/ralsh +5 -7
- data/conf/redhat/puppet.spec +4 -1
- data/conf/solaris/smf/svc-puppetd +1 -1
- data/conf/solaris/smf/svc-puppetmasterd +1 -1
- data/examples/code/allatonce +1 -1
- data/examples/code/assignments +1 -1
- data/examples/code/components +1 -1
- data/examples/code/file.bl +1 -1
- data/examples/code/filedefaults +1 -1
- data/examples/code/fileparsing +1 -1
- data/examples/code/filerecursion +1 -1
- data/examples/code/functions +1 -1
- data/examples/code/groups +1 -1
- data/examples/code/head +1 -1
- data/examples/code/importing +1 -1
- data/examples/code/modules/sample-module.pp +10 -0
- data/examples/code/modules/sample-module/README.txt +17 -0
- data/examples/code/modules/sample-module/lib/puppet/parser/functions/hostname_to_dn.rb +36 -0
- data/examples/code/modules/sample-module/manifests/init.pp +12 -0
- data/examples/code/modules/sample-module/templates/sample.erb +5 -0
- data/examples/code/nodes +1 -1
- data/examples/code/one +1 -1
- data/examples/code/relationships +1 -1
- data/examples/code/selectors +1 -1
- data/examples/code/simpletests +1 -1
- data/examples/root/etc/init.d/sleeper +1 -1
- data/examples/root/etc/puppet/fileserver.conf +1 -1
- data/ext/ldap/puppet.schema +1 -1
- data/ext/module_puppet +30 -21
- data/ext/puppet-test +3 -3
- data/ext/vim/filetype.vim +1 -1
- data/install.rb +1 -2
- data/lib/puppet.rb +20 -19
- data/lib/puppet/checksum.rb +57 -0
- data/lib/puppet/config_stores/rest.rb +1 -1
- data/lib/puppet/daemon.rb +0 -1
- data/lib/puppet/{configuration.rb → defaults.rb} +56 -23
- data/lib/puppet/dsl.rb +22 -116
- data/lib/puppet/error.rb +0 -9
- data/lib/puppet/event.rb +0 -1
- data/lib/puppet/external/gratr/rdot.rb +0 -1
- data/lib/puppet/external/lock.rb +0 -1
- data/lib/puppet/feature/base.rb +3 -2
- data/lib/puppet/feature/rails.rb +0 -1
- data/lib/puppet/file_serving.rb +7 -0
- data/lib/puppet/file_serving/configuration.rb +129 -0
- data/lib/puppet/file_serving/configuration/parser.rb +124 -0
- data/lib/puppet/file_serving/content.rb +34 -0
- data/lib/puppet/file_serving/file_base.rb +63 -0
- data/lib/puppet/file_serving/fileset.rb +138 -0
- data/lib/puppet/file_serving/indirection_hooks.rb +44 -0
- data/lib/puppet/file_serving/metadata.rb +69 -0
- data/lib/puppet/file_serving/mount.rb +186 -0
- data/lib/puppet/file_serving/terminus_helper.rb +19 -0
- data/lib/puppet/indirector.rb +68 -0
- data/lib/puppet/indirector/catalog/compiler.rb +173 -0
- data/lib/puppet/indirector/catalog/yaml.rb +24 -0
- data/lib/puppet/indirector/checksum/file.rb +33 -0
- data/lib/puppet/indirector/code.rb +6 -0
- data/lib/puppet/indirector/direct_file_server.rb +27 -0
- data/lib/puppet/indirector/exec.rb +57 -0
- data/lib/puppet/indirector/facts/facter.rb +65 -0
- data/lib/puppet/indirector/facts/memory.rb +9 -0
- data/lib/puppet/indirector/facts/yaml.rb +7 -0
- data/lib/puppet/indirector/file.rb +54 -0
- data/lib/puppet/indirector/file_content.rb +5 -0
- data/lib/puppet/indirector/file_content/file.rb +11 -0
- data/lib/puppet/indirector/file_content/file_server.rb +11 -0
- data/lib/puppet/indirector/file_content/modules.rb +11 -0
- data/lib/puppet/indirector/file_content/rest.rb +12 -0
- data/lib/puppet/indirector/file_metadata.rb +5 -0
- data/lib/puppet/indirector/file_metadata/file.rb +26 -0
- data/lib/puppet/indirector/file_metadata/file_server.rb +11 -0
- data/lib/puppet/indirector/file_metadata/modules.rb +17 -0
- data/lib/puppet/indirector/file_metadata/rest.rb +12 -0
- data/lib/puppet/indirector/file_server.rb +56 -0
- data/lib/puppet/indirector/indirection.rb +237 -0
- data/lib/puppet/indirector/ldap.rb +90 -0
- data/lib/puppet/indirector/memory.rb +21 -0
- data/lib/puppet/indirector/module_files.rb +82 -0
- data/lib/puppet/indirector/node/exec.rb +52 -0
- data/lib/puppet/indirector/node/ldap.rb +120 -0
- data/lib/puppet/indirector/node/memory.rb +10 -0
- data/lib/puppet/indirector/node/plain.rb +19 -0
- data/lib/puppet/indirector/node/rest.rb +7 -0
- data/lib/puppet/indirector/node/yaml.rb +7 -0
- data/lib/puppet/indirector/plain.rb +9 -0
- data/lib/puppet/indirector/report/processor.rb +50 -0
- data/lib/puppet/indirector/rest.rb +8 -0
- data/lib/puppet/indirector/ssl_rsa.rb +5 -0
- data/lib/puppet/indirector/ssl_rsa/file.rb +33 -0
- data/lib/puppet/indirector/terminus.rb +178 -0
- data/lib/puppet/indirector/yaml.rb +57 -0
- data/lib/puppet/metatype/attributes.rb +3 -3
- data/lib/puppet/metatype/closure.rb +0 -66
- data/lib/puppet/metatype/container.rb +0 -9
- data/lib/puppet/metatype/evaluation.rb +10 -2
- data/lib/puppet/metatype/instances.rb +16 -30
- data/lib/puppet/metatype/manager.rb +1 -2
- data/lib/puppet/metatype/metaparams.rb +27 -21
- data/lib/puppet/metatype/providers.rb +3 -2
- data/lib/puppet/metatype/relationships.rb +1 -2
- data/lib/puppet/metatype/schedules.rb +0 -1
- data/lib/puppet/metatype/tags.rb +0 -1
- data/lib/puppet/module.rb +60 -32
- data/lib/puppet/network/authconfig.rb +0 -1
- data/lib/puppet/network/authorization.rb +0 -1
- data/lib/puppet/network/authstore.rb +0 -1
- data/lib/puppet/network/client.rb +13 -4
- data/lib/puppet/network/client/ca.rb +4 -5
- data/lib/puppet/network/client/dipper.rb +0 -1
- data/lib/puppet/network/client/file.rb +0 -1
- data/lib/puppet/network/client/master.rb +127 -235
- data/lib/puppet/network/client/proxy.rb +0 -1
- data/lib/puppet/network/client/report.rb +0 -1
- data/lib/puppet/network/client/resource.rb +0 -1
- data/lib/puppet/network/client/runner.rb +0 -1
- data/lib/puppet/network/client/status.rb +0 -1
- data/lib/puppet/network/client_request.rb +0 -1
- data/lib/puppet/network/handler.rb +5 -2
- data/lib/puppet/network/handler/ca.rb +1 -2
- data/lib/puppet/network/handler/configuration.rb +184 -0
- data/lib/puppet/network/handler/filebucket.rb +1 -2
- data/lib/puppet/network/handler/fileserver.rb +279 -107
- data/lib/puppet/network/handler/master.rb +57 -152
- data/lib/puppet/network/handler/report.rb +6 -65
- data/lib/puppet/network/handler/resource.rb +5 -13
- data/lib/puppet/network/handler/runner.rb +3 -4
- data/lib/puppet/network/handler/status.rb +0 -1
- data/lib/puppet/network/http.rb +13 -0
- data/lib/puppet/network/http/handler.rb +109 -0
- data/lib/puppet/network/http/mongrel.rb +54 -0
- data/lib/puppet/network/http/mongrel/rest.rb +37 -0
- data/lib/puppet/network/http/mongrel/xmlrpc.rb +4 -0
- data/lib/puppet/network/http/webrick.rb +51 -0
- data/lib/puppet/network/http/webrick/rest.rb +41 -0
- data/lib/puppet/network/http/webrick/xmlrpc.rb +4 -0
- data/lib/puppet/network/http_server.rb +3 -0
- data/lib/puppet/network/{server → http_server}/mongrel.rb +11 -5
- data/lib/puppet/network/{server → http_server}/webrick.rb +9 -5
- data/lib/puppet/network/rest_controller.rb +2 -0
- data/lib/puppet/network/rights.rb +0 -1
- data/lib/puppet/network/server.rb +63 -3
- data/lib/puppet/network/xmlrpc/client.rb +90 -23
- data/lib/puppet/network/xmlrpc/processor.rb +0 -1
- data/lib/puppet/network/xmlrpc/server.rb +0 -1
- data/lib/puppet/network/xmlrpc/webrick_servlet.rb +0 -1
- data/lib/puppet/node.rb +165 -0
- data/lib/puppet/node/catalog.rb +480 -0
- data/lib/puppet/node/environment.rb +46 -0
- data/lib/puppet/node/facts.rb +36 -0
- data/lib/puppet/parameter.rb +34 -28
- data/lib/puppet/parser/ast.rb +0 -1
- data/lib/puppet/parser/ast/astarray.rb +30 -53
- data/lib/puppet/parser/ast/branch.rb +0 -10
- data/lib/puppet/parser/ast/caseopt.rb +0 -11
- data/lib/puppet/parser/ast/casestatement.rb +0 -12
- data/lib/puppet/parser/ast/collection.rb +1 -3
- data/lib/puppet/parser/ast/collexpr.rb +0 -2
- data/lib/puppet/parser/ast/{component.rb → definition.rb} +58 -72
- data/lib/puppet/parser/ast/else.rb +0 -10
- data/lib/puppet/parser/ast/function.rb +0 -2
- data/lib/puppet/parser/ast/hostclass.rb +21 -19
- data/lib/puppet/parser/ast/ifstatement.rb +0 -13
- data/lib/puppet/parser/ast/leaf.rb +0 -8
- data/lib/puppet/parser/ast/node.rb +13 -10
- data/lib/puppet/parser/ast/resource.rb +75 -0
- data/lib/puppet/parser/ast/{resourcedefaults.rb → resource_defaults.rb} +4 -20
- data/lib/puppet/parser/ast/{resourceoverride.rb → resource_override.rb} +3 -5
- data/lib/puppet/parser/ast/resource_reference.rb +66 -0
- data/lib/puppet/parser/ast/resourceparam.rb +0 -14
- data/lib/puppet/parser/ast/selector.rb +0 -10
- data/lib/puppet/parser/ast/tag.rb +0 -2
- data/lib/puppet/parser/ast/vardef.rb +0 -14
- data/lib/puppet/parser/collector.rb +83 -101
- data/lib/puppet/parser/compile.rb +509 -0
- data/lib/puppet/parser/functions.rb +10 -10
- data/lib/puppet/parser/interpreter.rb +44 -662
- data/lib/puppet/parser/lexer.rb +1 -3
- data/lib/puppet/parser/parser.rb +674 -701
- data/lib/puppet/parser/parser_support.rb +33 -24
- data/lib/puppet/parser/resource.rb +219 -162
- data/lib/puppet/parser/resource/param.rb +1 -2
- data/lib/puppet/parser/resource/reference.rb +24 -16
- data/lib/puppet/parser/scope.rb +48 -459
- data/lib/puppet/parser/templatewrapper.rb +4 -5
- data/lib/puppet/pgraph.rb +10 -13
- data/lib/puppet/property.rb +25 -41
- data/lib/puppet/propertychange.rb +0 -2
- data/lib/puppet/provider.rb +15 -11
- data/lib/puppet/provider/cron/crontab.rb +6 -7
- data/lib/puppet/provider/group/groupadd.rb +0 -1
- data/lib/puppet/provider/group/netinfo.rb +0 -1
- data/lib/puppet/provider/group/pw.rb +0 -1
- data/lib/puppet/provider/host/netinfo.rb +0 -1
- data/lib/puppet/provider/host/parsed.rb +0 -1
- data/lib/puppet/provider/interface/redhat.rb +90 -91
- data/lib/puppet/provider/interface/sunos.rb +98 -81
- data/lib/puppet/provider/mailalias/aliases.rb +0 -1
- data/lib/puppet/provider/maillist/mailman.rb +2 -3
- data/lib/puppet/provider/mount.rb +10 -9
- data/lib/puppet/provider/mount/netinfo.rb +0 -1
- data/lib/puppet/provider/mount/parsed.rb +0 -1
- data/lib/puppet/provider/nameservice.rb +0 -1
- data/lib/puppet/provider/nameservice/netinfo.rb +0 -1
- data/lib/puppet/provider/nameservice/objectadd.rb +0 -1
- data/lib/puppet/provider/nameservice/pw.rb +0 -1
- data/lib/puppet/provider/package.rb +0 -2
- data/lib/puppet/provider/package/appdmg.rb +0 -1
- data/lib/puppet/provider/package/apple.rb +0 -1
- data/lib/puppet/provider/package/apt.rb +0 -1
- data/lib/puppet/provider/package/aptitude.rb +0 -1
- data/lib/puppet/provider/package/aptrpm.rb +0 -1
- data/lib/puppet/provider/package/blastwave.rb +0 -1
- data/lib/puppet/provider/package/darwinport.rb +0 -1
- data/lib/puppet/provider/package/dpkg.rb +9 -1
- data/lib/puppet/provider/package/fink.rb +0 -1
- data/lib/puppet/provider/package/freebsd.rb +0 -1
- data/lib/puppet/provider/package/gem.rb +0 -1
- data/lib/puppet/provider/package/openbsd.rb +1 -2
- data/lib/puppet/provider/package/pkgdmg.rb +14 -15
- data/lib/puppet/provider/package/portage.rb +6 -7
- data/lib/puppet/provider/package/ports.rb +1 -4
- data/lib/puppet/provider/package/rpm.rb +31 -45
- data/lib/puppet/provider/package/sun.rb +0 -3
- data/lib/puppet/provider/package/sunfreeware.rb +0 -1
- data/lib/puppet/provider/package/up2date.rb +0 -1
- data/lib/puppet/provider/package/urpmi.rb +0 -1
- data/lib/puppet/provider/package/yum.rb +45 -14
- data/lib/puppet/provider/package/yumhelper.py +37 -0
- data/lib/puppet/provider/parsedfile.rb +2 -3
- data/lib/puppet/provider/port/parsed.rb +0 -1
- data/lib/puppet/provider/service/base.rb +4 -1
- data/lib/puppet/provider/service/debian.rb +5 -2
- data/lib/puppet/provider/service/freebsd.rb +51 -0
- data/lib/puppet/provider/service/init.rb +16 -40
- data/lib/puppet/provider/service/redhat.rb +1 -6
- data/lib/puppet/provider/service/smf.rb +0 -1
- data/lib/puppet/provider/sshkey/parsed.rb +0 -1
- data/lib/puppet/provider/user/netinfo.rb +0 -1
- data/lib/puppet/provider/user/pw.rb +0 -1
- data/lib/puppet/provider/user/useradd.rb +0 -1
- data/lib/puppet/provider/zone/solaris.rb +0 -1
- data/lib/puppet/rails.rb +35 -30
- data/lib/puppet/rails/database/schema.rb +0 -1
- data/lib/puppet/rails/host.rb +6 -15
- data/lib/puppet/rails/param_name.rb +1 -2
- data/lib/puppet/rails/param_value.rb +0 -1
- data/lib/puppet/rails/puppet_class.rb +0 -1
- data/lib/puppet/rails/resource.rb +3 -5
- data/lib/puppet/reference/configuration.rb +12 -6
- data/lib/puppet/reference/indirection.rb +34 -0
- data/lib/puppet/reference/node_source.rb +9 -0
- data/lib/puppet/relationship.rb +10 -8
- data/lib/puppet/reports.rb +51 -0
- data/lib/puppet/reports/log.rb +2 -3
- data/lib/puppet/reports/rrdgraph.rb +2 -5
- data/lib/puppet/reports/store.rb +6 -7
- data/lib/puppet/reports/tagmail.rb +2 -3
- data/lib/puppet/resource_reference.rb +79 -0
- data/lib/puppet/simple_graph.rb +251 -0
- data/lib/puppet/sslcertificates.rb +19 -15
- data/lib/puppet/sslcertificates/ca.rb +56 -15
- data/lib/puppet/sslcertificates/certificate.rb +0 -1
- data/lib/puppet/sslcertificates/inventory.rb +2 -6
- data/lib/puppet/sslcertificates/monkey_patch.rb +6 -0
- data/lib/puppet/sslcertificates/support.rb +4 -5
- data/lib/puppet/transaction.rb +93 -96
- data/lib/puppet/transaction/report.rb +5 -1
- data/lib/puppet/transportable.rb +79 -125
- data/lib/puppet/type.rb +44 -10
- data/lib/puppet/type/component.rb +25 -110
- data/lib/puppet/type/cron.rb +1 -2
- data/lib/puppet/type/exec.rb +19 -13
- data/lib/puppet/type/group.rb +0 -1
- data/lib/puppet/type/host.rb +0 -1
- data/lib/puppet/type/interface.rb +6 -3
- data/lib/puppet/type/k5login.rb +87 -0
- data/lib/puppet/type/mailalias.rb +0 -1
- data/lib/puppet/type/maillist.rb +0 -1
- data/lib/puppet/type/mount.rb +7 -13
- data/lib/puppet/type/notify.rb +0 -1
- data/lib/puppet/type/package.rb +7 -63
- data/lib/puppet/type/pfile.rb +25 -32
- data/lib/puppet/type/pfile/checksum.rb +0 -1
- data/lib/puppet/type/pfile/content.rb +18 -3
- data/lib/puppet/type/pfile/ensure.rb +5 -6
- data/lib/puppet/type/pfile/group.rb +4 -1
- data/lib/puppet/type/pfile/mode.rb +0 -1
- data/lib/puppet/type/pfile/owner.rb +6 -9
- data/lib/puppet/type/pfile/source.rb +28 -11
- data/lib/puppet/type/pfile/target.rb +2 -1
- data/lib/puppet/type/pfile/type.rb +0 -1
- data/lib/puppet/type/pfilebucket.rb +0 -1
- data/lib/puppet/type/port.rb +0 -1
- data/lib/puppet/type/resources.rb +0 -1
- data/lib/puppet/type/schedule.rb +17 -15
- data/lib/puppet/type/service.rb +23 -159
- data/lib/puppet/type/sshkey.rb +0 -1
- data/lib/puppet/type/tidy.rb +15 -7
- data/lib/puppet/type/user.rb +0 -1
- data/lib/puppet/type/zone.rb +0 -1
- data/lib/puppet/util.rb +1 -2
- data/lib/puppet/util/autoload.rb +21 -23
- data/lib/puppet/util/checksums.rb +37 -0
- data/lib/puppet/util/classgen.rb +0 -1
- data/lib/puppet/util/diff.rb +71 -0
- data/lib/puppet/util/docs.rb +8 -2
- data/lib/puppet/util/errors.rb +0 -1
- data/lib/puppet/util/execution.rb +0 -1
- data/lib/puppet/util/fact_store.rb +0 -1
- data/lib/puppet/util/feature.rb +31 -22
- data/lib/puppet/util/fileparsing.rb +3 -2
- data/lib/puppet/util/filetype.rb +30 -12
- data/lib/puppet/util/graph.rb +0 -1
- data/lib/puppet/util/inifile.rb +0 -1
- data/lib/puppet/util/instance_loader.rb +11 -4
- data/lib/puppet/util/loadedfile.rb +0 -1
- data/lib/puppet/util/log.rb +0 -1
- data/lib/puppet/util/log_paths.rb +0 -1
- data/lib/puppet/util/logging.rb +0 -1
- data/lib/puppet/util/metaid.rb +0 -1
- data/lib/puppet/util/methodhelper.rb +0 -2
- data/lib/puppet/util/metric.rb +1 -2
- data/lib/puppet/util/plist.rb +0 -1
- data/lib/puppet/util/plist/generator.rb +0 -1
- data/lib/puppet/util/plist/parser.rb +0 -1
- data/lib/puppet/util/posix.rb +7 -1
- data/lib/puppet/util/provider_features.rb +11 -12
- data/lib/puppet/util/rails/collection_merger.rb +0 -1
- data/lib/puppet/util/reference.rb +2 -3
- data/lib/puppet/util/{config.rb → settings.rb} +424 -300
- data/lib/puppet/util/storage.rb +1 -3
- data/lib/puppet/util/subclass_loader.rb +0 -1
- data/lib/puppet/util/suidmanager.rb +25 -42
- data/lib/puppet/util/uri_helper.rb +22 -0
- data/lib/puppet/util/variables.rb +0 -1
- data/lib/puppet/util/warnings.rb +0 -1
- data/test/Rakefile +1 -1
- data/test/certmgr/ca.rb +8 -2
- data/test/certmgr/certmgr.rb +14 -6
- data/test/certmgr/inventory.rb +18 -30
- data/test/certmgr/support.rb +3 -2
- data/test/executables/filebucket.rb +1 -2
- data/test/executables/puppetbin.rb +1 -2
- data/test/executables/puppetca.rb +7 -2
- data/test/executables/puppetd.rb +23 -29
- data/test/executables/puppetmasterd.rb +1 -2
- data/test/executables/puppetmodule.rb +1 -2
- data/test/language/ast.rb +24 -29
- data/test/language/ast/casestatement.rb +1 -2
- data/test/language/ast/definition.rb +166 -0
- data/test/language/ast/hostclass.rb +50 -29
- data/test/language/ast/resource.rb +59 -0
- data/test/language/ast/{resourceref.rb → resource_reference.rb} +30 -20
- data/test/language/ast/selector.rb +1 -2
- data/test/language/ast/variable.rb +1 -2
- data/test/language/compile.rb +569 -0
- data/test/language/functions.rb +57 -76
- data/test/language/lexer.rb +20 -3
- data/test/language/parser.rb +45 -33
- data/test/language/resource.rb +275 -308
- data/test/language/scope.rb +135 -410
- data/test/language/snippets.rb +19 -41
- data/test/language/transportable.rb +8 -29
- data/test/lib/mocha/auto_verify.rb +6 -6
- data/test/lib/mocha/deprecation.rb +22 -0
- data/test/lib/mocha/exception_raiser.rb +17 -0
- data/test/lib/mocha/expectation.rb +167 -84
- data/test/lib/mocha/infinite_range.rb +4 -6
- data/test/lib/mocha/inspect.rb +3 -1
- data/test/lib/mocha/is_a.rb +9 -0
- data/test/lib/mocha/missing_expectation.rb +27 -0
- data/test/lib/mocha/mock.rb +192 -5
- data/test/lib/mocha/multiple_yields.rb +20 -0
- data/test/lib/mocha/no_yields.rb +11 -0
- data/test/lib/mocha/object.rb +11 -1
- data/test/lib/mocha/parameter_matchers.rb +9 -0
- data/test/lib/mocha/parameter_matchers/all_of.rb +39 -0
- data/test/lib/mocha/parameter_matchers/any_of.rb +44 -0
- data/test/lib/mocha/parameter_matchers/anything.rb +30 -0
- data/test/lib/mocha/parameter_matchers/has_entry.rb +39 -0
- data/test/lib/mocha/parameter_matchers/has_key.rb +39 -0
- data/test/lib/mocha/parameter_matchers/has_value.rb +39 -0
- data/test/lib/mocha/parameter_matchers/includes.rb +37 -0
- data/test/lib/mocha/return_values.rb +31 -0
- data/test/lib/mocha/single_return_value.rb +24 -0
- data/test/lib/mocha/single_yield.rb +18 -0
- data/test/lib/mocha/standalone.rb +2 -0
- data/test/lib/mocha/stub.rb +18 -0
- data/test/lib/mocha/test_case_adapter.rb +3 -3
- data/test/lib/mocha/yield_parameters.rb +31 -0
- data/test/lib/puppettest.rb +38 -20
- data/test/lib/puppettest/certificates.rb +0 -1
- data/test/lib/puppettest/exetest.rb +0 -1
- data/test/lib/puppettest/fakes.rb +0 -1
- data/test/lib/puppettest/fileparsing.rb +8 -15
- data/test/lib/puppettest/filetesting.rb +0 -1
- data/test/lib/puppettest/parsertesting.rb +37 -23
- data/test/lib/puppettest/railstesting.rb +3 -6
- data/test/lib/puppettest/reporttesting.rb +0 -1
- data/test/lib/puppettest/resourcetesting.rb +6 -34
- data/test/lib/puppettest/runnable_test.rb +30 -0
- data/test/lib/puppettest/servertest.rb +2 -3
- data/test/lib/puppettest/support/assertions.rb +13 -41
- data/test/lib/puppettest/support/collection.rb +0 -1
- data/test/lib/puppettest/support/helpers.rb +0 -1
- data/test/lib/puppettest/support/resources.rb +17 -17
- data/test/lib/puppettest/support/utils.rb +45 -27
- data/test/lib/puppettest/testcase.rb +2 -21
- data/test/lib/rake/puppet_test_loader.rb +0 -1
- data/test/lib/rake/puppet_testtask.rb +0 -1
- data/test/network/authconfig.rb +1 -2
- data/test/network/authorization.rb +1 -2
- data/test/network/authstore.rb +1 -2
- data/test/network/client/ca.rb +12 -7
- data/test/network/client/client.rb +17 -22
- data/test/network/client/dipper.rb +1 -2
- data/test/network/client/master.rb +70 -184
- data/test/network/client/resource.rb +9 -2
- data/test/network/client_request.rb +1 -2
- data/test/network/daemon.rb +1 -2
- data/test/network/handler/bucket.rb +2 -31
- data/test/network/handler/ca.rb +9 -3
- data/test/network/handler/configuration.rb +160 -0
- data/test/network/handler/fileserver.rb +24 -5
- data/test/network/handler/handler.rb +1 -2
- data/test/network/handler/master.rb +38 -243
- data/test/network/handler/report.rb +2 -104
- data/test/network/handler/resource.rb +5 -3
- data/test/network/handler/runner.rb +22 -60
- data/test/network/rights.rb +1 -2
- data/test/network/server/mongrel_test.rb +2 -3
- data/test/network/server/webrick.rb +17 -11
- data/test/network/xmlrpc/client.rb +27 -12
- data/test/network/xmlrpc/processor.rb +3 -4
- data/test/network/xmlrpc/server.rb +1 -2
- data/test/network/xmlrpc/webrick_servlet.rb +8 -2
- data/test/other/dsl.rb +2 -4
- data/test/other/events.rb +14 -56
- data/test/other/overrides.rb +3 -6
- data/test/other/propertychange.rb +1 -2
- data/test/other/provider.rb +1 -2
- data/test/other/puppet.rb +1 -2
- data/test/other/relationships.rb +15 -17
- data/test/other/report.rb +14 -20
- data/test/other/transactions.rb +109 -192
- data/test/puppet/conffiles.rb +3 -5
- data/test/puppet/defaults.rb +1 -28
- data/test/puppet/errortest.rb +1 -2
- data/test/puppet/tc_suidmanager.rb +77 -63
- data/test/rails/ast.rb +4 -4
- data/test/rails/configuration.rb +71 -0
- data/test/rails/host.rb +19 -30
- data/test/rails/rails.rb +1 -2
- data/test/rails/railsparameter.rb +3 -4
- data/test/rails/railsresource.rb +6 -5
- data/test/ral/manager/attributes.rb +1 -2
- data/test/ral/manager/instances.rb +3 -3
- data/test/ral/manager/manager.rb +1 -2
- data/test/ral/manager/provider.rb +1 -2
- data/test/ral/manager/type.rb +89 -93
- data/test/ral/providers/cron/crontab.rb +9 -11
- data/test/ral/providers/group.rb +1 -2
- data/test/ral/providers/host/netinfo.rb +1 -2
- data/test/ral/providers/host/parsed.rb +1 -2
- data/test/ral/providers/mailalias/aliases.rb +1 -2
- data/test/ral/providers/mount/netinfo.rb +1 -2
- data/test/ral/providers/nameservice.rb +1 -2
- data/test/ral/providers/package.rb +5 -4
- data/test/ral/providers/package/apt.rb +0 -1
- data/test/ral/providers/package/aptrpm.rb +0 -1
- data/test/ral/providers/parsedfile.rb +1 -2
- data/test/ral/providers/port/parsed.rb +1 -2
- data/test/ral/providers/provider.rb +10 -5
- data/test/ral/providers/service/base.rb +1 -2
- data/test/ral/providers/service/debian.rb +58 -0
- data/test/ral/providers/sshkey/parsed.rb +1 -2
- data/test/ral/providers/user.rb +3 -2
- data/test/ral/providers/user/useradd.rb +0 -1
- data/test/ral/types/basic.rb +4 -9
- data/test/ral/types/cron.rb +6 -12
- data/test/ral/types/exec.rb +6 -7
- data/test/ral/types/file.rb +35 -14
- data/test/ral/types/file/target.rb +6 -5
- data/test/ral/types/filebucket.rb +3 -2
- data/test/ral/types/fileignoresource.rb +10 -42
- data/test/ral/types/filesources.rb +21 -60
- data/test/ral/types/group.rb +3 -3
- data/test/ral/types/host.rb +6 -3
- data/test/ral/types/mailalias.rb +1 -2
- data/test/ral/types/parameter.rb +5 -3
- data/test/ral/types/port.rb +1 -2
- data/test/ral/types/property.rb +3 -3
- data/test/ral/types/resources.rb +1 -2
- data/test/ral/types/service.rb +5 -3
- data/test/ral/types/sshkey.rb +5 -3
- data/test/ral/types/tidy.rb +63 -3
- data/test/ral/types/user.rb +10 -11
- data/test/ral/types/yumrepo.rb +1 -1
- data/test/ral/types/zone.rb +1 -2
- data/test/util/autoload.rb +23 -27
- data/test/util/classgen.rb +1 -2
- data/test/util/execution.rb +1 -2
- data/test/util/features.rb +1 -3
- data/test/util/fileparsing.rb +11 -3
- data/test/util/filetype.rb +1 -2
- data/test/util/inifile.rb +1 -1
- data/test/util/instance_loader.rb +5 -6
- data/test/util/loadedfile.rb +1 -2
- data/test/util/log.rb +1 -2
- data/test/util/metrics.rb +1 -2
- data/test/util/package.rb +1 -2
- data/test/util/posixtest.rb +1 -2
- data/test/util/{config.rb → settings.rb} +123 -265
- data/test/util/storage.rb +1 -2
- data/test/util/subclass_loader.rb +1 -2
- data/test/util/utiltest.rb +1 -111
- metadata +130 -112
- data/ext/tools/passwd2puppet +0 -45
- data/lib/puppet/fact_stores/yaml.rb +0 -42
- data/lib/puppet/network/handler/facts.rb +0 -70
- data/lib/puppet/parser/ast/resourcedef.rb +0 -222
- data/lib/puppet/parser/ast/resourceref.rb +0 -58
- data/test/language/ast/component.rb +0 -142
- data/test/language/collector.rb +0 -179
- data/test/language/interpreter.rb +0 -804
- data/test/language/node.rb +0 -126
- data/test/lib/mocha/mock_methods.rb +0 -122
- data/test/lib/puppettest/graph.rb +0 -41
- data/test/lib/spec.rb +0 -8
- data/test/lib/spec/callback.rb +0 -11
- data/test/lib/spec/callback/callback_container.rb +0 -60
- data/test/lib/spec/callback/extensions/module.rb +0 -24
- data/test/lib/spec/callback/extensions/object.rb +0 -37
- data/test/lib/spec/deprecated.rb +0 -3
- data/test/lib/spec/expectations.rb +0 -59
- data/test/lib/spec/expectations/differs/default.rb +0 -62
- data/test/lib/spec/expectations/errors.rb +0 -6
- data/test/lib/spec/expectations/extensions.rb +0 -3
- data/test/lib/spec/expectations/extensions/object.rb +0 -109
- data/test/lib/spec/expectations/extensions/proc.rb +0 -57
- data/test/lib/spec/expectations/extensions/string_and_symbol.rb +0 -17
- data/test/lib/spec/expectations/handler.rb +0 -47
- data/test/lib/spec/expectations/should.rb +0 -5
- data/test/lib/spec/expectations/should/base.rb +0 -64
- data/test/lib/spec/expectations/should/change.rb +0 -69
- data/test/lib/spec/expectations/should/have.rb +0 -128
- data/test/lib/spec/expectations/should/not.rb +0 -74
- data/test/lib/spec/expectations/should/should.rb +0 -81
- data/test/lib/spec/expectations/sugar.rb +0 -47
- data/test/lib/spec/matchers.rb +0 -160
- data/test/lib/spec/matchers/be.rb +0 -161
- data/test/lib/spec/matchers/be_close.rb +0 -37
- data/test/lib/spec/matchers/change.rb +0 -120
- data/test/lib/spec/matchers/eql.rb +0 -43
- data/test/lib/spec/matchers/equal.rb +0 -43
- data/test/lib/spec/matchers/has.rb +0 -44
- data/test/lib/spec/matchers/have.rb +0 -140
- data/test/lib/spec/matchers/include.rb +0 -50
- data/test/lib/spec/matchers/match.rb +0 -41
- data/test/lib/spec/matchers/raise_error.rb +0 -100
- data/test/lib/spec/matchers/respond_to.rb +0 -35
- data/test/lib/spec/matchers/satisfy.rb +0 -47
- data/test/lib/spec/matchers/throw_symbol.rb +0 -75
- data/test/lib/spec/mocks.rb +0 -232
- data/test/lib/spec/mocks/argument_expectation.rb +0 -132
- data/test/lib/spec/mocks/error_generator.rb +0 -85
- data/test/lib/spec/mocks/errors.rb +0 -10
- data/test/lib/spec/mocks/extensions/object.rb +0 -3
- data/test/lib/spec/mocks/message_expectation.rb +0 -231
- data/test/lib/spec/mocks/methods.rb +0 -40
- data/test/lib/spec/mocks/mock.rb +0 -26
- data/test/lib/spec/mocks/mock_handler.rb +0 -166
- data/test/lib/spec/mocks/order_group.rb +0 -29
- data/test/lib/spec/rake/spectask.rb +0 -173
- data/test/lib/spec/rake/verify_rcov.rb +0 -47
- data/test/lib/spec/runner.rb +0 -132
- data/test/lib/spec/runner/backtrace_tweaker.rb +0 -55
- data/test/lib/spec/runner/command_line.rb +0 -34
- data/test/lib/spec/runner/context.rb +0 -154
- data/test/lib/spec/runner/context_eval.rb +0 -142
- data/test/lib/spec/runner/context_runner.rb +0 -55
- data/test/lib/spec/runner/drb_command_line.rb +0 -21
- data/test/lib/spec/runner/execution_context.rb +0 -17
- data/test/lib/spec/runner/extensions/kernel.rb +0 -17
- data/test/lib/spec/runner/extensions/object.rb +0 -32
- data/test/lib/spec/runner/formatter.rb +0 -5
- data/test/lib/spec/runner/formatter/base_text_formatter.rb +0 -118
- data/test/lib/spec/runner/formatter/html_formatter.rb +0 -219
- data/test/lib/spec/runner/formatter/progress_bar_formatter.rb +0 -27
- data/test/lib/spec/runner/formatter/rdoc_formatter.rb +0 -22
- data/test/lib/spec/runner/formatter/specdoc_formatter.rb +0 -23
- data/test/lib/spec/runner/heckle_runner.rb +0 -71
- data/test/lib/spec/runner/heckle_runner_win.rb +0 -10
- data/test/lib/spec/runner/option_parser.rb +0 -224
- data/test/lib/spec/runner/reporter.rb +0 -105
- data/test/lib/spec/runner/spec_matcher.rb +0 -25
- data/test/lib/spec/runner/spec_parser.rb +0 -41
- data/test/lib/spec/runner/spec_should_raise_handler.rb +0 -74
- data/test/lib/spec/runner/specification.rb +0 -114
- data/test/lib/spec/translator.rb +0 -87
- data/test/lib/spec/version.rb +0 -30
- data/test/network/handler/facts.rb +0 -112
- data/test/other/pgraph.rb +0 -290
- data/test/other/relationship.rb +0 -74
- data/test/puppet/modules.rb +0 -59
- data/test/rails/collection.rb +0 -247
- data/test/rails/interpreter.rb +0 -91
- data/test/ral/providers/mount/parsed.rb +0 -251
- data/test/ral/providers/service.rb +0 -235
- data/test/ral/types/component.rb +0 -113
- data/test/ral/types/interface.rb +0 -40
- data/test/ral/types/mount.rb +0 -362
- data/test/ral/types/package.rb +0 -154
- data/test/ral/types/schedule.rb +0 -357
- data/test/tagging/tagging.rb +0 -170
- data/test/util/fact_store.rb +0 -67
- data/test/util/graph.rb +0 -108
data/test/language/node.rb
DELETED
@@ -1,126 +0,0 @@
|
|
1
|
-
#!/usr/bin/env ruby
|
2
|
-
|
3
|
-
$:.unshift("../lib").unshift("../../lib") if __FILE__ =~ /\.rb$/
|
4
|
-
|
5
|
-
require 'puppet'
|
6
|
-
require 'puppet/parser/parser'
|
7
|
-
require 'puppettest'
|
8
|
-
|
9
|
-
class TestParser < Test::Unit::TestCase
|
10
|
-
include PuppetTest::ParserTesting
|
11
|
-
|
12
|
-
def setup
|
13
|
-
super
|
14
|
-
Puppet[:parseonly] = true
|
15
|
-
end
|
16
|
-
|
17
|
-
def test_simple_hostname
|
18
|
-
check_parseable "host1"
|
19
|
-
check_parseable "'host2'"
|
20
|
-
check_parseable "\"host3\""
|
21
|
-
check_parseable [ "'host1'", "host2" ]
|
22
|
-
check_parseable [ "'host1'", "'host2'" ]
|
23
|
-
check_parseable [ "'host1'", "\"host2\"" ]
|
24
|
-
check_parseable [ "\"host1\"", "host2" ]
|
25
|
-
check_parseable [ "\"host1\"", "'host2'" ]
|
26
|
-
check_parseable [ "\"host1\"", "\"host2\"" ]
|
27
|
-
end
|
28
|
-
|
29
|
-
def test_qualified_hostname
|
30
|
-
check_parseable "'host.example.com'"
|
31
|
-
check_parseable "\"host.example.com\""
|
32
|
-
check_parseable [ "'host.example.com'", "host1" ]
|
33
|
-
check_parseable [ "\"host.example.com\"", "host1" ]
|
34
|
-
check_parseable "'host-1.37examples.example.com'"
|
35
|
-
check_parseable "\"host-1.37examples.example.com\""
|
36
|
-
check_parseable "'svn.23.nu'"
|
37
|
-
check_parseable "\"svn.23.nu\""
|
38
|
-
check_parseable "'HOST'"
|
39
|
-
check_parseable "\"HOST\""
|
40
|
-
end
|
41
|
-
|
42
|
-
def test_inherits_from_default
|
43
|
-
check_parseable(["default", "host1"], "node default {}\nnode host1 inherits default {}")
|
44
|
-
end
|
45
|
-
|
46
|
-
def test_reject_hostname
|
47
|
-
check_nonparseable "host.example.com"
|
48
|
-
check_nonparseable "host@example.com"
|
49
|
-
check_nonparseable "'$foo.example.com'"
|
50
|
-
check_nonparseable "\"$foo.example.com\""
|
51
|
-
check_nonparseable "'host1 host2'"
|
52
|
-
check_nonparseable "\"host1 host2\""
|
53
|
-
check_nonparseable "HOST"
|
54
|
-
end
|
55
|
-
|
56
|
-
AST = Puppet::Parser::AST
|
57
|
-
|
58
|
-
def check_parseable(hostnames, code = nil)
|
59
|
-
unless hostnames.is_a?(Array)
|
60
|
-
hostnames = [ hostnames ]
|
61
|
-
end
|
62
|
-
interp = nil
|
63
|
-
code ||= "node #{hostnames.join(", ")} { }"
|
64
|
-
parser = mkparser
|
65
|
-
parser.string = code
|
66
|
-
# Strip quotes
|
67
|
-
hostnames.map! { |s| s.sub(/^['"](.*)['"]$/, "\\1") }
|
68
|
-
|
69
|
-
# parse
|
70
|
-
assert_nothing_raised("Could not parse '%s'" % code) {
|
71
|
-
parser.parse
|
72
|
-
}
|
73
|
-
|
74
|
-
# Now make sure we can look up each of the names
|
75
|
-
hostnames.each do |name|
|
76
|
-
assert(parser.findnode(name),
|
77
|
-
"Could not find node %s" % name.inspect)
|
78
|
-
end
|
79
|
-
end
|
80
|
-
|
81
|
-
def check_nonparseable(hostname)
|
82
|
-
interp = nil
|
83
|
-
parser = mkparser
|
84
|
-
parser.string = "node #{hostname} { }"
|
85
|
-
assert_raise(Puppet::DevError, Puppet::ParseError, "#{hostname} passed") {
|
86
|
-
parser.parse
|
87
|
-
}
|
88
|
-
end
|
89
|
-
|
90
|
-
# Make sure we can find default nodes if there's no other entry
|
91
|
-
def test_default_node
|
92
|
-
Puppet[:parseonly] = false
|
93
|
-
|
94
|
-
fileA = tempfile()
|
95
|
-
fileB = tempfile()
|
96
|
-
code = %{
|
97
|
-
node mynode {
|
98
|
-
file { "#{fileA}": ensure => file }
|
99
|
-
}
|
100
|
-
|
101
|
-
node default {
|
102
|
-
file { "#{fileB}": ensure => file }
|
103
|
-
}
|
104
|
-
}
|
105
|
-
interp = nil
|
106
|
-
assert_nothing_raised {
|
107
|
-
interp = mkinterp :Code => code
|
108
|
-
}
|
109
|
-
|
110
|
-
# First make sure it parses
|
111
|
-
assert_nothing_raised {
|
112
|
-
interp.send(:parsefiles)
|
113
|
-
}
|
114
|
-
|
115
|
-
# Make sure we find our normal node
|
116
|
-
assert(interp.nodesearch("mynode"),
|
117
|
-
"Did not find normal node")
|
118
|
-
|
119
|
-
# Now look for the default node
|
120
|
-
default = interp.nodesearch("someother")
|
121
|
-
assert(default,
|
122
|
-
"Did not find default node")
|
123
|
-
|
124
|
-
assert_equal("default", default.classname)
|
125
|
-
end
|
126
|
-
end
|
@@ -1,122 +0,0 @@
|
|
1
|
-
require 'mocha/expectation'
|
2
|
-
require 'mocha/metaclass'
|
3
|
-
|
4
|
-
module Mocha
|
5
|
-
# Methods added to mock objects.
|
6
|
-
# These methods all return an expectation which can be further modified by methods on Mocha::Expectation.
|
7
|
-
module MockMethods
|
8
|
-
|
9
|
-
# :stopdoc:
|
10
|
-
|
11
|
-
attr_reader :stub_everything
|
12
|
-
|
13
|
-
def expectations
|
14
|
-
@expectations ||= []
|
15
|
-
end
|
16
|
-
|
17
|
-
# :startdoc:
|
18
|
-
|
19
|
-
# :call-seq: expects(method_name) -> expectation
|
20
|
-
# expects(method_names) -> last expectation
|
21
|
-
#
|
22
|
-
# Adds an expectation that a method identified by +method_name+ symbol must be called exactly once with any parameters.
|
23
|
-
# Returns the new expectation which can be further modified by methods on Mocha::Expectation.
|
24
|
-
# object = mock()
|
25
|
-
# object.expects(:method1)
|
26
|
-
# object.method1
|
27
|
-
# # no error raised
|
28
|
-
#
|
29
|
-
# object = mock()
|
30
|
-
# object.expects(:method1)
|
31
|
-
# # error raised, because method1 not called exactly once
|
32
|
-
# If +method_names+ is a +Hash+, an expectation will be set up for each entry using the key as +method_name+ and value as +return_value+.
|
33
|
-
# object = mock()
|
34
|
-
# object.expects(:method1 => :result1, :method2 => :result2)
|
35
|
-
#
|
36
|
-
# # exactly equivalent to
|
37
|
-
#
|
38
|
-
# object = mock()
|
39
|
-
# object.expects(:method1).returns(:result1)
|
40
|
-
# object.expects(:method2).returns(:result2)
|
41
|
-
def expects(method_names, backtrace = nil)
|
42
|
-
method_names = method_names.is_a?(Hash) ? method_names : { method_names => nil }
|
43
|
-
method_names.each do |method_name, return_value|
|
44
|
-
expectations << Expectation.new(self, method_name, backtrace).returns(return_value)
|
45
|
-
self.__metaclass__.send(:undef_method, method_name) if self.__metaclass__.method_defined?(method_name)
|
46
|
-
end
|
47
|
-
expectations.last
|
48
|
-
end
|
49
|
-
|
50
|
-
alias_method :__expects__, :expects
|
51
|
-
|
52
|
-
# :call-seq: stubs(method_name) -> expectation
|
53
|
-
# stubs(method_names) -> last expectation
|
54
|
-
#
|
55
|
-
# Adds an expectation that a method identified by +method_name+ symbol may be called any number of times with any parameters.
|
56
|
-
# Returns the new expectation which can be further modified by methods on Mocha::Expectation.
|
57
|
-
# object = mock()
|
58
|
-
# object.stubs(:method1)
|
59
|
-
# object.method1
|
60
|
-
# object.method1
|
61
|
-
# # no error raised
|
62
|
-
# If +method_names+ is a +Hash+, an expectation will be set up for each entry using the key as +method_name+ and value as +return_value+.
|
63
|
-
# object = mock()
|
64
|
-
# object.stubs(:method1 => :result1, :method2 => :result2)
|
65
|
-
#
|
66
|
-
# # exactly equivalent to
|
67
|
-
#
|
68
|
-
# object = mock()
|
69
|
-
# object.stubs(:method1).returns(:result1)
|
70
|
-
# object.stubs(:method2).returns(:result2)
|
71
|
-
def stubs(method_names, backtrace = nil)
|
72
|
-
method_names = method_names.is_a?(Hash) ? method_names : { method_names => nil }
|
73
|
-
method_names.each do |method_name, return_value|
|
74
|
-
expectations << Stub.new(self, method_name, backtrace).returns(return_value)
|
75
|
-
self.__metaclass__.send(:undef_method, method_name) if self.__metaclass__.method_defined?(method_name)
|
76
|
-
end
|
77
|
-
expectations.last
|
78
|
-
end
|
79
|
-
|
80
|
-
alias_method :__stubs__, :stubs
|
81
|
-
|
82
|
-
# :stopdoc:
|
83
|
-
|
84
|
-
def method_missing(symbol, *arguments, &block)
|
85
|
-
matching_expectation = matching_expectation(symbol, *arguments)
|
86
|
-
if matching_expectation then
|
87
|
-
matching_expectation.invoke(&block)
|
88
|
-
elsif stub_everything then
|
89
|
-
return
|
90
|
-
else
|
91
|
-
begin
|
92
|
-
super_method_missing(symbol, *arguments, &block)
|
93
|
-
rescue NoMethodError
|
94
|
-
unexpected_method_called(symbol, *arguments)
|
95
|
-
end
|
96
|
-
end
|
97
|
-
end
|
98
|
-
|
99
|
-
def respond_to?(symbol)
|
100
|
-
expectations.any? { |expectation| expectation.method_name == symbol }
|
101
|
-
end
|
102
|
-
|
103
|
-
def super_method_missing(symbol, *arguments, &block)
|
104
|
-
raise NoMethodError
|
105
|
-
end
|
106
|
-
|
107
|
-
def unexpected_method_called(symbol, *arguments)
|
108
|
-
MissingExpectation.new(self, symbol).with(*arguments).verify
|
109
|
-
end
|
110
|
-
|
111
|
-
def matching_expectation(symbol, *arguments)
|
112
|
-
expectations.reverse.detect { |expectation| expectation.match?(symbol, *arguments) }
|
113
|
-
end
|
114
|
-
|
115
|
-
def verify(&block)
|
116
|
-
expectations.each { |expectation| expectation.verify(&block) }
|
117
|
-
end
|
118
|
-
|
119
|
-
# :startdoc:
|
120
|
-
|
121
|
-
end
|
122
|
-
end
|
@@ -1,41 +0,0 @@
|
|
1
|
-
#!/usr/bin/env ruby
|
2
|
-
#
|
3
|
-
# Created by Luke A. Kanies on 2006-11-24.
|
4
|
-
# Copyright (c) 2006. All rights reserved.
|
5
|
-
|
6
|
-
require 'puppet/util/graph'
|
7
|
-
|
8
|
-
class Container
|
9
|
-
include Puppet::Util::Graph
|
10
|
-
include Enumerable
|
11
|
-
attr_accessor :name
|
12
|
-
def each
|
13
|
-
@children.each do |c| yield c end
|
14
|
-
end
|
15
|
-
|
16
|
-
def initialize(name, ary)
|
17
|
-
@name = name
|
18
|
-
@children = ary
|
19
|
-
end
|
20
|
-
|
21
|
-
def push(*ary)
|
22
|
-
ary.each { |c| @children.push(c)}
|
23
|
-
end
|
24
|
-
|
25
|
-
def to_s
|
26
|
-
@name
|
27
|
-
end
|
28
|
-
end
|
29
|
-
|
30
|
-
module PuppetTest::Graph
|
31
|
-
def build_tree
|
32
|
-
one = Container.new("one", %w{a b})
|
33
|
-
two = Container.new("two", ["c", "d"])
|
34
|
-
three = Container.new("three", ["i", "j"])
|
35
|
-
middle = Container.new("middle", ["e", "f", two])
|
36
|
-
top = Container.new("top", ["g", "h", middle, one, three])
|
37
|
-
return one, two, three, middle, top
|
38
|
-
end
|
39
|
-
end
|
40
|
-
|
41
|
-
# $Id: graph.rb 1982 2006-12-29 00:05:03Z luke $
|
data/test/lib/spec.rb
DELETED
data/test/lib/spec/callback.rb
DELETED
@@ -1,11 +0,0 @@
|
|
1
|
-
require 'spec/callback/callback_container'
|
2
|
-
require 'spec/callback/extensions/module'
|
3
|
-
require 'spec/callback/extensions/object'
|
4
|
-
|
5
|
-
# Callback is a fork of Brian Takita's "callback library" (see http://callback.rubyforge.org),
|
6
|
-
# which Brian graciously contributed to RSpec in order to avoid the dependency.
|
7
|
-
#
|
8
|
-
# RSpec uses Callback internally to create hooks to Spec::Runner events. If you're interested
|
9
|
-
# in a simple, powerful API for generating callback events, check out http://callback.rubyforge.org.
|
10
|
-
module Callback
|
11
|
-
end
|
@@ -1,60 +0,0 @@
|
|
1
|
-
module Callback
|
2
|
-
class CallbackContainer
|
3
|
-
def initialize
|
4
|
-
@callback_registry = Hash.new do |hash, key|
|
5
|
-
hash[key] = Array.new
|
6
|
-
end
|
7
|
-
end
|
8
|
-
|
9
|
-
# Defines the callback with the key in this container.
|
10
|
-
def define(key, callback_proc=nil, &callback_block)
|
11
|
-
callback = extract_callback(callback_block, callback_proc) do
|
12
|
-
raise "You must define the callback that accepts the call method."
|
13
|
-
end
|
14
|
-
@callback_registry[key] << callback
|
15
|
-
callback
|
16
|
-
end
|
17
|
-
|
18
|
-
# Undefines the callback with the key in this container.
|
19
|
-
def undefine(key, callback_proc)
|
20
|
-
callback = extract_callback(callback_proc) do
|
21
|
-
raise "You may only undefine callbacks that use the call method."
|
22
|
-
end
|
23
|
-
@callback_registry[key].delete callback
|
24
|
-
callback
|
25
|
-
end
|
26
|
-
|
27
|
-
# Notifies the callbacks for the key. Arguments may be passed.
|
28
|
-
# An error handler may be passed in as a block. If there is an error, the block is called with
|
29
|
-
# error object as an argument.
|
30
|
-
# An array of the return values of the callbacks is returned.
|
31
|
-
def notify(key, *args, &error_handler)
|
32
|
-
@callback_registry[key].collect do |callback|
|
33
|
-
begin
|
34
|
-
callback.call(*args)
|
35
|
-
rescue Exception => e
|
36
|
-
yield(e) if error_handler
|
37
|
-
end
|
38
|
-
end
|
39
|
-
end
|
40
|
-
|
41
|
-
# Clears all of the callbacks in this container.
|
42
|
-
def clear
|
43
|
-
@callback_registry.clear
|
44
|
-
end
|
45
|
-
|
46
|
-
protected
|
47
|
-
def extract_callback(first_choice_callback, second_choice_callback = nil)
|
48
|
-
callback = nil
|
49
|
-
if first_choice_callback
|
50
|
-
callback = first_choice_callback
|
51
|
-
elsif second_choice_callback
|
52
|
-
callback = second_choice_callback
|
53
|
-
end
|
54
|
-
unless callback.respond_to? :call
|
55
|
-
yield
|
56
|
-
end
|
57
|
-
return callback
|
58
|
-
end
|
59
|
-
end
|
60
|
-
end
|
@@ -1,24 +0,0 @@
|
|
1
|
-
module Callback
|
2
|
-
module ModuleMethods
|
3
|
-
# For each event_name submitted, defines a callback event with this name.
|
4
|
-
# Client code can then register as a callback listener using object.event_name.
|
5
|
-
def callback_events(*event_names)
|
6
|
-
event_names.each do |event_name|
|
7
|
-
define_callback_event(event_name)
|
8
|
-
end
|
9
|
-
end
|
10
|
-
|
11
|
-
private
|
12
|
-
def define_callback_event(event_name)
|
13
|
-
module_eval <<-EOS
|
14
|
-
def #{event_name}(&block)
|
15
|
-
register_callback(:#{event_name}, &block)
|
16
|
-
end
|
17
|
-
EOS
|
18
|
-
end
|
19
|
-
end
|
20
|
-
end
|
21
|
-
|
22
|
-
class Module
|
23
|
-
include Callback::ModuleMethods
|
24
|
-
end
|
@@ -1,37 +0,0 @@
|
|
1
|
-
module Callback
|
2
|
-
module InstanceMethods
|
3
|
-
# Registers a callback for the event on the object. The callback can either be a block or a proc.
|
4
|
-
# When the callbacks are notified, the return value of the proc is passed to the caller.
|
5
|
-
def register_callback(event, callback_proc=nil, &callback_block)
|
6
|
-
callbacks.define(event, callback_proc, &callback_block)
|
7
|
-
end
|
8
|
-
|
9
|
-
# Removes the callback from the event. The callback proc must be the same
|
10
|
-
# object as the one that was passed to register_callback.
|
11
|
-
def unregister_callback(event, callback_proc)
|
12
|
-
callbacks.undefine(event, callback_proc)
|
13
|
-
end
|
14
|
-
|
15
|
-
protected
|
16
|
-
# Notifies the callbacks registered with the event on the object. Arguments can be passed to the callbacks.
|
17
|
-
# An error handler may be passed in as a block. If there is an error, the block is called with
|
18
|
-
# error object as an argument.
|
19
|
-
# An array of the return values of the callbacks is returned.
|
20
|
-
def notify_callbacks(event, *args, &error_handler)
|
21
|
-
callbacks.notify(event, *args, &error_handler)
|
22
|
-
end
|
23
|
-
|
24
|
-
def notify_class_callbacks(event, *args, &error_handler)
|
25
|
-
self.class.send(:notify_callbacks, event, *args, &error_handler)
|
26
|
-
end
|
27
|
-
|
28
|
-
# The CallbackContainer for this object.
|
29
|
-
def callbacks
|
30
|
-
@callbacks ||= CallbackContainer.new
|
31
|
-
end
|
32
|
-
end
|
33
|
-
end
|
34
|
-
|
35
|
-
class Object
|
36
|
-
include Callback::InstanceMethods
|
37
|
-
end
|
data/test/lib/spec/deprecated.rb
DELETED
@@ -1,59 +0,0 @@
|
|
1
|
-
require 'spec/deprecated'
|
2
|
-
require 'spec/matchers'
|
3
|
-
require 'spec/expectations/sugar'
|
4
|
-
require 'spec/expectations/errors'
|
5
|
-
require 'spec/expectations/extensions'
|
6
|
-
require 'spec/expectations/should'
|
7
|
-
require 'spec/expectations/handler'
|
8
|
-
|
9
|
-
module Spec
|
10
|
-
|
11
|
-
# Spec::Expectations lets you set expectations on your objects.
|
12
|
-
#
|
13
|
-
# result.should == 37
|
14
|
-
# team.should have(11).players_on_the_field
|
15
|
-
#
|
16
|
-
# == How Expectations work.
|
17
|
-
#
|
18
|
-
# Spec::Expectations adds two methods to Object:
|
19
|
-
#
|
20
|
-
# should(matcher=nil)
|
21
|
-
# should_not(matcher=nil)
|
22
|
-
#
|
23
|
-
# Both methods take an optional Expression Matcher (See Spec::Matchers).
|
24
|
-
#
|
25
|
-
# When +should+ receives an Expression Matcher, it calls <tt>matches?(self)</tt>. If
|
26
|
-
# it returns +true+, the spec passes and execution continues. If it returns
|
27
|
-
# +false+, then the spec fails with the message returned by <tt>matcher.failure_message</tt>.
|
28
|
-
#
|
29
|
-
# Similarly, when +should_not+ receives a matcher, it calls <tt>matches?(self)</tt>. If
|
30
|
-
# it returns +false+, the spec passes and execution continues. If it returns
|
31
|
-
# +true+, then the spec fails with the message returned by <tt>matcher.negative_failure_message</tt>.
|
32
|
-
#
|
33
|
-
# RSpec ships with a standard set of useful matchers, and writing your own
|
34
|
-
# matchers is quite simple. See Spec::Matchers for details.
|
35
|
-
module Expectations
|
36
|
-
class << self
|
37
|
-
attr_accessor :differ
|
38
|
-
|
39
|
-
# raises a Spec::Expectations::ExpectationNotMetError with message
|
40
|
-
#
|
41
|
-
# When a differ has been assigned and fail_with is passed
|
42
|
-
# <code>expected</code> and <code>target</code>, passes them
|
43
|
-
# to the differ to append a diff message to the failure message.
|
44
|
-
def fail_with(message, expected=nil, target=nil) # :nodoc:
|
45
|
-
if Array === message && message.length == 3
|
46
|
-
message, expected, target = message[0], message[1], message[2]
|
47
|
-
end
|
48
|
-
unless (differ.nil? || expected.nil? || target.nil?)
|
49
|
-
if expected.is_a?(String)
|
50
|
-
message << "\nDiff:" << self.differ.diff_as_string(target.to_s, expected)
|
51
|
-
elsif !target.is_a?(Proc)
|
52
|
-
message << "\nDiff:" << self.differ.diff_as_object(target, expected)
|
53
|
-
end
|
54
|
-
end
|
55
|
-
Kernel::raise(Spec::Expectations::ExpectationNotMetError.new(message))
|
56
|
-
end
|
57
|
-
end
|
58
|
-
end
|
59
|
-
end
|