@@ -141,13 +141,25 @@ public function testSignError()
141141
142142 public function testWithWhenResponseIsBase64 ()
143143 {
144- if (!class_exists ('JSignPDF\JSignPDFBin\JavaCommandService ' )) {
145- $ this ->markTestSkipped ('Install jsignpdf/jsignpdf-bin ' );
146- }
147- $ params = JSignParamBuilder::instance ()->withDefault ()->setIsOutputTypeBase64 (true );
148- $ params ->setCertificate ($ this ->getNewCert ($ params ->getPassword ()));
149- $ fileSigned = $ this ->service ->sign ($ params );
150- $ this ->assertTrue (base64_decode ($ fileSigned , true ) == true );
144+ global $ mockExec ;
145+ $ mockExec = ['Finished: Signature succesfully created. ' ];
146+ $ params = JSignParamBuilder::instance ()->withDefault ();
147+ vfsStream::setup ('download ' );
148+ mkdir ('vfs://download/jvava/bin ' , 0755 , true );
149+ touch ('vfs://download/jvava/bin/java ' );
150+ chmod ('vfs://download/jvava/bin/java ' , 0755 );
151+ $ params ->setJavaPath ('vfs://download/jvava/bin/java ' );
152+ $ params ->setJavaDownloadUrl ('' );
153+ mkdir ('vfs://download/jsignpdf ' , 0755 , true );
154+ $ params ->setjSignPdfJarPath ('vfs://download/jsignpdf ' );
155+ $ params ->setJSignPdfDownloadUrl ('' );
156+ $ params ->setCertificate ($ this ->getNewCert ('123 ' ));
157+ $ params ->setPassword ('123 ' );
158+ $ signedFilePath = $ params ->getTempPdfSignedPath ();
159+ file_put_contents ($ signedFilePath , 'signed file content ' );
160+ $ params ->setIsOutputTypeBase64 (true );
161+ $ signedContent = $ this ->service ->sign ($ params );
162+ $ this ->assertEquals (base64_encode ('signed file content ' ), $ signedContent );
151163 }
152164
153165 public function testSignWhenCertificateIsNull ()
0 commit comments