Sha256: 1448552b82e556ec0f8b37c4346150505eb3bf3a4afdb951097b7f1933709849

Contents?: true

Size: 583 Bytes

Versions: 3

Compression:

Stored size: 583 Bytes

Contents

# -*- coding: utf-8 -*-

class Password < String
  
  PASSWORD_LENGTH = 12

  # This simply creates a new password using `pwgen`.
  # Example: 
  #     new_password = Password.generate
  def self.generate
    return pwgen_password if pwgen_password.length == PASSWORD_LENGTH
    return Passgen::generate( pronounceable: true )
  end
  
  # Example:
  #    new_password = Password.new
  #    new_password.generate!
  def generate!
    replace self.class.generate
  end

  def self.pwgen_password
    Password.new( `pwgen #{PASSWORD_LENGTH} -N 1 -n -c -B`.to_s[0..-2] )
  end
  
end


Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
your_platform-1.0.1 app/models/password.rb
your_platform-1.0.0 app/models/password.rb
your_platform-0.0.2 app/models/password.rb