Commit 2526a5a3 authored by Dominik Hebeler's avatar Dominik Hebeler

Merge branch '398-site-host-und-domain-suchen-zusammenfassen' into 'development'

Resolve "site host und domain suchen zusammenfassen"

Closes #398

See merge request !641
parents 42d58c7a c7476ee0
...@@ -854,10 +854,7 @@ class MetaGer ...@@ -854,10 +854,7 @@ class MetaGer
} }
# Sucheingabe # Sucheingabe
$this->eingabe = trim($request->input('eingabe', '')); $this->eingabe = trim($request->input('eingabe', ''));
if (strlen($this->eingabe) === 0) { $this->q = strtolower($this->eingabe);
$this->warnings[] = trans('metaGer.formdata.noSearch');
}
$this->q = $this->eingabe;
# IP # IP
$this->ip = $request->ip(); $this->ip = $request->ip();
# Language # Language
...@@ -959,15 +956,13 @@ class MetaGer ...@@ -959,15 +956,13 @@ class MetaGer
$this->searchCheckDomainBlacklist(); $this->searchCheckDomainBlacklist();
$this->searchCheckPhrase(); $this->searchCheckPhrase();
$this->searchCheckStopwords(); $this->searchCheckStopwords();
$this->searchCheckNoSearch();
if ($this->q === "") {
$this->warnings[] = trans('metaGer.formdata.noSearch');
}
} }
public function searchCheckSitesearch($site) public function searchCheckSitesearch($site)
{ {
if (preg_match("/(.*)\bsite:(\S+)(.*)/si", $this->q, $match)) { // matches '[... ]site:test.de[ ...]'
while (preg_match("/(^|.+\s)site:(\S+)(?:\s(.+)|($))/si", $this->q, $match)) {
$this->site = $match[2]; $this->site = $match[2];
$this->q = $match[1] . $match[3]; $this->q = $match[1] . $match[3];
} }
...@@ -978,9 +973,10 @@ class MetaGer ...@@ -978,9 +973,10 @@ class MetaGer
public function searchCheckHostBlacklist() public function searchCheckHostBlacklist()
{ {
while (preg_match("/(.*)(^|\s)-host:(\S+)(.*)/si", $this->q, $match)) { // matches '[... ]-site:test.de[ ...]'
$this->hostBlacklist[] = $match[3]; while (preg_match("/(^|.+\s)-site:([^\s\*]\S*)(?:\s(.+)|($))/si", $this->q, $match)) {
$this->q = $match[1] . $match[4]; $this->hostBlacklist[] = $match[2];
$this->q = $match[1] . $match[3];
} }
if (sizeof($this->hostBlacklist) > 0) { if (sizeof($this->hostBlacklist) > 0) {
$hostString = ""; $hostString = "";
...@@ -994,9 +990,10 @@ class MetaGer ...@@ -994,9 +990,10 @@ class MetaGer
public function searchCheckDomainBlacklist() public function searchCheckDomainBlacklist()
{ {
while (preg_match("/(.*)(^|\s)-domain:(\S+)(.*)/si", $this->q, $match)) { // matches '[... ]-site:*.test.de[ ...]'
$this->domainBlacklist[] = $match[3]; while (preg_match("/(^|.+\s)-site:\*\.(\S+)(?:\s(.+)|($))/si", $this->q, $match)) {
$this->q = $match[1] . $match[4]; $this->domainBlacklist[] = $match[2];
$this->q = $match[1] . $match[3];
} }
if (sizeof($this->domainBlacklist) > 0) { if (sizeof($this->domainBlacklist) > 0) {
$domainString = ""; $domainString = "";
...@@ -1010,9 +1007,10 @@ class MetaGer ...@@ -1010,9 +1007,10 @@ class MetaGer
public function searchCheckStopwords() public function searchCheckStopwords()
{ {
while (preg_match("/(.*)(^|\s)-(\S+)(.*)/si", $this->q, $match)) { // matches '[... ]-test[ ...]'
$this->stopWords[] = $match[3]; while (preg_match("/(^|.+\s)-(\S+)(?:\s(.+)|($))/si", $this->q, $match)) {
$this->q = $match[1] . $match[4]; $this->stopWords[] = $match[2];
$this->q = $match[1] . $match[3];
} }
if (sizeof($this->stopWords) > 0) { if (sizeof($this->stopWords) > 0) {
$stopwordsString = ""; $stopwordsString = "";
...@@ -1028,7 +1026,8 @@ class MetaGer ...@@ -1028,7 +1026,8 @@ class MetaGer
{ {
$p = ""; $p = "";
$tmp = $this->q; $tmp = $this->q;
while (preg_match("/(.*)\"(.+)\"(.*)/si", $tmp, $match)) { // matches '[... ]"test satz"[ ...]'
while (preg_match("/(^|.+\s)\"(.+)\"(?:\s(.+)|($))/si", $tmp, $match)) {
$tmp = $match[1] . $match[3]; $tmp = $match[1] . $match[3];
$this->phrases[] = strtolower($match[2]); $this->phrases[] = strtolower($match[2]);
} }
...@@ -1041,6 +1040,13 @@ class MetaGer ...@@ -1041,6 +1040,13 @@ class MetaGer
} }
} }
public function searchCheckNoSearch()
{
if ($this->q === "") {
$this->warnings[] = trans('metaGer.formdata.noSearch');
}
}
public function nextSearchLink() public function nextSearchLink()
{ {
if (isset($this->next) && isset($this->next['engines']) && count($this->next['engines']) > 0) { if (isset($this->next) && isset($this->next['engines']) && count($this->next['engines']) > 0) {
...@@ -1214,7 +1220,7 @@ class MetaGer ...@@ -1214,7 +1220,7 @@ class MetaGer
{ {
$host = urlencode($host); $host = urlencode($host);
$requestData = $this->request->except(['page', 'out', 'next']); $requestData = $this->request->except(['page', 'out', 'next']);
$requestData['eingabe'] .= " -host:$host"; $requestData['eingabe'] .= " -site:$host";
$link = action('MetaGerSearch@search', $requestData); $link = action('MetaGerSearch@search', $requestData);
return $link; return $link;
} }
...@@ -1223,7 +1229,7 @@ class MetaGer ...@@ -1223,7 +1229,7 @@ class MetaGer
{ {
$domain = urlencode($domain); $domain = urlencode($domain);
$requestData = $this->request->except(['page', 'out', 'next']); $requestData = $this->request->except(['page', 'out', 'next']);
$requestData['eingabe'] .= " -domain:$domain"; $requestData['eingabe'] .= " -site:*.$domain";
$link = action('MetaGerSearch@search', $requestData); $link = action('MetaGerSearch@search', $requestData);
return $link; return $link;
} }
......
...@@ -23,25 +23,28 @@ return [ ...@@ -23,25 +23,28 @@ return [
"grossklein.title" => "Groß-/ Kleinschreibung", "grossklein.title" => "Groß-/ Kleinschreibung",
"grossklein.1" => "Groß- und Kleinschreibung wird bei der Suche nicht unterschieden, es handelt sich um eine rein inhaltliche Suche.", "grossklein.1" => "Groß- und Kleinschreibung wird bei der Suche nicht unterschieden, es handelt sich um eine rein inhaltliche Suche.",
"grossklein.2" => "Beispiel: Die Suche nach <div class=\"well well-sm\">großschreibung</div> liefert genau die gleichen Ergebnisse wie <div class=\"well well-sm\">GROßSCHREIBUNG</div>", "grossklein.2" => "Beispiel: Die Suche nach <div class=\"well well-sm\">großschreibung</div> liefert genau die gleichen Ergebnisse wie <div class=\"well well-sm\">GROßSCHREIBUNG</div>",
"domains.title" => "Suche auf Domains beschränken / Domains ausschließen", "domains.title" => "Suche auf Domains beschränken / Domains ausschließen",
"domains.sitesearch.explanation" => "Wenn Sie Ihre Suche nur auf Ergebnisse von einer bestimmten Domain (z.B. wikipedia.org) beschränken möchten, können Sie dies erreichen indem Sie Ihrer Suche site:<i>ihre-domain.de</i> hinzufügen.", "domains.sitesearch.explanation" => "Wenn Sie Ihre Suche nur auf Ergebnisse von einer bestimmten Domain (z.B. wikipedia.org) beschränken möchten, können Sie dies erreichen indem Sie Ihrer Suche site:<i>ihre-domain.de</i> hinzufügen.",
"domains.sitesearch.example.1" => "Beispiel: Sie möchten nur noch Ergebnisse von der deutschen Wikipedia (de.wikipedia.org) erhalten. Ihre Suche lautet also:", "domains.sitesearch.example.1" => "Beispiel: Sie möchten nur noch Ergebnisse von der deutschen Wikipedia (de.wikipedia.org) erhalten. Ihre Suche lautet also:",
"domains.sitesearch.example.2" => "<i>meine suche</i> site:de.wikipedia.org", "domains.sitesearch.example.2" => "<i>meine suche</i> site:de.wikipedia.org",
"domains.sitesearch.example.3" => "Beispiel: Sie möchten auch Ergebnisse von Wikipedia in anderen Sprachen (wikipedia.org) erhalten. Ihre Suche lautet also:", "domains.sitesearch.example.3" => "Beispiel: Sie möchten auch Ergebnisse von Wikipedia in anderen Sprachen (wikipedia.org) erhalten. Ihre Suche lautet also:",
"domains.sitesearch.example.4" => "<i>meine suche</i> site:wikipedia.org", "domains.sitesearch.example.4" => "<i>meine suche</i> site:wikipedia.org",
"domains.blacklist.explanation" => "Manchmal kann es auch passieren, dass Sie Ergebnisse einer bestimmten Domain nicht mehr sehen möchten. In diesem Fall haben Sie zwei Möglichkeiten: Den Ausschluss eines Hosts und den Ausschluss einer Domain. Dies erreichen Sie, indem Sie -host:<i>unterseite.ihre-seite.de</i> beziehungsweise -domain:<i>ihre-seite.de</i> zu Ihrer Suche hinzufügen.",
"domains.blacklist.explanation" => "Manchmal kann es auch passieren, dass Sie Ergebnisse einer bestimmten Domain nicht mehr sehen möchten. In diesem Fall haben Sie zwei Möglichkeiten: Den Ausschluss einer Subdomain und den Ausschluss einer Top-Level-Domain. Dies erreichen Sie, indem Sie -site:<i>unterseite.ihre-seite.de</i> beziehungsweise -site:*.<i>ihre-seite.de</i> zu Ihrer Suche hinzufügen.",
"domains.blacklist.example.1" => "Beispiel: Sie haben genug von den ganzen Wikipedia-Ergebnissen. Nun haben Sie zwei Möglichkeiten:", "domains.blacklist.example.1" => "Beispiel: Sie haben genug von den ganzen Wikipedia-Ergebnissen. Nun haben Sie zwei Möglichkeiten:",
"domains.blacklist.example.2" => "Sie schließen alle Ergebnisse von der deutschen Wikipedia-Domain, also de.wikipedia.org, aus", "domains.blacklist.example.2" => "Sie schließen alle Ergebnisse von der deutschen Wikipedia-Domain, also de.wikipedia.org, aus",
"domains.blacklist.example.3" => "<i>meine suche</i> -host:de.wikipedia.org", "domains.blacklist.example.3" => "<i>meine suche</i> -site:de.wikipedia.org",
"domains.blacklist.example.4" => "Sie erhalten nun weiterhin Ergebnisse von beispielsweise en.wikipedia.org, solange diese zu Ihrer Suche passen", "domains.blacklist.example.4" => "Sie erhalten nun weiterhin Ergebnisse von beispielsweise en.wikipedia.org, solange diese zu Ihrer Suche passen",
"domains.blacklist.example.5" => "Sie schließen generell alle Ergebnisse von allen Wikipedia-Domains aus", "domains.blacklist.example.5" => "Sie schließen generell alle Ergebnisse von allen Wikipedia-Domains aus",
"domains.blacklist.example.6" => "<i>meine suche</i> -domain:wikipedia.org", "domains.blacklist.example.6" => "<i>meine suche</i> -site:*.wikipedia.org",
"domains.showcase.explanation.1" => "Zusätzlich bieten wir Ihnen die Möglichkeit Hosts beziehungsweise Domains direkt auf der Ergebnisseite auszuschließen. Bei jedem unserer Ergebnisse erscheint dieses kleine Symbol für die Optionen:", "domains.showcase.explanation.1" => "Zusätzlich bieten wir Ihnen die Möglichkeit Subdomains beziehungsweise Top-Level-Domains direkt auf der Ergebnisseite auszuschließen. Bei jedem unserer Ergebnisse erscheint dieses kleine Symbol für die Optionen:",
"domains.showcase.explanation.2" => "Wenn Sie auf dieses Symbol klicken, erscheint folgendes Menü:", "domains.showcase.explanation.2" => "Wenn Sie auf dieses Symbol klicken, erscheint folgendes Menü:",
"domains.showcase.menu.1" => "Mit diesem Menü lassen sich:", "domains.showcase.menu.1" => "Mit diesem Menü lassen sich:",
"domains.showcase.menu.2" => "Eine neue Suche nur auf der Domain des Ergebnisses (de.wikipedia.de) starten", "domains.showcase.menu.2" => "Eine neue Suche nur auf der Domain des Ergebnisses (de.wikipedia.de) starten",
"domains.showcase.menu.3" => "Eine Suche ohne Ergebnisse der Subdomain (de.wikipedia.de) starten", "domains.showcase.menu.3" => "Eine Suche ohne Ergebnisse der Subdomain (de.wikipedia.de) starten",
"domains.showcase.menu.4" => "Eine Suche ohne Ergebnisse der Top-Level-Domain (wikipedia.de) starten", "domains.showcase.menu.4" => "Eine Suche ohne Ergebnisse der Top-Level-Domain (wikipedia.de) starten",
"dienste" => "Weitere Dienste um die Suche herum", "dienste" => "Weitere Dienste um die Suche herum",
"app.title" => "Android-App", "app.title" => "Android-App",
"app.1" => "Sie können MetaGer auch als App nutzen. Laden Sie sich dazu einfach die <a href=\"https://play.google.com/store/apps/details?id=de.metager.metagerapp\" target=\"_blank\" rel=\"noopener\">MetaGer App</a> auf ihr Android Smartphone.", "app.1" => "Sie können MetaGer auch als App nutzen. Laden Sie sich dazu einfach die <a href=\"https://play.google.com/store/apps/details?id=de.metager.metagerapp\" target=\"_blank\" rel=\"noopener\">MetaGer App</a> auf ihr Android Smartphone.",
......
...@@ -29,13 +29,13 @@ return [ ...@@ -29,13 +29,13 @@ return [
"domains.sitesearch.example.2" => "<i>my search words</i> site:en.wikipedia.org", "domains.sitesearch.example.2" => "<i>my search words</i> site:en.wikipedia.org",
"domains.sitesearch.example.3" => "Example: Restriction to wikipedia but all languages:", "domains.sitesearch.example.3" => "Example: Restriction to wikipedia but all languages:",
"domains.sitesearch.example.4" => "Type: <i>my search words</i> site:wikipedia.org", "domains.sitesearch.example.4" => "Type: <i>my search words</i> site:wikipedia.org",
"domains.blacklist.explanation" => "Exclude a specific domain: Either the exclusion of a host or of a domain. Type <i>my search words</i> -host:<i>en.wikipedia.org</i> or <i>my search words</i> -domain:<i>wikipedia.org</i>", "domains.blacklist.explanation" => "Exclude a specific domain: Either the exclusion of a subdomain or of a top level domain. Type <i>my search words</i> -site:<i>en.wikipedia.org</i> or <i>my search words</i> -site:*.<i>wikipedia.org</i>",
"domains.blacklist.example.1" => "Example: You don't want to get results from Wikipedia. There are two possibilities:", "domains.blacklist.example.1" => "Example: You do not want to get results from Wikipedia. There are two possibilities:",
"domains.blacklist.example.2" => "Exclude results from the english Wikipedia (domain) so <i>en.wikipedia.org</i>", "domains.blacklist.example.2" => "Exclude results from the english Wikipedia (domain) so <i>en.wikipedia.org</i>",
"domains.blacklist.example.3" => "<i>my search words</i> -host:<i>en.wikipedia.org</i>", "domains.blacklist.example.3" => "<i>my search words</i> -site:<i>en.wikipedia.org</i>",
"domains.blacklist.example.4" => "You get results from e.g. de.wikipedia.org further on.", "domains.blacklist.example.4" => "You get results from e.g. de.wikipedia.org further on.",
"domains.blacklist.example.5" => "Exclude all results of all wikipedia domains:", "domains.blacklist.example.5" => "Exclude all results of all wikipedia domains:",
"domains.blacklist.example.6" => "<i>my search words</i> -domain:<i>wikipedia.org</i>", "domains.blacklist.example.6" => "<i>my search words</i> -site:*.<i>wikipedia.org</i>",
"domains.showcase.explanation.1" => "Additionally there is the option to exclude hosts or domains on the result page: All of the results have the small triangle sign:", "domains.showcase.explanation.1" => "Additionally there is the option to exclude hosts or domains on the result page: All of the results have the small triangle sign:",
"domains.showcase.explanation.2" => "Click for the menu shown below:", "domains.showcase.explanation.2" => "Click for the menu shown below:",
"domains.showcase.menu.1" => "Decide here:", "domains.showcase.menu.1" => "Decide here:",
......
...@@ -43,20 +43,14 @@ class MetaGerPhpTest extends TestCase ...@@ -43,20 +43,14 @@ class MetaGerPhpTest extends TestCase
// Testet das erkennen von Spezialsuchen in verschiedenen Sucheingaben // Testet das erkennen von Spezialsuchen in verschiedenen Sucheingaben
public function specialSearchTest() public function specialSearchTest()
{ {
$metager = new MetaGer(); $metager = $this->createSpecialSearchMetager('suchwort -blackword -site:blackhost -site:*.blackdomain site:wantsite "i want phrase"');
$request = new Request(['eingabe' => 'suchwort -blackword -host:blackhost -domain:blackdomain site:wantsite "i want phrase"']);
$metager->parseFormData($request);
$metager->checkSpecialSearches($request);
$this->assertEquals("wantsite", $metager->getSite()); $this->assertEquals("wantsite", $metager->getSite());
$this->assertContains("blackhost", $metager->getUserHostBlacklist()); $this->assertContains("blackhost", $metager->getUserHostBlacklist());
$this->assertContains("blackdomain", $metager->getUserDomainBlacklist()); $this->assertContains("blackdomain", $metager->getUserDomainBlacklist());
$this->assertContains("blackword", $metager->getStopWords()); $this->assertContains("blackword", $metager->getStopWords());
$this->assertContains("i want phrase", $metager->getPhrases()); $this->assertContains("i want phrase", $metager->getPhrases());
$metager = new MetaGer(); $metager = $this->createSpecialSearchMetager('site:peter:test -blackword-test -site:blackhost-test.de.nz/test ich suche nach -site:blackhost:blackhost2.cote/t?p=5 "peter ist obst-garten und -bauern"');
$request = new Request(['eingabe' => '-site:peter:test -blackword-test -host:blackhost-test.de.nz/test ich suche nach -host:blackhost:blackhost2.cote/t?p=5 "peter ist obst-garten und -bauern"']);
$metager->parseFormData($request);
$metager->checkSpecialSearches($request);
$this->assertEquals("peter:test", $metager->getSite()); $this->assertEquals("peter:test", $metager->getSite());
$this->assertContains("blackhost:blackhost2.cote/t?p=5", $metager->getUserHostBlacklist()); $this->assertContains("blackhost:blackhost2.cote/t?p=5", $metager->getUserHostBlacklist());
$this->assertContains("blackhost-test.de.nz/test", $metager->getUserHostBlacklist()); $this->assertContains("blackhost-test.de.nz/test", $metager->getUserHostBlacklist());
...@@ -64,17 +58,28 @@ class MetaGerPhpTest extends TestCase ...@@ -64,17 +58,28 @@ class MetaGerPhpTest extends TestCase
$this->assertNotContains("bauern", $metager->getStopWords()); $this->assertNotContains("bauern", $metager->getStopWords());
$this->assertContains("peter ist obst-garten und -bauern", $metager->getPhrases()); $this->assertContains("peter ist obst-garten und -bauern", $metager->getPhrases());
$metager = new MetaGer(); $metager = $this->createSpecialSearchMetager('-site:-site:*.test');
$request = new Request(['eingabe' => '-host:-domain:test']); $this->assertContains("-site:*.test", $metager->getUserHostBlacklist());
$metager->parseFormData($request);
$metager->checkSpecialSearches($request); $metager = $this->createSpecialSearchMetager('"-site:-site:*.test"');
$this->assertContains("-domain:test", $metager->getUserHostBlacklist()); $this->assertContains("-site:-site:*.test", $metager->getPhrases());
$metager = $this->createSpecialSearchMetager('site:wikipedia.de apfel site:test.de tomate');
$this->assertEquals("apfel tomate", $metager->getQ());
$this->assertEquals("test.de", $metager->getSite());
$metager = $this->createSpecialSearchMetager('site:wikipedia.de');
$this->assertEquals("", $metager->getQ());
$this->assertEquals("wikipedia.de", $metager->getSite());
}
public function createSpecialSearchMetager($eingabe)
{
$metager = new MetaGer(); $metager = new MetaGer();
$request = new Request(['eingabe' => '"-host:-domain:test"']); $request = new Request(['eingabe' => $eingabe]);
$metager->parseFormData($request); $metager->parseFormData($request);
$metager->checkSpecialSearches($request); $metager->checkSpecialSearches($request);
$this->assertContains("-host:-domain:test", $metager->getPhrases()); return $metager;
} }
// Testet, ob ein Link wirklich nur einmal hinzugefügt werden kann // Testet, ob ein Link wirklich nur einmal hinzugefügt werden kann
...@@ -141,9 +146,9 @@ class MetaGerPhpTest extends TestCase ...@@ -141,9 +146,9 @@ class MetaGerPhpTest extends TestCase
$this->containCallbackTester($metager, "generateSiteSearchLink", ["wolf.de"], $this->containCallbackTester($metager, "generateSiteSearchLink", ["wolf.de"],
'site%3Awolf.de'); 'site%3Awolf.de');
$this->containCallbackTester($metager, "generateRemovedHostLink", ["wolf.de"], $this->containCallbackTester($metager, "generateRemovedHostLink", ["wolf.de"],
'-host%3Awolf.de'); '-site%3Awolf.de');
$this->containCallbackTester($metager, "generateRemovedDomainLink", ["wolf.de"], $this->containCallbackTester($metager, "generateRemovedDomainLink", ["wolf.de"],
'-domain%3Awolf.de'); '-site%3A%2A.wolf.de');
} }
// Prüft ob der Host Count funktioniert // Prüft ob der Host Count funktioniert
...@@ -329,7 +334,7 @@ class MetaGerPhpTest extends TestCase ...@@ -329,7 +334,7 @@ class MetaGerPhpTest extends TestCase
#new Request(array $query = array(), array $request = array(), array $attributes = array(), array $cookies = array(), array $files = array(), array $server = array(), $content = null) #new Request(array $query = array(), array $request = array(), array $attributes = array(), array $cookies = array(), array $files = array(), array $server = array(), $content = null)
$query = []; $query = [];
$query["eingabe"] = 'suchwort -blackword -host:blackhost -domain:blackdomain site:wantsite "i want phrase"'; $query["eingabe"] = 'suchwort -blackword -site:blackhost -site:*.blackdomain site:wantsite "i want phrase"';
$query["focus"] = "angepasst"; $query["focus"] = "angepasst";
$query["encoding"] = "utf8"; $query["encoding"] = "utf8";
$query["lang"] = "all"; $query["lang"] = "all";
......
...@@ -78,7 +78,7 @@ Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod ...@@ -78,7 +78,7 @@ Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod
$this->assertTrue($result->isValid($metager)); $this->assertTrue($result->isValid($metager));
$metager = new MetaGer(); $metager = new MetaGer();
$request = new Request(['eingabe' => 'test -host:host.domain.de -domain:domain.de']); $request = new Request(['eingabe' => 'test -site:host.domain.de -site:*.domain.de']);
$metager->parseFormData($request); $metager->parseFormData($request);
$metager->checkSpecialSearches($request); $metager->checkSpecialSearches($request);
...@@ -99,7 +99,7 @@ Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod ...@@ -99,7 +99,7 @@ Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod
$this->assertFalse($result->isValid($metager)); $this->assertFalse($result->isValid($metager));
} }
// Prüft die Funktionen die Links umformen oder erzeugen // Prüft die Funktionen, die Links umformen oder erzeugen
public function linkGeneratorsTest() public function linkGeneratorsTest()
{ {
$result = $this->getDummyResult(); $result = $this->getDummyResult();
...@@ -120,6 +120,13 @@ Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod ...@@ -120,6 +120,13 @@ Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod
'solo.de'); 'solo.de');
$this->equalCallbackTester($result, "getStrippedLink", [$url], $this->equalCallbackTester($result, "getStrippedLink", [$url],
'han.solo.de/unterseite/document.htm'); 'han.solo.de/unterseite/document.htm');
$url = "http://www.foo.bar.han.solo.de/test?ja=1";
$this->equalCallbackTester($result, "getStrippedHost", [$url],
'foo.bar.han.solo.de');
$this->equalCallbackTester($result, "getStrippedDomain", [$url],
'solo.de');
} }
/** /**
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment