zff 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1 @@
1
+ //= require zzf-spec/core
@@ -0,0 +1,47 @@
1
+ module('Init');
2
+
3
+ test('jQuery', function(){
4
+ ok($ === jQuery, '$ === jQuery');
5
+ });
6
+
7
+ module('Load module');
8
+
9
+ asyncTest('success load', function(){
10
+
11
+ ok($.load('underscore') === 202, 'underscore is not loaded');
12
+
13
+ var i = 0;
14
+
15
+ $.load('underscore', function(){
16
+ ok($.isFunction(_), '_ is loaded');
17
+ ok($.load('underscore') === 200, 'underscore loaded');
18
+ i++;
19
+ ok(i === 1, 'success func is loaded');
20
+ });
21
+ $.load('underscore', function(){
22
+ i++;
23
+ ok(i === 2, 'twice success func is loaded');
24
+ start();
25
+ });
26
+ });
27
+
28
+ asyncTest('error load', function(){
29
+ ok($.load('null') === 202, 'null is not loaded');
30
+
31
+ $.load('null', {
32
+ error: function(){
33
+ ok($.load('null') === 500, 'module null is error');
34
+ start();
35
+ }
36
+ });
37
+ });
38
+
39
+ asyncTest('load remote module', function(){
40
+ ok($.load('ui', { url: 'https://ajax.googleapis.com/ajax/libs/jqueryui/1/jquery-ui.min.js' }) === 202, 'remote is not loaded');
41
+
42
+ $.load('ui', function(){
43
+ ok((typeof $.ui === 'object'), '$.ui is loaded');
44
+ ok($.load('ui') === 200, 'remote loaded');
45
+ start();
46
+ });
47
+ });
@@ -0,0 +1 @@
1
+ //= require zzf/core
@@ -0,0 +1,55 @@
1
+ //= require jquery
2
+
3
+ // zzf-core v0.0.1
4
+ var MODULE_PATH = '/assets';
5
+
6
+ // module
7
+ (function($){
8
+
9
+ var info = {};
10
+
11
+ $.load = function(module, opts){
12
+ opts = opts || {};
13
+
14
+ if($.isFunction(opts)){
15
+ opts = {
16
+ success: opts
17
+ };
18
+ }
19
+
20
+ if(typeof info[module] === 'undefined'){
21
+ var defaults = {
22
+ url: MODULE_PATH + '/' + module + '.js',
23
+ dataType: 'script'
24
+ };
25
+
26
+ opts = $.extend(defaults, opts);
27
+
28
+ var xhr = $.ajax(opts).success(function(){
29
+ info[module].state = 200;
30
+ }).error(function(){
31
+ info[module].state = 500;
32
+ });
33
+
34
+ info[module] = {
35
+ state: 202,
36
+ xhr: xhr
37
+ };
38
+ }else{
39
+ if(info[module].state === 200){
40
+ if($.isFunction(opts.success)){
41
+ opts.success();
42
+ }
43
+ }
44
+
45
+ if(info[module].state === 202){
46
+ $.each(['success', 'error', 'complete', 'statusCode'], function(i, type){
47
+ if($.isFunction(opts[type])){
48
+ info[module].xhr = info[module].xhr[type](opts[type]);
49
+ }
50
+ });
51
+ }
52
+ }
53
+ return info[module].state;
54
+ };
55
+ })($);
@@ -0,0 +1,6 @@
1
+ //= require underscore/underscore
2
+
3
+ (function($){
4
+ $.underscore = _.noConflict();
5
+
6
+ })(jQuery);
@@ -0,0 +1,166 @@
1
+ body {
2
+ font-family: "Helvetica Neue Light", "Lucida Grande", "Calibri", "Arial", sans-serif;
3
+ }
4
+
5
+
6
+ .jasmine_reporter a:visited, .jasmine_reporter a {
7
+ color: #303;
8
+ }
9
+
10
+ .jasmine_reporter a:hover, .jasmine_reporter a:active {
11
+ color: blue;
12
+ }
13
+
14
+ .run_spec {
15
+ float:right;
16
+ padding-right: 5px;
17
+ font-size: .8em;
18
+ text-decoration: none;
19
+ }
20
+
21
+ .jasmine_reporter {
22
+ margin: 0 5px;
23
+ }
24
+
25
+ .banner {
26
+ color: #303;
27
+ background-color: #fef;
28
+ padding: 5px;
29
+ }
30
+
31
+ .logo {
32
+ float: left;
33
+ font-size: 1.1em;
34
+ padding-left: 5px;
35
+ }
36
+
37
+ .logo .version {
38
+ font-size: .6em;
39
+ padding-left: 1em;
40
+ }
41
+
42
+ .runner.running {
43
+ background-color: yellow;
44
+ }
45
+
46
+
47
+ .options {
48
+ text-align: right;
49
+ font-size: .8em;
50
+ }
51
+
52
+
53
+
54
+
55
+ .suite {
56
+ border: 1px outset gray;
57
+ margin: 5px 0;
58
+ padding-left: 1em;
59
+ }
60
+
61
+ .suite .suite {
62
+ margin: 5px;
63
+ }
64
+
65
+ .suite.passed {
66
+ background-color: #dfd;
67
+ }
68
+
69
+ .suite.failed {
70
+ background-color: #fdd;
71
+ }
72
+
73
+ .spec {
74
+ margin: 5px;
75
+ padding-left: 1em;
76
+ clear: both;
77
+ }
78
+
79
+ .spec.failed, .spec.passed, .spec.skipped {
80
+ padding-bottom: 5px;
81
+ border: 1px solid gray;
82
+ }
83
+
84
+ .spec.failed {
85
+ background-color: #fbb;
86
+ border-color: red;
87
+ }
88
+
89
+ .spec.passed {
90
+ background-color: #bfb;
91
+ border-color: green;
92
+ }
93
+
94
+ .spec.skipped {
95
+ background-color: #bbb;
96
+ }
97
+
98
+ .messages {
99
+ border-left: 1px dashed gray;
100
+ padding-left: 1em;
101
+ padding-right: 1em;
102
+ }
103
+
104
+ .passed {
105
+ background-color: #cfc;
106
+ display: none;
107
+ }
108
+
109
+ .failed {
110
+ background-color: #fbb;
111
+ }
112
+
113
+ .skipped {
114
+ color: #777;
115
+ background-color: #eee;
116
+ display: none;
117
+ }
118
+
119
+
120
+ /*.resultMessage {*/
121
+ /*white-space: pre;*/
122
+ /*}*/
123
+
124
+ .resultMessage span.result {
125
+ display: block;
126
+ line-height: 2em;
127
+ color: black;
128
+ }
129
+
130
+ .resultMessage .mismatch {
131
+ color: black;
132
+ }
133
+
134
+ .stackTrace {
135
+ white-space: pre;
136
+ font-size: .8em;
137
+ margin-left: 10px;
138
+ max-height: 5em;
139
+ overflow: auto;
140
+ border: 1px inset red;
141
+ padding: 1em;
142
+ background: #eef;
143
+ }
144
+
145
+ .finished-at {
146
+ padding-left: 1em;
147
+ font-size: .6em;
148
+ }
149
+
150
+ .show-passed .passed,
151
+ .show-skipped .skipped {
152
+ display: block;
153
+ }
154
+
155
+
156
+ #jasmine_content {
157
+ position:fixed;
158
+ right: 100%;
159
+ }
160
+
161
+ .runner {
162
+ border: 1px solid gray;
163
+ display: block;
164
+ margin: 5px 0;
165
+ padding: 2px 0 2px 10px;
166
+ }
@@ -0,0 +1,225 @@
1
+ /**
2
+ * QUnit - A JavaScript Unit Testing Framework
3
+ *
4
+ * http://docs.jquery.com/QUnit
5
+ *
6
+ * Copyright (c) 2011 John Resig, Jörn Zaefferer
7
+ * Dual licensed under the MIT (MIT-LICENSE.txt)
8
+ * or GPL (GPL-LICENSE.txt) licenses.
9
+ */
10
+
11
+ /** Font Family and Sizes */
12
+
13
+ #qunit-tests, #qunit-header, #qunit-banner, #qunit-testrunner-toolbar, #qunit-userAgent, #qunit-testresult {
14
+ font-family: "Helvetica Neue Light", "HelveticaNeue-Light", "Helvetica Neue", Calibri, Helvetica, Arial, sans-serif;
15
+ }
16
+
17
+ #qunit-testrunner-toolbar, #qunit-userAgent, #qunit-testresult, #qunit-tests li { font-size: small; }
18
+ #qunit-tests { font-size: smaller; }
19
+
20
+
21
+ /** Resets */
22
+
23
+ #qunit-tests, #qunit-tests ol, #qunit-header, #qunit-banner, #qunit-userAgent, #qunit-testresult {
24
+ margin: 0;
25
+ padding: 0;
26
+ }
27
+
28
+
29
+ /** Header */
30
+
31
+ #qunit-header {
32
+ padding: 0.5em 0 0.5em 1em;
33
+
34
+ color: #8699a4;
35
+ background-color: #0d3349;
36
+
37
+ font-size: 1.5em;
38
+ line-height: 1em;
39
+ font-weight: normal;
40
+
41
+ border-radius: 15px 15px 0 0;
42
+ -moz-border-radius: 15px 15px 0 0;
43
+ -webkit-border-top-right-radius: 15px;
44
+ -webkit-border-top-left-radius: 15px;
45
+ }
46
+
47
+ #qunit-header a {
48
+ text-decoration: none;
49
+ color: #c2ccd1;
50
+ }
51
+
52
+ #qunit-header a:hover,
53
+ #qunit-header a:focus {
54
+ color: #fff;
55
+ }
56
+
57
+ #qunit-banner {
58
+ height: 5px;
59
+ }
60
+
61
+ #qunit-testrunner-toolbar {
62
+ padding: 0.5em 0 0.5em 2em;
63
+ color: #5E740B;
64
+ background-color: #eee;
65
+ }
66
+
67
+ #qunit-userAgent {
68
+ padding: 0.5em 0 0.5em 2.5em;
69
+ background-color: #2b81af;
70
+ color: #fff;
71
+ text-shadow: rgba(0, 0, 0, 0.5) 2px 2px 1px;
72
+ }
73
+
74
+
75
+ /** Tests: Pass/Fail */
76
+
77
+ #qunit-tests {
78
+ list-style-position: inside;
79
+ }
80
+
81
+ #qunit-tests li {
82
+ padding: 0.4em 0.5em 0.4em 2.5em;
83
+ border-bottom: 1px solid #fff;
84
+ list-style-position: inside;
85
+ }
86
+
87
+ #qunit-tests.hidepass li.pass, #qunit-tests.hidepass li.running {
88
+ display: none;
89
+ }
90
+
91
+ #qunit-tests li strong {
92
+ cursor: pointer;
93
+ }
94
+
95
+ #qunit-tests li a {
96
+ padding: 0.5em;
97
+ color: #c2ccd1;
98
+ text-decoration: none;
99
+ }
100
+ #qunit-tests li a:hover,
101
+ #qunit-tests li a:focus {
102
+ color: #000;
103
+ }
104
+
105
+ #qunit-tests ol {
106
+ margin-top: 0.5em;
107
+ padding: 0.5em;
108
+
109
+ background-color: #fff;
110
+
111
+ border-radius: 15px;
112
+ -moz-border-radius: 15px;
113
+ -webkit-border-radius: 15px;
114
+
115
+ box-shadow: inset 0px 2px 13px #999;
116
+ -moz-box-shadow: inset 0px 2px 13px #999;
117
+ -webkit-box-shadow: inset 0px 2px 13px #999;
118
+ }
119
+
120
+ #qunit-tests table {
121
+ border-collapse: collapse;
122
+ margin-top: .2em;
123
+ }
124
+
125
+ #qunit-tests th {
126
+ text-align: right;
127
+ vertical-align: top;
128
+ padding: 0 .5em 0 0;
129
+ }
130
+
131
+ #qunit-tests td {
132
+ vertical-align: top;
133
+ }
134
+
135
+ #qunit-tests pre {
136
+ margin: 0;
137
+ white-space: pre-wrap;
138
+ word-wrap: break-word;
139
+ }
140
+
141
+ #qunit-tests del {
142
+ background-color: #e0f2be;
143
+ color: #374e0c;
144
+ text-decoration: none;
145
+ }
146
+
147
+ #qunit-tests ins {
148
+ background-color: #ffcaca;
149
+ color: #500;
150
+ text-decoration: none;
151
+ }
152
+
153
+ /*** Test Counts */
154
+
155
+ #qunit-tests b.counts { color: black; }
156
+ #qunit-tests b.passed { color: #5E740B; }
157
+ #qunit-tests b.failed { color: #710909; }
158
+
159
+ #qunit-tests li li {
160
+ margin: 0.5em;
161
+ padding: 0.4em 0.5em 0.4em 0.5em;
162
+ background-color: #fff;
163
+ border-bottom: none;
164
+ list-style-position: inside;
165
+ }
166
+
167
+ /*** Passing Styles */
168
+
169
+ #qunit-tests li li.pass {
170
+ color: #5E740B;
171
+ background-color: #fff;
172
+ border-left: 26px solid #C6E746;
173
+ }
174
+
175
+ #qunit-tests .pass { color: #528CE0; background-color: #D2E0E6; }
176
+ #qunit-tests .pass .test-name { color: #366097; }
177
+
178
+ #qunit-tests .pass .test-actual,
179
+ #qunit-tests .pass .test-expected { color: #999999; }
180
+
181
+ #qunit-banner.qunit-pass { background-color: #C6E746; }
182
+
183
+ /*** Failing Styles */
184
+
185
+ #qunit-tests li li.fail {
186
+ color: #710909;
187
+ background-color: #fff;
188
+ border-left: 26px solid #EE5757;
189
+ }
190
+
191
+ #qunit-tests > li:last-child {
192
+ border-radius: 0 0 15px 15px;
193
+ -moz-border-radius: 0 0 15px 15px;
194
+ -webkit-border-bottom-right-radius: 15px;
195
+ -webkit-border-bottom-left-radius: 15px;
196
+ }
197
+
198
+ #qunit-tests .fail { color: #000000; background-color: #EE5757; }
199
+ #qunit-tests .fail .test-name,
200
+ #qunit-tests .fail .module-name { color: #000000; }
201
+
202
+ #qunit-tests .fail .test-actual { color: #EE5757; }
203
+ #qunit-tests .fail .test-expected { color: green; }
204
+
205
+ #qunit-banner.qunit-fail { background-color: #EE5757; }
206
+
207
+
208
+ /** Result */
209
+
210
+ #qunit-testresult {
211
+ padding: 0.5em 0.5em 0.5em 2.5em;
212
+
213
+ color: #2b81af;
214
+ background-color: #D2E0E6;
215
+
216
+ border-bottom: 1px solid white;
217
+ }
218
+
219
+ /** Fixture */
220
+
221
+ #qunit-fixture {
222
+ position: absolute;
223
+ top: -10000px;
224
+ left: -10000px;
225
+ }