diff --git a/testing/marionette/assert.js b/testing/marionette/assert.js
index ad772ee2b115..8952055dfb9a 100644
--- a/testing/marionette/assert.js
+++ b/testing/marionette/assert.js
@@ -242,6 +242,26 @@ assert.number = function(obj, msg = "") {
return assert.that(Number.isFinite, msg)(obj);
};
+/**
+ * Asserts that obj is a positive number.
+ *
+ * @param {?} obj
+ * Value to test.
+ * @param {string=} msg
+ * Custom error message.
+ *
+ * @return {number}
+ * obj is returned unaltered.
+ *
+ * @throws {InvalidArgumentError}
+ * If obj is not a positive integer.
+ */
+assert.positiveNumber = function(obj, msg = "") {
+ assert.number(obj, msg);
+ msg = msg || pprint`Expected ${obj} to be >= 0`;
+ return assert.that(n => n >= 0, msg)(obj);
+};
+
/**
* Asserts that obj is callable.
*