File
Blob: src/workerd/api/node/tests/constants-test.js
| 1 | // Copyright (c) 2017-2022 Cloudflare, Inc. |
| 2 | // Licensed under the Apache 2.0 license found in the LICENSE file or at: |
| 3 | // https://opensource.org/licenses/Apache-2.0 |
| 4 | |
| 5 | import { ok, strictEqual, throws } from 'node:assert'; |
| 6 | |
| 7 | import constants from 'node:constants'; |
| 8 | import { POINT_CONVERSION_HYBRID } from 'node:constants'; |
| 9 | |
| 10 | export const constantsTest = { |
| 11 | test() { |
| 12 | [ |
| 13 | 'RTLD_LAZY', |
| 14 | 'RTLD_NOW', |
| 15 | 'RTLD_GLOBAL', |
| 16 | 'RTLD_LOCAL', |
| 17 | 'E2BIG', |
| 18 | 'EACCES', |
| 19 | 'EADDRINUSE', |
| 20 | 'EADDRNOTAVAIL', |
| 21 | 'EAFNOSUPPORT', |
| 22 | 'EAGAIN', |
| 23 | 'EALREADY', |
| 24 | 'EBADF', |
| 25 | 'EBADMSG', |
| 26 | 'EBUSY', |
| 27 | 'ECANCELED', |
| 28 | 'ECHILD', |
| 29 | 'ECONNABORTED', |
| 30 | 'ECONNREFUSED', |
| 31 | 'ECONNRESET', |
| 32 | 'EDEADLK', |
| 33 | 'EDESTADDRREQ', |
| 34 | 'EDOM', |
| 35 | 'EDQUOT', |
| 36 | 'EEXIST', |
| 37 | 'EFAULT', |
| 38 | 'EFBIG', |
| 39 | 'EHOSTUNREACH', |
| 40 | 'EIDRM', |
| 41 | 'EILSEQ', |
| 42 | 'EINPROGRESS', |
| 43 | 'EINTR', |
| 44 | 'EINVAL', |
| 45 | 'EIO', |
| 46 | 'EISCONN', |
| 47 | 'EISDIR', |
| 48 | 'ELOOP', |
| 49 | 'EMFILE', |
| 50 | 'EMLINK', |
| 51 | 'EMSGSIZE', |
| 52 | 'EMULTIHOP', |
| 53 | 'ENAMETOOLONG', |
| 54 | 'ENETDOWN', |
| 55 | 'ENETRESET', |
| 56 | 'ENETUNREACH', |
| 57 | 'ENFILE', |
| 58 | 'ENOBUFS', |
| 59 | 'ENODATA', |
| 60 | 'ENODEV', |
| 61 | 'ENOENT', |
| 62 | 'ENOEXEC', |
| 63 | 'ENOLCK', |
| 64 | 'ENOLINK', |
| 65 | 'ENOMEM', |
| 66 | 'ENOMSG', |
| 67 | 'ENOPROTOOPT', |
| 68 | 'ENOSPC', |
| 69 | 'ENOSR', |
| 70 | 'ENOSTR', |
| 71 | 'ENOSYS', |
| 72 | 'ENOTCONN', |
| 73 | 'ENOTDIR', |
| 74 | 'ENOTEMPTY', |
| 75 | 'ENOTSOCK', |
| 76 | 'ENOTSUP', |
| 77 | 'ENOTTY', |
| 78 | 'ENXIO', |
| 79 | 'EOPNOTSUPP', |
| 80 | 'EOVERFLOW', |
| 81 | 'EPERM', |
| 82 | 'EPIPE', |
| 83 | 'EPROTO', |
| 84 | 'EPROTONOSUPPORT', |
| 85 | 'EPROTOTYPE', |
| 86 | 'ERANGE', |
| 87 | 'EROFS', |
| 88 | 'ESPIPE', |
| 89 | 'ESRCH', |
| 90 | 'ESTALE', |
| 91 | 'ETIME', |
| 92 | 'ETIMEDOUT', |
| 93 | 'ETXTBSY', |
| 94 | 'EWOULDBLOCK', |
| 95 | 'EXDEV', |
| 96 | 'PRIORITY_LOW', |
| 97 | 'PRIORITY_BELOW_NORMAL', |
| 98 | 'PRIORITY_NORMAL', |
| 99 | 'PRIORITY_ABOVE_NORMAL', |
| 100 | 'PRIORITY_HIGH', |
| 101 | 'PRIORITY_HIGHEST', |
| 102 | 'SIGHUP', |
| 103 | 'SIGINT', |
| 104 | 'SIGQUIT', |
| 105 | 'SIGILL', |
| 106 | 'SIGTRAP', |
| 107 | 'SIGABRT', |
| 108 | 'SIGIOT', |
| 109 | 'SIGBUS', |
| 110 | 'SIGFPE', |
| 111 | 'SIGKILL', |
| 112 | 'SIGUSR1', |
| 113 | 'SIGSEGV', |
| 114 | 'SIGUSR2', |
| 115 | 'SIGPIPE', |
| 116 | 'SIGALRM', |
| 117 | 'SIGTERM', |
| 118 | 'SIGCHLD', |
| 119 | 'SIGCONT', |
| 120 | 'SIGSTOP', |
| 121 | 'SIGTSTP', |
| 122 | 'SIGTTIN', |
| 123 | 'SIGTTOU', |
| 124 | 'SIGURG', |
| 125 | 'SIGXCPU', |
| 126 | 'SIGXFSZ', |
| 127 | 'SIGVTALRM', |
| 128 | 'SIGPROF', |
| 129 | 'SIGWINCH', |
| 130 | 'SIGIO', |
| 131 | 'SIGINFO', |
| 132 | 'SIGSYS', |
| 133 | 'UV_FS_SYMLINK_DIR', |
| 134 | 'UV_FS_SYMLINK_JUNCTION', |
| 135 | 'O_RDONLY', |
| 136 | 'O_WRONLY', |
| 137 | 'O_RDWR', |
| 138 | 'UV_DIRENT_UNKNOWN', |
| 139 | 'UV_DIRENT_FILE', |
| 140 | 'UV_DIRENT_DIR', |
| 141 | 'UV_DIRENT_LINK', |
| 142 | 'UV_DIRENT_FIFO', |
| 143 | 'UV_DIRENT_SOCKET', |
| 144 | 'UV_DIRENT_CHAR', |
| 145 | 'UV_DIRENT_BLOCK', |
| 146 | 'S_IFMT', |
| 147 | 'S_IFREG', |
| 148 | 'S_IFDIR', |
| 149 | 'S_IFCHR', |
| 150 | 'S_IFBLK', |
| 151 | 'S_IFIFO', |
| 152 | 'S_IFLNK', |
| 153 | 'S_IFSOCK', |
| 154 | 'O_CREAT', |
| 155 | 'O_EXCL', |
| 156 | 'UV_FS_O_FILEMAP', |
| 157 | 'O_NOCTTY', |
| 158 | 'O_TRUNC', |
| 159 | 'O_APPEND', |
| 160 | 'O_DIRECTORY', |
| 161 | 'O_NOFOLLOW', |
| 162 | 'O_SYNC', |
| 163 | 'O_DSYNC', |
| 164 | 'O_SYMLINK', |
| 165 | 'O_NONBLOCK', |
| 166 | 'S_IRWXU', |
| 167 | 'S_IRUSR', |
| 168 | 'S_IWUSR', |
| 169 | 'S_IXUSR', |
| 170 | 'S_IRWXG', |
| 171 | 'S_IRGRP', |
| 172 | 'S_IWGRP', |
| 173 | 'S_IXGRP', |
| 174 | 'S_IRWXO', |
| 175 | 'S_IROTH', |
| 176 | 'S_IWOTH', |
| 177 | 'S_IXOTH', |
| 178 | 'F_OK', |
| 179 | 'R_OK', |
| 180 | 'W_OK', |
| 181 | 'X_OK', |
| 182 | 'UV_FS_COPYFILE_EXCL', |
| 183 | 'COPYFILE_EXCL', |
| 184 | 'UV_FS_COPYFILE_FICLONE', |
| 185 | 'COPYFILE_FICLONE', |
| 186 | 'UV_FS_COPYFILE_FICLONE_FORCE', |
| 187 | 'COPYFILE_FICLONE_FORCE', |
| 188 | 'OPENSSL_VERSION_NUMBER', |
| 189 | 'SSL_OP_ALL', |
| 190 | 'SSL_OP_ALLOW_NO_DHE_KEX', |
| 191 | 'SSL_OP_ALLOW_UNSAFE_LEGACY_RENEGOTIATION', |
| 192 | 'SSL_OP_CIPHER_SERVER_PREFERENCE', |
| 193 | 'SSL_OP_CISCO_ANYCONNECT', |
| 194 | 'SSL_OP_COOKIE_EXCHANGE', |
| 195 | 'SSL_OP_CRYPTOPRO_TLSEXT_BUG', |
| 196 | 'SSL_OP_DONT_INSERT_EMPTY_FRAGMENTS', |
| 197 | 'SSL_OP_LEGACY_SERVER_CONNECT', |
| 198 | 'SSL_OP_NO_COMPRESSION', |
| 199 | 'SSL_OP_NO_ENCRYPT_THEN_MAC', |
| 200 | 'SSL_OP_NO_QUERY_MTU', |
| 201 | 'SSL_OP_NO_RENEGOTIATION', |
| 202 | 'SSL_OP_NO_SESSION_RESUMPTION_ON_RENEGOTIATION', |
| 203 | 'SSL_OP_NO_SSLv2', |
| 204 | 'SSL_OP_NO_SSLv3', |
| 205 | 'SSL_OP_NO_TICKET', |
| 206 | 'SSL_OP_NO_TLSv1', |
| 207 | 'SSL_OP_NO_TLSv1_1', |
| 208 | 'SSL_OP_NO_TLSv1_2', |
| 209 | 'SSL_OP_NO_TLSv1_3', |
| 210 | 'SSL_OP_PRIORITIZE_CHACHA', |
| 211 | 'SSL_OP_TLS_ROLLBACK_BUG', |
| 212 | 'ENGINE_METHOD_RSA', |
| 213 | 'ENGINE_METHOD_DSA', |
| 214 | 'ENGINE_METHOD_DH', |
| 215 | 'ENGINE_METHOD_RAND', |
| 216 | 'ENGINE_METHOD_EC', |
| 217 | 'ENGINE_METHOD_CIPHERS', |
| 218 | 'ENGINE_METHOD_DIGESTS', |
| 219 | 'ENGINE_METHOD_PKEY_METHS', |
| 220 | 'ENGINE_METHOD_PKEY_ASN1_METHS', |
| 221 | 'ENGINE_METHOD_ALL', |
| 222 | 'ENGINE_METHOD_NONE', |
| 223 | 'DH_CHECK_P_NOT_SAFE_PRIME', |
| 224 | 'DH_CHECK_P_NOT_PRIME', |
| 225 | 'DH_UNABLE_TO_CHECK_GENERATOR', |
| 226 | 'DH_NOT_SUITABLE_GENERATOR', |
| 227 | 'RSA_PKCS1_PADDING', |
| 228 | 'RSA_NO_PADDING', |
| 229 | 'RSA_PKCS1_OAEP_PADDING', |
| 230 | 'RSA_X931_PADDING', |
| 231 | 'RSA_PKCS1_PSS_PADDING', |
| 232 | 'RSA_PSS_SALTLEN_DIGEST', |
| 233 | 'RSA_PSS_SALTLEN_MAX_SIGN', |
| 234 | 'RSA_PSS_SALTLEN_AUTO', |
| 235 | 'defaultCoreCipherList', |
| 236 | 'TLS1_VERSION', |
| 237 | 'TLS1_1_VERSION', |
| 238 | 'TLS1_2_VERSION', |
| 239 | 'TLS1_3_VERSION', |
| 240 | 'POINT_CONVERSION_COMPRESSED', |
| 241 | 'POINT_CONVERSION_UNCOMPRESSED', |
| 242 | 'POINT_CONVERSION_HYBRID', |
| 243 | ].forEach((key) => { |
| 244 | ok(key in constants); |
| 245 | }); |
| 246 | |
| 247 | strictEqual(constants.POINT_CONVERSION_HYBRID, POINT_CONVERSION_HYBRID); |
| 248 | throws( |
| 249 | () => { |
| 250 | constants.POINT_CONVERSION_HYBRID = 'abc'; |
| 251 | }, |
| 252 | { |
| 253 | message: /read only property/, |
| 254 | } |
| 255 | ); |
| 256 | strictEqual(constants.POINT_CONVERSION_HYBRID, POINT_CONVERSION_HYBRID); |
| 257 | }, |
| 258 | }; |