mirror of
https://github.com/bettercap/bettercap
synced 2025-07-30 03:29:57 -07:00
Merge pull request #253 from picatz/test-network-net
Add two more tests for network net
This commit is contained in:
commit
6b297d7e1f
1 changed files with 58 additions and 0 deletions
|
@ -60,3 +60,61 @@ func TestBuildEndpointFromInterface(t *testing.T) {
|
||||||
t.Error(err)
|
t.Error(err)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func TestFindInterfaceByName(t *testing.T) {
|
||||||
|
ifaces, err := net.Interfaces()
|
||||||
|
if err != nil {
|
||||||
|
t.Error(err)
|
||||||
|
}
|
||||||
|
if len(ifaces) <= 0 {
|
||||||
|
t.Error("Unable to find any network interfaces to run test with.")
|
||||||
|
}
|
||||||
|
var exampleIface net.Interface
|
||||||
|
// emulate libpcap's pcap_lookupdev function to find
|
||||||
|
// default interface to test with ( maybe could use loopback ? )
|
||||||
|
for _, iface := range ifaces {
|
||||||
|
if iface.HardwareAddr != nil {
|
||||||
|
exampleIface = iface
|
||||||
|
break
|
||||||
|
}
|
||||||
|
}
|
||||||
|
foundEndpoint, err := findInterfaceByName(exampleIface.Name, ifaces)
|
||||||
|
if err != nil {
|
||||||
|
t.Error("unable to find a given interface by name to build endpoint", err)
|
||||||
|
}
|
||||||
|
if foundEndpoint.Name() != exampleIface.Name {
|
||||||
|
t.Error("unable to find a given interface by name to build endpoint")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func TestMatchByAddress(t *testing.T) {
|
||||||
|
ifaces, err := net.Interfaces()
|
||||||
|
if err != nil {
|
||||||
|
t.Error(err)
|
||||||
|
}
|
||||||
|
if len(ifaces) <= 0 {
|
||||||
|
t.Error("Unable to find any network interfaces to run test with.")
|
||||||
|
}
|
||||||
|
var exampleIface net.Interface
|
||||||
|
// emulate libpcap's pcap_lookupdev function to find
|
||||||
|
// default interface to test with ( maybe could use loopback ? )
|
||||||
|
for _, iface := range ifaces {
|
||||||
|
if iface.HardwareAddr != nil {
|
||||||
|
exampleIface = iface
|
||||||
|
break
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// check match by mac address
|
||||||
|
if !matchByAddress(exampleIface, exampleIface.HardwareAddr.String()) {
|
||||||
|
t.Error("unable to verify a match with a given interface and mac address")
|
||||||
|
}
|
||||||
|
addrs, err := exampleIface.Addrs()
|
||||||
|
if err != nil || len(addrs) <= 0 {
|
||||||
|
t.Error("Unable to find any ip addresses to run test with interface:", exampleIface.Name)
|
||||||
|
|
||||||
|
}
|
||||||
|
// check match by ip address
|
||||||
|
if !matchByAddress(exampleIface, addrs[0].String()) {
|
||||||
|
t.Error("unable to verify a match with a given interface and ip address")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue