<feed xmlns='http://www.w3.org/2005/Atom'>
<title>puppet.git/spec/integration/parser, branch ticket/master/7841</title>
<subtitle>Puppet repo</subtitle>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/ricky/public_git/puppet.git/'/>
<entry>
<title>(#8663) Exclude git rev-parse HEAD spec test on Windows</title>
<updated>2011-08-04T23:41:11+00:00</updated>
<author>
<name>Josh Cooper</name>
<email>josh@puppetlabs.com</email>
</author>
<published>2011-08-04T23:41:11+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/ricky/public_git/puppet.git/commit/?id=7ca187509ce954e5b2707212a5615dbb9eb20378'/>
<id>7ca187509ce954e5b2707212a5615dbb9eb20378</id>
<content type='text'>
When running spec/integration/parser/compiler_spec.rb, the git command
passed to Puppet::Util.execute is an array containing a single string
["git rev-parse HEAD"]. On Unix, it calls Kernel.exec(*command), but on
Windows it calls Process.create(:command_line =&gt;command), which attempts
to execute the program called "git rev-parse HEAD" and fails:

CreateProcess() failed: The system cannot find the file specified.

This commit marks the test as fails_on_windows, and will be re-enabled
when #8410 is fixed.

Reviewed-by: Nick Lewis &lt;nick@puppetlabs.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When running spec/integration/parser/compiler_spec.rb, the git command
passed to Puppet::Util.execute is an array containing a single string
["git rev-parse HEAD"]. On Unix, it calls Kernel.exec(*command), but on
Windows it calls Process.create(:command_line =&gt;command), which attempts
to execute the program called "git rev-parse HEAD" and fails:

CreateProcess() failed: The system cannot find the file specified.

This commit marks the test as fails_on_windows, and will be re-enabled
when #8410 is fixed.

Reviewed-by: Nick Lewis &lt;nick@puppetlabs.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>(#8663) Disable spec tests for unsupported functionality on Windows</title>
<updated>2011-07-28T21:32:13+00:00</updated>
<author>
<name>Josh Cooper</name>
<email>josh@puppetlabs.com</email>
</author>
<published>2011-07-28T00:04:45+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/ricky/public_git/puppet.git/commit/?id=d9ce88d10707268fe41c8f3ad1166137fe8e202f'/>
<id>d9ce88d10707268fe41c8f3ad1166137fe8e202f</id>
<content type='text'>
The mount, shell, and ssh_authorized_key types are not supported on
Windows, so these spec tests have been disabled when running on
Windows.

One of the compiler spec tests fails on Windows because
Puppet::Util.execute attempts to execute a program named "git rev-parse
HEAD". This has different semantics than Unix, where the command is
splatted, Kernel.exec(*command). Since this truly is a Windows bug, I
removed the fails_on_windows tag and updated ticket #8410.

Reviewed-by: Jacob Helwig &lt;jacob@puppetlabs.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The mount, shell, and ssh_authorized_key types are not supported on
Windows, so these spec tests have been disabled when running on
Windows.

One of the compiler spec tests fails on Windows because
Puppet::Util.execute attempts to execute a program named "git rev-parse
HEAD". This has different semantics than Unix, where the command is
splatted, Kernel.exec(*command). Since this truly is a Windows bug, I
removed the fails_on_windows tag and updated ticket #8410.

Reviewed-by: Jacob Helwig &lt;jacob@puppetlabs.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>(#8663) Reenable spec tests on Windows that now pass</title>
<updated>2011-07-27T22:28:21+00:00</updated>
<author>
<name>Josh Cooper</name>
<email>josh@puppetlabs.com</email>
</author>
<published>2011-07-27T22:28:21+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/ricky/public_git/puppet.git/commit/?id=9e502ed121847fe4fcca90453c0520b53103d17d'/>
<id>9e502ed121847fe4fcca90453c0520b53103d17d</id>
<content type='text'>
The cacher was causing spec tests to fail due to Time.now not having
millisecond resolution on Windows. Now that usage of the cacher has
been removed from many places, these tests now pass.

Reviewed-by: Jacob Helwig &lt;jacob@puppetlabs.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The cacher was causing spec tests to fail due to Time.now not having
millisecond resolution on Windows. Now that usage of the cacher has
been removed from many places, these tests now pass.

Reviewed-by: Jacob Helwig &lt;jacob@puppetlabs.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Maint: Tagged spec tests that are known to fail on Windows</title>
<updated>2011-07-19T21:06:36+00:00</updated>
<author>
<name>Josh Cooper</name>
<email>josh@puppetlabs.com</email>
</author>
<published>2011-07-19T06:17:36+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/ricky/public_git/puppet.git/commit/?id=255c5b4663bd389d2c87a2d39ec350034421a6f0'/>
<id>255c5b4663bd389d2c87a2d39ec350034421a6f0</id>
<content type='text'>
Many spec tests fail on Windows because there are no default
providers implemented for Windows yet. Several others are
failing due to Puppet::Util::Cacher not working correctly,
so for now the tests that are known to fail are marked with
:fails_on_windows =&gt; true. To skip these tests, you can run:

  rspec --tag ~fails_on_windows spec

Reviewed-by: Jacob Helwig &lt;jacob@puppetlabs.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Many spec tests fail on Windows because there are no default
providers implemented for Windows yet. Several others are
failing due to Puppet::Util::Cacher not working correctly,
so for now the tests that are known to fail are marked with
:fails_on_windows =&gt; true. To skip these tests, you can run:

  rspec --tag ~fails_on_windows spec

Reviewed-by: Jacob Helwig &lt;jacob@puppetlabs.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Remove order dependency from functions integration spec</title>
<updated>2011-06-28T22:29:02+00:00</updated>
<author>
<name>Jacob Helwig</name>
<email>jacob@puppetlabs.com</email>
</author>
<published>2011-06-17T18:23:21+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/ricky/public_git/puppet.git/commit/?id=014d952883246f8919d4b1935d84b301c63a34d0'/>
<id>014d952883246f8919d4b1935d84b301c63a34d0</id>
<content type='text'>
The test in spec/integration/parser/functions_spec.rb would fail when
the spec tests were run in the order (among other orderings):

  spec/unit/parser/functions/tag_spec.rb
  spec/unit/parser/templatewrapper_spec.rb
  spec/integration/parser/functions_spec.rb

There are tests that would cause the "template" function to be loaded
into the root environment.
Puppet::Parser::Functions.function("template") would then detect its
presence and P::P::F.rmfunction("template") would fail since #function(...)
looks in more than just the current environment to see if a function
is defined, while #rmfunction(...) only looks in the current
environment to see if a function can be removed.

In the test ordering specified earlier, tag_spec.rb would load the
"template" function, and templatewrapper_spec.rb would create a
current environment that would mask the root environment for #rmfunction(...),
but not for #function(...)

Since #rmfunction(...) only looks in the current environment, we
should be using #functions.include?("template") since that matches the
check that #rmfunction(...) itself uses.

Paired-with: Nick Lewis &lt;nick@puppetlabs.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The test in spec/integration/parser/functions_spec.rb would fail when
the spec tests were run in the order (among other orderings):

  spec/unit/parser/functions/tag_spec.rb
  spec/unit/parser/templatewrapper_spec.rb
  spec/integration/parser/functions_spec.rb

There are tests that would cause the "template" function to be loaded
into the root environment.
Puppet::Parser::Functions.function("template") would then detect its
presence and P::P::F.rmfunction("template") would fail since #function(...)
looks in more than just the current environment to see if a function
is defined, while #rmfunction(...) only looks in the current
environment to see if a function can be removed.

In the test ordering specified earlier, tag_spec.rb would load the
"template" function, and templatewrapper_spec.rb would create a
current environment that would mask the root environment for #rmfunction(...),
but not for #function(...)

Since #rmfunction(...) only looks in the current environment, we
should be using #functions.include?("template") since that matches the
check that #rmfunction(...) itself uses.

Paired-with: Nick Lewis &lt;nick@puppetlabs.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>(#7502) Fixed parser spec for ruby 1.8.5</title>
<updated>2011-05-20T17:46:46+00:00</updated>
<author>
<name>Josh Cooper</name>
<email>josh@puppetlabs.com</email>
</author>
<published>2011-05-20T17:46:46+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/ricky/public_git/puppet.git/commit/?id=181098ba045ee6731540a9d9d9517cd3a5c272e8'/>
<id>181098ba045ee6731540a9d9d9517cd3a5c272e8</id>
<content type='text'>
The first method is not available on Enumerable in ruby 1.8.5, so when
it is mixed into ASTArray, you can't call first.

Reviewed-By: Matt Robinson &lt;matt@puppetlabs.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The first method is not available on Enumerable in ruby 1.8.5, so when
it is mixed into ASTArray, you can't call first.

Reviewed-By: Matt Robinson &lt;matt@puppetlabs.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>(#7523) Refactor the grammar to reduce duplication</title>
<updated>2011-05-17T21:54:43+00:00</updated>
<author>
<name>Nick Lewis</name>
<email>nick@puppetlabs.com</email>
</author>
<published>2011-05-12T22:40:08+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/ricky/public_git/puppet.git/commit/?id=3ac7aede7233e0554077f7abbf6e561960a05e4d'/>
<id>3ac7aede7233e0554077f7abbf6e561960a05e4d</id>
<content type='text'>
This commit unifies some paths in the grammar, which had previously been
duplicated to avoid shift/reduce conflicts. Merging these paths together and
separating only the conflicting structures leads to a cleaner grammar, with
fewer holes.

Several bugs are fixed as a result:
  (#3129) Nested class names beginning with numbers work correctly
  (#5268) Hyphens in class names work correctly
  (#5817) Hashes and arrays can now be passed to functions (hashes require parentheses)

Additionally, expressions are now legal in most places where they would make
sense, when previously only bare rvalues were allowed.

Paired-With: Markus Roberts
Reviewed-By: Matt Robinson
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This commit unifies some paths in the grammar, which had previously been
duplicated to avoid shift/reduce conflicts. Merging these paths together and
separating only the conflicting structures leads to a cleaner grammar, with
fewer holes.

Several bugs are fixed as a result:
  (#3129) Nested class names beginning with numbers work correctly
  (#5268) Hyphens in class names work correctly
  (#5817) Hashes and arrays can now be passed to functions (hashes require parentheses)

Additionally, expressions are now legal in most places where they would make
sense, when previously only bare rvalues were allowed.

Paired-With: Markus Roberts
Reviewed-By: Matt Robinson
</pre>
</div>
</content>
</entry>
<entry>
<title>maint: clean up the spec test headers in bulk.</title>
<updated>2011-04-13T07:36:38+00:00</updated>
<author>
<name>Daniel Pittman</name>
<email>daniel@puppetlabs.com</email>
</author>
<published>2011-04-13T07:35:11+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/ricky/public_git/puppet.git/commit/?id=db11770718c61f9ee3d5fcd703c5c0c7c05227ca'/>
<id>db11770718c61f9ee3d5fcd703c5c0c7c05227ca</id>
<content type='text'>
We now use a shebang of: #!/usr/bin/env rspec

This enables the direct execution of spec tests again, which was lost earlier
during the transition to more directly using the rspec2 runtime environment.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
We now use a shebang of: #!/usr/bin/env rspec

This enables the direct execution of spec tests again, which was lost earlier
during the transition to more directly using the rspec2 runtime environment.
</pre>
</div>
</content>
</entry>
<entry>
<title>maint: just require 'spec_helper', thanks rspec2</title>
<updated>2011-04-08T23:06:57+00:00</updated>
<author>
<name>Daniel Pittman</name>
<email>daniel@puppetlabs.com</email>
</author>
<published>2011-04-08T23:06:57+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/ricky/public_git/puppet.git/commit/?id=6ed00515e8614233160d74b1c32b75fab27ac722'/>
<id>6ed00515e8614233160d74b1c32b75fab27ac722</id>
<content type='text'>
rspec2 automatically sets a bunch of load-path stuff we were by hand, so we
can just stop. As a side-effect we can now avoid a whole pile of stupid things
to try and include the spec_helper.rb file...

...and then we can stop protecting spec_helper from evaluating twice, since we
now require it with a consistent name.  Yay.

Reviewed-By: Pieter van de Bruggen &lt;pieter@puppetlabs.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
rspec2 automatically sets a bunch of load-path stuff we were by hand, so we
can just stop. As a side-effect we can now avoid a whole pile of stupid things
to try and include the spec_helper.rb file...

...and then we can stop protecting spec_helper from evaluating twice, since we
now require it with a consistent name.  Yay.

Reviewed-By: Pieter van de Bruggen &lt;pieter@puppetlabs.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge branch '2.6.next' into next</title>
<updated>2011-03-07T22:02:17+00:00</updated>
<author>
<name>Matt Robinson</name>
<email>matt@puppetlabs.com</email>
</author>
<published>2011-03-07T04:42:39+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/ricky/public_git/puppet.git/commit/?id=28095d7435bcab15b76ddfa4435d61653f2f890d'/>
<id>28095d7435bcab15b76ddfa4435d61653f2f890d</id>
<content type='text'>
This was a particularly nasty merge, so rather than hold up merges into
next any longer, I'm going to push this merge with a few outstanding
problems.  The tests that were failing in the following areas have been
marked pending, and will be addressed separately, immediately following
this push.

TODO:
Verify that brice's rdoc change is still valid: tests to show that line
  numbers from class, define and node get into the ast
Fix mount parsed_spec spec/unit/provider/mount/parsed_spec.rb

* 2.6.next: (85 commits)
  (#5148) Fix failing spec due to timezone
  (#5148) Add support for PSON to facts
  (#6338) Remove inventory indirection, and move to facts indirection
  (#6445) Fix inline docs: puppet agent does not accept --mkusers
  Update CHANGELOG and version for 2.6.6rc1
  (#6541) Fix content with checksum truncation bug
  (#6418) Recursive files shouldn't be audited
  (#6541) maint: whitespace cleanup on the file integration spec
  (#6541) Fix content with checksum truncation bug
  (#5466) Write specs for output of puppet resource
  (#5466) Monkey patch Symbol so that you can sort them
  (#5466) Fixed puppet resource bug with trailing ,
  Update CHANGELOG for 2.6.5
  (#4922) Don't truncate remotely-sourced files on 404
  (#6338) Remove unused version control tags
  Maint: Align tabs in a code block in the Augeas type.
  (#6509) Inline docs: Fix erroneous code block in directoryservice provider for computer type
  Maint: Rewrite comments about symlinks to reflect best practice.
  (#6509) Inline docs: Fix broken lists in Launchd provider.
  (#6509) Inline docs: Fix broken code blocks in zpool type
  ...

Manually Resolved Conflicts:
  lib/puppet/application/inspect.rb
  lib/puppet/defaults.rb
  lib/puppet/file_bucket/dipper.rb
  lib/puppet/network/http/handler.rb
  lib/puppet/node/facts.rb
  lib/puppet/parser/parser.rb
  lib/puppet/parser/parser_support.rb
  lib/puppet/util/command_line/puppet
  lib/puppet/util/command_line/puppetd
  lib/puppet/util/command_line/puppetmasterd
  lib/puppet/util/monkey_patches.rb
  lib/puppet/util/rdoc/parser.rb
  spec/unit/application/agent_spec.rb
  spec/unit/file_bucket/file_spec.rb
  spec/unit/indirector/file_bucket_file/file_spec.rb
  spec/unit/network/http/handler_spec.rb
  spec/unit/parser/parser_spec.rb
  spec/unit/provider/mount/parsed_spec.rb
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This was a particularly nasty merge, so rather than hold up merges into
next any longer, I'm going to push this merge with a few outstanding
problems.  The tests that were failing in the following areas have been
marked pending, and will be addressed separately, immediately following
this push.

TODO:
Verify that brice's rdoc change is still valid: tests to show that line
  numbers from class, define and node get into the ast
Fix mount parsed_spec spec/unit/provider/mount/parsed_spec.rb

* 2.6.next: (85 commits)
  (#5148) Fix failing spec due to timezone
  (#5148) Add support for PSON to facts
  (#6338) Remove inventory indirection, and move to facts indirection
  (#6445) Fix inline docs: puppet agent does not accept --mkusers
  Update CHANGELOG and version for 2.6.6rc1
  (#6541) Fix content with checksum truncation bug
  (#6418) Recursive files shouldn't be audited
  (#6541) maint: whitespace cleanup on the file integration spec
  (#6541) Fix content with checksum truncation bug
  (#5466) Write specs for output of puppet resource
  (#5466) Monkey patch Symbol so that you can sort them
  (#5466) Fixed puppet resource bug with trailing ,
  Update CHANGELOG for 2.6.5
  (#4922) Don't truncate remotely-sourced files on 404
  (#6338) Remove unused version control tags
  Maint: Align tabs in a code block in the Augeas type.
  (#6509) Inline docs: Fix erroneous code block in directoryservice provider for computer type
  Maint: Rewrite comments about symlinks to reflect best practice.
  (#6509) Inline docs: Fix broken lists in Launchd provider.
  (#6509) Inline docs: Fix broken code blocks in zpool type
  ...

Manually Resolved Conflicts:
  lib/puppet/application/inspect.rb
  lib/puppet/defaults.rb
  lib/puppet/file_bucket/dipper.rb
  lib/puppet/network/http/handler.rb
  lib/puppet/node/facts.rb
  lib/puppet/parser/parser.rb
  lib/puppet/parser/parser_support.rb
  lib/puppet/util/command_line/puppet
  lib/puppet/util/command_line/puppetd
  lib/puppet/util/command_line/puppetmasterd
  lib/puppet/util/monkey_patches.rb
  lib/puppet/util/rdoc/parser.rb
  spec/unit/application/agent_spec.rb
  spec/unit/file_bucket/file_spec.rb
  spec/unit/indirector/file_bucket_file/file_spec.rb
  spec/unit/network/http/handler_spec.rb
  spec/unit/parser/parser_spec.rb
  spec/unit/provider/mount/parsed_spec.rb
</pre>
</div>
</content>
</entry>
</feed>
