HEX
Server: nginx/1.18.0
System: Linux test-ipsremont 5.4.0-214-generic #234-Ubuntu SMP Fri Mar 14 23:50:27 UTC 2025 x86_64
User: ips (1000)
PHP: 8.0.30
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: /var/www/ai-notam/node_modules/@sinonjs/commons/lib/called-in-order.test.js
"use strict";

var assert = require("@sinonjs/referee-sinon").assert;
var calledInOrder = require("./called-in-order");
var sinon = require("@sinonjs/referee-sinon").sinon;

var testObject1 = {
    someFunction: function () {
        return;
    },
};
var testObject2 = {
    otherFunction: function () {
        return;
    },
};
var testObject3 = {
    thirdFunction: function () {
        return;
    },
};

function testMethod() {
    testObject1.someFunction();
    testObject2.otherFunction();
    testObject2.otherFunction();
    testObject2.otherFunction();
    testObject3.thirdFunction();
}

describe("calledInOrder", function () {
    beforeEach(function () {
        sinon.stub(testObject1, "someFunction");
        sinon.stub(testObject2, "otherFunction");
        sinon.stub(testObject3, "thirdFunction");
        testMethod();
    });
    afterEach(function () {
        testObject1.someFunction.restore();
        testObject2.otherFunction.restore();
        testObject3.thirdFunction.restore();
    });

    describe("given single array argument", function () {
        describe("when stubs were called in expected order", function () {
            it("returns true", function () {
                assert.isTrue(
                    calledInOrder([
                        testObject1.someFunction,
                        testObject2.otherFunction,
                    ])
                );
                assert.isTrue(
                    calledInOrder([
                        testObject1.someFunction,
                        testObject2.otherFunction,
                        testObject2.otherFunction,
                        testObject3.thirdFunction,
                    ])
                );
            });
        });

        describe("when stubs were called in unexpected order", function () {
            it("returns false", function () {
                assert.isFalse(
                    calledInOrder([
                        testObject2.otherFunction,
                        testObject1.someFunction,
                    ])
                );
                assert.isFalse(
                    calledInOrder([
                        testObject2.otherFunction,
                        testObject1.someFunction,
                        testObject1.someFunction,
                        testObject3.thirdFunction,
                    ])
                );
            });
        });
    });

    describe("given multiple arguments", function () {
        describe("when stubs were called in expected order", function () {
            it("returns true", function () {
                assert.isTrue(
                    calledInOrder(
                        testObject1.someFunction,
                        testObject2.otherFunction
                    )
                );
                assert.isTrue(
                    calledInOrder(
                        testObject1.someFunction,
                        testObject2.otherFunction,
                        testObject3.thirdFunction
                    )
                );
            });
        });

        describe("when stubs were called in unexpected order", function () {
            it("returns false", function () {
                assert.isFalse(
                    calledInOrder(
                        testObject2.otherFunction,
                        testObject1.someFunction
                    )
                );
                assert.isFalse(
                    calledInOrder(
                        testObject2.otherFunction,
                        testObject1.someFunction,
                        testObject3.thirdFunction
                    )
                );
            });
        });
    });
});