Page Menu
Home
Code
Search
Configure Global Search
Log In
Files
F944268
Wire.js
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Size
4 KB
Subscribers
None
Wire.js
View Options
if
(
!
dojo
.
_hasResource
[
"dojox.wire.tests.programmatic.Wire"
]){
//_hasResource checks added by build. Do not use _hasResource directly in your code.
dojo
.
_hasResource
[
"dojox.wire.tests.programmatic.Wire"
]
=
true
;
dojo
.
provide
(
"dojox.wire.tests.programmatic.Wire"
);
dojo
.
require
(
"dojox.wire.Wire"
);
//Simple connverter class to try to use.
dojo
.
declare
(
"dojox.wire.tests.programmatic.Wire.Converter"
,
null
,
{
convert
:
function
(
v
){
return
v
+
1
;
}
});
//Simple converter function to try to use.
//To get it in the global namespace, gotta assign it to the
//'window' toplevel object. Otherwise it ends up in the
//dojo NS and can't be found.
if
(
dojo
.
isBrowser
)
{
window
[
"__wireTestConverterFunction"
]
=
function
(
v
){
return
v
+
1
;
};
}
else
{
var
__wireTestConverterFunction
=
function
(
v
){
return
v
+
1
;
};
}
tests
.
register
(
"dojox.wire.tests.programmatic.Wire"
,
[
function
test_Wire_property
(
t
){
var
source
=
{
a
:
"A"
,
b
:
{
c
:
"B.C"
}};
var
target
=
{
a
:
"a"
,
b
:
{
c
:
"b.c"
}};
var
value
=
new
dojox
.
wire
.
Wire
({
object
:
source
,
property
:
"a"
}).
getValue
();
new
dojox
.
wire
.
Wire
({
object
:
target
,
property
:
"a"
}).
setValue
(
value
);
t
.
assertEqual
(
source
.
a
,
target
.
a
);
// child property
value
=
new
dojox
.
wire
.
Wire
({
object
:
source
,
property
:
"b.c"
}).
getValue
();
new
dojox
.
wire
.
Wire
({
object
:
target
,
property
:
"b.c"
}).
setValue
(
value
);
t
.
assertEqual
(
source
.
b
.
c
,
target
.
b
.
c
);
// new property
target
=
{};
value
=
new
dojox
.
wire
.
Wire
({
object
:
source
,
property
:
"a"
}).
getValue
();
new
dojox
.
wire
.
Wire
({
object
:
target
,
property
:
"a"
}).
setValue
(
value
);
t
.
assertEqual
(
source
.
a
,
target
.
a
);
// new parent and child property
target
.
b
=
{};
value
=
new
dojox
.
wire
.
Wire
({
object
:
source
,
property
:
"b.c"
}).
getValue
();
new
dojox
.
wire
.
Wire
({
object
:
target
,
property
:
"b.c"
}).
setValue
(
value
);
t
.
assertEqual
(
source
.
b
.
c
,
target
.
b
.
c
);
// new parent and child property
target
=
{};
value
=
new
dojox
.
wire
.
Wire
({
object
:
source
,
property
:
"b.c"
}).
getValue
();
new
dojox
.
wire
.
Wire
({
object
:
target
,
property
:
"b.c"
}).
setValue
(
value
);
t
.
assertEqual
(
source
.
b
.
c
,
target
.
b
.
c
);
// new array property
source
=
{
a
:
[
"A"
]};
target
=
{};
value
=
new
dojox
.
wire
.
Wire
({
object
:
source
,
property
:
"a[0]"
}).
getValue
();
new
dojox
.
wire
.
Wire
({
object
:
target
,
property
:
"a[0]"
}).
setValue
(
value
);
t
.
assertEqual
(
source
.
a
[
0
],
target
.
a
[
0
]);
// by getter/setter
source
=
{
getA
:
function
()
{
return
this
.
_a
;
},
_a
:
"A"
};
target
=
{
setA
:
function
(
a
)
{
this
.
_a
=
a
;
}};
value
=
new
dojox
.
wire
.
Wire
({
object
:
source
,
property
:
"a"
}).
getValue
();
new
dojox
.
wire
.
Wire
({
object
:
target
,
property
:
"a"
}).
setValue
(
value
);
t
.
assertEqual
(
source
.
_a
,
target
.
_a
);
// by get/setPropertyValue
source
=
{
getPropertyValue
:
function
(
p
)
{
return
this
[
"_"
+
p
];
},
_a
:
"A"
};
target
=
{
setPropertyValue
:
function
(
p
,
v
)
{
this
[
"_"
+
p
]
=
v
;
}};
value
=
new
dojox
.
wire
.
Wire
({
object
:
source
,
property
:
"a"
}).
getValue
();
new
dojox
.
wire
.
Wire
({
object
:
target
,
property
:
"a"
}).
setValue
(
value
);
t
.
assertEqual
(
source
.
_a
,
target
.
_a
);
},
function
test_Wire_type
(
t
){
var
source
=
{
a
:
"1"
};
var
string
=
new
dojox
.
wire
.
Wire
({
object
:
source
,
property
:
"a"
}).
getValue
();
t
.
assertEqual
(
"11"
,
string
+
1
);
var
number
=
new
dojox
.
wire
.
Wire
({
object
:
source
,
property
:
"a"
,
type
:
"number"
}).
getValue
();
t
.
assertEqual
(
2
,
number
+
1
);
},
function
test_Wire_converterObject
(
t
){
var
source
=
{
a
:
"1"
};
var
converter
=
{
convert
:
function
(
v
)
{
return
v
+
1
;
}};
var
string
=
new
dojox
.
wire
.
Wire
({
object
:
source
,
property
:
"a"
,
converter
:
converter
}).
getValue
();
t
.
assertEqual
(
"11"
,
string
);
},
function
test_Wire_converterFunction
(
t
){
var
source
=
{
a
:
"1"
};
var
converter
=
{
convert
:
function
(
v
)
{
return
v
+
1
;
}};
var
number
=
new
dojox
.
wire
.
Wire
({
object
:
source
,
property
:
"a"
,
type
:
"number"
,
converter
:
converter
.
convert
}).
getValue
();
t
.
assertEqual
(
2
,
number
);
},
function
test_Wire_converterObjectByString
(
t
){
var
source
=
{
a
:
"1"
};
var
number
=
new
dojox
.
wire
.
Wire
({
object
:
source
,
property
:
"a"
,
type
:
"number"
,
converter
:
"dojox.wire.tests.programmatic.Wire.Converter"
}).
getValue
();
t
.
assertEqual
(
2
,
number
);
},
function
test_Wire_converterFunctionByString
(
t
){
var
source
=
{
a
:
"1"
};
var
number
=
new
dojox
.
wire
.
Wire
({
object
:
source
,
property
:
"a"
,
type
:
"number"
,
converter
:
"__wireTestConverterFunction"
}).
getValue
();
t
.
assertEqual
(
2
,
number
);
},
function
test_Wire_converterObjectByStringDynamic
(
t
){
var
source
=
{
a
:
"1"
};
var
number
=
new
dojox
.
wire
.
Wire
({
object
:
source
,
property
:
"a"
,
type
:
"number"
,
converter
:
"dojox.wire.tests.programmatic.ConverterDynamic"
}).
getValue
();
t
.
assertEqual
(
2
,
number
);
}
]);
}
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Fri, Apr 25, 20:44 (3 w, 1 d ago)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
27999
Default Alt Text
Wire.js (4 KB)
Attached To
rZED Zed
Event Timeline
Log In to Comment