Skip to content
Extraits de code Groupes Projets
Valider fe1c733a rédigé par Matthieu Napoli's avatar Matthieu Napoli
Parcourir les fichiers

#7674 Add a test

parent 12241c90
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
<?php
/**
* Piwik - free/libre analytics platform
*
* @link http://piwik.org
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*/
namespace Piwik\Tests\Integration\Tracker\Visit;
use Piwik\Option;
use Piwik\Tests\Framework\TestCase\IntegrationTestCase;
use Piwik\Tracker\Request;
use Piwik\Tracker\Visit\ReferrerSpamFilter;
/**
* @group Tracker
* @group Visit
*/
class ReferrerSpamFilterTest extends IntegrationTestCase
{
/**
* @var ReferrerSpamFilter
*/
private $filter;
public function setUp()
{
parent::setUp();
$this->filter = new ReferrerSpamFilter;
}
/**
* @test
*/
public function should_detect_spam()
{
$request = new Request(array(
'urlref' => 'semalt.com',
));
$this->assertTrue($this->filter->isSpam($request));
}
/**
* @test
*/
public function should_ignore_valid_referrers()
{
$request = new Request(array(
'urlref' => 'google.com',
));
$this->assertFalse($this->filter->isSpam($request));
}
/**
* @test
*/
public function should_ignore_requests_with_empty_referrers()
{
$request = new Request(array());
$this->assertFalse($this->filter->isSpam($request));
}
/**
* @test
*/
public function should_load_spammer_list_from_options_if_exists()
{
// We store google.com in the spammer blacklist
$list = serialize(array(
'google.com',
));
Option::set(ReferrerSpamFilter::OPTION_STORAGE_NAME, $list);
$request = new Request(array(
'urlref' => 'semalt.com',
));
$this->assertFalse($this->filter->isSpam($request));
// Now Google is blacklisted
$request = new Request(array(
'urlref' => 'google.com',
));
$this->assertTrue($this->filter->isSpam($request));
Option::delete(ReferrerSpamFilter::OPTION_STORAGE_NAME);
}
}
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter