学习札记——运用Rspec+factory_girl进行model测试-创新互联

前几日摸了一下model的测试,不得其要点,老是在写测试不知如何下手,后阅遍大小论坛,总结一下测试方法呢,于是便模仿敏捷开发一书中的关于登录一章,写了如下测试代码
model代码
require "digest/sha2"
class User < ActiveRecord::Base
    attr_accessible :name,:password,:password_confirmation
    validates :name,:presence =>true,:uniqueness => true

    validates :password,:confirmation =>true
    attr_accessor :password_confirmation
    attr_reader :password

    validate :password_must_be_present

    def password=(password)
        @password = password
        if password.present?
            generate_salt
            self.hashed_password = self.class.encrypt_password(password,salt)
        end
    end

    def User.authenticate(name,password)
        if user == find_by_name(name)
            if user.hashed_password == encrypt_password(password,user.salt)
                user
            end
        end
    end

    private
    def password_must_be_present
            errors.add(:password,"密码错误")unless hashed_password.present?
    end

    def User.encrypt_password(password,salt)
            Digest::SHA2.hexdigest(password + "wibble" + salt)
    end

    def generate_salt
        self.salt= self.object_id.to_s + rand.to_s
    end
end

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。

创新互联是一家专业提供东源企业网站建设,专注与网站设计、成都网站设计、html5、小程序制作等业务。10年已为东源众多企业、政府机构等服务。创新互联专业的建站公司优惠进行中。

分享题目:学习札记——运用Rspec+factory_girl进行model测试-创新互联
网页URL:https://www.cdcxhl.com/article20/ccidco.html

成都网站建设公司_创新互联,为您提供全网营销推广App设计服务器托管电子商务品牌网站设计App开发

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

成都网站建设公司