-
Notifications
You must be signed in to change notification settings - Fork 0
/
test.html
88 lines (75 loc) · 2.76 KB
/
test.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>Test</title>
<script type="text/javascript" src="template.js"></script>
<script type="text/javascript" src="jquery-1.3.2.min.js"></script>
<script type="text/javascript" src="qunit.js"></script>
<link rel='stylesheet' href='qunit.css' type='text/css'>
<script type="text/javascript" src="csjforms.js"></script>
<script type="text/javascript" charset="utf-8">
$(document).ready(function(){
var widgets = csjforms.widgets;
var fields = csjforms.fields;
var fieldset = csjforms.fieldset;
var inline = csjforms.inline;
var eventgroup = fieldset({name:"eventgroup", verbose:'Event group',fields:[
fields.bool({name:'active'}),
fields.integer({name:'name',verbose:'Name',}),
fields.text({name:'description',widget: widgets.textarea(),}),
inline({name:'event_set',verbose:'Event',plural:'Events',
fieldset:fieldset({name:'event',fields:[
fields.text({name:'name'}),
fields.text({name:'jear'}),
inline({name:'event_date_set',verbose:'Event date',
fieldset:fieldset({name:'event_date',fields:[
fields.text({name:'date'}),
]}),
}),
]}),
}),
inline({name:'blub_set',
fieldset:fieldset({name:'blub',fields:[
fields.text({name:'foo'}),
]}),
}),
]});
var testdata = {active:true,name:1, description:"2", event_set:[{name:"3", jear:"4", event_date_set:[{date:"5"}, {date:"6"}]}, {name:"7", jear:"8", event_date_set:[]}], blub_set:[{foo:"9"}, {foo:"10"}]};
var fieldset = eventgroup.create($('#eventgroup > .container'));
test('fromjson -> tojson',function(){
eventgroup.fromjson(fieldset,testdata);
equals(testdata.toSource(),eventgroup.tojson(fieldset).toSource());
});
test('validate doc',function(){
var exc = null;
try{
eventgroup.validate_doc(testdata);
}catch(e){
exc = e;
}
equals(exc,null);
var testdata2 = {active:true,name:"1a", description:"2", event_set:[{name:"3", jear:"4", event_date_set:[{date:"5"}, {date:"6"}]}, {name:"7", jear:"8", event_date_set:[]}], blub_set:[{foo:"9"}, {foo:"10"}]};
try{
eventgroup.validate_doc(testdata2);
}catch(e){
exc = e;
}
equals(exc.toSource(),{"name": "ValidationError", "message": "not an integer"}.toSource());
});
});
</script>
</head>
<body>
<form method="post" action="#" id="eventgroup" style='display:none;'>
<div class='container'></div>
<div>
<input id="save" type="submit" value="submit" name="submit">
</div>
</form>
<h1 id="qunit-header">QUnit</h1>
<h2 id="qunit-banner"></h2>
<h2 id="qunit-userAgent"></h2>
<ol id="qunit-tests"></ol>
</body>
</html>