| | 975 | |
| | 976 | /** |
| | 977 | * Testing the `shortcode_parse_atts()` function. |
| | 978 | * |
| | 979 | * @ticket 47863 |
| | 980 | * |
| | 981 | * @covers ::shortcode_parse_atts |
| | 982 | * @dataProvider data_shortcode_parse_atts |
| | 983 | * |
| | 984 | * @param string $text A single shortcode format or key/value pair string. |
| | 985 | * @param string|array $expected Expected results. |
| | 986 | */ |
| | 987 | public function test_shortcode_parse_atts( $text, $expected ) { |
| | 988 | $actual = shortcode_parse_atts( $text ); |
| | 989 | $this->assertSame( $expected, $actual ); |
| | 990 | } |
| | 991 | |
| | 992 | /** |
| | 993 | * Data provider for `test_shortcode_parse_atts()`. |
| | 994 | * |
| | 995 | * @return array { |
| | 996 | * @type array { |
| | 997 | * @type string $text A single shortcode format or key/value pair string. |
| | 998 | * @type string|array $expected The expected result. |
| | 999 | * } |
| | 1000 | * } |
| | 1001 | */ |
| | 1002 | public function data_shortcode_parse_atts() { |
| | 1003 | |
| | 1004 | return array( |
| | 1005 | array( |
| | 1006 | '', |
| | 1007 | '', |
| | 1008 | ), |
| | 1009 | array( |
| | 1010 | ' ', |
| | 1011 | '', |
| | 1012 | ), |
| | 1013 | array( |
| | 1014 | '""', |
| | 1015 | array(), |
| | 1016 | ), |
| | 1017 | array( |
| | 1018 | '\'\'', |
| | 1019 | array(), |
| | 1020 | ), |
| | 1021 | array( |
| | 1022 | '[unittest]', |
| | 1023 | '', |
| | 1024 | ), |
| | 1025 | array( |
| | 1026 | '[unitest]Unit Test[/unittest]', |
| | 1027 | '', |
| | 1028 | ), |
| | 1029 | array( |
| | 1030 | '[unittest title="unittest" link="https://unit.test/"]', |
| | 1031 | array( |
| | 1032 | 'title' => 'unittest', |
| | 1033 | 'link' => 'https://unit.test/', |
| | 1034 | ), |
| | 1035 | ), |
| | 1036 | array( |
| | 1037 | '[unittest title="unittest" link="https://unit.test/"/]', |
| | 1038 | array( |
| | 1039 | 'title' => 'unittest', |
| | 1040 | 'link' => 'https://unit.test/', |
| | 1041 | ), |
| | 1042 | ), |
| | 1043 | array( |
| | 1044 | '[unit_test title="unittest" link="https://unit.test/"/]', |
| | 1045 | array( |
| | 1046 | 'title' => 'unittest', |
| | 1047 | 'link' => 'https://unit.test/', |
| | 1048 | ), |
| | 1049 | ), |
| | 1050 | array( |
| | 1051 | '[unit-test title="unittest" link="https://unit.test/"/]', |
| | 1052 | array( |
| | 1053 | 'title' => 'unittest', |
| | 1054 | 'link' => 'https://unit.test/', |
| | 1055 | ), |
| | 1056 | ), |
| | 1057 | array( |
| | 1058 | '[unittest title="unittest" link="https://unit.test/"]Unit Test[/unittest]', |
| | 1059 | array( |
| | 1060 | 'title' => 'unittest', |
| | 1061 | 'link' => 'https://unit.test/', |
| | 1062 | ), |
| | 1063 | ), |
| | 1064 | array( |
| | 1065 | 'title="unittest" link="https://unit.test/"', |
| | 1066 | array( |
| | 1067 | 'title' => 'unittest', |
| | 1068 | 'link' => 'https://unit.test/', |
| | 1069 | ), |
| | 1070 | ), |
| | 1071 | ); |
| | 1072 | |
| | 1073 | } |
| | 1074 | |