From 4a116570d1cdb00ca4da7647e9b34e88580b306c Mon Sep 17 00:00:00 2001 From: Will Marshall Date: Wed, 2 Jul 2014 12:13:50 +1000 Subject: [PATCH] adding by producer id filtering --- .../darkswarm/filters/by_producer.js.coffee | 6 ++++++ .../filters/by_producer_spec.js.coffee | 21 +++++++++++++++++++ 2 files changed, 27 insertions(+) create mode 100644 app/assets/javascripts/darkswarm/filters/by_producer.js.coffee create mode 100644 spec/javascripts/unit/darkswarm/filters/by_producer_spec.js.coffee diff --git a/app/assets/javascripts/darkswarm/filters/by_producer.js.coffee b/app/assets/javascripts/darkswarm/filters/by_producer.js.coffee new file mode 100644 index 0000000000..3b9ec12d2b --- /dev/null +++ b/app/assets/javascripts/darkswarm/filters/by_producer.js.coffee @@ -0,0 +1,6 @@ +Darkswarm.filter "byProducer", -> + (objects, id) -> + objects ||= [] + id ?= 0 + objects.filter (obj)-> + obj.producer.id == id diff --git a/spec/javascripts/unit/darkswarm/filters/by_producer_spec.js.coffee b/spec/javascripts/unit/darkswarm/filters/by_producer_spec.js.coffee new file mode 100644 index 0000000000..48b811a11f --- /dev/null +++ b/spec/javascripts/unit/darkswarm/filters/by_producer_spec.js.coffee @@ -0,0 +1,21 @@ +describe 'filtering by producer', -> + filterByProducer = null + objects = [ + { + producer: + id: 1 + } + { + producer: + id: 2 + } + ] + + beforeEach -> + module 'Darkswarm' + inject ($filter) -> + filterByProducer = $filter('byProducer') + + it "filters by producer", -> + expect(filterByProducer(objects, 1)[0]).toBe objects[0] + expect(filterByProducer(objects, 2)[0]).toBe objects[1]