Closed ghost closed 11 years ago
Didn’t manage to fix the issue, but we did write a failing test:
diff --git a/test/model/delegate.spec.coffee b/test/model/delegate.spec.coffee index 0e8841d..d828bee 100644 --- a/test/model/delegate.spec.coffee +++ b/test/model/delegate.spec.coffee @@ -81,3 +81,17 @@ describe "Serenade.Model.delegate", -> post = new Post(author: { name: "Jonas", email: "jonas@elabs.se" }) expect(post.nameQuox).to.eql("Jonas") expect(post.emailQuox).to.eql("jonas@elabs.se") + + it "forwards formatters", -> + class Author extends Serenade.Model + @property "email" + format: (email) -> + email.replace(/@/, "[at]") + class Post extends Serenade.Model + @delegate "email", to: "author", suffix: true + + author = new Author({ email: "jonas@elabs.se" }) + post = new Post(author: author) + + expect(post.authorEmail).to.eql("jonas@elabs.se") + expect(Serenade.format(post, "authorEmail")).to.eql("jonas[at]elabs.se")
Didn’t manage to fix the issue, but we did write a failing test: