Changeset 58328 for trunk/tests/phpunit/tests/theme/wpThemeJson.php
- Timestamp:
- 06/04/2024 11:53:37 AM (2 years ago)
- File:
-
- 1 edited
-
trunk/tests/phpunit/tests/theme/wpThemeJson.php (modified) (45 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/tests/phpunit/tests/theme/wpThemeJson.php
r58314 r58328 3301 3301 $theme = new WP_Theme_JSON( 3302 3302 array( 3303 'version' => 2,3303 'version' => WP_Theme_JSON::LATEST_SCHEMA, 3304 3304 'settings' => array( 3305 3305 'color' => array( … … 3322 3322 $user = new WP_Theme_JSON( 3323 3323 array( 3324 'version' => 2,3324 'version' => WP_Theme_JSON::LATEST_SCHEMA, 3325 3325 'settings' => array( 3326 3326 'color' => array( … … 3346 3346 $actual = $theme->get_data(); 3347 3347 $expected = array( 3348 'version' => 2,3348 'version' => WP_Theme_JSON::LATEST_SCHEMA, 3349 3349 'settings' => array( 3350 3350 'color' => array( … … 3379 3379 $theme = new WP_Theme_JSON( 3380 3380 array( 3381 'version' => 2,3381 'version' => WP_Theme_JSON::LATEST_SCHEMA, 3382 3382 'settings' => array( 3383 3383 'color' => array( … … 3401 3401 $actual = $theme->get_data(); 3402 3402 $expected = array( 3403 'version' => 2,3403 'version' => WP_Theme_JSON::LATEST_SCHEMA, 3404 3404 'settings' => array( 3405 3405 'color' => array( … … 3429 3429 $user = new WP_Theme_JSON( 3430 3430 array( 3431 'version' => 2,3431 'version' => WP_Theme_JSON::LATEST_SCHEMA, 3432 3432 'settings' => array( 3433 3433 'color' => array( … … 3452 3452 $actual = $user->get_data(); 3453 3453 $expected = array( 3454 'version' => 2,3454 'version' => WP_Theme_JSON::LATEST_SCHEMA, 3455 3455 'settings' => array( 3456 3456 'color' => array( … … 3478 3478 */ 3479 3479 public function test_export_data_deals_with_empty_data() { 3480 $theme _v2= new WP_Theme_JSON(3481 array( 3482 'version' => 2,3480 $theme = new WP_Theme_JSON( 3481 array( 3482 'version' => WP_Theme_JSON::LATEST_SCHEMA, 3483 3483 ), 3484 3484 'theme' 3485 3485 ); 3486 $actual_v2 = $theme_v2->get_data(); 3487 $expected_v2 = array( 'version' => 2 ); 3488 $this->assertEqualSetsWithIndex( $expected_v2, $actual_v2 ); 3489 3490 $theme_v1 = new WP_Theme_JSON( 3491 array( 3492 'version' => 1, 3493 ), 3494 'theme' 3495 ); 3496 $actual_v1 = $theme_v1->get_data(); 3497 $expected_v1 = array( 'version' => 2 ); 3498 $this->assertEqualSetsWithIndex( $expected_v1, $actual_v1 ); 3486 $actual = $theme->get_data(); 3487 $expected = array( 'version' => WP_Theme_JSON::LATEST_SCHEMA ); 3488 $this->assertEqualSetsWithIndex( $expected, $actual ); 3499 3489 } 3500 3490 … … 3505 3495 $theme = new WP_Theme_JSON( 3506 3496 array( 3507 'version' => 2,3497 'version' => WP_Theme_JSON::LATEST_SCHEMA, 3508 3498 'settings' => array( 3509 3499 'appearanceTools' => true, … … 3519 3509 $actual = $theme->get_data(); 3520 3510 $expected = array( 3521 'version' => 2,3511 'version' => WP_Theme_JSON::LATEST_SCHEMA, 3522 3512 'settings' => array( 3523 3513 'appearanceTools' => true, … … 3539 3529 $theme = new WP_Theme_JSON( 3540 3530 array( 3541 'version' => 2,3531 'version' => WP_Theme_JSON::LATEST_SCHEMA, 3542 3532 'settings' => array( 3543 3533 'useRootPaddingAwareAlignments' => true, … … 3553 3543 $actual = $theme->get_data(); 3554 3544 $expected = array( 3555 'version' => 2,3545 'version' => WP_Theme_JSON::LATEST_SCHEMA, 3556 3546 'settings' => array( 3557 3547 'useRootPaddingAwareAlignments' => true, … … 3645 3635 $theme_json = new WP_Theme_JSON( 3646 3636 array( 3647 'version' => 2,3637 'version' => WP_Theme_JSON::LATEST_SCHEMA, 3648 3638 'styles' => array( 3649 3639 'color' => array( … … 3730 3720 $theme_json = new WP_Theme_JSON( 3731 3721 array( 3732 'version' => 2,3722 'version' => WP_Theme_JSON::LATEST_SCHEMA, 3733 3723 'styles' => array( 3734 3724 'color' => array( … … 3768 3758 $theme_json = new WP_Theme_JSON( 3769 3759 array( 3770 'version' => 2,3760 'version' => WP_Theme_JSON::LATEST_SCHEMA, 3771 3761 'styles' => array( 3772 3762 'color' => array( … … 3805 3795 $theme_json = new WP_Theme_JSON( 3806 3796 array( 3807 'version' => 2,3797 'version' => WP_Theme_JSON::LATEST_SCHEMA, 3808 3798 'styles' => array( 3809 3799 'color' => array( … … 3831 3821 $theme_json = new WP_Theme_JSON( 3832 3822 array( 3833 'version' => 2,3823 'version' => WP_Theme_JSON::LATEST_SCHEMA, 3834 3824 'styles' => array( 3835 3825 'spacing' => array( … … 3868 3858 $theme_json = new WP_Theme_JSON( 3869 3859 array( 3870 'version' => 2,3860 'version' => WP_Theme_JSON::LATEST_SCHEMA, 3871 3861 'styles' => array( 3872 3862 'spacing' => array( … … 3901 3891 $theme_json = new WP_Theme_JSON( 3902 3892 array( 3903 'version' => 2,3893 'version' => WP_Theme_JSON::LATEST_SCHEMA, 3904 3894 'settings' => array( 3905 3895 'layout' => array( … … 3932 3922 $theme_json = new WP_Theme_JSON( 3933 3923 array( 3934 'version' => 2,3924 'version' => WP_Theme_JSON::LATEST_SCHEMA, 3935 3925 'settings' => array( 3936 3926 'appearanceTools' => true, … … 3955 3945 $theme_json = new WP_Theme_JSON( 3956 3946 array( 3957 'version' => 2,3947 'version' => WP_Theme_JSON::LATEST_SCHEMA, 3958 3948 'styles' => array( 3959 3949 'spacing' => array( … … 3974 3964 $actual = $theme_json->get_raw_data(); 3975 3965 $expected = array( 3976 'version' => 2,3966 'version' => WP_Theme_JSON::LATEST_SCHEMA, 3977 3967 'styles' => array( 3978 3968 'spacing' => array( … … 3998 3988 $theme_json = new WP_Theme_JSON( 3999 3989 array( 4000 'version' => 2,3990 'version' => WP_Theme_JSON::LATEST_SCHEMA, 4001 3991 'styles' => array( 4002 3992 'blocks' => array( … … 4022 4012 $sanitized_theme_json = $theme_json->get_raw_data(); 4023 4013 $expected = array( 4024 'version' => 2,4014 'version' => WP_Theme_JSON::LATEST_SCHEMA, 4025 4015 'styles' => array( 4026 4016 'blocks' => array( … … 4051 4041 $theme_json = new WP_Theme_JSON( 4052 4042 array( 4053 'version' => 2,4043 'version' => WP_Theme_JSON::LATEST_SCHEMA, 4054 4044 'styles' => array( 4055 4045 'blocks' => array( … … 4135 4125 $theme_json = new WP_Theme_JSON( 4136 4126 array( 4137 'version' => '2',4127 'version' => WP_Theme_JSON::LATEST_SCHEMA, 4138 4128 'badKey2' => 'I am Evil!', 4139 4129 'settings' => array( … … 4203 4193 4204 4194 $expected_sanitized = array( 4205 'version' => '2',4195 'version' => WP_Theme_JSON::LATEST_SCHEMA, 4206 4196 'settings' => array( 4207 4197 'typography' => array( … … 4272 4262 $theme_json = new WP_Theme_JSON( 4273 4263 array( 4274 'version' => 2,4264 'version' => WP_Theme_JSON::LATEST_SCHEMA, 4275 4265 'styles' => array( 4276 4266 'blocks' => array( … … 4320 4310 $theme_json = new WP_Theme_JSON( 4321 4311 array( 4322 'version' => 2,4312 'version' => WP_Theme_JSON::LATEST_SCHEMA, 4323 4313 'styles' => array( 4324 4314 'blocks' => array( … … 4474 4464 $theme_json = new WP_Theme_JSON( 4475 4465 array( 4476 'version' => 2,4466 'version' => WP_Theme_JSON::LATEST_SCHEMA, 4477 4467 'settings' => array( 4478 4468 'spacing' => array( … … 4480 4470 ), 4481 4471 ), 4482 ) 4483 );4484 4485 $theme_json->set_spacing_sizes(); 4472 ), 4473 'default' 4474 ); 4475 4486 4476 $this->assertSame( $expected_output, _wp_array_get( $theme_json->get_raw_data(), array( 'settings', 'spacing', 'spacingSizes', 'default' ) ) ); 4487 4477 } … … 4506 4496 'expected_output' => array( 4507 4497 array( 4508 'name' => ' 1',4498 'name' => 'Medium', 4509 4499 'slug' => '50', 4510 4500 'size' => '4rem', … … 4522 4512 'expected_output' => array( 4523 4513 array( 4524 'name' => ' 1',4514 'name' => 'Medium', 4525 4515 'slug' => '50', 4526 4516 'size' => '4rem', 4527 4517 ), 4528 4518 array( 4529 'name' => ' 2',4519 'name' => 'Large', 4530 4520 'slug' => '60', 4531 4521 'size' => '5.5rem', … … 4543 4533 'expected_output' => array( 4544 4534 array( 4545 'name' => ' 1',4535 'name' => 'Small', 4546 4536 'slug' => '40', 4547 4537 'size' => '2.5rem', 4548 4538 ), 4549 4539 array( 4550 'name' => ' 2',4540 'name' => 'Medium', 4551 4541 'slug' => '50', 4552 4542 'size' => '4rem', 4553 4543 ), 4554 4544 array( 4555 'name' => ' 3',4545 'name' => 'Large', 4556 4546 'slug' => '60', 4557 4547 'size' => '5.5rem', … … 4569 4559 'expected_output' => array( 4570 4560 array( 4571 'name' => ' 1',4561 'name' => 'Small', 4572 4562 'slug' => '40', 4573 4563 'size' => '2.5rem', 4574 4564 ), 4575 4565 array( 4576 'name' => ' 2',4566 'name' => 'Medium', 4577 4567 'slug' => '50', 4578 4568 'size' => '4rem', 4579 4569 ), 4580 4570 array( 4581 'name' => ' 3',4571 'name' => 'Large', 4582 4572 'slug' => '60', 4583 4573 'size' => '5.5rem', 4584 4574 ), 4585 4575 array( 4586 'name' => ' 4',4576 'name' => 'X-Large', 4587 4577 'slug' => '70', 4588 4578 'size' => '7rem', … … 4600 4590 'expected_output' => array( 4601 4591 array( 4602 'name' => ' 1',4592 'name' => 'Small', 4603 4593 'slug' => '40', 4604 4594 'size' => '2.5rem', 4605 4595 ), 4606 4596 array( 4607 'name' => ' 2',4597 'name' => 'Medium', 4608 4598 'slug' => '50', 4609 4599 'size' => '5rem', 4610 4600 ), 4611 4601 array( 4612 'name' => ' 3',4602 'name' => 'Large', 4613 4603 'slug' => '60', 4614 4604 'size' => '7.5rem', 4615 4605 ), 4616 4606 array( 4617 'name' => ' 4',4607 'name' => 'X-Large', 4618 4608 'slug' => '70', 4619 4609 'size' => '10rem', 4620 4610 ), 4621 4611 array( 4622 'name' => ' 5',4612 'name' => '2X-Large', 4623 4613 'slug' => '80', 4624 4614 'size' => '12.5rem', … … 4636 4626 'expected_output' => array( 4637 4627 array( 4638 'name' => ' 1',4628 'name' => 'X-Small', 4639 4629 'slug' => '30', 4640 4630 'size' => '0.67rem', 4641 4631 ), 4642 4632 array( 4643 'name' => ' 2',4633 'name' => 'Small', 4644 4634 'slug' => '40', 4645 4635 'size' => '1rem', 4646 4636 ), 4647 4637 array( 4648 'name' => ' 3',4638 'name' => 'Medium', 4649 4639 'slug' => '50', 4650 4640 'size' => '1.5rem', 4651 4641 ), 4652 4642 array( 4653 'name' => ' 4',4643 'name' => 'Large', 4654 4644 'slug' => '60', 4655 4645 'size' => '2.25rem', 4656 4646 ), 4657 4647 array( 4658 'name' => ' 5',4648 'name' => 'X-Large', 4659 4649 'slug' => '70', 4660 4650 'size' => '3.38rem', … … 4672 4662 'expected_output' => array( 4673 4663 array( 4674 'name' => ' 1',4664 'name' => 'X-Small', 4675 4665 'slug' => '30', 4676 4666 'size' => '0.09rem', 4677 4667 ), 4678 4668 array( 4679 'name' => ' 2',4669 'name' => 'Small', 4680 4670 'slug' => '40', 4681 4671 'size' => '0.38rem', 4682 4672 ), 4683 4673 array( 4684 'name' => ' 3',4674 'name' => 'Medium', 4685 4675 'slug' => '50', 4686 4676 'size' => '1.5rem', 4687 4677 ), 4688 4678 array( 4689 'name' => ' 4',4679 'name' => 'Large', 4690 4680 'slug' => '60', 4691 4681 'size' => '6rem', 4692 4682 ), 4693 4683 array( 4694 'name' => ' 5',4684 'name' => 'X-Large', 4695 4685 'slug' => '70', 4696 4686 'size' => '24rem', … … 4763 4753 */ 4764 4754 public function test_set_spacing_sizes_when_invalid( $spacing_scale, $expected_output ) { 4765 $this->expectException( Exception::class );4766 $this->expectExceptionMessage( 'Some of the theme.json settings.spacing.spacingScale values are invalid' );4767 4768 4755 $theme_json = new WP_Theme_JSON( 4769 4756 array( 4770 'version' => 2,4757 'version' => WP_Theme_JSON::LATEST_SCHEMA, 4771 4758 'settings' => array( 4772 4759 'spacing' => array( … … 4774 4761 ), 4775 4762 ), 4776 ) 4777 ); 4778 4779 // Ensure PHPUnit 10 compatibility. 4780 set_error_handler( 4781 static function ( $errno, $errstr ) { 4782 restore_error_handler(); 4783 throw new Exception( $errstr, $errno ); 4784 }, 4785 E_ALL 4786 ); 4787 4788 $theme_json->set_spacing_sizes(); 4789 4790 restore_error_handler(); 4763 ), 4764 'default' 4765 ); 4791 4766 4792 4767 $this->assertSame( $expected_output, _wp_array_get( $theme_json->get_raw_data(), array( 'settings', 'spacing', 'spacingSizes', 'default' ) ) ); … … 4810 4785 'unit' => 'rem', 4811 4786 ), 4812 'expected_output' => null,4787 'expected_output' => array(), 4813 4788 ), 4814 4789 'non numeric increment' => array( … … 4820 4795 'unit' => 'rem', 4821 4796 ), 4822 'expected_output' => null,4797 'expected_output' => array(), 4823 4798 ), 4824 4799 'non numeric steps' => array( … … 4830 4805 'unit' => 'rem', 4831 4806 ), 4832 'expected_output' => null,4807 'expected_output' => array(), 4833 4808 ), 4834 4809 'non numeric medium step' => array( … … 4840 4815 'unit' => 'rem', 4841 4816 ), 4842 'expected_output' => null,4817 'expected_output' => array(), 4843 4818 ), 4844 4819 'missing unit value' => array( … … 4849 4824 'mediumStep' => 4, 4850 4825 ), 4851 'expected_output' => null,4826 'expected_output' => array(), 4852 4827 ), 4853 4828 );
Note:
See TracChangeset
for help on using the changeset viewer.
![(please configure the [header_logo] section in trac.ini)](/chrome/site/your_project_logo.png)