public function test_Should_GetAllMailSettings()
{
$config = <<<EOF
MAIL_DRIVER=smtp
[email protected]
MAIL_FROM_NAME=from_name
MAIL_HOST=localhost
MAIL_PORT=587
MAIL_ENCRYPTION=tls
[email protected]
MAIL_PASSWORD=password
MAIL_SENDMAIL=/usr/sbin/sendmail -bs
EOF;
$dotenv = vfsStream::newFile('.env')->at($this->rootDir)->setContent($config);
$dotenvReader = new DotenvReader(new LaravelFilesystem($this->app['files']), vfsStream::url('rootDir/.env'));
$dotenvWriter = new DotenvWriter(new LaravelFilesystem($this->app['files']), vfsStream::url('rootDir/.env'));
$configMailSettingRepository = new ConfigMailSetting($dotenvReader, $dotenvWriter);
$mailSettings = $configMailSettingRepository->all();
$this->assertEquals('smtp', $mailSettings->getDriver());
$this->assertEquals('*****@*****.**', $mailSettings->getFrom()['address']);
$this->assertEquals('from_name', $mailSettings->getFrom()['name']);
$this->assertEquals('localhost', $mailSettings->getSmtpHost());
$this->assertEquals(587, $mailSettings->getSmtpPort());
$this->assertEquals('tls', $mailSettings->getSmtpEncryption());
$this->assertEquals('*****@*****.**', $mailSettings->getSmtpUsername());
$this->assertEquals('password', $mailSettings->getSmtpPassword());
$this->assertEquals('/usr/sbin/sendmail -bs', $mailSettings->getSendmailPath());
}