Updates subscription forms to use assets manifest
Adds unit tests
This commit is contained in:
@ -121,4 +121,16 @@ class Renderer {
|
||||
json_decode(file_get_contents($manifest_file), true) :
|
||||
false;
|
||||
}
|
||||
|
||||
function getJsAsset($asset) {
|
||||
return (!empty($this->assets_manifest_js[$asset])) ?
|
||||
$this->assets_manifest_js[$asset] :
|
||||
$asset;
|
||||
}
|
||||
|
||||
function getCssAsset($asset) {
|
||||
return (!empty($this->assets_manifest_css[$asset])) ?
|
||||
$this->assets_manifest_css[$asset] :
|
||||
$asset;
|
||||
}
|
||||
}
|
@ -87,17 +87,22 @@ class Widget {
|
||||
}
|
||||
|
||||
function setupDependencies() {
|
||||
wp_enqueue_style('mailpoet_public', Env::$assets_url.'/css/public.css');
|
||||
wp_enqueue_style(
|
||||
'mailpoet_public',
|
||||
Env::$assets_url . '/css/' . $this->renderer->getCssAsset('public.css')
|
||||
);
|
||||
|
||||
wp_enqueue_script('mailpoet_vendor',
|
||||
Env::$assets_url.'/js/vendor.js',
|
||||
wp_enqueue_script(
|
||||
'mailpoet_vendor',
|
||||
Env::$assets_url . '/js/' . $this->renderer->getJsAsset('vendor.js'),
|
||||
array(),
|
||||
Env::$version,
|
||||
true
|
||||
);
|
||||
|
||||
wp_enqueue_script('mailpoet_public',
|
||||
Env::$assets_url.'/js/public.js',
|
||||
wp_enqueue_script(
|
||||
'mailpoet_public',
|
||||
Env::$assets_url . '/js/' . $this->renderer->getJsAsset('public.js'),
|
||||
array(),
|
||||
Env::$version,
|
||||
true
|
||||
@ -110,15 +115,17 @@ class Widget {
|
||||
}
|
||||
|
||||
function setupAdminWidgetPageDependencies() {
|
||||
wp_enqueue_script('mailpoet_vendor',
|
||||
Env::$assets_url.'/js/vendor.js',
|
||||
wp_enqueue_script(
|
||||
'mailpoet_vendor',
|
||||
Env::$assets_url . '/js/' . $this->renderer->getJsAsset('vendor.js'),
|
||||
array(),
|
||||
Env::$version,
|
||||
true
|
||||
);
|
||||
|
||||
wp_enqueue_script('mailpoet_admin',
|
||||
Env::$assets_url.'/js/mailpoet.js',
|
||||
wp_enqueue_script(
|
||||
'mailpoet_admin',
|
||||
Env::$assets_url . '/js/' . $this->renderer->getJsAsset('mailpoet.js'),
|
||||
array(),
|
||||
Env::$version,
|
||||
true
|
||||
|
@ -23,8 +23,8 @@ class RendererTest extends MailPoetTest {
|
||||
'script2.js' => 'script2.hash.js'
|
||||
);
|
||||
$assets_manifest_css = array(
|
||||
'style1.js' => 'style1.hash.js',
|
||||
'style2.js' => 'style2.hash.js'
|
||||
'style1.css' => 'style1.hash.css',
|
||||
'style2.css' => 'style2.hash.css'
|
||||
);
|
||||
file_put_contents(Env::$temp_path . '/js.json', json_encode($assets_manifest_js));
|
||||
file_put_contents(Env::$temp_path . '/css.json', json_encode($assets_manifest_css));
|
||||
@ -37,6 +37,28 @@ class RendererTest extends MailPoetTest {
|
||||
expect($this->renderer->getAssetManifest(Env::$temp_path . '/js.json'))->false();
|
||||
}
|
||||
|
||||
function testItCanGetCssAsset() {
|
||||
$assets_manifest_css = array(
|
||||
'style1.css' => 'style1.hash.css',
|
||||
'style2.css' => 'style2.hash.css'
|
||||
);
|
||||
$renderer = $this->renderer;
|
||||
$renderer->assets_manifest_css = $assets_manifest_css;
|
||||
expect($renderer->getCssAsset('style1.css'))->equals('style1.hash.css');
|
||||
expect($renderer->getCssAsset('style2.css'))->equals('style2.hash.css');
|
||||
}
|
||||
|
||||
function testItCanGetJsAsset() {
|
||||
$assets_manifest_js = array(
|
||||
'script1.js' => 'script1.hash.js',
|
||||
'script2.js' => 'script2.hash.js'
|
||||
);
|
||||
$renderer = $this->renderer;
|
||||
$renderer->assets_manifest_js = $assets_manifest_js;
|
||||
expect($renderer->getJsAsset('script1.js'))->equals('script1.hash.js');
|
||||
expect($renderer->getJsAsset('script2.js'))->equals('script2.hash.js');
|
||||
}
|
||||
|
||||
function testItWillNotEnableCacheWhenWpDebugIsOn() {
|
||||
$result = $this->renderer->detectCache();
|
||||
expect($result)->equals(false);
|
||||
|
Reference in New Issue
Block a user