11#include < TfTest/TfTest>
22#include < QJSEngine>
33#include < QJSValue>
4- #include " ../../tjscontext .h"
4+ #include " ../../tjsmodule .h"
55#include " ../../tjsinstance.h"
66#include " ../../tjsloader.h"
77#include " ../../treactcomponent.h"
@@ -67,7 +67,7 @@ void JSContext::eval()
6767 QFETCH (QString, expr);
6868 QFETCH (QString, output);
6969
70- TJSContext js;
70+ TJSModule js;
7171 auto result = js.evaluate (expr).toString ();
7272 QCOMPARE (result, output);
7373}
@@ -99,11 +99,11 @@ void JSContext::callAsConstructor()
9999 QFETCH (QString, methodArg);
100100 QFETCH (QString, output);
101101
102- TJSContext *js = TJSLoader (module ).load ();
102+ TJSModule *js = TJSLoader (module ).load ();
103103 auto instance = js->callAsConstructor (className, arg);
104104 QCOMPARE (instance.isError (), false );
105- auto result = instance.call (method, methodArg).toString ();
106- QCOMPARE (result , output);
105+ auto result1 = instance.call (method, methodArg).toString ();
106+ QCOMPARE (result1 , output);
107107}
108108
109109
@@ -131,13 +131,21 @@ void JSContext::require()
131131 QFETCH (QString, methodArg);
132132 QFETCH (QString, output);
133133
134- TJSLoader loader (className, module );
135- TJSContext *js = loader.load ();
134+ { // Test 1
135+ TJSLoader loader (className, module );
136+ TJSModule *js = loader.load ();
136137
137- auto instance = js->callAsConstructor (className, arg);
138- QCOMPARE (instance.isError (), false );
139- auto result = instance.call (method, methodArg).toString ();
140- QCOMPARE (result, output);
138+ auto instance = js->callAsConstructor (className, arg);
139+ QCOMPARE (instance.isError (), false );
140+ auto result1 = instance.call (method, methodArg).toString ();
141+ QCOMPARE (result1, output);
142+ }
143+ { // Test 2
144+ auto instance = TJSLoader (module ).loadAsConstructor (arg);
145+ QCOMPARE (instance.isError (), false );
146+ auto result2 = instance.call (method, methodArg).toString ();
147+ QCOMPARE (result2, output);
148+ }
141149}
142150
143151
@@ -157,7 +165,7 @@ void JSContext::callFunc()
157165 QFETCH (QString, func);
158166 QFETCH (QString, output);
159167
160- TJSContext js;
168+ TJSModule js;
161169 auto result = js.call (func).toString ();
162170 QCOMPARE (result, output);
163171}
@@ -179,7 +187,7 @@ void JSContext::callFunc1()
179187 QFETCH (QString, arg);
180188 QFETCH (QString, output);
181189
182- TJSContext js;
190+ TJSModule js;
183191 auto result = js.call (func, arg).toString ();
184192 QCOMPARE (result, output);
185193}
@@ -201,15 +209,15 @@ void JSContext::transform()
201209 QFETCH (QString, jsx);
202210 QFETCH (QString, output);
203211
204- TJSContext *js = TJSLoader (" JSXTransformer" , " JSXTransformer" ).load ();
212+ TJSModule *js = TJSLoader (" JSXTransformer" , " JSXTransformer" ).load ();
205213 auto result = js->call (" JSXTransformer.transform" , QJSValue (jsx)).property (" code" ).toString ();
206214 QCOMPARE (result, output);
207215}
208216
209217
210218void JSContext::benchmark ()
211219{
212- TJSContext *js = TJSLoader (" JSXTransformer" , " JSXTransformer" ).load ();
220+ TJSModule *js = TJSLoader (" JSXTransformer" , " JSXTransformer" ).load ();
213221
214222 QBENCHMARK {
215223 auto res = js->call (" JSXTransformer.transform" , QString (" <HelloWorld />" ));
@@ -236,7 +244,7 @@ void JSContext::load()
236244 QFETCH (QString, variable);
237245 QFETCH (QString, result);
238246
239- TJSContext *js = TJSLoader (file).load ();
247+ TJSModule *js = TJSLoader (file).load ();
240248 QString output = js->evaluate (variable).toString ();
241249 qDebug () << qPrintable (output);
242250 QCOMPARE (output, result);
@@ -260,7 +268,7 @@ void JSContext::react()
260268 QFETCH (QString, variable);
261269 QFETCH (QString, result);
262270
263- TJSContext js;
271+ TJSModule js;
264272 js.import (" JSXTransformer" , " JSXTransformer" );
265273 js.import (" React" , " react" );
266274 js.import (" ReactDOMServer" , " react-dom-server" );
@@ -334,7 +342,7 @@ void JSContext::reactjsxCommonJs()
334342 QFETCH (QString, jsfile);
335343 QFETCH (QString, result);
336344
337- TJSContext js;
345+ TJSModule js;
338346
339347 // Loads JSX
340348 QString output = js.import (jsfile).toString ();
0 commit comments