diff --git a/composer.json b/composer.json
index 1fde1c78a15f..9eeabe5eeea8 100644
--- a/composer.json
+++ b/composer.json
@@ -35,5 +35,7 @@
"type": "path",
"url": "./packages/*"
}
- ]
+ ],
+ "minimum-stability": "dev",
+ "prefer-stable": true
}
diff --git a/composer.lock b/composer.lock
index 32c672de1bab..7fb81dae8dab 100644
--- a/composer.lock
+++ b/composer.lock
@@ -4,7 +4,7 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
- "content-hash": "b711e37a57a39e3470c4af334eab9c50",
+ "content-hash": "49dfae78b865b05e4de33278963c050b",
"packages": [
{
"name": "automattic/jetpack-asset-tools",
@@ -30,11 +30,11 @@
},
{
"name": "automattic/jetpack-connection",
- "version": "1.0.0",
+ "version": "dev-master",
"dist": {
"type": "path",
"url": "./packages/connection",
- "reference": "ca7edb2022bf0c5b1e045a2ad5d2c5229c364a4f"
+ "reference": "eb2ab1a317d710fbe651a20fa580d523e303d848"
},
"require": {
"automattic/jetpack-constants": "@dev",
@@ -95,20 +95,29 @@
"dist": {
"type": "path",
"url": "./packages/jitm",
- "reference": "de0110b1cce11fd0728ec3d8fcd03d457239354a"
+ "reference": "853d6934703fce515f16d5f3450cbb51ed05d09e"
},
"require": {
"automattic/jetpack-asset-tools": "@dev",
- "automattic/jetpack-connection": "^1.0",
+ "automattic/jetpack-connection": "@dev",
"automattic/jetpack-constants": "@dev",
"automattic/jetpack-logo": "@dev"
},
+ "require-dev": {
+ "phpunit/phpunit": "^5.7 || ^6.5 || ^7.5"
+ },
"type": "library",
"autoload": {
"psr-4": {
"Automattic\\Jetpack\\JITM\\": "src/"
}
},
+ "scripts": {
+ "phpunit": [
+ "@composer install",
+ "./vendor/phpunit/phpunit/phpunit --colors=always"
+ ]
+ },
"license": [
"GPL-2.0-or-later"
],
@@ -122,22 +131,12 @@
"url": "./packages/logo",
"reference": "aa3d128c9280d6186210a86b10f8bf5403f44be7"
},
- "require-dev": {
- "php-mock/php-mock": "^2.1",
- "phpunit/phpunit": "^5.7 || ^6.5 || ^7.5"
- },
"type": "library",
"autoload": {
"psr-4": {
"Automattic\\Jetpack\\Assets\\": "src/"
}
},
- "scripts": {
- "phpunit": [
- "@composer install",
- "./vendor/phpunit/phpunit/phpunit --colors=always"
- ]
- },
"license": [
"GPL-2.0-or-later"
],
@@ -685,7 +684,7 @@
}
],
"aliases": [],
- "minimum-stability": "stable",
+ "minimum-stability": "dev",
"stability-flags": {
"automattic/jetpack-connection": 20,
"automattic/jetpack-options": 20,
@@ -695,7 +694,7 @@
"automattic/jetpack-asset-tools": 20,
"automattic/jetpack-autoloader": 20
},
- "prefer-stable": false,
+ "prefer-stable": true,
"prefer-lowest": false,
"platform": {
"ext-openssl": "*"
diff --git a/packages/asset-tools/composer.json b/packages/asset-tools/composer.json
index 14b8ef5a7081..ae65a53d97fa 100644
--- a/packages/asset-tools/composer.json
+++ b/packages/asset-tools/composer.json
@@ -16,5 +16,7 @@
"type": "path",
"url": "../*"
}
- ]
+ ],
+ "minimum-stability": "dev",
+ "prefer-stable": true
}
diff --git a/packages/autoloader/composer.json b/packages/autoloader/composer.json
index 2a6bba463fa6..a96cfeff9739 100644
--- a/packages/autoloader/composer.json
+++ b/packages/autoloader/composer.json
@@ -13,5 +13,7 @@
},
"extra": {
"class": "Automattic\\Jetpack\\Autoloader\\CustomAutoloaderPlugin"
- }
+ },
+ "minimum-stability": "dev",
+ "prefer-stable": true
}
diff --git a/packages/connection/composer.json b/packages/connection/composer.json
index 3c8f2f566597..1f75092bf68a 100644
--- a/packages/connection/composer.json
+++ b/packages/connection/composer.json
@@ -3,7 +3,6 @@
"description": "Everything needed to connect to the Jetpack infrastructure",
"type": "library",
"license": "GPL-2.0-or-later",
- "version": "1.0.0",
"require": {
"automattic/jetpack-constants": "@dev",
"automattic/jetpack-options": "@dev"
@@ -28,5 +27,7 @@
"type": "path",
"url": "../*"
}
- ]
+ ],
+ "minimum-stability": "dev",
+ "prefer-stable": true
}
diff --git a/packages/constants/composer.json b/packages/constants/composer.json
index 0c09306ea3be..cb11ce4ddbf9 100644
--- a/packages/constants/composer.json
+++ b/packages/constants/composer.json
@@ -17,5 +17,7 @@
"@composer install",
"./vendor/phpunit/phpunit/phpunit --colors=always"
]
- }
+ },
+ "minimum-stability": "dev",
+ "prefer-stable": true
}
diff --git a/packages/jitm/composer.json b/packages/jitm/composer.json
index f101fd1cb870..397327f7ffb9 100644
--- a/packages/jitm/composer.json
+++ b/packages/jitm/composer.json
@@ -5,10 +5,14 @@
"license": "GPL-2.0-or-later",
"require": {
"automattic/jetpack-asset-tools": "@dev",
- "automattic/jetpack-connection": "^1.0",
+ "automattic/jetpack-connection": "@dev",
"automattic/jetpack-logo": "@dev",
"automattic/jetpack-constants": "@dev"
},
+ "require-dev": {
+ "phpunit/phpunit": "^5.7 || ^6.5 || ^7.5",
+ "php-mock/php-mock": "^2.1"
+ },
"autoload": {
"psr-4": {
"Automattic\\Jetpack\\JITM\\": "src/"
@@ -19,5 +23,13 @@
"type": "path",
"url": "../*"
}
- ]
+ ],
+ "scripts": {
+ "phpunit": [
+ "@composer install",
+ "./vendor/phpunit/phpunit/phpunit --colors=always"
+ ]
+ },
+ "minimum-stability": "dev",
+ "prefer-stable": true
}
diff --git a/packages/jitm/phpunit.xml.dist b/packages/jitm/phpunit.xml.dist
new file mode 100644
index 000000000000..443d8a0ace77
--- /dev/null
+++ b/packages/jitm/phpunit.xml.dist
@@ -0,0 +1,7 @@
+
+
+
+ tests/php
+
+
+
diff --git a/packages/jitm/tests/php/bootstrap.php b/packages/jitm/tests/php/bootstrap.php
new file mode 100644
index 000000000000..48b34a7a581b
--- /dev/null
+++ b/packages/jitm/tests/php/bootstrap.php
@@ -0,0 +1,3 @@
+setNamespace( __NAMESPACE__ )
+ ->setName( 'add_action' )
+ ->setFunction( function() {} );
+ $builder->build()->enable();
+ }
+
+ public function tearDown() {
+ Mock::disableAll();
+ }
+
+ public function test_jitm_disabled_by_filter() {
+ $this->mock_filters( array(
+ array( 'jetpack_just_in_time_msgs', false, false ),
+ ) );
+
+ $this->assertFalse( Jetpack_JITM::init() );
+
+ $this->clear_mock_filters();
+ }
+
+ public function test_jitm_enabled_by_default() {
+ $this->mock_filters( array(
+ array( 'jetpack_just_in_time_msgs', false, true ),
+ ) );
+
+ $this->assertTrue( ! ! Jetpack_JITM::init() );
+
+ $this->clear_mock_filters();
+ }
+
+ protected function mock_filters( $filters ) {
+ $this->mocked_filters = $filters;
+ $builder = new MockBuilder();
+ $builder->setNamespace( __NAMESPACE__ )
+ ->setName( 'apply_filters' )
+ ->setFunction(
+ function() {
+ $current_args = func_get_args();
+ foreach ( $this->mocked_filters as $filter ) {
+ if ( array_slice( $filter, 0, -1 ) === $current_args ) {
+ return array_pop( $filter );
+ }
+ }
+ }
+ );
+ $this->apply_filters_mock = $builder->build();
+ $this->apply_filters_mock->enable();
+ }
+
+ protected function clear_mock_filters() {
+ $this->apply_filters_mock->disable();
+ unset( $this->mocked_filters );
+ }
+}
diff --git a/packages/logo/composer.json b/packages/logo/composer.json
index df975ad7d09a..104c0d931246 100644
--- a/packages/logo/composer.json
+++ b/packages/logo/composer.json
@@ -18,5 +18,7 @@
"@composer install",
"./vendor/phpunit/phpunit/phpunit --colors=always"
]
- }
+ },
+ "minimum-stability": "dev",
+ "prefer-stable": true
}
diff --git a/packages/options/composer.json b/packages/options/composer.json
index c63a531ae653..0058727beea5 100644
--- a/packages/options/composer.json
+++ b/packages/options/composer.json
@@ -20,5 +20,7 @@
"type": "path",
"url": "../*"
}
- ]
+ ],
+ "minimum-stability": "dev",
+ "prefer-stable": true
}
diff --git a/phpunit.xml.dist b/phpunit.xml.dist
index 41d345b9a9c9..25961d4346fc 100644
--- a/phpunit.xml.dist
+++ b/phpunit.xml.dist
@@ -75,9 +75,6 @@
tests/php/test_class.jetpack-idc.php
-
- tests/php/test_class.jetpack-jitm.php
-
tests/php/test_class.jetpack-affiliate.php
diff --git a/tests/php/test_class.jetpack-jitm.php b/tests/php/test_class.jetpack-jitm.php
deleted file mode 100644
index e60bcba8003b..000000000000
--- a/tests/php/test_class.jetpack-jitm.php
+++ /dev/null
@@ -1,14 +0,0 @@
-assertFalse( Jetpack_JITM::init() );
- }
-
- function test_jitm_enabled_by_default() {
- $this->assertTrue( ! ! Jetpack_JITM::init() );
- }
-}