diff --git a/spec/services/flow_agent_spec.rb b/spec/services/flow_agent_spec.rb new file mode 100644 index 0000000..5396756 --- /dev/null +++ b/spec/services/flow_agent_spec.rb @@ -0,0 +1,33 @@ +# frozen_string_literal: true + +require 'spec_helper' +set :os, family: 'redhat', release: '9', arch: 'x86_64' + +pkg = 'redborder-flow-agent-ndpi-static' +service_name = 'redborder-flow-agent' +config_dir = '/etc/redborder-flow-agent' + +describe "Checking packages for #{pkg}..." do + describe package(pkg) do + before do + skip("#{pkg} is not installed, skipping...") unless package(pkg).installed? + end + + it 'is expected to be installed' do + expect(package(pkg).installed?).to be true + end + end + + describe package('rb-exporter') do + it { should_not be_installed } + end +end + +# One systemd instance per configured interface: /etc/redborder-flow-agent/.yaml +ifaces = command("ls #{config_dir}/*.yaml 2>/dev/null").stdout.split.map { |f| File.basename(f, '.yaml') } +ifaces.each do |iface| + describe service("#{service_name}@#{iface}") do + it { should be_enabled } + it { should be_running } + end +end diff --git a/spec/users/rb_exporter_spec.rb b/spec/users/rb_exporter_spec.rb deleted file mode 100644 index 0d61e16..0000000 --- a/spec/users/rb_exporter_spec.rb +++ /dev/null @@ -1,14 +0,0 @@ -# frozen_string_literal: true - -require 'spec_helper' -set :os, family: 'redhat', release: '9', arch: 'x86_64' - -pkg = usr = 'rb-exporter' -describe user(usr) do - before(:all) do - # Depends on the existence of flow sensors - skip("Package #{pkg} is not installed") unless package(pkg).installed? - end - it { should exist } - it { should have_login_shell('/sbin/nologin') } -end