Skip to content

Commit

Permalink
Changed the settings of ELASTIC_CLIENT_URL_PLUS_AS_SPACE
Browse files Browse the repository at this point in the history
  • Loading branch information
ezimuel committed Apr 19, 2023
1 parent 6e2967b commit b35ec5e
Show file tree
Hide file tree
Showing 2 changed files with 31 additions and 9 deletions.
7 changes: 4 additions & 3 deletions src/Elasticsearch/Utility.php
Original file line number Diff line number Diff line change
Expand Up @@ -40,8 +40,9 @@ public static function getEnv(string $env)
*/
public static function urlencode(string $url): string
{
return self::getEnv(self::ENV_URL_PLUS_AS_SPACE) === 'true'
? rawurlencode($url)
: urlencode($url);
$plusAsSpace = self::getEnv(self::ENV_URL_PLUS_AS_SPACE);
return $plusAsSpace === false || $plusAsSpace === 'true'
? urlencode($url)
: rawurlencode($url);
}
}
33 changes: 27 additions & 6 deletions tests/Elasticsearch/Tests/UtilityTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -48,30 +48,51 @@ public function testGetEnvWithPutEnv()
$this->assertEquals('true', Utility::getEnv(Utility::ENV_URL_PLUS_AS_SPACE));
}

public function testUrlencodeWithDefault()
public function testUrlWithPlusAsDefault()
{
$url = Utility::urlencode('bar baz');
$this->assertEquals('bar+baz', $url);
}

public function testUrlencodeWithDollarServer()
public function testUrlWithPlusWithDollarServer()
{
$_SERVER[Utility::ENV_URL_PLUS_AS_SPACE] = 'true';
$url = Utility::urlencode('bar baz');
$this->assertEquals('bar%20baz', $url);
$this->assertEquals('bar+baz', $url);
}

public function testUrlencodeWithDollarEnv()
public function testUrlWithPlusWithDollarEnv()
{
$_ENV[Utility::ENV_URL_PLUS_AS_SPACE] = 'true';
$url = Utility::urlencode('bar baz');
$this->assertEquals('bar%20baz', $url);
$this->assertEquals('bar+baz', $url);
}

public function testUrlencodeWithPutEnv()
public function testUrlWithPlusWithPutEnv()
{
putenv(Utility::ENV_URL_PLUS_AS_SPACE . '=true');
$url = Utility::urlencode('bar baz');
$this->assertEquals('bar+baz', $url);
}

public function testUrlWith2BWithDollarServer()
{
$_SERVER[Utility::ENV_URL_PLUS_AS_SPACE] = 'false';
$url = Utility::urlencode('bar baz');
$this->assertEquals('bar%20baz', $url);
}

public function testUrlWith2BWithDollarEnv()
{
$_ENV[Utility::ENV_URL_PLUS_AS_SPACE] = 'false';
$url = Utility::urlencode('bar baz');
$this->assertEquals('bar%20baz', $url);
}

public function testUrlWith2BWithPutEnv()
{
putenv(Utility::ENV_URL_PLUS_AS_SPACE . '=false');
$url = Utility::urlencode('bar baz');
$this->assertEquals('bar%20baz', $url);
}
}

0 comments on commit b35ec5e

Please sign in to comment.