MCPcopy Create free account
hub / github.com/Acode-Foundation/Acode / getOrCreateSuiteElement

Function getOrCreateSuiteElement

src/test/tester.js:89–140  ·  view source on GitHub ↗
(suite)

Source from the content-addressed store, hash-verified

87}
88
89function getOrCreateSuiteElement(suite) {
90 if (suiteElementsMap.has(suite.name)) {
91 return suiteElementsMap.get(suite.name);
92 }
93
94 // Create suite element components
95 let isCollapsed = false;
96 const $body = <div className="suite-body"></div>;
97
98 const toggleCollapse = () => {
99 isCollapsed = !isCollapsed;
100 if (isCollapsed) {
101 $body.classList.add("collapsed");
102 } else {
103 $body.classList.remove("collapsed");
104 }
105 };
106
107 const $header = (
108 <div className="suite-header" onclick={toggleCollapse}>
109 <div className="suite-info">
110 <span className="suite-status-icon"></span>
111 <span className="suite-title">{suite.name}</span>
112 </div>
113 <div className="suite-meta">
114 <span className="suite-badge"></span>
115 </div>
116 </div>
117 );
118
119 const $el = (
120 <div className="suite-card">
121 {$header}
122 {$body}
123 </div>
124 );
125
126 if ($suiteList) {
127 $suiteList.append($el);
128 }
129
130 const suiteData = {
131 el: $el,
132 header: $header,
133 body: $body,
134 statusIcon: $header.querySelector(".suite-status-icon"),
135 badge: $header.querySelector(".suite-badge"),
136 };
137
138 suiteElementsMap.set(suite.name, suiteData);
139 return suiteData;
140}
141
142function updateSuiteElement(suite) {
143 const { body, statusIcon, badge } = getOrCreateSuiteElement(suite);

Callers 1

tester.jsFile · 0.85

Calls 3

appendMethod · 0.80
setMethod · 0.80
getMethod · 0.45

Tested by

no test coverage detected