4
<title>YUI io Transaction Events Tests</title>
7
<body class="yui3-skin-sam">
8
<h1>YUI io Transaction Events Tests</h1>
10
<script type="text/javascript" src="../../../build/yui/yui.js"></script>
11
<script type="text/javascript">
15
base: "../../../build/",
28
}).use("test", "console", "io-base", function(Y) {
30
var console = new Y.Console().render();
31
var ioTransactionEventFlowTest = new Y.Test.Case(
33
name: 'Transaction flow test',
34
testSuccess: function() {
35
var actual = [], t = this;
36
this.success = ['start', 'complete', 'success', 'end'],
37
this.compare = function() {
38
for (var i=0; i < 4; i++) {
40
Y.Assert.areSame(t.success[i], actual[i]);
43
Y.io('http.php?a=200', {
48
complete: function() {
49
actual.push('complete');
52
actual.push('success');
60
this.wait(null, 1000);
62
test404Failure: function() {
63
var actual = [], t = this;
64
this.failure = ['start', 'complete', 'failure', 'end'],
65
this.compare = function() {
66
for (var i=0; i < 4; i++) {
68
Y.Assert.areSame(t.failure[i], actual[i]);
76
complete: function() {
77
actual.push('complete');
80
actual.push('failure');
88
this.wait(null, 1000);
90
test500Failure: function() {
91
var actual = [], t = this;
92
this.failure = ['start', 'complete', 'failure', 'end'],
93
this.compare = function() {
94
Y.Assert.areSame(500, t.status);
95
for (var i=0; i < 4; i++) {
96
Y.Assert.areSame(t.failure[i], actual[i]);
99
Y.io('http.php?a=500', {
102
actual.push('start');
104
complete: function(id, o, a) {
105
actual.push('complete');
107
failure: function(id, o, a) {
108
actual.push('failure');
117
this.wait(null, 1000);
119
testHttpException: function() {
120
var actual = [], t = this;
121
this.failure = ['start', 'complete', 'failure', 'end'],
122
this.compare = function() {
124
for (var i=0; i < 4; i++) {
125
Y.Assert.areSame(t.failure[i], actual[i]);
128
Y.io('http.php?a=999', {
131
actual.push('start');
133
complete: function() {
134
actual.push('complete');
136
failure: function(id, o, a) {
137
actual.push('failure');
146
this.wait(null, 1000);
148
test304: function() {
149
var actual = [], t = this;
150
this.success = ['start', 'complete', 'end'],
151
this.compare = function() {
153
for (var i=0; i < 3; i++) {
154
Y.Assert.areSame(t.success[i], actual[i]);
157
Y.io('http.php?a=304', {
160
actual.push('start');
162
complete: function() {
163
actual.push('complete');
171
this.wait(null, 1000);
174
Y.Test.Runner.add(ioTransactionEventFlowTest);