Commit 92639e6 for mammothjs

commit 92639e6a702c01a1019fdf1bc5fed377e352af0d
Author: Michael Williamson <mike@zwobble.org>
Date:   Sat May 31 09:39:42 2025 +0100

    Add tests for promises.props()

diff --git a/test/promises.tests.js b/test/promises.tests.js
index 3dd24be..f54245b 100644
--- a/test/promises.tests.js
+++ b/test/promises.tests.js
@@ -46,3 +46,54 @@ test("try", {
         );
     }
 });
+
+test("props", {
+    "props({}) resolve to {}": function() {
+        return promises.props({}).then(function(result) {
+            assert.deepStrictEqual(result, {});
+        });
+    },
+
+    "when object has promise values then props returns with all values resolved": function() {
+        return promises.props({
+            a: promises.resolve(1),
+            b: promises.resolve(2),
+            c: promises.resolve(3)
+        }).then(function(result) {
+            assert.deepStrictEqual(result, {
+                a: 1,
+                b: 2,
+                c: 3
+            });
+        });
+    },
+
+    "when object has non-promise values then props returns with same values": function() {
+        return promises.props({
+            a: 1,
+            b: 2,
+            c: 3
+        }).then(function(result) {
+            assert.deepStrictEqual(result, {
+                a: 1,
+                b: 2,
+                c: 3
+            });
+        });
+    },
+
+    "props(...).also(...) can be used to add props": function() {
+        return promises.props({
+            a: promises.resolve(1)
+        }).also(function(result) {
+            return {
+                b: result.a + 1
+            };
+        }).then(function(result) {
+            assert.deepStrictEqual(result, {
+                a: 1,
+                b: 2
+            });
+        });
+    }
+});