From 374a84204f4ecaf5b2f2e8ef6a8981ad343b059a Mon Sep 17 00:00:00 2001 From: W-Mark Kubacki Date: Tue, 25 Oct 2011 15:43:45 +0200 Subject: [PATCH] As expected, '.php' has been removed from the stop-words, leading to the malfunctions. --- test.php | 18 ++++++++++++++++++ test/samples/wangma.me-after.gz | Bin 0 -> 7064 bytes test/samples/wangma.me-before.gz | Bin 0 -> 7084 bytes test/samples/wangma.me-incorrect.gz | Bin 0 -> 7064 bytes 4 files changed, 18 insertions(+) create mode 100644 test/samples/wangma.me-after.gz create mode 100644 test/samples/wangma.me-before.gz create mode 100644 test/samples/wangma.me-incorrect.gz diff --git a/test.php b/test.php index f81f8f3..bb12607 100644 --- a/test.php +++ b/test.php @@ -184,6 +184,24 @@ public function testExcludes2() { $this->assertEquals($expected, $output); } + public function testExcludes3() { + // 刘晖 has reported issue #4 and sent pages to reproce the issue. + // Let's see what has been configured to reproduce the incorrect output: + $this->ctx->blog_url = 'http://wangma.me'; + $this->ctx->cdn_url = ossdl_off_cdn_strategy_for('http://cdn.wangma.me'); + + $this->ctx->excludes = array('.php'); //<-- this worked fine! + $input = $this->readCompressedSample('wangma.me-before.gz'); + $expected = $this->readCompressedSample('wangma.me-after.gz'); + $output = $this->ctx->rewrite($input); + $this->assertEquals($expected, $output); + + $this->ctx->excludes = array(); //<-- this is what actually has been configured and caused the malfunction + $expected = $this->readCompressedSample('wangma.me-incorrect.gz'); + $output = $this->ctx->rewrite($input); + $this->assertEquals($expected, $output); + } + public function testIncludeDirs() { // this one has root-relative links to "/extscripts/..." $this->ctx->blog_url = 'http://screenrant.com'; diff --git a/test/samples/wangma.me-after.gz b/test/samples/wangma.me-after.gz new file mode 100644 index 0000000000000000000000000000000000000000..eb9eb0d99154d1946e268c8d1b698972bc54f3ac GIT binary patch literal 7064 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 W841frlpsmp8Tmg%4~Kq4QUCx)$h&<2 literal 0 HcmV?d00001 diff --git a/test/samples/wangma.me-incorrect.gz b/test/samples/wangma.me-incorrect.gz new file mode 100644 index 0000000000000000000000000000000000000000..3ec66900f61f991da55f836c837fd6818343704d GIT binary patch literal 7064 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 C2Ao;| literal 0 HcmV?d00001