DTeam 技术日志

Doer、Delivery、Dream

dgate新特性:EventBusBridge Mock

胡键 Posted at — Dec 15, 2017 阅读

由于简单同时又强大的 Mock 特性,dgate在我的项目中除了作为简单的 API 网关,它也承担着面向前端的 Mock Server 作用,保证前后端开发同步进行。最近,因为项目的需要,顺手给它增加了一个新的 Mock 特性:EventBusBridge。

使用很简单,DSL 的例子如下:

apiGateway {
    port = 7001
    host = 'localhost'

    urls { ... }

    eventBusBridge {
        urlPattern ='/eventbus/*'
        publishers {
            'target_address' {
                expected = {
                    [timestamp: Instant.now()]
                }
                timer = 1000
            }
        }
        consumers {
            'consumer_address' {
                target = "target_address"
                expected = [test: true] // 或者 {message -> ...}
            }
        }
    }
}

语法很简单,与 Mock HTTP 几乎一致。其中:

对于 expected,它既可以为一个固定的值,也可以为一个闭包。当为闭包时,其返回值为 mock 结果。同时,对于 consumers 中的 expected,闭包的入参为 event message。


相关链接:

觉得有帮助的话,不妨考虑购买付费文章来支持我们 🙂 :

付费文章

友情链接


相关文章