PageRenderTime 46ms CodeModel.GetById 22ms RepoModel.GetById 1ms app.codeStats 0ms

/test/unit/vagrant/util/network_ip_test.rb

http://github.com/mitchellh/vagrant
Ruby | 37 lines | 29 code | 8 blank | 0 comment | 4 complexity | 2240813c00e7c08e3e9d7480b0ec8177 MD5 | raw file
Possible License(s): MIT
  1. require File.expand_path("../../../base", __FILE__)
  2. require "vagrant/util/network_ip"
  3. describe Vagrant::Util::NetworkIP do
  4. let(:klass) do
  5. Class.new do
  6. extend Vagrant::Util::NetworkIP
  7. end
  8. end
  9. describe "network address" do
  10. it "calculates it properly" do
  11. expect(klass.network_address("192.168.2.234", "255.255.255.0")).to eq("192.168.2.0")
  12. end
  13. it "calculates it properly with integer submask" do
  14. expect(klass.network_address("192.168.2.234", "24")).to eq("192.168.2.0")
  15. end
  16. it "calculates it properly with integer submask" do
  17. expect(klass.network_address("192.168.2.234", 24)).to eq("192.168.2.0")
  18. end
  19. it "calculates it properly for IPv6" do
  20. expect(klass.network_address("fde4:8dba:82e1::c4", "64")).to eq("fde4:8dba:82e1::")
  21. end
  22. it "calculates it properly for IPv6" do
  23. expect(klass.network_address("fde4:8dba:82e1::c4", 64)).to eq("fde4:8dba:82e1::")
  24. end
  25. it "calculates it properly for IPv6 for string mask" do
  26. expect(klass.network_address("fde4:8dba:82e1::c4", "ffff:ffff:ffff:ffff::")).to eq("fde4:8dba:82e1::")
  27. end
  28. end
  29. end