Sha256: d5199ffa9624e18bdbdb6a28772d9d639f2586cdfbc598bf93805f9418e19322

Contents?: true

Size: 788 Bytes

Versions: 120

Compression:

Stored size: 788 Bytes

Contents

FactoryGirl.define do
  factory :mdm_route, :aliases => [:route], :class => Mdm::Route do
    #
    # Associations
    #
    association :session, :factory => :mdm_session

    netmask { generate :mdm_route_netmask }
    subnet { generate :mdm_route_subnet }
  end

  sequence :mdm_route_netmask do |n|
    bits = 32
    bitmask = n % bits

    [ (~((2 ** (bits - bitmask)) - 1)) & 0xffffffff ].pack('N').unpack('CCCC').join('.')

    bits = 32
    shift = n % bits
    mask_range = 2 ** bits
    full_mask = mask_range - 1

    integer_netmask = (full_mask << shift)
    formatted_netmask = [integer_netmask].pack('N').unpack('CCCC').join('.')

    formatted_netmask
  end

  sequence :mdm_route_subnet do |n|
    class_c_network = n % 255

    "192.168.#{class_c_network}.0"
  end


end

Version data entries

120 entries across 120 versions & 1 rubygems

Version Path
metasploit_data_models-1.2.8 spec/factories/mdm/routes.rb
metasploit_data_models-1.2.7 spec/factories/mdm/routes.rb
metasploit_data_models-1.2.6 spec/factories/mdm/routes.rb
metasploit_data_models-1.2.5 spec/factories/mdm/routes.rb
metasploit_data_models-1.2.4 spec/factories/mdm/routes.rb
metasploit_data_models-1.2.3 spec/factories/mdm/routes.rb
metasploit_data_models-1.2.2 spec/factories/mdm/routes.rb
metasploit_data_models-0.24.5 spec/factories/mdm/routes.rb
metasploit_data_models-0.24.4 spec/factories/mdm/routes.rb
metasploit_data_models-1.2.1 spec/factories/mdm/routes.rb
metasploit_data_models-1.2.0 spec/factories/mdm/routes.rb
metasploit_data_models-1.1.0 spec/factories/mdm/routes.rb
metasploit_data_models-1.0.1 spec/factories/mdm/routes.rb
metasploit_data_models-1.0.0 spec/factories/mdm/routes.rb
metasploit_data_models-0.24.3 spec/factories/mdm/routes.rb
metasploit_data_models-0.24.2 spec/factories/mdm/routes.rb
metasploit_data_models-0.24.1.pre.rspec.pre.3.pre.1 spec/factories/mdm/routes.rb
metasploit_data_models-0.24.1 spec/factories/mdm/routes.rb
metasploit_data_models-1.0.0.pre.rails.pre.4.0b spec/factories/mdm/routes.rb
metasploit_data_models-1.0.0.pre.rails.pre.4.0a spec/factories/mdm/routes.rb