servirtium-java icon indicating copy to clipboard operation
servirtium-java copied to clipboard

Base64 representation of binares doesn't work

Open paul-hammant opened this issue 6 years ago • 4 comments

Half implemented, sadly.

paul-hammant avatar Dec 02 '19 11:12 paul-hammant

Hey @paul-hammant I am trying to use this feature. Do you have plans to implement it? take a look on my stack trace: java.lang.AssertionError: Interaction 0 (method: POST) in ....shouldSendDocumentsSuccessfully.md(context: ....shouldSendDocumentsSuccessfully), body from the client that should be sent to real server are not the same those previously recorded at com.paulhammant.servirtium.MarkdownReplayer$ReplayMonitor$Default.makeAssertionError(MarkdownReplayer.java:475) at com.paulhammant.servirtium.MarkdownReplayer$ReplayMonitor$Default.unexpectedClientRequestBody(MarkdownReplayer.java:456) at com.paulhammant.servirtium.MarkdownReplayer$ReplayMonitor$Console.unexpectedClientRequestBody(MarkdownReplayer.java:547) at com.paulhammant.servirtium.MarkdownReplayer.getServiceResponseForRequest(MarkdownReplayer.java:282) at com.paulhammant.servirtium.jetty.JettyServirtiumServer.handleExchange(JettyServirtiumServer.java:106) at com.paulhammant.servirtium.jetty.JettyServirtiumServer.access$000(JettyServirtiumServer.java:25) at com.paulhammant.servirtium.jetty.JettyServirtiumServer$1.handle(JettyServirtiumServer.java:44) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127) at org.eclipse.jetty.server.Server.handle(Server.java:500) at org.eclipse.jetty.server.HttpChannel.lambda$handle$1(HttpChannel.java:383) at org.eclipse.jetty.server.HttpChannel.dispatch(HttpChannel.java:547) at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:375) at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:270) at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:311) at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:103) at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:117) at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:806) at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:938) at java.lang.Thread.run(Thread.java:748) Caused by: java.lang.AssertionError: Expected: "//SERVIRTIUM+Base64: VALUE" but: was [<-1>, <-40>, ... VALUE] at org.hamcrest.MatcherAssert.assertThat(MatcherAssert.java:20) at org.hamcrest.MatcherAssert.assertThat(MatcherAssert.java:8) at com.paulhammant.servirtium.MarkdownReplayer.getServiceResponseForRequest(MarkdownReplayer.java:280) ... 15 more

rodrigoramosDC avatar Feb 11 '20 19:02 rodrigoramosDC

It was prviously implemented, but I must have disabled it. I'll give it a go

paul-hammant avatar Feb 12 '20 16:02 paul-hammant

Where would one start to enable this again? The recording seems to work .. is the playback missing some functionality?

suls avatar Mar 11 '20 08:03 suls

I don't know when I broke it. http://svn.apache.org/repos/asf/synapse/tags/3.0.0/modules/distribution/src/main/conf/ .. the jks file is binary. Try a simple record and playback of a GET for that :) Then attach your debugger, with or JUnit or TestNG being the runner

paul-hammant avatar Mar 15 '20 12:03 paul-hammant