+1

On Fri, Jan 15, 2010 at 10:20 PM, Markus Roberts <[email protected]> wrote:

> In the alias --> host_aliases conversion, I overlooked parsed file
> provider for sshkeys.
>
> Now with tests.
>
> Signed-off-by: Markus Roberts <[email protected]>
> ---
>  lib/puppet/provider/sshkey/parsed.rb |   10 +++++-----
>  spec/unit/provider/sshkey/parsed.rb  |   27 +++++++++++++++++++++++----
>  2 files changed, 28 insertions(+), 9 deletions(-)
>
> diff --git a/lib/puppet/provider/sshkey/parsed.rb
> b/lib/puppet/provider/sshkey/parsed.rb
> index 4673b57..e84e3e5 100755
> --- a/lib/puppet/provider/sshkey/parsed.rb
> +++ b/lib/puppet/provider/sshkey/parsed.rb
> @@ -21,14 +21,14 @@ Puppet::Type.type(:sshkey).provide(:parsed,
>         :post_parse => proc { |hash|
>             names = hash[:name].split(",", -1)
>             hash[:name]  = names.shift
> -            hash[:alias] = names
> +            hash[:host_aliases] = names
>         },
>         :pre_gen => proc { |hash|
> -            if hash[:alias]
> -                names = [hash[:name], hash[:alias]].flatten
> +            if hash[:host_aliases]
> +                names = [hash[:name], hash[:host_aliases]].flatten
>
> -                hash[:name] = [hash[:name],
> hash[:alias]].flatten.join(",")
> -                hash.delete(:alias)
> +                hash[:name] = [hash[:name],
> hash[:host_aliases]].flatten.join(",")
> +                hash.delete(:host_aliases)
>             end
>         }
>  end
> diff --git a/spec/unit/provider/sshkey/parsed.rb
> b/spec/unit/provider/sshkey/parsed.rb
> index c97656f..fc6c85d 100755
> --- a/spec/unit/provider/sshkey/parsed.rb
> +++ b/spec/unit/provider/sshkey/parsed.rb
> @@ -8,12 +8,31 @@ describe provider_class do
>     before do
>         @sshkey_class = Puppet::Type.type(:sshkey)
>         @provider_class = @sshkey_class.provider(:parsed)
> +        @key =
> 'AAAAB3NzaC1yc2EAAAABIwAAAQEAzwHhxXvIrtfIwrudFqc8yQcIfMudrgpnuh1F3AV6d2BrLgu/yQE7W5UyJMUjfj427sQudRwKW45O0Jsnr33F4mUw+GIMlAAmp9g24/OcrTiB8ZUKIjoPy/cO4coxGi8/NECtRzpD/ZUPFh6OEpyOwJPMb7/EC2Az6Otw4StHdXUYw22zHazBcPFnv6zCgPx1hA7QlQDWTu4YcL0WmTYQCtMUb3FUqrcFtzGDD0ytosgwSd+JyN5vj5UwIABjnNOHPZ62EY1OFixnfqX/+dUwrFSs5tPgBF/KkC6R7tmbUfnBON6RrGEmu+ajOTOLy23qUZB4CQ53V7nyAWhzqSK+hw=='
>     end
>
> -    it "should not drop an empty alias" do
> -        line = 'test,alias, ssh-rsa
> AAAAB3NzaC1yc2EAAAABIwAAAQEAzwHhxXvIrtfIwrudFqc8yQcIfMudrgpnuh1F3AV6d2BrLgu/yQE7W5UyJMUjfj427sQudRwKW45O0Jsnr33F4mUw+GIMlAAmp9g24/OcrTiB8ZUKIjoPy/cO4coxGi8/NECtRzpD/ZUPFh6OEpyOwJPMb7/EC2Az6Otw4StHdXUYw22zHazBcPFnv6zCgPx1hA7QlQDWTu4YcL0WmTYQCtMUb3FUqrcFtzGDD0ytosgwSd+JyN5vj5UwIABjnNOHPZ62EY1OFixnfqX/+dUwrFSs5tPgBF/KkC6R7tmbUfnBON6RrGEmu+ajOTOLy23qUZB4CQ53V7nyAWhzqSK+hw=='
> -        parsed = @provider_class.parse_line(line)
> -        parsed[:alias].should == ["alias",""]
> +    it "should parse the name from the first field" do
> +        @provider_class.parse_line('test ssh-rsa '+...@key)[:name].should ==
> "test"
> +    end
> +
> +    it "should parse the first component of the first field as the name"
> do
> +        @provider_class.parse_line('test,alias ssh-rsa
> '+...@key)[:name].should == "test"
> +    end
> +
> +    it "should parse host_aliases from the remaining components of the
> first field" do
> +        @provider_class.parse_line('test,alias ssh-rsa
> '+...@key)[:host_aliases].should == ["alias"]
> +    end
> +
> +    it "should parse multiple host_aliases" do
> +        @provider_class.parse_line('test,alias1,alias2,alias3 ssh-rsa
> '+...@key)[:host_aliases].should == ["alias1","alias2","alias3"]
> +    end
> +
> +    it "should not drop an empty host_alias" do
> +        @provider_class.parse_line('test,alias, ssh-rsa
> '+...@key)[:host_aliases].should == ["alias",""]
> +    end
> +
> +    it "should recognise when there are no host aliases" do
> +        @provider_class.parse_line('test ssh-rsa
> '+...@key)[:host_aliases].should == []
>     end
>
>  end
> --
> 1.6.4
>
>
> --
> You received this message because you are subscribed to the Google Groups
> "Puppet Developers" group.
> To post to this group, send email to [email protected].
> To unsubscribe from this group, send email to
> [email protected]<puppet-dev%[email protected]>
> .
> For more options, visit this group at
> http://groups.google.com/group/puppet-dev?hl=en.
>
>
>
>
--
You received this message because you are subscribed to the Google Groups "Puppet Developers" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to [email protected].
For more options, visit this group at http://groups.google.com/group/puppet-dev?hl=en.

Reply via email to