diff --git a/app/adapters/harvest-log.js b/app/adapters/harvest-log.js new file mode 100644 index 00000000..bb0efe25 --- /dev/null +++ b/app/adapters/harvest-log.js @@ -0,0 +1,13 @@ +import ApplicationAdapter from './application'; + +export default ApplicationAdapter.extend({ + pathForType() { + return 'harvest_logs'; + }, + ajax(url, type, options) { + if (options) { + options.traditional = true; + } + return this._super(...arguments); + } +}); diff --git a/app/adapters/normalized-datum.js b/app/adapters/normalized-datum.js new file mode 100644 index 00000000..b0fd7e76 --- /dev/null +++ b/app/adapters/normalized-datum.js @@ -0,0 +1,7 @@ +import ApplicationAdapter from './application'; + +export default ApplicationAdapter.extend({ + pathForType(){ + return 'normalizeddata' + } +}); diff --git a/app/adapters/raw-datum.js b/app/adapters/raw-datum.js new file mode 100644 index 00000000..b39c3ecb --- /dev/null +++ b/app/adapters/raw-datum.js @@ -0,0 +1,7 @@ +import ApplicationAdapter from './application'; + +export default ApplicationAdapter.extend({ + pathForType() { + return 'rawdata'; + } +}); diff --git a/app/adapters/source-config.js b/app/adapters/source-config.js new file mode 100644 index 00000000..7eb5cdcb --- /dev/null +++ b/app/adapters/source-config.js @@ -0,0 +1,7 @@ +import ApplicationAdapter from './application'; + +export default ApplicationAdapter.extend({ + pathForType() { + return 'source_config'; + } +}); diff --git a/app/components/page-nav/component.js b/app/components/page-nav/component.js new file mode 100644 index 00000000..926b6130 --- /dev/null +++ b/app/components/page-nav/component.js @@ -0,0 +1,4 @@ +import Ember from 'ember'; + +export default Ember.Component.extend({ +}); diff --git a/app/components/page-nav/template.hbs b/app/components/page-nav/template.hbs new file mode 100644 index 00000000..0a5e4db6 --- /dev/null +++ b/app/components/page-nav/template.hbs @@ -0,0 +1,5 @@ +{{yield}} + diff --git a/app/components/recent-harvest/component.js b/app/components/recent-harvest/component.js new file mode 100644 index 00000000..e195f747 --- /dev/null +++ b/app/components/recent-harvest/component.js @@ -0,0 +1,11 @@ +import Ember from 'ember'; + +export default Ember.Component.extend({ + + store: Ember.inject.service(), + + recentHarvest: Ember.computed('sourceConfig.id', 'status', function(){ + return this.get('store').query('harvest-log', { source_config_id: this.get('sourceConfig.id'), status: [2,3]} ); + }), + +}); diff --git a/app/components/recent-harvest/template.hbs b/app/components/recent-harvest/template.hbs new file mode 100644 index 00000000..5009ef26 --- /dev/null +++ b/app/components/recent-harvest/template.hbs @@ -0,0 +1,10 @@ +{{yield}} +
+ {{#each recentHarvest as |hl|}} + {{#link-to "status.source-detail.log-detail" sourceConfig.label hl}} + + {{status-emoji status=hl.status}} + + {{/link-to}} + {{/each}} +
diff --git a/app/components/status-emoji/component.js b/app/components/status-emoji/component.js new file mode 100644 index 00000000..bdef1675 --- /dev/null +++ b/app/components/status-emoji/component.js @@ -0,0 +1,5 @@ +import Ember from 'ember'; + +export default Ember.Component.extend({ + emojis : {'Enqueued':'created', 'In Progress':'in_progress', 'Failed':'fail', 'Succeeded':'succeed', 'Rescheduled':'reschedule', 'Forced':'forced', 'Skipped':'skipped', 'Retrying':'retry'} +}); diff --git a/app/components/status-emoji/template.hbs b/app/components/status-emoji/template.hbs new file mode 100644 index 00000000..d7aae7a1 --- /dev/null +++ b/app/components/status-emoji/template.hbs @@ -0,0 +1,4 @@ +{{yield}} +
+ +
diff --git a/app/controllers/status/index.js b/app/controllers/status/index.js new file mode 100644 index 00000000..41d4eaf3 --- /dev/null +++ b/app/controllers/status/index.js @@ -0,0 +1,23 @@ +import Ember from 'ember'; + +export default Ember.Controller.extend({ + queryParams: [ + 'page', + ], + page: 1, + atFirstPage: Ember.computed.equal('page', 1), + atLastPage: Ember.computed('page', 'meta.pagination.pages', function(){ + return this.get('page') === this.get('meta.pagination.pages'); + }), + actions: { + nextPage: function() { + this.incrementProperty('page'); + + }, + prevPage: function() { + this.decrementProperty('page'); + + } + } + +}); diff --git a/app/models/harvest-log.js b/app/models/harvest-log.js new file mode 100644 index 00000000..cb06a88c --- /dev/null +++ b/app/models/harvest-log.js @@ -0,0 +1,14 @@ +import DS from 'ember-data'; +import Model from 'ember-data/model'; + +export default Model.extend({ + sourceConfig: DS.belongsTo('source-config', {async: true}), + + status: DS.attr('string'), + context: DS.attr('string'), + completions: DS.attr('string'), + dateStarted: DS.attr('string'), + endDate: DS.attr('string'), + startDate: DS.attr('string'), + harvesterVersion: DS.attr('string'), +}); diff --git a/app/models/normalized-datum.js b/app/models/normalized-datum.js new file mode 100644 index 00000000..913ae4e3 --- /dev/null +++ b/app/models/normalized-datum.js @@ -0,0 +1,8 @@ +import DS from 'ember-data'; + +export default DS.Model.extend({ + + type: DS.attr('string'), + graph: DS.attr('string'), + +}); diff --git a/app/models/raw-datum.js b/app/models/raw-datum.js index d7c19830..e580a85d 100644 --- a/app/models/raw-datum.js +++ b/app/models/raw-datum.js @@ -3,7 +3,6 @@ import DS from 'ember-data'; export default DS.Model.extend({ // TODO add source model source: DS.attr(), - appLabel: DS.attr('string'), providerDocId: DS.attr('string'), datum: DS.attr('string'), sha256: DS.attr('string'), diff --git a/app/models/source-config.js b/app/models/source-config.js new file mode 100644 index 00000000..f437d557 --- /dev/null +++ b/app/models/source-config.js @@ -0,0 +1,10 @@ +import DS from 'ember-data'; +import Model from 'ember-data/model'; + + +export default Model.extend({ + harvestLogs: DS.hasMany('harvest-log', {async: true}), + + label: DS.attr('string'), + baseUrl: DS.attr('string'), +}); diff --git a/app/models/source.js b/app/models/source.js new file mode 100644 index 00000000..e77efcb7 --- /dev/null +++ b/app/models/source.js @@ -0,0 +1,11 @@ +import DS from 'ember-data'; +import Model from 'ember-data/model'; + + +export default Model.extend({ + + longTitle: DS.attr('string'), + name: DS.attr('string'), + homePage: DS.attr('string'), + icon: DS.attr('string') +}); diff --git a/app/router.js b/app/router.js index df24902f..fae46fe8 100644 --- a/app/router.js +++ b/app/router.js @@ -21,22 +21,31 @@ const Router = Ember.Router.extend({ }); Router.map(function() { - this.route('changes'); - this.route('discover'); - this.route('profile'); - this.route('settings'); - this.route('sources'); - this.route('registration', function() { - this.route('form', { path: '/' }); - this.route('confirmation', { path: '/confirmation/' }); + this.route('changes'); + this.route('discover'); + this.route('profile'); + this.route('settings'); + this.route('sources'); + this.route('registration', function() { + this.route('form', { path: '/' }); + this.route('confirmation', { path: '/confirmation/' }); + }); + + this.route('detail', { path: '/:type/:id' }); + this.route('curate', { path: '/curate/:type/:id' }); + + this.route('elastic-down'); + this.route('notfound', { path: '/*path' }); + this.route('notfound'); + + this.route('status', function() { + this.route('source-detail', { path: '/:label' }, function() { + this.route('log-detail', { path: '/:log_id'}); }); - - this.route('detail', { path: '/:type/:id' }); - this.route('curate', { path: '/curate/:type/:id' }); - - this.route('elastic-down'); - this.route('notfound', { path: '/*path' }); - this.route('notfound'); }); + this.route('raw-data'); + this.route('normalized-data'); +}); + export default Router; diff --git a/app/routes/normalized-data.js b/app/routes/normalized-data.js new file mode 100644 index 00000000..681cef05 --- /dev/null +++ b/app/routes/normalized-data.js @@ -0,0 +1,12 @@ +import Ember from 'ember'; + +export default Ember.Route.extend({ + queryParams: { + page: { + refreshModel: true + } + }, + model(params) { + return this.get('store').query('normalized-datum', params); + }, +}); diff --git a/app/routes/raw-data.js b/app/routes/raw-data.js new file mode 100644 index 00000000..bff17fb4 --- /dev/null +++ b/app/routes/raw-data.js @@ -0,0 +1,12 @@ +import Ember from 'ember'; + +export default Ember.Route.extend({ + queryParams: { + page: { + refreshModel: true + } + }, + model(params) { + return this.get('store').query('raw-datum', params); + }, +}); diff --git a/app/routes/status/index.js b/app/routes/status/index.js new file mode 100644 index 00000000..e292533b --- /dev/null +++ b/app/routes/status/index.js @@ -0,0 +1,12 @@ +import Ember from 'ember'; + +export default Ember.Route.extend({ + queryParams: { + page: { + refreshModel: true + } + }, + model(params) { + return this.get('store').query('source_config', params); + }, +}); diff --git a/app/routes/status/source-detail/index.js b/app/routes/status/source-detail/index.js new file mode 100644 index 00000000..70e51d04 --- /dev/null +++ b/app/routes/status/source-detail/index.js @@ -0,0 +1,7 @@ +import Ember from 'ember'; + +export default Ember.Route.extend({ + model(params) { + return this.get('store').query('harvest-log', {source_config_id: params.id}); + }, +}); diff --git a/app/routes/status/source-detail/log-detail.js b/app/routes/status/source-detail/log-detail.js new file mode 100644 index 00000000..dcaf8a3d --- /dev/null +++ b/app/routes/status/source-detail/log-detail.js @@ -0,0 +1,8 @@ +import Ember from 'ember'; + +export default Ember.Route.extend({ + model(params) { + return this.get('store').findRecord('harvest-log', params.logId); + } + +}); diff --git a/app/serializers/application.js b/app/serializers/application.js index 2f11529e..0ae91e49 100644 --- a/app/serializers/application.js +++ b/app/serializers/application.js @@ -11,6 +11,9 @@ export default DS.JSONAPISerializer.extend({ }, keyForAttribute: function(attr) { - return Ember.String.underscore(attr); + return attr; + }, + keyForRelationship: function(attr){ + return attr; } }); diff --git a/app/serializers/raw-datum.js b/app/serializers/raw-datum.js index 413615e8..d9a9fc7f 100644 --- a/app/serializers/raw-datum.js +++ b/app/serializers/raw-datum.js @@ -1,7 +1,7 @@ import ApplicationSerializer from './application'; export default ApplicationSerializer.extend({ - keyForAttribute: function(attr) { - return attr === 'datum' ? 'data' : this._super(...arguments); - } + // keyForAttribute: function(attr) { + // return attr === 'datum' ? 'data' : this._super(...arguments); + // } }); diff --git a/app/styles/app.scss b/app/styles/app.scss index 841883f8..1b11f302 100644 --- a/app/styles/app.scss +++ b/app/styles/app.scss @@ -237,6 +237,60 @@ hr.divider { padding-bottom: 30px; } +.statusTable { + font-family: courier; + font-size: 3px; + width: 100%; + align: center; + margin-bottom: 20px; +} + +.statusTable th { + padding: 10px; + font-family:Courier; + font-size: 28px; + color: #0099ff; +} + +.statusTable td{ + padding: 5px; + padding-top: 7px; + padding-bottom: 7px; + font-family:courier; + font-size: 25px; +} + +.statusTable tr { + border-bottom: solid #d9d9d9; +} + +.logListTable { + font-family: courier; + padding: 30px; + width: 100%; + align: center; + margin-bottom: 30px; +} + +.logListTable th { + font-family:Courier; + padding-top: 10px; + font-size: 25px; + color: #0099ff; + padding-left: 25px; + border-bottom: solid #d9d9d9; +} + +.logListTable td{ + font-family:courier; + font-size: 22px; + padding: 30px; + padding-top: 30px; + padding-bottom: 10px; + border-bottom: solid #d9d9d9; + +} + /* Error page */ .error-image { diff --git a/app/templates/loading.hbs b/app/templates/loading.hbs new file mode 100644 index 00000000..ed1fc1bc --- /dev/null +++ b/app/templates/loading.hbs @@ -0,0 +1 @@ +{{loading-bars}} diff --git a/app/templates/normalized-data.hbs b/app/templates/normalized-data.hbs new file mode 100644 index 00000000..4856f631 --- /dev/null +++ b/app/templates/normalized-data.hbs @@ -0,0 +1,14 @@ +
+ + + + + {{#each model as |nd|}} + + + data type + + {{/each}} +
Data Id
{{nd.id}} {{nd.type}}
+
+ diff --git a/app/templates/raw-data.hbs b/app/templates/raw-data.hbs new file mode 100644 index 00000000..e13cc865 --- /dev/null +++ b/app/templates/raw-data.hbs @@ -0,0 +1,13 @@ +
+ + + + + + {{#each model as |rd|}} + + Datums: + + {{/each}} +
DatumDateHarvested
{{rd.datum}}
+
diff --git a/app/templates/status/index.hbs b/app/templates/status/index.hbs new file mode 100644 index 00000000..d00ae7b3 --- /dev/null +++ b/app/templates/status/index.hbs @@ -0,0 +1,17 @@ + +{{page-nav atLastPage=atLastPage atFirstPage=atFirstPage nextPage=(action 'nextPage') prevPage=(action 'prevPage')}} + +
+ + + + + + {{#each model as |sc|}} + + + + + {{/each}} +
SOURCERECENT HARVESTS
{{#link-to "status.source-detail" sc.label}}{{sc.label}}{{/link-to}}{{recent-harvest sourceConfig=sc}}
+
diff --git a/app/templates/status/source-detail/index.hbs b/app/templates/status/source-detail/index.hbs new file mode 100644 index 00000000..76d45f5d --- /dev/null +++ b/app/templates/status/source-detail/index.hbs @@ -0,0 +1,34 @@ + + + +
+ + + + + + + + + + {{#each model as |hl|}} + + + + + + + + + + {{/each}} +
STATUSCONTEXTHARVEST LOG IDDATE STARTEDDATE ENDEDSHARE VERSION
+ {{#link-to "status.source-detail.log-detail" hl}} + {{#status-emoji status=hl.status}} + {{/status-emoji}} + {{/link-to}} + {{hl.status}}{{hl.id}}{{hl.startDate}}{{hl.endDate}}{{hl.harvesterVersion}}
+
diff --git a/app/templates/status/source-detail/log-detail.hbs b/app/templates/status/source-detail/log-detail.hbs new file mode 100644 index 00000000..d2b7e089 --- /dev/null +++ b/app/templates/status/source-detail/log-detail.hbs @@ -0,0 +1,20 @@ + + + + +

{{model.id}}

+ +

+ {{#status-emoji status=model.status}}{{/status-emoji}} +

+ +

+ {{#status-context status=model.status}}{{/status-context}} +

+ +

+ {{model.context}} +

diff --git a/bower.json b/bower.json index 19750852..c6c712b6 100644 --- a/bower.json +++ b/bower.json @@ -1,7 +1,7 @@ { "name": "ember-share", "dependencies": { - "ember": "~2.5.0", + "ember": "2.5.x", "ember-cli-shims": "0.1.1", "ember-cli-test-loader": "0.2.2", "ember-qunit-notifications": "0.1.0", diff --git a/public/assets/images/created.png b/public/assets/images/created.png new file mode 100644 index 00000000..70b48b08 Binary files /dev/null and b/public/assets/images/created.png differ diff --git a/public/assets/images/fail.png b/public/assets/images/fail.png new file mode 100644 index 00000000..aa4b2efb Binary files /dev/null and b/public/assets/images/fail.png differ diff --git a/public/assets/images/forced.png b/public/assets/images/forced.png new file mode 100644 index 00000000..1bc72b9e Binary files /dev/null and b/public/assets/images/forced.png differ diff --git a/public/assets/images/in_progress.png b/public/assets/images/in_progress.png new file mode 100644 index 00000000..ad4fdaf7 Binary files /dev/null and b/public/assets/images/in_progress.png differ diff --git a/public/assets/images/reschedule.png b/public/assets/images/reschedule.png new file mode 100644 index 00000000..5b2b8efa Binary files /dev/null and b/public/assets/images/reschedule.png differ diff --git a/public/assets/images/retry.png b/public/assets/images/retry.png new file mode 100644 index 00000000..e752b8dc Binary files /dev/null and b/public/assets/images/retry.png differ diff --git a/public/assets/images/skipped.png b/public/assets/images/skipped.png new file mode 100644 index 00000000..77391ee9 Binary files /dev/null and b/public/assets/images/skipped.png differ diff --git a/public/assets/images/succeed.png b/public/assets/images/succeed.png new file mode 100644 index 00000000..083d0ce4 Binary files /dev/null and b/public/assets/images/succeed.png differ diff --git a/tests/integration/components/page-nav-test.js b/tests/integration/components/page-nav-test.js new file mode 100644 index 00000000..8d26172f --- /dev/null +++ b/tests/integration/components/page-nav-test.js @@ -0,0 +1,24 @@ +import { moduleForComponent, test } from 'ember-qunit'; +import hbs from 'htmlbars-inline-precompile'; + +moduleForComponent('page-nav', 'Integration | Component | page nav', { + integration: true +}); + +test('it renders', function(assert) { + // Set any properties with this.set('myProperty', 'value'); + // Handle any actions with this.on('myAction', function(val) { ... }); + + this.render(hbs`{{page-nav}}`); + + assert.equal(this.$().text().trim(), ''); + + // Template block usage: + this.render(hbs` + {{#page-nav}} + template block text + {{/page-nav}} + `); + + assert.equal(this.$().text().trim(), 'template block text'); +}); diff --git a/tests/integration/components/page-nav/component-test.js b/tests/integration/components/page-nav/component-test.js new file mode 100644 index 00000000..8d26172f --- /dev/null +++ b/tests/integration/components/page-nav/component-test.js @@ -0,0 +1,24 @@ +import { moduleForComponent, test } from 'ember-qunit'; +import hbs from 'htmlbars-inline-precompile'; + +moduleForComponent('page-nav', 'Integration | Component | page nav', { + integration: true +}); + +test('it renders', function(assert) { + // Set any properties with this.set('myProperty', 'value'); + // Handle any actions with this.on('myAction', function(val) { ... }); + + this.render(hbs`{{page-nav}}`); + + assert.equal(this.$().text().trim(), ''); + + // Template block usage: + this.render(hbs` + {{#page-nav}} + template block text + {{/page-nav}} + `); + + assert.equal(this.$().text().trim(), 'template block text'); +}); diff --git a/tests/integration/components/recent-harvest-test.js b/tests/integration/components/recent-harvest-test.js new file mode 100644 index 00000000..7e2edb43 --- /dev/null +++ b/tests/integration/components/recent-harvest-test.js @@ -0,0 +1,24 @@ +import { moduleForComponent, test } from 'ember-qunit'; +import hbs from 'htmlbars-inline-precompile'; + +moduleForComponent('recent-harvest', 'Integration | Component | recent harvest', { + integration: true +}); + +test('it renders', function(assert) { + // Set any properties with this.set('myProperty', 'value'); + // Handle any actions with this.on('myAction', function(val) { ... }); + + this.render(hbs`{{recent-harvest}}`); + + assert.equal(this.$().text().trim(), ''); + + // Template block usage: + this.render(hbs` + {{#recent-harvest}} + template block text + {{/recent-harvest}} + `); + + assert.equal(this.$().text().trim(), 'template block text'); +}); diff --git a/tests/integration/components/recent-harvest/component-test.js b/tests/integration/components/recent-harvest/component-test.js new file mode 100644 index 00000000..7e2edb43 --- /dev/null +++ b/tests/integration/components/recent-harvest/component-test.js @@ -0,0 +1,24 @@ +import { moduleForComponent, test } from 'ember-qunit'; +import hbs from 'htmlbars-inline-precompile'; + +moduleForComponent('recent-harvest', 'Integration | Component | recent harvest', { + integration: true +}); + +test('it renders', function(assert) { + // Set any properties with this.set('myProperty', 'value'); + // Handle any actions with this.on('myAction', function(val) { ... }); + + this.render(hbs`{{recent-harvest}}`); + + assert.equal(this.$().text().trim(), ''); + + // Template block usage: + this.render(hbs` + {{#recent-harvest}} + template block text + {{/recent-harvest}} + `); + + assert.equal(this.$().text().trim(), 'template block text'); +}); diff --git a/tests/integration/components/status-context-test.js b/tests/integration/components/status-context-test.js new file mode 100644 index 00000000..2c49be72 --- /dev/null +++ b/tests/integration/components/status-context-test.js @@ -0,0 +1,24 @@ +import { moduleForComponent, test } from 'ember-qunit'; +import hbs from 'htmlbars-inline-precompile'; + +moduleForComponent('status-context', 'Integration | Component | status context', { + integration: true +}); + +test('it renders', function(assert) { + // Set any properties with this.set('myProperty', 'value'); + // Handle any actions with this.on('myAction', function(val) { ... }); + + this.render(hbs`{{status-context}}`); + + assert.equal(this.$().text().trim(), ''); + + // Template block usage: + this.render(hbs` + {{#status-context}} + template block text + {{/status-context}} + `); + + assert.equal(this.$().text().trim(), 'template block text'); +}); diff --git a/tests/integration/components/status-context/component-test.js b/tests/integration/components/status-context/component-test.js new file mode 100644 index 00000000..2c49be72 --- /dev/null +++ b/tests/integration/components/status-context/component-test.js @@ -0,0 +1,24 @@ +import { moduleForComponent, test } from 'ember-qunit'; +import hbs from 'htmlbars-inline-precompile'; + +moduleForComponent('status-context', 'Integration | Component | status context', { + integration: true +}); + +test('it renders', function(assert) { + // Set any properties with this.set('myProperty', 'value'); + // Handle any actions with this.on('myAction', function(val) { ... }); + + this.render(hbs`{{status-context}}`); + + assert.equal(this.$().text().trim(), ''); + + // Template block usage: + this.render(hbs` + {{#status-context}} + template block text + {{/status-context}} + `); + + assert.equal(this.$().text().trim(), 'template block text'); +}); diff --git a/tests/integration/components/status-emoji-test.js b/tests/integration/components/status-emoji-test.js new file mode 100644 index 00000000..89860dad --- /dev/null +++ b/tests/integration/components/status-emoji-test.js @@ -0,0 +1,24 @@ +import { moduleForComponent, test } from 'ember-qunit'; +import hbs from 'htmlbars-inline-precompile'; + +moduleForComponent('status-emoji', 'Integration | Component | status emoji', { + integration: true +}); + +test('it renders', function(assert) { + // Set any properties with this.set('myProperty', 'value'); + // Handle any actions with this.on('myAction', function(val) { ... }); + + this.render(hbs`{{status-emoji}}`); + + assert.equal(this.$().text().trim(), ''); + + // Template block usage: + this.render(hbs` + {{#status-emoji}} + template block text + {{/status-emoji}} + `); + + assert.equal(this.$().text().trim(), 'template block text'); +}); diff --git a/tests/integration/components/status-emoji/component-test.js b/tests/integration/components/status-emoji/component-test.js new file mode 100644 index 00000000..89860dad --- /dev/null +++ b/tests/integration/components/status-emoji/component-test.js @@ -0,0 +1,24 @@ +import { moduleForComponent, test } from 'ember-qunit'; +import hbs from 'htmlbars-inline-precompile'; + +moduleForComponent('status-emoji', 'Integration | Component | status emoji', { + integration: true +}); + +test('it renders', function(assert) { + // Set any properties with this.set('myProperty', 'value'); + // Handle any actions with this.on('myAction', function(val) { ... }); + + this.render(hbs`{{status-emoji}}`); + + assert.equal(this.$().text().trim(), ''); + + // Template block usage: + this.render(hbs` + {{#status-emoji}} + template block text + {{/status-emoji}} + `); + + assert.equal(this.$().text().trim(), 'template block text'); +}); diff --git a/tests/unit/adapters/configs-test.js b/tests/unit/adapters/configs-test.js new file mode 100644 index 00000000..d6a60c3a --- /dev/null +++ b/tests/unit/adapters/configs-test.js @@ -0,0 +1,12 @@ +import { moduleFor, test } from 'ember-qunit'; + +moduleFor('adapter:configs', 'Unit | Adapter | configs', { + // Specify the other units that are required for this test. + // needs: ['serializer:foo'] +}); + +// Replace this with your real tests. +test('it exists', function(assert) { + let adapter = this.subject(); + assert.ok(adapter); +}); diff --git a/tests/unit/adapters/normalized-data-test.js b/tests/unit/adapters/normalized-data-test.js new file mode 100644 index 00000000..c3d0202e --- /dev/null +++ b/tests/unit/adapters/normalized-data-test.js @@ -0,0 +1,12 @@ +import { moduleFor, test } from 'ember-qunit'; + +moduleFor('adapter:normalized-data', 'Unit | Adapter | normalized data', { + // Specify the other units that are required for this test. + // needs: ['serializer:foo'] +}); + +// Replace this with your real tests. +test('it exists', function(assert) { + let adapter = this.subject(); + assert.ok(adapter); +}); diff --git a/tests/unit/adapters/raw-datum-test.js b/tests/unit/adapters/raw-datum-test.js new file mode 100644 index 00000000..62ed29c3 --- /dev/null +++ b/tests/unit/adapters/raw-datum-test.js @@ -0,0 +1,12 @@ +import { moduleFor, test } from 'ember-qunit'; + +moduleFor('adapter:raw-datum', 'Unit | Adapter | raw datum', { + // Specify the other units that are required for this test. + // needs: ['serializer:foo'] +}); + +// Replace this with your real tests. +test('it exists', function(assert) { + let adapter = this.subject(); + assert.ok(adapter); +}); diff --git a/tests/unit/adapters/sourceconfig-test.js b/tests/unit/adapters/sourceconfig-test.js new file mode 100644 index 00000000..6587f5f0 --- /dev/null +++ b/tests/unit/adapters/sourceconfig-test.js @@ -0,0 +1,12 @@ +import { moduleFor, test } from 'ember-qunit'; + +moduleFor('adapter:sourceconfig', 'Unit | Adapter | sourceconfig', { + // Specify the other units that are required for this test. + // needs: ['serializer:foo'] +}); + +// Replace this with your real tests. +test('it exists', function(assert) { + let adapter = this.subject(); + assert.ok(adapter); +}); diff --git a/tests/unit/controllers/breadcrumbs-test.js b/tests/unit/controllers/breadcrumbs-test.js new file mode 100644 index 00000000..7342accd --- /dev/null +++ b/tests/unit/controllers/breadcrumbs-test.js @@ -0,0 +1,12 @@ +import { moduleFor, test } from 'ember-qunit'; + +moduleFor('controller:breadcrumbs', 'Unit | Controller | breadcrumbs', { + // Specify the other units that are required for this test. + // needs: ['controller:foo'] +}); + +// Replace this with your real tests. +test('it exists', function(assert) { + let controller = this.subject(); + assert.ok(controller); +}); diff --git a/tests/unit/controllers/harvest-log-test.js b/tests/unit/controllers/harvest-log-test.js new file mode 100644 index 00000000..d4c2043f --- /dev/null +++ b/tests/unit/controllers/harvest-log-test.js @@ -0,0 +1,12 @@ +import { moduleFor, test } from 'ember-qunit'; + +moduleFor('controller:harvest-log', 'Unit | Controller | harvest log', { + // Specify the other units that are required for this test. + // needs: ['controller:foo'] +}); + +// Replace this with your real tests. +test('it exists', function(assert) { + let controller = this.subject(); + assert.ok(controller); +}); diff --git a/tests/unit/controllers/harvest-test.js b/tests/unit/controllers/harvest-test.js new file mode 100644 index 00000000..176915fa --- /dev/null +++ b/tests/unit/controllers/harvest-test.js @@ -0,0 +1,12 @@ +import { moduleFor, test } from 'ember-qunit'; + +moduleFor('controller:harvest', 'Unit | Controller | harvest', { + // Specify the other units that are required for this test. + // needs: ['controller:foo'] +}); + +// Replace this with your real tests. +test('it exists', function(assert) { + let controller = this.subject(); + assert.ok(controller); +}); diff --git a/tests/unit/controllers/status-test.js b/tests/unit/controllers/status-test.js new file mode 100644 index 00000000..519b8fc8 --- /dev/null +++ b/tests/unit/controllers/status-test.js @@ -0,0 +1,12 @@ +import { moduleFor, test } from 'ember-qunit'; + +moduleFor('controller:status', 'Unit | Controller | status', { + // Specify the other units that are required for this test. + // needs: ['controller:foo'] +}); + +// Replace this with your real tests. +test('it exists', function(assert) { + let controller = this.subject(); + assert.ok(controller); +}); diff --git a/tests/unit/controllers/status/source-detail-test.js b/tests/unit/controllers/status/source-detail-test.js new file mode 100644 index 00000000..3c2cef22 --- /dev/null +++ b/tests/unit/controllers/status/source-detail-test.js @@ -0,0 +1,12 @@ +import { moduleFor, test } from 'ember-qunit'; + +moduleFor('controller:status/source-detail', 'Unit | Controller | status/source detail', { + // Specify the other units that are required for this test. + // needs: ['controller:foo'] +}); + +// Replace this with your real tests. +test('it exists', function(assert) { + let controller = this.subject(); + assert.ok(controller); +}); diff --git a/tests/unit/controllers/status/source-detail/log-detail-test.js b/tests/unit/controllers/status/source-detail/log-detail-test.js new file mode 100644 index 00000000..3d5fd969 --- /dev/null +++ b/tests/unit/controllers/status/source-detail/log-detail-test.js @@ -0,0 +1,12 @@ +import { moduleFor, test } from 'ember-qunit'; + +moduleFor('controller:status/source-detail/log-detail', 'Unit | Controller | status/source detail/log detail', { + // Specify the other units that are required for this test. + // needs: ['controller:foo'] +}); + +// Replace this with your real tests. +test('it exists', function(assert) { + let controller = this.subject(); + assert.ok(controller); +}); diff --git a/tests/unit/models/configs-test.js b/tests/unit/models/configs-test.js new file mode 100644 index 00000000..ffb009e4 --- /dev/null +++ b/tests/unit/models/configs-test.js @@ -0,0 +1,12 @@ +import { moduleForModel, test } from 'ember-qunit'; + +moduleForModel('configs', 'Unit | Model | configs', { + // Specify the other units that are required for this test. + needs: [] +}); + +test('it exists', function(assert) { + let model = this.subject(); + // let store = this.store(); + assert.ok(!!model); +}); diff --git a/tests/unit/models/harvest-log-test.js b/tests/unit/models/harvest-log-test.js new file mode 100644 index 00000000..e0499d65 --- /dev/null +++ b/tests/unit/models/harvest-log-test.js @@ -0,0 +1,12 @@ +import { moduleForModel, test } from 'ember-qunit'; + +moduleForModel('harvest-log', 'Unit | Model | harvest log', { + // Specify the other units that are required for this test. + needs: [] +}); + +test('it exists', function(assert) { + let model = this.subject(); + // let store = this.store(); + assert.ok(!!model); +}); diff --git a/tests/unit/models/normilized-data-test.js b/tests/unit/models/normilized-data-test.js new file mode 100644 index 00000000..102cb897 --- /dev/null +++ b/tests/unit/models/normilized-data-test.js @@ -0,0 +1,12 @@ +import { moduleForModel, test } from 'ember-qunit'; + +moduleForModel('normilized-data', 'Unit | Model | normilized data', { + // Specify the other units that are required for this test. + needs: [] +}); + +test('it exists', function(assert) { + let model = this.subject(); + // let store = this.store(); + assert.ok(!!model); +}); diff --git a/tests/unit/models/source-test.js b/tests/unit/models/source-test.js new file mode 100644 index 00000000..c22f1865 --- /dev/null +++ b/tests/unit/models/source-test.js @@ -0,0 +1,12 @@ +import { moduleForModel, test } from 'ember-qunit'; + +moduleForModel('source', 'Unit | Model | source', { + // Specify the other units that are required for this test. + needs: [] +}); + +test('it exists', function(assert) { + let model = this.subject(); + // let store = this.store(); + assert.ok(!!model); +}); diff --git a/tests/unit/models/sourceconfig-test.js b/tests/unit/models/sourceconfig-test.js new file mode 100644 index 00000000..06b54558 --- /dev/null +++ b/tests/unit/models/sourceconfig-test.js @@ -0,0 +1,12 @@ +import { moduleForModel, test } from 'ember-qunit'; + +moduleForModel('sourceconfig', 'Unit | Model | sourceconfig', { + // Specify the other units that are required for this test. + needs: [] +}); + +test('it exists', function(assert) { + let model = this.subject(); + // let store = this.store(); + assert.ok(!!model); +}); diff --git a/tests/unit/routes/harvest-history-test.js b/tests/unit/routes/harvest-history-test.js new file mode 100644 index 00000000..3f9c7341 --- /dev/null +++ b/tests/unit/routes/harvest-history-test.js @@ -0,0 +1,11 @@ +import { moduleFor, test } from 'ember-qunit'; + +moduleFor('route:harvest-history', 'Unit | Route | harvest history', { + // Specify the other units that are required for this test. + // needs: ['controller:foo'] +}); + +test('it exists', function(assert) { + let route = this.subject(); + assert.ok(route); +}); diff --git a/tests/unit/routes/harvest-test.js b/tests/unit/routes/harvest-test.js new file mode 100644 index 00000000..42ac2db9 --- /dev/null +++ b/tests/unit/routes/harvest-test.js @@ -0,0 +1,11 @@ +import { moduleFor, test } from 'ember-qunit'; + +moduleFor('route:harvest', 'Unit | Route | harvest', { + // Specify the other units that are required for this test. + // needs: ['controller:foo'] +}); + +test('it exists', function(assert) { + let route = this.subject(); + assert.ok(route); +}); diff --git a/tests/unit/routes/normalized-data-test.js b/tests/unit/routes/normalized-data-test.js new file mode 100644 index 00000000..08c083ec --- /dev/null +++ b/tests/unit/routes/normalized-data-test.js @@ -0,0 +1,11 @@ +import { moduleFor, test } from 'ember-qunit'; + +moduleFor('route:normalized-data', 'Unit | Route | normalized data', { + // Specify the other units that are required for this test. + // needs: ['controller:foo'] +}); + +test('it exists', function(assert) { + let route = this.subject(); + assert.ok(route); +}); diff --git a/tests/unit/routes/raw-data-test.js b/tests/unit/routes/raw-data-test.js new file mode 100644 index 00000000..07a59a8a --- /dev/null +++ b/tests/unit/routes/raw-data-test.js @@ -0,0 +1,11 @@ +import { moduleFor, test } from 'ember-qunit'; + +moduleFor('route:raw-data', 'Unit | Route | raw data', { + // Specify the other units that are required for this test. + // needs: ['controller:foo'] +}); + +test('it exists', function(assert) { + let route = this.subject(); + assert.ok(route); +}); diff --git a/tests/unit/routes/sourceconfig-test.js b/tests/unit/routes/sourceconfig-test.js new file mode 100644 index 00000000..3fb2483e --- /dev/null +++ b/tests/unit/routes/sourceconfig-test.js @@ -0,0 +1,11 @@ +import { moduleFor, test } from 'ember-qunit'; + +moduleFor('route:sourceconfig', 'Unit | Route | sourceconfig', { + // Specify the other units that are required for this test. + // needs: ['controller:foo'] +}); + +test('it exists', function(assert) { + let route = this.subject(); + assert.ok(route); +}); diff --git a/tests/unit/routes/status-test.js b/tests/unit/routes/status-test.js new file mode 100644 index 00000000..8f4a9a8b --- /dev/null +++ b/tests/unit/routes/status-test.js @@ -0,0 +1,11 @@ +import { moduleFor, test } from 'ember-qunit'; + +moduleFor('route:status', 'Unit | Route | status', { + // Specify the other units that are required for this test. + // needs: ['controller:foo'] +}); + +test('it exists', function(assert) { + let route = this.subject(); + assert.ok(route); +}); diff --git a/tests/unit/routes/status/source-detail-test.js b/tests/unit/routes/status/source-detail-test.js new file mode 100644 index 00000000..b544265c --- /dev/null +++ b/tests/unit/routes/status/source-detail-test.js @@ -0,0 +1,11 @@ +import { moduleFor, test } from 'ember-qunit'; + +moduleFor('route:status/source-detail', 'Unit | Route | status/source detail', { + // Specify the other units that are required for this test. + // needs: ['controller:foo'] +}); + +test('it exists', function(assert) { + let route = this.subject(); + assert.ok(route); +}); diff --git a/tests/unit/routes/status/source-detail/log-detail-test.js b/tests/unit/routes/status/source-detail/log-detail-test.js new file mode 100644 index 00000000..a44031d2 --- /dev/null +++ b/tests/unit/routes/status/source-detail/log-detail-test.js @@ -0,0 +1,11 @@ +import { moduleFor, test } from 'ember-qunit'; + +moduleFor('route:status/source-detail/log-detail', 'Unit | Route | status/source detail/log detail', { + // Specify the other units that are required for this test. + // needs: ['controller:foo'] +}); + +test('it exists', function(assert) { + let route = this.subject(); + assert.ok(route); +}); diff --git a/tests/unit/serializers/award-test.js b/tests/unit/serializers/award-test.js index 1b2d285e..decbff77 100644 --- a/tests/unit/serializers/award-test.js +++ b/tests/unit/serializers/award-test.js @@ -6,10 +6,10 @@ // }); // // Replace this with your real tests. -// test('it serializes records', function(assert) { -// let record = this.subject(); +// test('it serializes harvestloglists', function(assert) { +// let harvestloglist = this.subject(); -// let serializedRecord = record.serialize(); +// let serializedRecord = harvestloglist.serialize(); // assert.ok(serializedRecord); // }); diff --git a/tests/unit/serializers/configs-test.js b/tests/unit/serializers/configs-test.js new file mode 100644 index 00000000..8714ebd3 --- /dev/null +++ b/tests/unit/serializers/configs-test.js @@ -0,0 +1,15 @@ +import { moduleForModel, test } from 'ember-qunit'; + +moduleForModel('configs', 'Unit | Serializer | configs', { + // Specify the other units that are required for this test. + needs: ['serializer:configs'] +}); + +// Replace this with your real tests. +test('it serializes harvestloglists', function(assert) { + let harvestloglist = this.subject(); + + let serializedRecord = harvestloglist.serialize(); + + assert.ok(serializedRecord); +}); diff --git a/tests/unit/serializers/contributor-test.js b/tests/unit/serializers/contributor-test.js index 188da85b..fffe3a3e 100644 --- a/tests/unit/serializers/contributor-test.js +++ b/tests/unit/serializers/contributor-test.js @@ -6,10 +6,10 @@ // }); // // Replace this with your real tests. -// test('it serializes records', function(assert) { -// let record = this.subject(); +// test('it serializes harvestloglists', function(assert) { +// let harvestloglist = this.subject(); -// let serializedRecord = record.serialize(); +// let serializedRecord = harvestloglist.serialize(); // assert.ok(serializedRecord); // }); diff --git a/tests/unit/serializers/creative-work-test.js b/tests/unit/serializers/creative-work-test.js index 1da354cb..c01500ad 100644 --- a/tests/unit/serializers/creative-work-test.js +++ b/tests/unit/serializers/creative-work-test.js @@ -6,10 +6,10 @@ // }); // // Replace this with your real tests. -// test('it serializes records', function(assert) { -// let record = this.subject(); +// test('it serializes harvestloglists', function(assert) { +// let harvestloglist = this.subject(); -// let serializedRecord = record.serialize(); +// let serializedRecord = harvestloglist.serialize(); // assert.ok(serializedRecord); // }); diff --git a/tests/unit/serializers/funder-test.js b/tests/unit/serializers/funder-test.js index 8fc523eb..a5d78404 100644 --- a/tests/unit/serializers/funder-test.js +++ b/tests/unit/serializers/funder-test.js @@ -6,10 +6,10 @@ // }); // // Replace this with your real tests. -// test('it serializes records', function(assert) { -// let record = this.subject(); +// test('it serializes harvestloglists', function(assert) { +// let harvestloglist = this.subject(); -// let serializedRecord = record.serialize(); +// let serializedRecord = harvestloglist.serialize(); // assert.ok(serializedRecord); // }); diff --git a/tests/unit/serializers/institution-test.js b/tests/unit/serializers/institution-test.js index a81184b3..cecca783 100644 --- a/tests/unit/serializers/institution-test.js +++ b/tests/unit/serializers/institution-test.js @@ -6,10 +6,10 @@ // }); // // Replace this with your real tests. -// test('it serializes records', function(assert) { -// let record = this.subject(); +// test('it serializes harvestloglists', function(assert) { +// let harvestloglist = this.subject(); -// let serializedRecord = record.serialize(); +// let serializedRecord = harvestloglist.serialize(); // assert.ok(serializedRecord); // }); diff --git a/tests/unit/serializers/json-ld-to-api-serializer-test.js b/tests/unit/serializers/json-ld-to-api-serializer-test.js index b7e6a936..9044eb2a 100644 --- a/tests/unit/serializers/json-ld-to-api-serializer-test.js +++ b/tests/unit/serializers/json-ld-to-api-serializer-test.js @@ -6,10 +6,10 @@ // }); // // Replace this with your real tests. -// test('it serializes records', function(assert) { -// let record = this.subject(); +// test('it serializes harvestloglists', function(assert) { +// let harvestloglist = this.subject(); -// let serializedRecord = record.serialize(); +// let serializedRecord = harvestloglist.serialize(); // assert.ok(serializedRecord); // }); diff --git a/tests/unit/serializers/link-test.js b/tests/unit/serializers/link-test.js index 27d1d076..22b8b231 100644 --- a/tests/unit/serializers/link-test.js +++ b/tests/unit/serializers/link-test.js @@ -6,10 +6,10 @@ // }); // // Replace this with your real tests. -// test('it serializes records', function(assert) { -// let record = this.subject(); +// test('it serializes harvestloglists', function(assert) { +// let harvestloglist = this.subject(); -// let serializedRecord = record.serialize(); +// let serializedRecord = harvestloglist.serialize(); // assert.ok(serializedRecord); // }); diff --git a/tests/unit/serializers/manuscript-test.js b/tests/unit/serializers/manuscript-test.js index fd861e5f..367afb2f 100644 --- a/tests/unit/serializers/manuscript-test.js +++ b/tests/unit/serializers/manuscript-test.js @@ -6,10 +6,10 @@ // }); // // Replace this with your real tests. -// test('it serializes records', function(assert) { -// let record = this.subject(); +// test('it serializes harvestloglists', function(assert) { +// let harvestloglist = this.subject(); -// let serializedRecord = record.serialize(); +// let serializedRecord = harvestloglist.serialize(); // assert.ok(serializedRecord); // }); diff --git a/tests/unit/serializers/preprint-test.js b/tests/unit/serializers/preprint-test.js index 3fade399..4939cec4 100644 --- a/tests/unit/serializers/preprint-test.js +++ b/tests/unit/serializers/preprint-test.js @@ -6,10 +6,10 @@ // }); // // Replace this with your real tests. -// test('it serializes records', function(assert) { -// let record = this.subject(); +// test('it serializes harvestloglists', function(assert) { +// let harvestloglist = this.subject(); -// let serializedRecord = record.serialize(); +// let serializedRecord = harvestloglist.serialize(); // assert.ok(serializedRecord); // }); diff --git a/tests/unit/serializers/project-test.js b/tests/unit/serializers/project-test.js index b1b14355..95c195eb 100644 --- a/tests/unit/serializers/project-test.js +++ b/tests/unit/serializers/project-test.js @@ -6,10 +6,10 @@ // }); // // Replace this with your real tests. -// test('it serializes records', function(assert) { -// let record = this.subject(); +// test('it serializes harvestloglists', function(assert) { +// let harvestloglist = this.subject(); -// let serializedRecord = record.serialize(); +// let serializedRecord = harvestloglist.serialize(); // assert.ok(serializedRecord); // }); diff --git a/tests/unit/serializers/publication-test.js b/tests/unit/serializers/publication-test.js index 877041fc..36a9c108 100644 --- a/tests/unit/serializers/publication-test.js +++ b/tests/unit/serializers/publication-test.js @@ -6,10 +6,10 @@ // }); // // Replace this with your real tests. -// test('it serializes records', function(assert) { -// let record = this.subject(); +// test('it serializes harvestloglists', function(assert) { +// let harvestloglist = this.subject(); -// let serializedRecord = record.serialize(); +// let serializedRecord = harvestloglist.serialize(); // assert.ok(serializedRecord); // }); diff --git a/tests/unit/serializers/raw-datum-test.js b/tests/unit/serializers/raw-datum-test.js index 2800221f..75864076 100644 --- a/tests/unit/serializers/raw-datum-test.js +++ b/tests/unit/serializers/raw-datum-test.js @@ -6,10 +6,10 @@ moduleForModel('raw-datum', 'Unit | Serializer | raw datum', { }); // Replace this with your real tests. -test('it serializes records', function(assert) { - let record = this.subject(); +test('it serializes harvestloglists', function(assert) { + let harvestloglist = this.subject(); - let serializedRecord = record.serialize(); + let serializedRecord = harvestloglist.serialize(); assert.ok(serializedRecord); }); diff --git a/tests/unit/serializers/sourceconfig-test.js b/tests/unit/serializers/sourceconfig-test.js new file mode 100644 index 00000000..8c8592f3 --- /dev/null +++ b/tests/unit/serializers/sourceconfig-test.js @@ -0,0 +1,15 @@ +import { moduleForModel, test } from 'ember-qunit'; + +moduleForModel('sourceconfig', 'Unit | Serializer | sourceconfig', { + // Specify the other units that are required for this test. + needs: ['serializer:sourceconfig'] +}); + +// Replace this with your real tests. +test('it serializes harvestloglists', function(assert) { + let harvestloglist = this.subject(); + + let serializedRecord = harvestloglist.serialize(); + + assert.ok(serializedRecord); +}); diff --git a/tests/unit/serializers/tag-test.js b/tests/unit/serializers/tag-test.js index 37861a95..2687cf81 100644 --- a/tests/unit/serializers/tag-test.js +++ b/tests/unit/serializers/tag-test.js @@ -6,10 +6,10 @@ // }); // // Replace this with your real tests. -// test('it serializes records', function(assert) { -// let record = this.subject(); +// test('it serializes harvestloglists', function(assert) { +// let harvestloglist = this.subject(); -// let serializedRecord = record.serialize(); +// let serializedRecord = harvestloglist.serialize(); // assert.ok(serializedRecord); // }); diff --git a/tests/unit/serializers/venue-test.js b/tests/unit/serializers/venue-test.js index 128a28b8..c7a3b55d 100644 --- a/tests/unit/serializers/venue-test.js +++ b/tests/unit/serializers/venue-test.js @@ -6,10 +6,10 @@ // }); // // Replace this with your real tests. -// test('it serializes records', function(assert) { -// let record = this.subject(); +// test('it serializes harvestloglists', function(assert) { +// let harvestloglist = this.subject(); -// let serializedRecord = record.serialize(); +// let serializedRecord = harvestloglist.serialize(); // assert.ok(serializedRecord); // });