| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173 |
- /* eslint-disable */
-
- describe('Methods: ', function() {
- var granimInstance;
-
- beforeEach(function(done) {
- setTimeout(function() {
- value = 0;
- done();
- }, 1);
- });
-
- it('should support async execution of test preparation and expectations', function(done) {
- setCanvas();
- granimInstance = new Granim({
- element: '#granim-canvas',
- direction: 'left-right',
- //isPausedWhenNotInView: true,
- opacity: [1, 1],
- states: {
- "default-state": {
- gradients: [
- ['#BA8B02', '#181818'],
- ['#111', '#252525'],
- ['#7b4397', '#dc2430']
- ],
- transitionSpeed: 100,
- loop: false
- },
- "second-state": {
- gradients: [['#00bf8f', '#001510']],
- transitionSpeed: 100,
- loop: false
- }
- }
- });
-
- expect(granimInstance).toBeDefined();
- done();
- });
-
- describe('Asynchronous specs:', function() {
- var originalTimeout;
- beforeEach(function() {
- originalTimeout = jasmine.DEFAULT_TIMEOUT_INTERVAL;
- jasmine.DEFAULT_TIMEOUT_INTERVAL = 10000;
- });
-
- it('Pause method is working', function(done) {
- setTimeout(function() {
- granimInstance.pause();
- expect(granimInstance.isPaused).toBe(true);
- done();
- }, 105);
- });
-
- it('Play method is working', function(done) {
- setTimeout(function() {
- granimInstance.play();
- expect(granimInstance.isPaused).toBe(false);
- done();
- }, 10);
- });
-
- it('ChangeState method is working', function(done) {
- setTimeout(function() {
- granimInstance.changeState('default-state');
- granimInstance.changeState('second-state');
- expect(granimInstance.activeState).toEqual('second-state');
- done();
- }, 200);
- });
-
- it('ChangeDirection method is working', function(done) {
- setTimeout(function() {
- granimInstance.changeDirection('left-right');
- expect(granimInstance.direction).toEqual('left-right');
- done();
- }, 200);
- });
-
- it('Clear method is working', function(done) {
- setTimeout(function() {
- granimInstance.clear();
- expect(granimInstance.context.getImageData(1, 1, 1, 1).data[0]).toEqual(0);
- done();
- }, 10);
- });
-
- it('ChangeDirection should throw an error when passed \'custom\' value without a customDirection object', function(done) {
- setTimeout(function() {
- var func = function() { return granimInstance.changeDirection('custom'); };
- expect(func).toThrowError(errorMessage('customDirection'));
- done();
- }, 200);
- });
-
- it('ChangeDirection should throw an error when passed \'custom\' value with a poorly formatted customDirection object', function(done) {
- setTimeout(function() {
- granimInstance.customDirection = {
- x0: '1px1',
- y0: '1px1',
- x1: '1%na',
- y1: '1%na'
- };
- var func = function() { return granimInstance.changeDirection('custom'); };
- expect(func).toThrowError(errorMessage('customDirection'));
- done();
- }, 200);
- });
-
- it('ChangeDirection should throw an error when passed \'custom\' value with a customDirection object which has number values', function(done) {
- setTimeout(function() {
- granimInstance.customDirection = {
- x0: 0,
- y0: 2,
- x1: 1,
- y1: 3
- };
- var func = function() { return granimInstance.changeDirection('custom'); };
- expect(func).toThrowError(errorMessage('customDirection'));
- done();
- }, 200);
- });
-
- it('ChangeDirection should throw an error when passed \'custom\' value with a customDirection object which has no number values in front of unit', function(done) {
- setTimeout(function() {
- granimInstance.customDirection = {
- x0: 'px',
- y0: '%',
- x1: 'px',
- y1: 'px'
- };
- var func = function() { return granimInstance.changeDirection('custom'); };
- expect(func).toThrowError(errorMessage('customDirection'));
- done();
- }, 200);
- });
-
- it('ChangeDirection should throw an error when passed \'custom\' value with a customDirection object which has only one good value', function(done) {
- setTimeout(function() {
- granimInstance.customDirection = {
- x0: '50px',
- y0: '00',
- x1: '0',
- y1: '0'
- };
- var func = function() { return granimInstance.changeDirection('custom'); };
- expect(func).toThrowError(errorMessage('customDirection'));
- done();
- }, 200);
- });
-
- it('ChangeDirection method to a custom direction with valid \'customDirection\' inputs is working', function(done) {
- setTimeout(function() {
- granimInstance.customDirection = {
- x0: '20%',
- y0: '200px',
- x1: '30%',
- y1: '400px'
- };
- granimInstance.changeDirection('custom');
- expect(granimInstance.direction).toEqual('custom');
- done();
- }, 200);
- });
-
- afterEach(function() {
- jasmine.DEFAULT_TIMEOUT_INTERVAL = originalTimeout;
- });
- });
- });
|