summaryrefslogtreecommitdiffstats
path: root/src/tests/cases
diff options
context:
space:
mode:
authorSimone Robutti <simone.robutti@protonmail.com>2020-01-16 20:12:25 +0100
committerAram Drevekenin <aram@poor.dev>2020-01-16 20:12:25 +0100
commitceaf8b8167b7ae4eb490e50d6771094d4bacb94b (patch)
treeac576abf96cdd89aa56799741cd8f9812ec0d0ee /src/tests/cases
parent6cdce9701f80949fa72fd42863c3891f83620322 (diff)
feat(ui): select windows to display from CLI (#107)
* added first version (no tests) * fixed layout * added support for 2 windows * comments * breathing windows * added tests * format * fixed rebase * review * added more tests * simplified table creation * fix(table): do not overflow on max size Co-authored-by: Aram Drevekenin <aram@poor.dev>
Diffstat (limited to 'src/tests/cases')
-rw-r--r--src/tests/cases/raw_mode.rs28
-rw-r--r--src/tests/cases/snapshots/ui__basic_only_addresses.snap55
-rw-r--r--src/tests/cases/snapshots/ui__basic_only_connections.snap55
-rw-r--r--src/tests/cases/snapshots/ui__basic_only_processes.snap55
-rw-r--r--src/tests/cases/snapshots/ui__basic_startup.snap4
-rw-r--r--src/tests/cases/snapshots/ui__bi_directional_traffic-2.snap4
-rw-r--r--src/tests/cases/snapshots/ui__bi_directional_traffic.snap4
-rw-r--r--src/tests/cases/snapshots/ui__layout_full_width_under_30_height-2.snap8
-rw-r--r--src/tests/cases/snapshots/ui__layout_full_width_under_30_height.snap2
-rw-r--r--src/tests/cases/snapshots/ui__layout_under_120_width_full_height-2.snap16
-rw-r--r--src/tests/cases/snapshots/ui__layout_under_120_width_full_height.snap4
-rw-r--r--src/tests/cases/snapshots/ui__layout_under_120_width_under_30_height-2.snap8
-rw-r--r--src/tests/cases/snapshots/ui__layout_under_120_width_under_30_height.snap2
-rw-r--r--src/tests/cases/snapshots/ui__layout_under_150_width_full_height-2.snap8
-rw-r--r--src/tests/cases/snapshots/ui__layout_under_150_width_full_height.snap2
-rw-r--r--src/tests/cases/snapshots/ui__multiple_connections_from_remote_address-2.snap6
-rw-r--r--src/tests/cases/snapshots/ui__multiple_connections_from_remote_address.snap4
-rw-r--r--src/tests/cases/snapshots/ui__multiple_packets_of_traffic_from_different_connections-2.snap6
-rw-r--r--src/tests/cases/snapshots/ui__multiple_packets_of_traffic_from_different_connections.snap4
-rw-r--r--src/tests/cases/snapshots/ui__multiple_packets_of_traffic_from_single_connection-2.snap4
-rw-r--r--src/tests/cases/snapshots/ui__multiple_packets_of_traffic_from_single_connection.snap4
-rw-r--r--src/tests/cases/snapshots/ui__multiple_processes_with_multiple_connections-2.snap16
-rw-r--r--src/tests/cases/snapshots/ui__multiple_processes_with_multiple_connections.snap4
-rw-r--r--src/tests/cases/snapshots/ui__no_resolve_mode-2.snap8
-rw-r--r--src/tests/cases/snapshots/ui__no_resolve_mode.snap8
-rw-r--r--src/tests/cases/snapshots/ui__one_packet_of_traffic-2.snap4
-rw-r--r--src/tests/cases/snapshots/ui__one_packet_of_traffic.snap4
-rw-r--r--src/tests/cases/snapshots/ui__one_process_with_multiple_connections-2.snap6
-rw-r--r--src/tests/cases/snapshots/ui__one_process_with_multiple_connections.snap4
-rw-r--r--src/tests/cases/snapshots/ui__pause_by_space.snap4
-rw-r--r--src/tests/cases/snapshots/ui__sustained_traffic_from_multiple_processes-2.snap8
-rw-r--r--src/tests/cases/snapshots/ui__sustained_traffic_from_multiple_processes.snap8
-rw-r--r--src/tests/cases/snapshots/ui__sustained_traffic_from_multiple_processes_bi_directional-2.snap8
-rw-r--r--src/tests/cases/snapshots/ui__sustained_traffic_from_multiple_processes_bi_directional.snap8
-rw-r--r--src/tests/cases/snapshots/ui__sustained_traffic_from_one_process-2.snap4
-rw-r--r--src/tests/cases/snapshots/ui__sustained_traffic_from_one_process.snap4
-rw-r--r--src/tests/cases/snapshots/ui__traffic_with_host_names-2.snap8
-rw-r--r--src/tests/cases/snapshots/ui__traffic_with_host_names.snap8
-rw-r--r--src/tests/cases/snapshots/ui__traffic_with_winch_event-3.snap4
-rw-r--r--src/tests/cases/snapshots/ui__traffic_with_winch_event.snap4
-rw-r--r--src/tests/cases/snapshots/ui__two_packets_only_addresses-2.snap55
-rw-r--r--src/tests/cases/snapshots/ui__two_packets_only_addresses.snap55
-rw-r--r--src/tests/cases/snapshots/ui__two_packets_only_connections-2.snap55
-rw-r--r--src/tests/cases/snapshots/ui__two_packets_only_connections.snap55
-rw-r--r--src/tests/cases/snapshots/ui__two_packets_only_processes-2.snap55
-rw-r--r--src/tests/cases/snapshots/ui__two_packets_only_processes.snap55
-rw-r--r--src/tests/cases/snapshots/ui__two_windows_split_horizontally.snap55
-rw-r--r--src/tests/cases/snapshots/ui__two_windows_split_vertically.snap55
-rw-r--r--src/tests/cases/test_utils.rs51
-rw-r--r--src/tests/cases/ui.rs239
50 files changed, 961 insertions, 174 deletions
diff --git a/src/tests/cases/raw_mode.rs b/src/tests/cases/raw_mode.rs
index 03c3684..14fae65 100644
--- a/src/tests/cases/raw_mode.rs
+++ b/src/tests/cases/raw_mode.rs
@@ -10,31 +10,12 @@ use packet_builder::payload::PayloadData;
use packet_builder::*;
use pnet_bandwhich_fork::datalink::DataLinkReceiver;
use pnet_bandwhich_fork::packet::Packet;
-use pnet_base::MacAddr;
use crate::tests::cases::test_utils::{
- opts_raw, os_input_output_dns, os_input_output_stdout, test_backend_factory,
+ build_tcp_packet, opts_raw, os_input_output_dns, os_input_output_stdout, test_backend_factory,
};
-use crate::{start, Opt};
-
-fn build_tcp_packet(
- source_ip: &str,
- destination_ip: &str,
- source_port: u16,
- destination_port: u16,
- payload: &'static [u8],
-) -> Vec<u8> {
- let mut pkt_buf = [0u8; 1500];
- let pkt = packet_builder!(
- pkt_buf,
- ether({set_destination => MacAddr(0,0,0,0,0,0), set_source => MacAddr(0,0,0,0,0,0)}) /
- ipv4({set_source => ipv4addr!(source_ip), set_destination => ipv4addr!(destination_ip) }) /
- tcp({set_source => source_port, set_destination => destination_port }) /
- payload(payload)
- );
- pkt.packet().to_vec()
-}
+use crate::{start, Opt, RenderOpts};
fn build_ip_tcp_packet(
source_ip: &str,
@@ -595,6 +576,11 @@ fn no_resolve_mode() {
interface: Some(String::from("interface_name")),
raw: true,
no_resolve: true,
+ render_opts: RenderOpts {
+ addresses: false,
+ connections: false,
+ processes: false,
+ },
};
start(backend, os_input, opts);
let stdout = Arc::try_unwrap(stdout).unwrap().into_inner().unwrap();
diff --git a/src/tests/cases/snapshots/ui__basic_only_addresses.snap b/src/tests/cases/snapshots/ui__basic_only_addresses.snap
new file mode 100644
index 0000000..c3c5e53
--- /dev/null
+++ b/src/tests/cases/snapshots/ui__basic_only_addresses.snap
@@ -0,0 +1,55 @@
+---
+source: src/tests/cases/ui.rs
+expression: "&terminal_draw_events_mirror[0]"
+---
+ Total Rate Up / Down: 0Bps / 0Bps
+┌Utilization by remote address───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐
+│Remote Address Connection Count Rate Up / Down │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+└────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘
+ Press <SPACE> to pause.
+
diff --git a/src/tests/cases/snapshots/ui__basic_only_connections.snap b/src/tests/cases/snapshots/ui__basic_only_connections.snap
new file mode 100644
index 0000000..27f8036
--- /dev/null
+++ b/src/tests/cases/snapshots/ui__basic_only_connections.snap
@@ -0,0 +1,55 @@
+---
+source: src/tests/cases/ui.rs
+expression: "&terminal_draw_events_mirror[0]"
+---
+ Total Rate Up / Down: 0Bps / 0Bps
+┌Utilization by connection───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐
+│Connection Process Rate Up / Down │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+└────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘
+ Press <SPACE> to pause.
+
diff --git a/src/tests/cases/snapshots/ui__basic_only_processes.snap b/src/tests/cases/snapshots/ui__basic_only_processes.snap
new file mode 100644
index 0000000..617b1f6
--- /dev/null
+++ b/src/tests/cases/snapshots/ui__basic_only_processes.snap
@@ -0,0 +1,55 @@
+---
+source: src/tests/cases/ui.rs
+expression: "&terminal_draw_events_mirror[0]"
+---
+ Total Rate Up / Down: 0Bps / 0Bps
+┌Utilization by process name─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐
+│Process Connection count Rate Up / Down │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│ │
+│