compat.php 1.6 KB

123456789101112131415161718192021222324252627282930313233343536
  1. <?php
  2. /**
  3. * @group compat
  4. */
  5. class Tests_Compat extends WP_UnitTestCase {
  6. function test_mb_substr() {
  7. $this->assertEquals('баб', _mb_substr('баба', 0, 3));
  8. $this->assertEquals('баб', _mb_substr('баба', 0, -1));
  9. $this->assertEquals('баб', _mb_substr('баба', 0, -1));
  10. $this->assertEquals('I am your б', _mb_substr('I am your баба', 0, 11));
  11. }
  12. function test_hash_hmac_simple() {
  13. $this->assertEquals('140d1cb79fa12e2a31f32d35ad0a2723', _hash_hmac('md5', 'simple', 'key'));
  14. $this->assertEquals('993003b95758e0ac2eba451a4c5877eb1bb7b92a', _hash_hmac('sha1', 'simple', 'key'));
  15. }
  16. function test_hash_hmac_padding() {
  17. $this->assertEquals('3c1399103807cf12ec38228614416a8c', _hash_hmac('md5', 'simple', '65 character key 65 character key 65 character key 65 character k'));
  18. $this->assertEquals('4428826d20003e309d6c2a6515891370daf184ea', _hash_hmac('sha1', 'simple', '65 character key 65 character key 65 character key 65 character k'));
  19. }
  20. function test_hash_hmac_output() {
  21. $this->assertEquals(array( 1 => '140d1cb79fa12e2a31f32d35ad0a2723'), unpack('H32', _hash_hmac('md5', 'simple', 'key', true)));
  22. $this->assertEquals(array( 1 => '993003b95758e0ac2eba451a4c5877eb1bb7b92a'), unpack('H40', _hash_hmac('sha1', 'simple', 'key', true)));
  23. }
  24. function test_json_encode_decode() {
  25. require_once( ABSPATH . WPINC . '/class-json.php' );
  26. $json = new Services_JSON();
  27. // Super basic test to verify Services_JSON is intact and working.
  28. $this->assertEquals( '["foo"]', $json->encodeUnsafe( array( 'foo' ) ) );
  29. $this->assertEquals( array( 'foo' ), $json->decode( '["foo"]' ) );
  30. }
  31. }