mimmi20/browser-detector

View on GitHub
schema/tests.json

Summary

Maintainability
Test Coverage
{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "array",
  "minItems": 1,
  "uniqueItems": true,
  "items": {
    "type": "object",
    "properties": {
      "headers": {
        "type": "object",
        "properties": {
          "user-agent": {
            "type": "string"
          }
        }
      },
      "device": {
        "type": "object",
        "properties": {
          "deviceName": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "marketingName": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "manufacturer": {
            "type": "string"
          },
          "brand": {
            "type": "string"
          },
          "dualOrientation": null,
    "simCount": null,
    "display": {
            "type": "object",
            "properties": {
              "width": {
                "anyOf": [
                  {
                    "type": "integer",
                    "minimum": 0
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "height": {
                "anyOf": [
                  {
                    "type": "integer",
                    "minimum": 0
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "touch": {
                "anyOf": [
                  {
                    "type": "boolean"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "size": {
                "anyOf": [
                  {
                    "type": "number",
                    "minimum": 0
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "required": [
              "width",
              "height",
              "touch",
              "size"
            ]
          },
          "type": {
            "type": "string"
          }
        },
        "required": [
          "deviceName",
          "marketingName",
          "manufacturer",
          "brand",
          "display",
          "type"
        ]
      },
      "browser": {
        "type": "object",
        "properties": {
          "name": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "modus": {
            "anyOf": [
              {
                "type": "null"
              },
              {
                "type": "integer"
              }
            ]
          },
          "version": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "manufacturer": {
            "type": "string"
          },
          "bits": {
            "anyOf": [
              {
                "type": "null"
              },
              {
                "type": "integer"
              }
            ]
          },
          "type": {
            "type": "string"
          }
        },
        "required": [
          "name",
          "modus",
          "version",
          "manufacturer",
          "bits",
          "type"
        ]
      },
      "os": {
        "type": "object",
        "properties": {
          "name": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "marketingName": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "version": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "manufacturer": {
            "type": "string"
          },
          "bits": {
            "anyOf": [
              {
                "type": "integer"
              },
              {
                "type": "null"
              }
            ]
          }
        },
        "required": [
          "name",
          "marketingName",
          "version",
          "manufacturer",
          "bits"
        ]
      },
      "engine": {
        "type": "object",
        "properties": {
          "name": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "version": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "manufacturer": {
            "type": "string"
          }
        },
        "required": [
          "name",
          "version",
          "manufacturer"
        ]
      }
    },
    "required": [
      "headers",
      "device",
      "browser",
      "os",
      "engine"
    ]
  }
}