forked from space10-community/conversational-form
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtest-stress-instance-creation.html
executable file
·129 lines (110 loc) · 5.09 KB
/
test-stress-instance-creation.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
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="x-ua-compatible" content="ie=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no, minimal-ui" />
<link rel="stylesheet" href="build/conversational-form-docs.min.css">
<script type="text/javascript" src="https://cf-4053.kxcdn.com/conversational-form/0.9.6/conversational-form.min.js" crossorigin></script>
</head>
<body>
<script src="build/conversational-form-examples.min.js" id="examples-script"></script>
<main class="content">
<menu id="small-screen-menu">
<h2>Conversational Form examples</h2>
<div class="switch-btn">
<label class="switch">
<input type="checkbox" onclick="window.conversationalFormExamples.toggleConversation(event)">
<div class="slider round"></div>
</label>
</div>
<div class="hamburger-btn" onclick="window.conversationalFormExamples.toggleMenuState(event)">
<svg viewBox="0 0 29 14" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g stroke="none" stroke-width="1" fill="none" fill-rule="evenodd" stroke-linecap="square">
<g transform="translate(-325.000000, -87.000000)" stroke="#FFFFFF" stroke-width="2">
<g transform="translate(325.000000, 87.000000)">
<path d="M27.4802431,7 L1.23827993,7"></path>
<path d="M27.4802431,1 L1.23827993,1"></path>
<path d="M27.4802431,13 L1.23827993,13"></path>
</g>
</g>
</g>
</svg>
</div>
</menu>
<div class="switch-btn" id="cf-toggle-btn" data-label="Enable Conversational Form" data-label-toggled="Disable Conversational Form">
<label class="switch">
<input type="checkbox" onclick="window.conversationalFormExamples.toggleConversation(event)">
<div class="slider round"></div>
</label>
</div>
<section id="info" role="info">
<div class="close-btn" onclick="window.conversationalFormExamples.toggleMenuState()">
<svg viewBox="0 0 22 22" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g stroke="none" stroke-width="1" fill="none" fill-rule="evenodd" stroke-linecap="square">
<g transform="translate(-328.000000, -83.000000)" stroke="#FFFFFF" stroke-width="2">
<g id="close" transform="translate(329.000000, 84.000000)">
<path d="M19.6371966,19.2779351 L1.08132646,0.722064927"></path>
<path d="M19.4923318,0.722064927 L0.936461672,19.2779351"></path>
</g>
</g>
</g>
</svg>
</div>
<article>
<h1 id="writer">
Initialise and remove 100 Conversational Form instances to test creation process.
</h1>
<h2 id="sub-writer">
Check dev tools and output for performance marker.
</h2>
</article>
</section>
<section role="form">
<div class="form-outer">
<!-- Conversational Form will auto-run because of attribute "cf-form" -->
<form id="form" action="">
<div class="radio-control" cf-questions="Just some radio buttons" >
<input required cf-label=".." disabled type="radio" name="login-type" tabindex="1" value="facebook">
<input required cf-label="..." disabled type="radio" name="login-type" tabindex="2" value="twitter">
<input required cf-label="...." disabled type="radio" name="login-type" tabindex="3" value="email">
<input required cf-label=".....'" disabled type="radio" name="login-type" tabindex="4" value="sherlock">
</div>
<input type="text" cf-error="need to be between 5-10 chars" min="5" max="10" name="maxmin" value="">
<input type="text" cf-error="need to be between 5-10 chars" min="5" max="10" name="maxmin" value="">
<input type="text" cf-error="need to be between 5-10 chars" min="5" max="10" name="maxmin" value="">
<input type="text" cf-error="need to be between 5-10 chars" min="5" max="10" name="maxmin" value="">
<input type="text" cf-error="need to be between 5-10 chars" min="5" max="10" name="maxmin" value="">
<input type="text" cf-error="need to be between 5-10 chars" min="5" max="10" name="maxmin" value="">
</form>
</div>
</section>
<section id="cf-context" role="cf-context" cf-context>
</section>
</main>
<script>
function initExample(){
var t0 = performance.now();
var conversationalForm;
var numInstances = 100;
function create(){
if(conversationalForm)
conversationalForm.remove();
delete conversationalForm;
conversationalForm = window.cf.ConversationalForm.startTheConversation({
formEl: document.getElementById("form"),
context: document.getElementById("cf-context")
});
}
while(numInstances-- > 0){
create();
}
var t1 = performance.now();
var performanceString = "Creation of 100 Conversational Form instances , took " + Math.round(t1 - t0) + " milliseconds.";
console.log(performanceString);
window.ConversationalForm.addRobotChatResponse(performanceString);
window.ConversationalForm.addRobotChatResponse("Why would you create 100 instances...?");
};
</script>
</body>
</html>