Samsung / UTopia

UT based automated fuzz driver generation
Apache License 2.0
159 stars 25 forks source link

Running the code "make -s jstest"(a part of "make -j16 check" of "make node") gives many errors. #21

Closed YancyLii closed 3 months ago

YancyLii commented 8 months ago

I run the program with the container based on given image.

When I execute “python3 -m helper.make node”, I get many error. Moreover, I can execute other ones and make and build them with no problem, such as libaom、assimp、libvpx

After analysis, it was found that the error was specifically in the execution of part “make -s jstest”

There are two specific types of errors:

the first is about "OSError: [Errno 9] Bad file descriptor", Here is two examples: === release test-repl-external-module === Path: pseudo-tty/test-repl-external-module Traceback (most recent call last): File "/opt/data/UTopia/exp/node/test/pseudo-tty/pty_helper.py", line 98, in if pipe(STDIN, parent_fd): File "/opt/data/UTopia/exp/node/test/pseudo-tty/pty_helper.py", line 17, in pipe data = os.read(sfd, 256) OSError: [Errno 9] Bad file descriptor Command: /usr/bin/python3.8 /opt/data/UTopia/exp/node/test/pseudo-tty/pty_helper.py out/Release/node /opt/data/UTopia/exp/node/test/pseudo-tty/test-repl-external-module.js

=== release test-repl-eval === Path: parallel/test-repl-eval

node:events:371 throw er; // Unhandled 'error' event ^

Error: EBADF: bad file descriptor, read Emitted 'error' event on ReadStream instance at: at emitErrorNT (node:internal/streams/destroy:193:8) at errorOrDestroy (node:internal/streams/destroy:256:7) at node:internal/fs/streams:256:9 at FSReqCallback.wrapper [as oncomplete] (node:fs:657:5) at FSReqCallback.callbackTrampoline (node:internal/async_hooks:130:17) { errno: -9, code: 'EBADF', syscall: 'read' } Command: out/Release/node /opt/data/UTopia/exp/node/test/parallel/test-repl-eval.js

the second is about "AssertionError", Here is anexample: AssertionError [ERR_ASSERTION]: function should not have been called at /opt/data/UTopia/exp/node/test/parallel/test-https-selfsigned-no-keycertsign-no-crash.js:61 called with arguments: Error: certificate has expired at TLSSocket.onConnectSecure (node:_tls_wrap:1530:34) at TLSSocket.emit (node:events:394:28) at TLSSocket._finishInit (node:_tls_wrap:944:8) at TLSWrap.ssl.onhandshakedone (node:_tls_wrap:725:12) { code: 'CERT_HAS_EXPIRED' } at ClientRequest.mustNotCall (/opt/data/UTopia/exp/node/test/common/index.js:470:12) at ClientRequest.emit (node:events:394:28) at TLSSocket.socketErrorListener (node:_http_client:447:9) at TLSSocket.emit (node:events:394:28) at emitErrorNT (node:internal/streams/destroy:193:8) at emitErrorCloseNT (node:internal/streams/destroy:158:3) at processTicksAndRejections (node:internal/process/task_queues:83:21) { generatedMessage: false, code: 'ERR_ASSERTION', actual: undefined, expected: undefined, operator: 'fail' } Command: out/Release/node /opt/data/UTopia/exp/node/test/parallel/test-https-selfsigned-no-keycertsign-no-crash.js

How can I deal with these probelms?Thanks!

Attached is the complete log message: makenode.log

yuweol commented 8 months ago

Hello, sorry for late.

I think, it may work if you change make test to make all in helper/make.yml. In this file, shell commands to build each project is stored. You can easily find shell commands for node project in that file. And change make test to make all. Note that, there are 3 commands you should change in those commands (org, fuzzer, profile).

Unit test for node project is not mandatory to replay UTopia's work, Thanks for your interest.

sole2 commented 3 months ago

Closing inactive issue. Feel free to reopen if you have more to discuss.