]> git.kaiwu.me - njs.git/commitdiff
Added njs.version_number property.
authorDmitry Volyntsev <xeioex@nginx.com>
Fri, 29 Apr 2022 00:59:03 +0000 (17:59 -0700)
committerDmitry Volyntsev <xeioex@nginx.com>
Fri, 29 Apr 2022 00:59:03 +0000 (17:59 -0700)
src/njs.h
src/njs_builtin.c
src/test/njs_unit_test.c

index bdc00b8c03fa3968aa06b0f3c300d909a7645044..fe4e8dee9379e9d1f8e523c0575e5092295d847b 100644 (file)
--- a/src/njs.h
+++ b/src/njs.h
@@ -12,6 +12,7 @@
 #include <njs_auto_config.h>
 
 #define NJS_VERSION                 "0.7.4"
+#define NJS_VERSION_NUMBER          0x000704
 
 
 #include <unistd.h>                 /* STDOUT_FILENO, STDERR_FILENO */
index d23551b1cd7bfb43a8eb207f942f69bdb41164b9..fc102aa37aa3901d45406eb6bce3e81cd77fb5d5 100644 (file)
@@ -1691,6 +1691,14 @@ static const njs_object_prop_t  njs_njs_object_properties[] =
         .enumerable = 1,
     },
 
+    {
+        .type = NJS_PROPERTY,
+        .name = njs_string("version_number"),
+        .value = njs_value(NJS_NUMBER, 1, NJS_VERSION_NUMBER),
+        .configurable = 1,
+        .enumerable = 1,
+    },
+
     {
         .type = NJS_PROPERTY,
         .name = njs_string("dump"),
index 0b73c77b36683298f30d9a07898fbca775f8c9e5..17a81674328b50ae275b318dfddafd07f8e65f3e 100644 (file)
@@ -13448,6 +13448,10 @@ static njs_unit_test_t  njs_test[] =
     { njs_str("Object.values(njs)[0] === njs.version"),
       njs_str("true") },
 
+    { njs_str("njs.version.split('.')"
+              ".map(v => parseInt(v)).reduce((p, c) => p * 256 + c) == njs.version_number"),
+      njs_str("true") },
+
     { njs_str("Object.values(process)"),
       njs_str("") },
 
@@ -17644,9 +17648,6 @@ static njs_unit_test_t  njs_test[] =
     { njs_str("var o = Object.defineProperty({}, 'a', { set(){}, enumerable: true }); njs.dump(o)"),
       njs_str("{a:'[Setter]'}") },
 
-    { njs_str("njs.dump(njs) == `njs {version:'${njs.version}'}`"),
-      njs_str("true") },
-
     { njs_str("var a = []; a[0] = a; njs.dump(a)"),
       njs_str("[[Circular]]") },