@@ -125,7 +125,7 @@ discard block |
||
| 125 | 125 | * Note: characters are stripped from the content; make sure that your assertions take this into account. |
| 126 | 126 | * |
| 127 | 127 | * @param string $selector A basic CSS selector, e.g. 'li.jobs h3' |
| 128 | - * @param array|string $expectedMatches The content of at least one of the matched tags |
|
| 128 | + * @param integer $index |
|
| 129 | 129 | * @throws PHPUnit_Framework_AssertionFailedError |
| 130 | 130 | * @return boolean |
| 131 | 131 | */ |
@@ -155,7 +155,8 @@ discard block |
||
| 155 | 155 | * Note: characters are stripped from the content; make sure that your assertions take this into account. |
| 156 | 156 | * |
| 157 | 157 | * @param string $selector A basic CSS selector, e.g. 'li.jobs h3' |
| 158 | - * @param array|string $expectedMatches The content of at least one of the matched tags |
|
| 158 | + * @param integer $index |
|
| 159 | + * @param string $expectedClause |
|
| 159 | 160 | * @throws PHPUnit_Framework_AssertionFailedError |
| 160 | 161 | * @return boolean |
| 161 | 162 | */ |
@@ -183,6 +184,12 @@ discard block |
||
| 183 | 184 | /* |
| 184 | 185 | Check all the nodes matching the selector for attribute name = expected value |
| 185 | 186 | */ |
| 187 | + |
|
| 188 | + /** |
|
| 189 | + * @param string $selector |
|
| 190 | + * @param string $attributeName |
|
| 191 | + * @param string $expectedValue |
|
| 192 | + */ |
|
| 186 | 193 | public function assertAttributeHasExactValue($selector, $attributeName, $expectedValue) { |
| 187 | 194 | $items = $this->cssParser()->getBySelector($selector); |
| 188 | 195 | foreach ($items as $item) { |
@@ -191,6 +198,9 @@ discard block |
||
| 191 | 198 | } |
| 192 | 199 | |
| 193 | 200 | |
| 201 | + /** |
|
| 202 | + * @param string $selector |
|
| 203 | + */ |
|
| 194 | 204 | public function assertAttributesHaveExactValues($selector, $expectedValues) { |
| 195 | 205 | $attributeNames = array_keys($expectedValues); |
| 196 | 206 | $items = $this->cssParser()->getBySelector($selector); |
@@ -204,6 +214,10 @@ discard block |
||
| 204 | 214 | } |
| 205 | 215 | |
| 206 | 216 | |
| 217 | + /** |
|
| 218 | + * @param string $selector |
|
| 219 | + * @param integer $expectedAmount |
|
| 220 | + */ |
|
| 207 | 221 | public function assertNumberOfNodes($selector, $expectedAmount) { |
| 208 | 222 | $items = $this->cssParser()->getBySelector($selector); |
| 209 | 223 | foreach ($items as $item) { |
@@ -150,15 +150,15 @@ |
||
| 150 | 150 | |
| 151 | 151 | |
| 152 | 152 | /** |
| 153 | - *Assert that the indexth matching css node has a prefix as expected |
|
| 154 | - * |
|
| 155 | - * Note: characters are stripped from the content; make sure that your assertions take this into account. |
|
| 156 | - * |
|
| 157 | - * @param string $selector A basic CSS selector, e.g. 'li.jobs h3' |
|
| 158 | - * @param array|string $expectedMatches The content of at least one of the matched tags |
|
| 159 | - * @throws PHPUnit_Framework_AssertionFailedError |
|
| 160 | - * @return boolean |
|
| 161 | - */ |
|
| 153 | + *Assert that the indexth matching css node has a prefix as expected |
|
| 154 | + * |
|
| 155 | + * Note: characters are stripped from the content; make sure that your assertions take this into account. |
|
| 156 | + * |
|
| 157 | + * @param string $selector A basic CSS selector, e.g. 'li.jobs h3' |
|
| 158 | + * @param array|string $expectedMatches The content of at least one of the matched tags |
|
| 159 | + * @throws PHPUnit_Framework_AssertionFailedError |
|
| 160 | + * @return boolean |
|
| 161 | + */ |
|
| 162 | 162 | public function assertSelectorContains($selector, $index, $expectedClause) { |
| 163 | 163 | $items = $this->cssParser()->getBySelector($selector); |
| 164 | 164 | |
@@ -9,8 +9,8 @@ discard block |
||
| 9 | 9 | public static $ignoreFixtureFileFor = array(); |
| 10 | 10 | |
| 11 | 11 | protected $extraDataObjects = array( |
| 12 | - 'SearchableTestPage','FlickrPhotoTO','FlickrAuthorTO','FlickrSetTO','FlickrTagTO', |
|
| 13 | - 'SearchableTestFatherPage','SearchableTestGrandFatherPage' |
|
| 12 | + 'SearchableTestPage', 'FlickrPhotoTO', 'FlickrAuthorTO', 'FlickrSetTO', 'FlickrTagTO', |
|
| 13 | + 'SearchableTestFatherPage', 'SearchableTestGrandFatherPage' |
|
| 14 | 14 | ); |
| 15 | 15 | |
| 16 | 16 | |
@@ -27,7 +27,7 @@ discard block |
||
| 27 | 27 | |
| 28 | 28 | public function setUp() { |
| 29 | 29 | |
| 30 | - error_log("*************** TEST: ".$this->getName()); |
|
| 30 | + error_log("*************** TEST: " . $this->getName()); |
|
| 31 | 31 | |
| 32 | 32 | $cache = SS_Cache::factory('elasticsearch'); |
| 33 | 33 | $cache->clean(Zend_Cache::CLEANING_MODE_ALL); |
@@ -35,7 +35,7 @@ discard block |
||
| 35 | 35 | |
| 36 | 36 | // this needs to be called in order to create the list of searchable |
| 37 | 37 | // classes and fields that are available. Simulates part of a build |
| 38 | - $classes = array('SearchableTestPage','SiteTree','Page','FlickrPhotoTO','FlickrSetTO', |
|
| 38 | + $classes = array('SearchableTestPage', 'SiteTree', 'Page', 'FlickrPhotoTO', 'FlickrSetTO', |
|
| 39 | 39 | 'FlickrTagTO', 'FlickrAuthorTO'); |
| 40 | 40 | $this->requireDefaultRecordsFrom = $classes; |
| 41 | 41 | |
@@ -54,7 +54,7 @@ discard block |
||
| 54 | 54 | $this->service->setTestMode(true); |
| 55 | 55 | |
| 56 | 56 | // A previous test may have deleted the index and then failed, so check for this |
| 57 | - if (!$this->service->getIndex()->exists()) { |
|
| 57 | + if(!$this->service->getIndex()->exists()) { |
|
| 58 | 58 | $this->service->getIndex()->create(); |
| 59 | 59 | } |
| 60 | 60 | $this->service->reset(); |
@@ -65,9 +65,9 @@ discard block |
||
| 65 | 65 | // load fixtures |
| 66 | 66 | $orig_fixture_file = static::$fixture_file; |
| 67 | 67 | |
| 68 | - foreach (static::$ignoreFixtureFileFor as $testPattern) { |
|
| 69 | - $pattern = '/'.$testPattern.'/'; |
|
| 70 | - if (preg_match($pattern, $this->getName())) { |
|
| 68 | + foreach(static::$ignoreFixtureFileFor as $testPattern) { |
|
| 69 | + $pattern = '/' . $testPattern . '/'; |
|
| 70 | + if(preg_match($pattern, $this->getName())) { |
|
| 71 | 71 | static::$fixture_file = null; |
| 72 | 72 | } |
| 73 | 73 | } |
@@ -79,7 +79,7 @@ discard block |
||
| 79 | 79 | // this has to be executed otherwise nesting exceptions occur |
| 80 | 80 | parent::setUp(); |
| 81 | 81 | |
| 82 | - if ($elasticaException) { |
|
| 82 | + if($elasticaException) { |
|
| 83 | 83 | $this->fail('T1 Exception with Elasticsearch'); |
| 84 | 84 | } |
| 85 | 85 | |
@@ -101,18 +101,18 @@ discard block |
||
| 101 | 101 | $elasticaException = true; |
| 102 | 102 | } |
| 103 | 103 | |
| 104 | - if ($elasticaException) { |
|
| 104 | + if($elasticaException) { |
|
| 105 | 105 | $this->fail('T2 Exception with Elasticsearch'); |
| 106 | 106 | } |
| 107 | 107 | } |
| 108 | 108 | |
| 109 | 109 | |
| 110 | 110 | private function publishSiteTree() { |
| 111 | - foreach (SiteTree::get()->getIterator() as $page) { |
|
| 111 | + foreach(SiteTree::get()->getIterator() as $page) { |
|
| 112 | 112 | // temporarily disable Elasticsearch indexing, it will be done in a batch |
| 113 | 113 | $page->IndexingOff = true; |
| 114 | 114 | |
| 115 | - $page->publish('Stage','Live'); |
|
| 115 | + $page->publish('Stage', 'Live'); |
|
| 116 | 116 | } |
| 117 | 117 | } |
| 118 | 118 | |
@@ -133,7 +133,7 @@ discard block |
||
| 133 | 133 | $items = $this->cssParser()->getBySelector($selector); |
| 134 | 134 | |
| 135 | 135 | $ctr = 0; |
| 136 | - foreach ($items as $item) { |
|
| 136 | + foreach($items as $item) { |
|
| 137 | 137 | $text = strip_tags($item); |
| 138 | 138 | $escaped = str_replace("'", "\'", $text); |
| 139 | 139 | $ctr++; |
@@ -163,7 +163,7 @@ discard block |
||
| 163 | 163 | $items = $this->cssParser()->getBySelector($selector); |
| 164 | 164 | |
| 165 | 165 | $ctr = 0; |
| 166 | - foreach ($items as $item) { |
|
| 166 | + foreach($items as $item) { |
|
| 167 | 167 | $text = strip_tags($item); |
| 168 | 168 | $escaped = str_replace("'", "\'", $text); |
| 169 | 169 | $ctr++; |
@@ -185,7 +185,7 @@ discard block |
||
| 185 | 185 | */ |
| 186 | 186 | public function assertAttributeHasExactValue($selector, $attributeName, $expectedValue) { |
| 187 | 187 | $items = $this->cssParser()->getBySelector($selector); |
| 188 | - foreach ($items as $item) { |
|
| 188 | + foreach($items as $item) { |
|
| 189 | 189 | $this->assertEquals($expectedValue, $item['value']); |
| 190 | 190 | } |
| 191 | 191 | } |
@@ -194,9 +194,9 @@ discard block |
||
| 194 | 194 | public function assertAttributesHaveExactValues($selector, $expectedValues) { |
| 195 | 195 | $attributeNames = array_keys($expectedValues); |
| 196 | 196 | $items = $this->cssParser()->getBySelector($selector); |
| 197 | - foreach ($items as $item) { |
|
| 197 | + foreach($items as $item) { |
|
| 198 | 198 | $actualValues = array(); |
| 199 | - foreach ($attributeNames as $attributeName) { |
|
| 199 | + foreach($attributeNames as $attributeName) { |
|
| 200 | 200 | $actualValues[$attributeName] = (string)$item[$attributeName]; |
| 201 | 201 | } |
| 202 | 202 | $this->assertEquals($expectedValues, $actualValues); |
@@ -206,7 +206,7 @@ discard block |
||
| 206 | 206 | |
| 207 | 207 | public function assertNumberOfNodes($selector, $expectedAmount) { |
| 208 | 208 | $items = $this->cssParser()->getBySelector($selector); |
| 209 | - foreach ($items as $item) { |
|
| 209 | + foreach($items as $item) { |
|
| 210 | 210 | $text = strip_tags($item); |
| 211 | 211 | } |
| 212 | 212 | |
@@ -219,9 +219,9 @@ discard block |
||
| 219 | 219 | public function collateSearchResults() { |
| 220 | 220 | $items = $this->cssParser()->getBySelector('div.searchResults .searchResult'); |
| 221 | 221 | $result = array(); |
| 222 | - foreach ($items as $item) { |
|
| 222 | + foreach($items as $item) { |
|
| 223 | 223 | $attr = $item->attributes()->id; |
| 224 | - array_push($result, $attr.""); |
|
| 224 | + array_push($result, $attr . ""); |
|
| 225 | 225 | } |
| 226 | 226 | |
| 227 | 227 | return $result; |
@@ -74,11 +74,11 @@ discard block |
||
| 74 | 74 | $this->assertEquals(200, $searchPage->getStatusCode()); |
| 75 | 75 | $url = rtrim($url, '/'); |
| 76 | 76 | |
| 77 | - $response = $this->get($url); |
|
| 77 | + $response = $this->get($url); |
|
| 78 | 78 | |
| 79 | - $this->assertEquals(200, $response->getStatusCode()); |
|
| 79 | + $this->assertEquals(200, $response->getStatusCode()); |
|
| 80 | 80 | |
| 81 | - $this->assertSelectorStartsWithOrEquals('ul.iso span.count', 0, '(5)'); |
|
| 81 | + $this->assertSelectorStartsWithOrEquals('ul.iso span.count', 0, '(5)'); |
|
| 82 | 82 | $this->assertSelectorStartsWithOrEquals('ul.iso span.count', 1, '(11)'); |
| 83 | 83 | $this->assertSelectorStartsWithOrEquals('ul.iso span.count', 2, '(12)'); |
| 84 | 84 | $this->assertSelectorStartsWithOrEquals('ul.iso span.count', 3, '(13)'); |
@@ -128,11 +128,11 @@ discard block |
||
| 128 | 128 | $url = rtrim($url, '/'); |
| 129 | 129 | $url .= '?ISO=400'; |
| 130 | 130 | |
| 131 | - $response = $this->get($url); |
|
| 131 | + $response = $this->get($url); |
|
| 132 | 132 | |
| 133 | - $this->assertEquals(200, $response->getStatusCode()); |
|
| 133 | + $this->assertEquals(200, $response->getStatusCode()); |
|
| 134 | 134 | |
| 135 | - // These are less than in the no facets selected case, as expected |
|
| 135 | + // These are less than in the no facets selected case, as expected |
|
| 136 | 136 | $this->assertSelectorStartsWithOrEquals('ul.focal_length span.count', 0, '(2)'); |
| 137 | 137 | $this->assertSelectorStartsWithOrEquals('ul.focal_length span.count', 1, '(1)'); |
| 138 | 138 | $this->assertSelectorStartsWithOrEquals('ul.focal_length span.count', 2, '(2)'); |
@@ -176,11 +176,11 @@ discard block |
||
| 176 | 176 | $url = rtrim($url, '/'); |
| 177 | 177 | $url .= '?ISO=400&ShutterSpeed=2%2F250'; |
| 178 | 178 | |
| 179 | - $response = $this->get($url); |
|
| 180 | - $this->assertEquals(200, $response->getStatusCode()); |
|
| 179 | + $response = $this->get($url); |
|
| 180 | + $this->assertEquals(200, $response->getStatusCode()); |
|
| 181 | 181 | |
| 182 | - // These are less than in the one facet selected case, as expected |
|
| 183 | - $this->assertSelectorStartsWithOrEquals('ul.focal_length span.count', 0, '(1)'); |
|
| 182 | + // These are less than in the one facet selected case, as expected |
|
| 183 | + $this->assertSelectorStartsWithOrEquals('ul.focal_length span.count', 0, '(1)'); |
|
| 184 | 184 | $this->assertSelectorStartsWithOrEquals('ul.focal_length span.count', 1, '(2)'); |
| 185 | 185 | $this->assertSelectorStartsWithOrEquals('ul.aperture span.count', 0, '(1)'); |
| 186 | 186 | $this->assertSelectorStartsWithOrEquals('ul.aperture span.count', 1, '(1)'); |
@@ -207,11 +207,11 @@ discard block |
||
| 207 | 207 | $url = rtrim($url, '/'); |
| 208 | 208 | $url .= '?ISO=400&ShutterSpeed=2%2F250&Aspect=Vertical'; |
| 209 | 209 | |
| 210 | - $response = $this->get($url); |
|
| 211 | - $this->assertEquals(200, $response->getStatusCode()); |
|
| 210 | + $response = $this->get($url); |
|
| 211 | + $this->assertEquals(200, $response->getStatusCode()); |
|
| 212 | 212 | |
| 213 | - // These are less than in the one facet selected case, as expected |
|
| 214 | - $this->assertSelectorStartsWithOrEquals('span.count', 0, '(2)'); |
|
| 213 | + // These are less than in the one facet selected case, as expected |
|
| 214 | + $this->assertSelectorStartsWithOrEquals('span.count', 0, '(2)'); |
|
| 215 | 215 | $this->assertSelectorStartsWithOrEquals('span.count', 1, '(1)'); |
| 216 | 216 | $this->assertSelectorStartsWithOrEquals('span.count', 2, '(1)'); |
| 217 | 217 | } |
@@ -542,13 +542,13 @@ discard block |
||
| 542 | 542 | $searchPage = $this->get($searchPageObj->URLSegment); |
| 543 | 543 | $this->assertEquals(200, $searchPage->getStatusCode()); |
| 544 | 544 | |
| 545 | - $response = $this->submitForm("ElasticSearchForm_SearchForm", null, array( |
|
| 546 | - 'q' => 'New Zealand' |
|
| 547 | - )); |
|
| 545 | + $response = $this->submitForm("ElasticSearchForm_SearchForm", null, array( |
|
| 546 | + 'q' => 'New Zealand' |
|
| 547 | + )); |
|
| 548 | 548 | |
| 549 | 549 | $url = rtrim($url, '/'); |
| 550 | - $this->assertEquals(302, $response->getStatusCode()); |
|
| 551 | - $this->assertEquals($url . '?q=New Zealand&sfid=testwithagg', $response->getHeader('Location')); |
|
| 550 | + $this->assertEquals(302, $response->getStatusCode()); |
|
| 551 | + $this->assertEquals($url . '?q=New Zealand&sfid=testwithagg', $response->getHeader('Location')); |
|
| 552 | 552 | } |
| 553 | 553 | |
| 554 | 554 | |
@@ -243,7 +243,7 @@ discard block |
||
| 243 | 243 | public function testQueryInSearchBoxForOneFormOnly() { |
| 244 | 244 | $searchPageObj = $this->ElasticSearchPage2; |
| 245 | 245 | $url = rtrim($searchPageObj->Link(), '/'); |
| 246 | - $url .= "?q=Auckland&sfid=".$searchPageObj->Identifier; |
|
| 246 | + $url .= "?q=Auckland&sfid=" . $searchPageObj->Identifier; |
|
| 247 | 247 | $response = $this->get($url); |
| 248 | 248 | $this->assertEquals(200, $response->getStatusCode()); |
| 249 | 249 | $this->assertAttributeHasExactValue('#ElasticSearchForm_SearchForm_q', 'q', |
@@ -378,7 +378,7 @@ discard block |
||
| 378 | 378 | $ctr = 0; |
| 379 | 379 | |
| 380 | 380 | // results vary slightly due to sharding, hence check for a string instead of absolute results |
| 381 | - while ($ctr < 18) { |
|
| 381 | + while($ctr < 18) { |
|
| 382 | 382 | $this->assertSelectorContains('div.searchResult a', $ctr, 'New Orleans, Southern Pacific'); |
| 383 | 383 | $ctr++; |
| 384 | 384 | $this->assertSelectorStartsWithOrEquals('div.searchResult a', $ctr, 'Similar'); |
@@ -397,13 +397,13 @@ discard block |
||
| 397 | 397 | $url = rtrim($searchPageObj->Link(), '/'); |
| 398 | 398 | $url .= "?q=New%20Zealind&TestMode=true"; |
| 399 | 399 | $response = $this->get($url); |
| 400 | - error_log(print_r($response,1)); |
|
| 400 | + error_log(print_r($response, 1)); |
|
| 401 | 401 | $this->assertEquals(200, $response->getStatusCode()); |
| 402 | 402 | |
| 403 | 403 | $ctr = 0; |
| 404 | 404 | |
| 405 | 405 | // results vary slightly due to sharding, hence check for a string instead of absolute results |
| 406 | - while ($ctr < 18) { |
|
| 406 | + while($ctr < 18) { |
|
| 407 | 407 | $this->assertSelectorContains('div.searchResult a', $ctr, 'New'); |
| 408 | 408 | $ctr++; |
| 409 | 409 | $this->assertSelectorStartsWithOrEquals('div.searchResult a', $ctr, 'Similar'); |
@@ -501,7 +501,7 @@ discard block |
||
| 501 | 501 | //Note pages need to be published, by default fixtures only reside in Stage |
| 502 | 502 | $searchPageObj = $this->ElasticSearchPage2; |
| 503 | 503 | $url = rtrim($searchPageObj->Link(), '/'); |
| 504 | - $url = $url.'?q='.$searchTerm; |
|
| 504 | + $url = $url . '?q=' . $searchTerm; |
|
| 505 | 505 | $response = $this->get($url); |
| 506 | 506 | $this->assertEquals(200, $response->getStatusCode()); |
| 507 | 507 | |
@@ -568,7 +568,7 @@ discard block |
||
| 568 | 568 | //Note pages need to be published, by default fixtures only reside in Stage |
| 569 | 569 | $searchPageObj = $this->ElasticSearchPage; |
| 570 | 570 | $url = rtrim($searchPageObj->Link(), '/'); |
| 571 | - $url = $url.'?q='.$searchTerm; |
|
| 571 | + $url = $url . '?q=' . $searchTerm; |
|
| 572 | 572 | $response = $this->get($url); |
| 573 | 573 | $this->assertEquals(200, $response->getStatusCode()); |
| 574 | 574 | |
@@ -699,18 +699,18 @@ discard block |
||
| 699 | 699 | //increase the number of results and assert that they are the same as per pages 1,2 joined |
| 700 | 700 | $searchPageObj->ResultsPerPage = 20; |
| 701 | 701 | $searchPageObj->write(); |
| 702 | - $searchPageObj->publish('Stage','Live'); |
|
| 702 | + $searchPageObj->publish('Stage', 'Live'); |
|
| 703 | 703 | $response3 = $this->get($firstPageURL); |
| 704 | 704 | } |
| 705 | 705 | |
| 706 | 706 | |
| 707 | 707 | private function enableHighlights() { |
| 708 | - foreach (SearchableField::get()->filter('Name', 'Title') as $sf) { |
|
| 708 | + foreach(SearchableField::get()->filter('Name', 'Title') as $sf) { |
|
| 709 | 709 | $sf->ShowHighlights = true; |
| 710 | 710 | $sf->write(); |
| 711 | 711 | } |
| 712 | 712 | |
| 713 | - foreach (SearchableField::get()->filter('Name', 'Content') as $sf) { |
|
| 713 | + foreach(SearchableField::get()->filter('Name', 'Content') as $sf) { |
|
| 714 | 714 | $sf->ShowHighlights = true; |
| 715 | 715 | $sf->write(); |
| 716 | 716 | } |