protected function assertWrappedElement()
	{
		if ( !$this->acceptanceCriteria ) {
			return;
		}

		foreach ( $this->acceptanceCriteria as $criterion ) {
			if ( !$this->isTagNameMatching($criterion) ) {
				continue;
			}

			if ( $this->isAttributeMatching($criterion) ) {
				return;
			}
		}

		$message = 'Wrapped element "%s" does not match "%s" criteria';

		throw new TypifiedElementException(
			sprintf($message, $this->getWrappedElement(), get_class($this)),
			TypifiedElementException::TYPE_INCORRECT_WRAPPED_ELEMENT
		);
	}