```ruby
require_relative '../lib/abcing/scanner.rb'

describe ABCing::Scanner do
  it 'scans' do
    params = { app_directories: [], test_directories: [] }
    scanner = ABCing::Scanner.new(params)
  end

  context 'Raises an error' do
    it 'when supplied with nil params' do
      expect { ABCing::Scanner.new(nil) }.to raise_error()
    end
  end
end
```

Test for missing params to scanner
user
```ruby
require_relative '../lib/abcing/scanner.rb'

describe ABCing::Scanner do
  let(:empty_params) do
    { app_directories: [], test_directories: [] }
  end

  it 'scans' do
    scanner = ABCing::Scanner.new(empty_params)
  end

  context 'Raises an error' do
    it 'when supplied with nil params' do
      expect { ABCing::Scanner.new(nil) }.to raise_error()
    end

    it 'when supplied incomplete data' do
      empty_params.delete(:app_directories)
      expect { ABCing::Scanner.new(empty_params) }.to raise_error()

      empty_params.delete(:test_directories)
      expect { ABCing::Scanner.new(empty_params) }.to raise_error()
    end
  end
end
```
assistant