assertNull( $checker->getError() ); $this->assertTrue( $checker->isValid() ); $this->assertNull( $checker->getError() ); $this->assertSame( '\\sin x^{2}', $checker->getValidTex() ); } public function testValidTypeTex() { $checker = new LocalChecker( '\sin x^2', 'tex' ); $this->assertTrue( $checker->isValid() ); } public function testValidTypeChem() { $checker = new LocalChecker( '{\\displaystyle {\\ce {\\cdot OHNO_{2}}}}', 'chem' ); $this->assertTrue( $checker->isValid() ); } public function testValidTypeInline() { $checker = new LocalChecker( '{\\textstyle \\log2 }', 'inline-tex' ); $this->assertTrue( $checker->isValid() ); } public function testInvalidType() { $checker = new LocalChecker( '\sin x^2', 'INVALIDTYPE' ); $this->assertInstanceOf( LocalChecker::class, $checker ); $this->assertInstanceOf( Message::class, $checker->getError() ); $this->assertFalse( $checker->isValid() ); } public function testInvalid() { $checker = new LocalChecker( '\sin\newcommand' ); $this->assertFalse( $checker->isValid() ); $this->assertStringContainsString( Message::newFromKey( 'math_unknown_function', '\newcommand' ) ->inContentLanguage() ->escaped(), $checker->getError() ->inContentLanguage() ->escaped() ); $this->assertNull( $checker->getValidTex() ); } public function testErrorSyntax() { $checker = new LocalChecker( '\left(' ); $this->assertFalse( $checker->isValid() ); $this->assertStringContainsString( Message::newFromKey( 'math_syntax_error' ) ->inContentLanguage() ->escaped(), $checker->getError() ->inContentLanguage() ->escaped() ); } }