diff --git a/.travis.yml b/.travis.yml index 567178d0f..bf1069611 100644 --- a/.travis.yml +++ b/.travis.yml @@ -26,7 +26,7 @@ matrix: before_script: - pear install pear/PHP_CodeSniffer - phpenv rehash - - ./tests/travis/before_script ~/builds/ss + - ./tests/travis/before.php --target ~/builds/ss --version="3.0.x-dev" --installer="3.0" - cd ~/builds/ss script: diff --git a/control/HTTPResponse.php b/control/HTTPResponse.php index 45fed8e2c..a7661e7b3 100644 --- a/control/HTTPResponse.php +++ b/control/HTTPResponse.php @@ -160,10 +160,6 @@ class SS_HTTPResponse { */ public function setBody($body) { $this->body = $body; - - // Set content-length in bytes. Use mbstring to avoid problems with - // mb_internal_encoding() and mbstring.func_overload - $this->headers['Content-Length'] = mb_strlen($this->body,'8bit'); } /** diff --git a/tests/control/HTTPResponseTest.php b/tests/control/HTTPResponseTest.php index f1b02e048..40b0d3ab3 100644 --- a/tests/control/HTTPResponseTest.php +++ b/tests/control/HTTPResponseTest.php @@ -13,23 +13,6 @@ class HTTPResponseTest extends SapphireTest { ); } - public function testContentLengthHeader() { - $r = new SS_HTTPResponse('123ü'); - $this->assertNotNull($r->getHeader('Content-Length'), 'Content-length header is added'); - $this->assertEquals( - 5, - $r->getHeader('Content-Length'), - 'Header matches actual content length in bytes' - ); - - $r->setBody('1234ü'); - $this->assertEquals( - 6, - $r->getHeader('Content-Length'), - 'Header is updated when body is changed' - ); - } - public function testHTTPResponseException() { $response = new SS_HTTPResponse("Test", 200, 'OK'); @@ -61,4 +44,4 @@ class HTTPResponseTest extends SapphireTest { $this->assertFalse(true, 'Something went wrong with our test exception'); } -} +} \ No newline at end of file diff --git a/tests/travis/before.php b/tests/travis/before.php new file mode 100755 index 000000000..41427f2ea --- /dev/null +++ b/tests/travis/before.php @@ -0,0 +1,83 @@ +#!/usr/bin/env php + $version, + 'dist' => array( + 'type' => 'tar', + 'url' => "file://$parent/framework.tar" + ) +); + +// Generate a custom composer file. +$composer = json_encode(array( + 'repositories' => array(array('type' => 'package', 'package' => $package)), + 'require' => array( + 'silverstripe/framework' => $version, + 'silverstripe/postgresql' => '*', + 'silverstripe/sqlite3' => '*' + ), + 'minimum-stability' => 'dev' +)); + +echo "Generated composer file:\n"; +echo "$composer\n\n"; + +echo "Archiving framework...\n"; +`cd $framework`; +`tar -cf $parent/framework.tar .`; + +echo "Cloning installer@$installer...\n"; +`git clone --depth=100 --quiet -b $installer git://github.com/silverstripe/silverstripe-installer.git $target`; + +echo "Setting up project...\n"; +`cp $dir/_ss_environment.php $target`; +`cp $dir/_config.php $target/mysite`; + +echo "Replacing composer file...\n"; +unlink("$target/composer.json"); +file_put_contents("$target/composer.json", $composer); + +echo "Running composer...\n"; +`composer install --dev -d $target`; diff --git a/tests/travis/before_script b/tests/travis/before_script deleted file mode 100755 index cc270a4be..000000000 --- a/tests/travis/before_script +++ /dev/null @@ -1,34 +0,0 @@ -#!/bin/sh - -### USAGE: before_script - -BUILD_DIR=$1 - -# Environment info -echo "# Environment info" -echo " - `php --version`" -echo " - `mysql --version`" -echo " - `pg_config --version`" -echo " - SQLite3 `sqlite3 -version`" -echo "" - -# Fetch all dependencies -# TODO Replace with different composer.json variations - -echo "Checking out installer@3.1" -git clone --depth=100 --quiet -b 3.1 git://github.com/silverstripe/silverstripe-installer.git $BUILD_DIR - -echo "Checking out sqlite3@master" -git clone --depth=100 --quiet git://github.com/silverstripe-labs/silverstripe-sqlite3.git $BUILD_DIR/sqlite3 - -echo "Checking out postgresql@master" -git clone --depth=100 --quiet git://github.com/silverstripe/silverstripe-postgresql.git $BUILD_DIR/postgresql - -# Copy setup files -cp ./tests/travis/_ss_environment.php $BUILD_DIR -cp ./tests/travis/_config.php $BUILD_DIR/mysite - -# Copy actual project code into build directory (checked out by travis) -cp -r . $BUILD_DIR/framework - -cd $BUILD_DIR