{
	"description": "Test `smw/schema` on `PROPERTY_CONSTRAINT_SCHEMA` with `must_exists` and `Constraint schema`",
	"setup": [
		{
			"namespace": "SMW_NS_SCHEMA",
			"page": "Constraint:MustExists",
			"contents": {
				"import-from": "/../Fixtures/p-1102-constraint-must-exists.json"
			}
		},
		{
			"namespace": "SMW_NS_PROPERTY",
			"page": "Has page",
			"contents": "[[Has type::Page]] [[Constraint schema::Constraint:MustExists]]"
		},
		{
			"page": "P1102/1",
			"contents": "[[Has page::DoesNotExist]]"
		},
		{
			"page": "P1102/2",
			"contents": "[[Has page::P1102/1]]"
		}
	],
	"tests": [
		{
			"type": "parser",
			"about": "#0 (invalid assignment on `must_exists`)",
			"subject": "P1102/1",
			"assert-store": {
				"semantic-data": {
					"strict-mode-valuematch": false,
					"propertyCount": 3,
					"propertyKeys": [
						"_SKEY",
						"_MDAT",
						"_ERRC"
					]
				}
			}
		},
		{
			"type": "parser",
			"about": "#0.1 (invalid assignment on `must_exists`)",
			"namespace": "NS_MAIN",
			"subject": "P1102/1#_ERR12fe6675e23ae3a41adcc01e21b7f638",
			"assert-store": {
				"semantic-data": {
					"strict-mode-valuematch": false,
					"propertyCount": 4,
					"propertyKeys": [
						"_SKEY",
						"_ERRT",
						"_ERRP",
						"_ERR_TYPE"
					],
					"propertyValues": [
						{ "serialization": "[2,\"smw-constraint-violation-must-exists\",\"Has page\",\"DoesNotExist\"]" }
					]
				}
			}
		},
		{
			"type": "parser",
			"about": "#1 (valid assignment on `must_exists`)",
			"subject": "P1102/2",
			"assert-store": {
				"semantic-data": {
					"strict-mode-valuematch": false,
					"propertyCount": 3,
					"propertyKeys": [
						"_SKEY",
						"_MDAT",
						"Has page"
					],
					"propertyValues": [
						"P1102/1#2##"
					]
				}
			}
		}
	],
	"settings": {
		"wgContLang": "en",
		"wgLang": "en",
		"smwgPageSpecialProperties": [
			"_MDAT"
		],
		"smwgNamespacesWithSemanticLinks": {
			"NS_MAIN": true,
			"SMW_NS_PROPERTY": true,
			"SMW_NS_SCHEMA": true
		}
	},
	"meta": {
		"version": "2",
		"is-incomplete": false,
		"debug": false
	}
}
