On Mon, Mar 15, 2010 at 7:32 PM, Mohammed Morsi <[email protected]> wrote:

> Looks good functionally and test wise, though the couple small items
> raised before still apply, eg
>
> On 03/15/2010 03:24 PM, Jason Guiditta wrote:
> > <snip>
> > diff --git a/src/app/services/registration_service.rb
> b/src/app/services/registration_service.rb
> > new file mode 100644
> > index 0000000..e8d2e65
> > --- /dev/null
> > +++ b/src/app/services/registration_service.rb
> > @@ -0,0 +1,29 @@
> > +class RegistrationService
> > +
> > +  def initialize(user)
> > +    @user = user
> > +  end
> > +
> > +  def save
> > +    return false unless valid?
> > +    begin
> > +    User.transaction do
> > +      @user.save!
> > +      PortalPool.transaction do
> > +        @portal_pool = PortalPool.create!({ :name =>  @user.login,
> :owner =>  @user})
> > +        Permission.transaction do
> > +          Permission.create!({:user =>  @user,
> > +                              :role =>  Role.find_by_name("Self-service
> Pool User"),
> > +                              :permission_object =>  @portal_pool})
> > +
> >
> Just think we need one transaction here.
>
> Ah, good catch, forgot about that, same for below.  I'll fix those in am
before I push this.

>
> <snip>
> > diff --git a/src/spec/models/registration_service_spec.rb
> b/src/spec/models/registration_service_spec.rb
> > new file mode 100644
> > index 0000000..aa25a1e
> > --- /dev/null
> > +++ b/src/spec/models/registration_service_spec.rb
> > @@ -0,0 +1,51 @@
> > +require 'spec_helper'
> > +
> > +describe RegistrationService do
> > +  fixtures :all
> > +  before(:each) do
> > +    @tuser = Factory :tuser
> > +  end
> > +
> > +  it "should initialize a new instance given valid attributes" do
> > +    RegistrationService.new(@tuser)
> > +  end
> > +
> > +  describe "#save" do
> > +
> > +    context "adding valid user with no errors" do
> > +      it "should create user, portal_pool and self-service permission"
> do
> > +        user = User.new({:login =>  'gooduser',
> > +                        :email =>  '[email protected]',
> > +                        :password =>  'password',
> > +                        :password_confirmation =>  'password'})
> > +        r = RegistrationService.new(user)
> > +        roles = Role.find(:all)
> > +        Rails::logger.info("Current Roles: ")
> > +        Rails::logger.info(roles.each {|role| role.name})
> > +     Rails::logger.info("ERRORS - Printing errors on user object:")
> > +     Rails::logger.info(
> > +          user.errors.each_full { |msg| "ERROR: #{msg}" }
> > +        )
> >
> This logging code should be removed, should it not?
>
>    -Mo
> _______________________________________________
> deltacloud-devel mailing list
> [email protected]
> https://fedorahosted.org/mailman/listinfo/deltacloud-devel
>
_______________________________________________
deltacloud-devel mailing list
[email protected]
https://fedorahosted.org/mailman/listinfo/deltacloud-devel

Reply via email to