@@ 89-94 (lines=6) @@ | ||
86 | $this->assertTrue( $availability['apple']['available'] ); |
|
87 | } |
|
88 | ||
89 | function test_registered_block_is_not_available() { |
|
90 | Jetpack_Gutenberg::set_extension_unavailable( 'jetpack/banana', 'bar' ); |
|
91 | $availability = Jetpack_Gutenberg::get_availability(); |
|
92 | $this->assertFalse( $availability['banana']['available'], 'banana is available!' ); |
|
93 | $this->assertEquals( $availability['banana']['unavailable_reason'], 'bar', 'unavailable_reason is not "bar"' ); |
|
94 | } |
|
95 | ||
96 | function test_registered_block_is_not_available_when_not_defined_in_whitelist() { |
|
97 | jetpack_register_block( 'jetpack/durian' ); |
|
@@ 102-108 (lines=7) @@ | ||
99 | $this->assertArrayNotHasKey( 'durian', $availability, 'durian is available!' ); |
|
100 | } |
|
101 | ||
102 | function test_block_is_not_available_when_not_registered_returns_missing_module() { |
|
103 | $availability = Jetpack_Gutenberg::get_availability(); |
|
104 | ||
105 | // 'unavailable_reason' should be 'missing_module' if the block wasn't registered |
|
106 | $this->assertFalse( $availability['grape']['available'], 'Availability is not false exists' ); |
|
107 | $this->assertEquals( $availability['grape']['unavailable_reason'], 'missing_module', 'unavailable_reason is not "missing_module"' ); |
|
108 | } |
|
109 | ||
110 | // Plugins |
|
111 | function test_registered_plugin_is_available() { |
|
@@ 117-122 (lines=6) @@ | ||
114 | $this->assertTrue( $availability['onion']['available'] ); |
|
115 | } |
|
116 | ||
117 | function test_registered_plugin_is_not_available() { |
|
118 | Jetpack_Gutenberg::set_extension_unavailable( 'jetpack/potato', 'bar' ); |
|
119 | $availability = Jetpack_Gutenberg::get_availability(); |
|
120 | $this->assertFalse( $availability['potato']['available'], 'potato is available!' ); |
|
121 | $this->assertEquals( $availability['potato']['unavailable_reason'], 'bar', 'unavailable_reason is not "bar"' ); |
|
122 | } |
|
123 | ||
124 | function test_registered_plugin_is_not_available_when_not_defined_in_whitelist() { |
|
125 | Jetpack_Gutenberg::set_extension_available( 'jetpack/parsnip' ); |
|
@@ 131-137 (lines=7) @@ | ||
128 | ||
129 | } |
|
130 | ||
131 | function test_plugin_is_not_available_when_not_registered_returns_missing_module() { |
|
132 | $availability = Jetpack_Gutenberg::get_availability(); |
|
133 | ||
134 | // 'unavailable_reason' should be 'missing_module' if the block wasn't registered |
|
135 | $this->assertFalse( $availability['tomato']['available'], 'Availability is not false exists' ); |
|
136 | $this->assertEquals( $availability['tomato']['unavailable_reason'], 'missing_module', 'unavailable_reason is not "missing_module"' ); |
|
137 | } |
|
138 | ||
139 | function test_get_available_extensions() { |
|
140 | $extensions = Jetpack_Gutenberg::get_available_extensions( $this->get_extensions_whitelist() ); |