From c967bb89c56d944be9afa3d6a292f38e13e39dd7 Mon Sep 17 00:00:00 2001 From: Steve Sutton Date: Thu, 19 Oct 2017 21:17:22 -0400 Subject: [PATCH] Adding tests for frontRegApp.js Adding test for regClass, regEvent, cart models. --- js/frontRegApp.js | 2 +- js/models/front/account.js | 2 +- tests/js/spec/models/account.spec.js | 7 ++++- tests/js/spec/models/cart.spec.js | 29 ++++++++++++++++++ tests/js/spec/models/regClass.spec.js | 42 +++++++++++++++++++++++++++ tests/js/spec/models/regEvent.spec.js | 40 +++++++++++++++++++++++++ tests/test.html | 3 ++ 7 files changed, 122 insertions(+), 3 deletions(-) create mode 100644 tests/js/spec/models/cart.spec.js create mode 100644 tests/js/spec/models/regClass.spec.js create mode 100644 tests/js/spec/models/regEvent.spec.js diff --git a/js/frontRegApp.js b/js/frontRegApp.js index 4b1e55e..6d34363 100644 --- a/js/frontRegApp.js +++ b/js/frontRegApp.js @@ -5,7 +5,7 @@ app.Models.Front.Account = Backbone.Model.extend({ // Default registrant values defaults: { - id: '', + id: 0, name: 'AppAccount', fname: '', lname: '', diff --git a/js/models/front/account.js b/js/models/front/account.js index 77aa868..da45b24 100644 --- a/js/models/front/account.js +++ b/js/models/front/account.js @@ -5,7 +5,7 @@ app.Models.Front.Account = Backbone.Model.extend({ // Default registrant values defaults: { - id: '', + id: 0, name: 'AppAccount', fname: '', lname: '', diff --git a/tests/js/spec/models/account.spec.js b/tests/js/spec/models/account.spec.js index 108fe62..578f8e6 100644 --- a/tests/js/spec/models/account.spec.js +++ b/tests/js/spec/models/account.spec.js @@ -1,9 +1,13 @@ describe('app.Front.Models.Account', function(){ - it("has default valies", function(){ + it("has default values", function(){ var model = new app.Models.Front.Account({}); expect(model).to.be.ok; expect(model.get('name')).to.equal('AppAccount'); + expect(model.get('id')).to.equal(0); + expect(model.get('fname')).to.equal(''); + expect(model.get('lname')).to.equal(''); + expect(model.get('email')).to.equal(''); expect(model.get('validated')).to.equal(false); }); @@ -16,6 +20,7 @@ describe('app.Front.Models.Account', function(){ validated: true }); + expect(model.get('id')).to.equal(1); expect(model.get('fname')).to.equal('Test'); expect(model.get('lname')).to.equal('Person'); expect(model.get('email')).to.equal('test@person.com'); diff --git a/tests/js/spec/models/cart.spec.js b/tests/js/spec/models/cart.spec.js new file mode 100644 index 0000000..ac6e728 --- /dev/null +++ b/tests/js/spec/models/cart.spec.js @@ -0,0 +1,29 @@ +describe('app.Front.Models.Cart', function(){ + it('has default values', function(){ + var model = new app.Models.Front.Cart({}); + + expect(model).to.be.ok; + expect(model.get('name')).to.equal('cart'); + expect(model.get('id')).to.equal(0); + expect(model.get('status')).to.equal(null); + expect(model.get('errorMsg')).to.equal(''); + }); + + it('sets passed attributes', function(){ + var model = new app.Models.Front.Cart({ + id: 1, + status: null, + errorMsg: '', + notes: [], + accounts: [], + times: [], + request: {}, + events: [], + }); + + expect(model.get('name')).to.equal('cart'); + expect(model.get('id')).to.equal(1); + expect(model.get('status')).to.equal(null); + expect(model.get('errorMsg')).to.equal(''); + }); +}); diff --git a/tests/js/spec/models/regClass.spec.js b/tests/js/spec/models/regClass.spec.js new file mode 100644 index 0000000..c791d49 --- /dev/null +++ b/tests/js/spec/models/regClass.spec.js @@ -0,0 +1,42 @@ +describe('app.Front.Models.RegClass', function(){ + it('has default values', function(){ + var model = new app.Models.Front.RegClass({}); + + expect(model).to.be.ok; + expect(model.get('name')).to.equal('regClass'); + expect(model.get('reg_event')).to.equal(0); + expect(model.get('id')).to.equal(0); + expect(model.get('descr')).to.equal(''); + expect(model.get('reg_rate_id')).to.equal(0); + expect(model.get('reg_rate_name')).to.equal(''); + expect(model.get('reg_rate_base_price')).to.equal(''); + expect(model.get('reg_rate_per_reg')).to.equal(''); + expect(model.get('reg_count')).to.equal(0); + expect(model.get('loggedIn')).to.equal(false); + }); + + it('sets passed attributes', function(){ + var model = new app.Models.Front.RegClass({ + id: 1, + reg_event: 1, + descr: 'Sample description', + reg_rate_id: 1, + reg_rate_name: 'Early Bird', + reg_rate_base_price: '100', + reg_rate_per_reg: '10', + reg_count: 0, + loggedIn: true + }); + + expect(model.get('name')).to.equal('regClass'); + expect(model.get('reg_event')).to.equal(1); + expect(model.get('id')).to.equal(1); + expect(model.get('descr')).to.equal('Sample description'); + expect(model.get('reg_rate_id')).to.equal(1); + expect(model.get('reg_rate_name')).to.equal('Early Bird'); + expect(model.get('reg_rate_base_price')).to.equal('100'); + expect(model.get('reg_rate_per_reg')).to.equal('10'); + expect(model.get('reg_count')).to.equal(0); + expect(model.get('loggedIn')).to.equal(true); + }); +}); diff --git a/tests/js/spec/models/regEvent.spec.js b/tests/js/spec/models/regEvent.spec.js new file mode 100644 index 0000000..12ef240 --- /dev/null +++ b/tests/js/spec/models/regEvent.spec.js @@ -0,0 +1,40 @@ +describe('app.Front.Models.RegEvent', function(){ + it('has default values', function(){ + var model = new app.Models.Front.RegEvent({}); + + expect(model).to.be.ok; + expect(model.get('name')).to.equal('regEvent'); + expect(model.get('event_name')).to.equal(''); + expect(model.get('event_code')).to.equal(''); + expect(model.get('descr')).to.equal(''); + expect(model.get('attendee_max')).to.equal(0); + expect(model.get('attendee_max_per_reg')).to.equal(0); + expect(model.get('reg_hold_minutes')).to.equal(0); + expect(model.get('cart_hold_days')).to.equal(0); + expect(model.get('terms')).to.equal(''); + }); + + it('sets passed attributes', function(){ + var model = new app.Models.Front.RegEvent({ + id: 1, + event_name: 'Test Event', + event_code: '4209', + descr: 'Sample event', + attendee_max: 100, + attendee_max_per_reg: 5, + reg_hold_minutes: 60, + cart_hold_days: 1, + terms: 'terms' + }); + + expect(model.get('name')).to.equal('regEvent'); + expect(model.get('event_name')).to.equal('Test Event'); + expect(model.get('event_code')).to.equal('4209'); + expect(model.get('descr')).to.equal('Sample event'); + expect(model.get('attendee_max')).to.equal(100); + expect(model.get('attendee_max_per_reg')).to.equal(5); + expect(model.get('reg_hold_minutes')).to.equal(60); + expect(model.get('cart_hold_days')).to.equal(1); + expect(model.get('terms')).to.equal('terms'); + }); +}); diff --git a/tests/test.html b/tests/test.html index 7b41eaa..1fc7d60 100644 --- a/tests/test.html +++ b/tests/test.html @@ -221,6 +221,9 @@ + + + -- 2.17.1