学习札记——运用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测试-创新互联
新闻来源:http://bzwzjz.com/article/ccidco.html

其他资讯

Copyright © 2007-2020 广东宝晨空调科技有限公司 All Rights Reserved 粤ICP备2022107769号
友情链接: 网站建设公司 成都商城网站制作 网站制作 定制网站设计 成都网站制作 手机网站制作 成都网站建设推广 成都网站建设 成都网站建设公司 成都网站建设 响应式网站设计方案 网站设计 成都网站设计 手机网站制作 成都商城网站建设 成都网站设计公司 成都营销网站建设 网站建设 成都网站建设 泸州网站建设 成都网站制作 宜宾网站设计