- add
--content-length
for max request content length in standalone server
- HTTP and HTTPS with JSON configuration from file/class path
req.client.port
is supported in templatesameSite
cookie attribute is supportedcors
in response is supported for CORSallowOrigin
(Access-Control-Allow-Credentials)allowCredentials
(Access-Control-Allow-Credentials)exposeHeaders
(Access-Control-Expose-Headers)maxAge
(Access-Control-Max-Age)allowMethods
(Access-Control-Allow-Methods)allowHeaders
(Access-Control-Allow-Headers)
path
is introduced for urireq.xml
is supported in templatereq.client.address
is supported in templatereq.path
is supported in template
- add
-q
for quiet mode in standalone server
- enhance log with query parameters
- event action log is supported
conditional
Java API allows you to write your own matcherrandom
template function supports start and end as rangestruct
API for JSON and XML which matches only struct no matter what content is.
- restart with configuration when new configuration is illegal. #304
- enhance log with query parameters
xml
returns ContentResource which is A BREAK CHANGE.
connected
API return content when client connects to websocket serverrequest
match request contentresponse
return response contentjoin
add client to specific groupbroadcast
broadcast message to all subscriber.group
broadcast message to specific group
transform
Java API allows you transform your content.binary
Java API return binary message.json
Java API return pojo dynamically.text
,binary
,json
,var
with function, Java API allows you write your own response content.
- Return application/json header for
json
API with text and resource.
- Upgrade minimal Java version to Java 8.
record
andreplay
support dynamic stub server.group
identifier
modifier
tape
cycle
API returns response as a cycle.now
as template function is supported in templaterandom
as template function is supported in templatereq.json
is supported in templatefailover
andplayback
status API is supported.header
returns HttpHeader instead of ResponseHandler.get
andpost
for event action supports HTTP header.
- Support multiple HTTP headers with same name
- Support proxy PATCH method
- Dump HTTP message even if Content Length header is missing
- Upgrade minimal Java version to Java 7
json
API returns resource, so it can be used for both request and response.and
API for Response Handler
seq
is supported finallyjson
in Post event
- Glob syntax is supported for include files in global setting
- Glob syntax is supported for CLI '-c' argument
- Template for Event action
- Remove publish API with Optional, e.g. file and pathResource
- Proxy with content resource as url
- Add cookie attribute API
- HTTPS JUnit runner for POJO, JSON and from path resource
- Http JSON runner with path resource
- Socket JSON runner with path resource
- Fix: get Moco standalone version from manifest
- Fix: merge server with port
- Fix: set charset from http request
- Fix: parse json with charset
- Fix: fail to load configuration with multiple modification
- Fix: allowed empty query
- Fix: make request hit and moco monitor thread safe
- Fix: parse form with charset
- JUnit Integration
- get
- post
- put
- delete
- head
- patch
- sub-resource
- any id
- Fix: response handler case issue
- Write JSON content to log
- Fix: empty content for jsonpath
- Fix: empty content for xpath
- toJson will convert POJO to JSON text in response handler
- json with pojo will convert POJO to JSON text in request matcher
- socketServer without port
- socketServer with monitor, e.g. logging and verification
- Template as redirect target
- Enhance log dumper with MediaType implementation
- Enhance socket server implementation with byte buf, rather than string
- Fix charset issue in toJson
- Enhance file content type with MediaType implementation
- Same name query has been supported
- Use httpServer as API, and httpserver has been deprecated, will be removed at next release.
- File and path resource with charset
- Latency with time unit, and latency without time unit has been deprecated, will be removed at next release
- Log file with charset
- Template as filename for file and path resource
- Mount with response setting
- Request
- File and path resource read as byte array to fix file encoding issue
- JSON path and XPath in template will return many objects.
- Changed template extractor name to singular in JSON API, e.g. json_paths to json_path, xpaths to xpath.
- Socket support
- Version query
- Start arguments have been changed from start to HTTP(HTTPS, Socket) etc.
- Attachment
- server by JSON configuration
- Template extractor support
- Added version argument
- JSON Path, because new version JSON Path implementation has been introduced.
- (Beta) HTTPS support
- Http Protocol Version in Java API.
- More operators: ** startsWith ** endsWith ** contain ** exist
- between for verifier
- Added multiple monitors for server creation.
- json text shortcut
- change template variables from Object to String. (API users have to decide how to display their vars).
- JSON request/response shortcut in JSON configuration.
- Runner API
- (Beta) gmoco, moco groovy shell
- log to record request
- once for verifier
- batch proxy
- proxy playback
- cookie
- form
- template variables
- Response
- Fixed "uri" in failover to remove query parameter.
- Used Proguard to minimize standalone jar
- Keep connect alive if request wants to keep alive
- NPE for validating form/content in request hit
- NPE for XPath matcher
- Wait server to shutdown completely
- Request Hit as verifier
- Event API ** Event: Complete ** Event Action: Get/Post URL
- Turned off log for API by default
- seq API with response handler
- Added shortcut for PUT and DELETE method
- Server can select available port(start/shutdown) without providing no port.
- Changed "statusCode" in failover to "status". Please changed your failover file if your tests failed.
- Upgrade to Netty 4
- Fixed proxy bug
- global setting file
- JSONPath
- proxy
- with
- (Beta) template
- removed url (using proxy instead)
- removed content (using with instead)
- removed cache
- version
- method
- content
- header
- query
- context
- file root
- environment
the first public release of Moco
- API
- standalone server
- shell
- maven plugin (external)
- gradle plugin (external)
- content(text, file)
- URI
- query Parameter
- HTTP method
- version
- header
- redirect
- eq
- match
- cookie
- form
- XML
- XPath
- JSON
- content(text, file)
- version
- status code
- header
- url
- latency
- sequence(API only)
- cache
- mount