Review of unit test suites
[mediawiki.git] / tests / qunit / suites / resources / jquery / jquery.client.js
blob56d1aec05d4a79100d9d226c8da8d5760e2eca24
1 module( 'jquery.client.js' );
3 test( '-- Initial check', function() {
4         expect(1);
5         ok( jQuery.client, 'jQuery.client defined' );
6 });
8 test( 'profile', function() {
9         expect(7);
10         var p = $.client.profile();
11         var unknownOrType = function( val, type, summary ) {
12                 return ok( typeof val === type || val === 'unknown', summary );
13         };
15         equal( typeof p, 'object', 'profile returns an object' );
16         unknownOrType( p.layout, 'string', 'p.layout is a string (or "unknown")' );
17         unknownOrType( p.layoutVersion, 'number', 'p.layoutVersion is a number (or "unknown")' );
18         unknownOrType( p.platform, 'string', 'p.platform is a string (or "unknown")' );
19         unknownOrType( p.version, 'string', 'p.version is a string (or "unknown")' );
20         unknownOrType( p.versionBase, 'string', 'p.versionBase is a string (or "unknown")' );
21         equal( typeof p.versionNumber, 'number', 'p.versionNumber is a number' );
22 });
24 test( 'test', function() {
25         expect(1);
27         // Example from WikiEditor
28         var testMap = {
29                 'ltr': {
30                         'msie': [['>=', 7]],
31                         'firefox': [['>=', 2]],
32                         'opera': [['>=', 9.6]],
33                         'safari': [['>=', 3]],
34                         'chrome': [['>=', 3]],
35                         'netscape': [['>=', 9]],
36                         'blackberry': false,
37                         'ipod': false,
38                         'iphone': false
39                 },
40                 'rtl': {
41                         'msie': [['>=', 8]],
42                         'firefox': [['>=', 2]],
43                         'opera': [['>=', 9.6]],
44                         'safari': [['>=', 3]],
45                         'chrome': [['>=', 3]],
46                         'netscape': [['>=', 9]],
47                         'blackberry': false,
48                         'ipod': false,
49                         'iphone': false
50                 }
51         };
52         // .test() uses eval, make sure no exceptions are thrown
53         // then do a basic return value type check
54         var testMatch = $.client.test( testMap );
56         equal( typeof testMatch, 'boolean', 'test returns a boolean value' );
58 });