From 5aca87b20564ad4766554a2cbba805fb0c9d6258 Mon Sep 17 00:00:00 2001 From: Benjamin ter Kuile Date: Wed, 28 Nov 2018 14:29:04 -0300 Subject: [PATCH] before lunch commit --- .../table-filters/user-filters-manager.coffee | 27 +++++++++++-------- .../table-filters/user-filters-manager.emblem | 8 ++++++ tests/dummy/mirage/config.coffee | 14 ++++++++++ .../fixtures/dunlop-user-filters.coffee | 6 +++++ tests/dummy/mirage/scenarios/default.coffee | 4 +++ tests/dummy/mirage/scenarios/default.js | 9 ------- 6 files changed, 48 insertions(+), 20 deletions(-) create mode 100644 tests/dummy/mirage/fixtures/dunlop-user-filters.coffee create mode 100644 tests/dummy/mirage/scenarios/default.coffee delete mode 100644 tests/dummy/mirage/scenarios/default.js diff --git a/tests/dummy/app/routes/table-filters/user-filters-manager.coffee b/tests/dummy/app/routes/table-filters/user-filters-manager.coffee index c02b572..96fb3de 100644 --- a/tests/dummy/app/routes/table-filters/user-filters-manager.coffee +++ b/tests/dummy/app/routes/table-filters/user-filters-manager.coffee @@ -1,20 +1,25 @@ import Ember from 'ember' -#import PagedArray from 'ember-cli-pagination/local/paged-array' +import PagedArray from 'ember-cli-dunlop/utils/paged-remote-array' export default Ember.Route.extend model: (params) -> - result = Ember.A([ - @store.createRecord('dunlop/user-filter', name: 'Filter1-2', scope_key: 'panda/action-list', filters: {a: 44}, is_default: false, desription: 'I describe
Filter1-2') - @store.createRecord('dunlop/user-filter', name: 'Filter1-1', scope_key: 'panda/action-list', filters: {a: 42}, is_default: true, desription: 'I describe
Filter1-1') - @store.createRecord('dunlop/user-filter', name: 'Filter2-1', scope_key: 'migration-adapter/blurp', filters: {a: 44}, is_default: true, desription: 'I describe
Filter2-1') - ]) + #result = Ember.A([ + # @store.createRecord('dunlop/user-filter', name: 'Filter1-2', scope_key: 'panda/action-list', filters: {a: 44}, is_default: false, desription: 'I describe
Filter1-2') + # @store.createRecord('dunlop/user-filter', name: 'Filter1-1', scope_key: 'panda/action-list', filters: {a: 42}, is_default: true, desription: 'I describe
Filter1-1') + # @store.createRecord('dunlop/user-filter', name: 'Filter2-1', scope_key: 'migration-adapter/blurp', filters: {a: 44}, is_default: true, desription: 'I describe
Filter2-1') + #]) filters = Ember.Object.create key1_eq: 45 key2_matches: 'blah%' - result.filters = filters - result.reload = -> - console.log "REALOADING FILTERS VIRTUALLY SINCE IT IS NOT AN ember-cli-dunlop/utils/paged-remote-array" - # the reference to filters should be kept intact, so outputting filters should work, the component should mutate it - console.log filters.toProperties() #TODO: console.log is not the eventual desired way of testing + result = PagedArray.create + modelName: 'dunlop/user-filter' + store: @store + filters: filters + otherParams: + scope_key_matches: 'panda/%' + #result.reload = -> + # console.log "REALOADING FILTERS VIRTUALLY SINCE IT IS NOT AN ember-cli-dunlop/utils/paged-remote-array" + # # the reference to filters should be kept intact, so outputting filters should work, the component should mutate it + # console.log filters.toProperties() #TODO: console.log is not the eventual desired way of testing result diff --git a/tests/dummy/app/templates/table-filters/user-filters-manager.emblem b/tests/dummy/app/templates/table-filters/user-filters-manager.emblem index e99db33..5346e2c 100644 --- a/tests/dummy/app/templates/table-filters/user-filters-manager.emblem +++ b/tests/dummy/app/templates/table-filters/user-filters-manager.emblem @@ -1,2 +1,10 @@ h1 user-filters-manager +table.ui.compact.celled.table + thead + tr + th Name + tbody + each model as |user_filter| + tr + td= user_filter.name .ui.segment= user-filters-manager scope_key='panda/action-list' content=model diff --git a/tests/dummy/mirage/config.coffee b/tests/dummy/mirage/config.coffee index dec2ac2..a2b02a6 100644 --- a/tests/dummy/mirage/config.coffee +++ b/tests/dummy/mirage/config.coffee @@ -1,4 +1,18 @@ config = -> + @get '/dunlop/user_filters', (schema, request) -> + #q = {} + #for key, value of request.queryParams + # continue unless match = key.match /^q\[(\w+)\]$/ + # q[match[1]] = value + #switch q.f_eq + # when 4 then schema.dunlopUserFilters.all() + # else schema.loadFixtures('dunlop-user-filters') + result = schema.dunlopUserFilters.all() + if filter = request.queryParams.scope_key_matches + match = new RegExp(filter.replace(/%$/, '.*$')) + result = result.filter (model) -> + model.scope_key.match match + result @post '/dunlop/user_filters', (schema, request) -> attributes = JSON.parse(request.requestBody)['dunlop/user_filter'] schema.dunlopUserFilters.create(attributes) diff --git a/tests/dummy/mirage/fixtures/dunlop-user-filters.coffee b/tests/dummy/mirage/fixtures/dunlop-user-filters.coffee new file mode 100644 index 0000000..f6c934a --- /dev/null +++ b/tests/dummy/mirage/fixtures/dunlop-user-filters.coffee @@ -0,0 +1,6 @@ +export default [ + {id: 1, name: 'panda/action-list-1', scope_key: 'panda/action-list', filters: {a: 44}, is_default: false, desription: 'I describe
Filter1-2'} + {id: 2, name: 'panda/action-list-2', scope_key: 'panda/action-list', filters: {a: 42}, is_default: true, desription: 'I describe
Filter1-1'} + {id: 3, name: 'migration-adapter/blurp-1', scope_key: 'migration-adapter/blurp', filters: {a: 44}, is_default: true, desription: 'I describe
Filter2-1'} + {id: 4, name: 'panda/project-1', scope_key: 'panda/project', filters: {a: 42}, is_default: true, desription: 'I describe
Filter1-1'} +] diff --git a/tests/dummy/mirage/scenarios/default.coffee b/tests/dummy/mirage/scenarios/default.coffee new file mode 100644 index 0000000..7c50509 --- /dev/null +++ b/tests/dummy/mirage/scenarios/default.coffee @@ -0,0 +1,4 @@ +scenario = (server) -> + server.loadFixtures('dunlop-user-filters') + +export default scenario diff --git a/tests/dummy/mirage/scenarios/default.js b/tests/dummy/mirage/scenarios/default.js deleted file mode 100644 index adb3af4..0000000 --- a/tests/dummy/mirage/scenarios/default.js +++ /dev/null @@ -1,9 +0,0 @@ -export default function(/* server */) { - - /* - Seed your development database using your factories. - This data will not be loaded in your tests. - */ - - // server.createList('post', 10); -}