Code coverage report for ./angular-uuid-service.js

Statements: 100% (14 / 14)      Branches: 100% (10 / 10)      Functions: 100% (3 / 3)      Lines: 100% (14 / 14)      Ignored: none     

All files » ./ » angular-uuid-service.js
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34        1 1 930000     2   30000   30000   1080000 30000   1050000 30000   1020000 120000       900000     30000        
/**
 * @file angular-uuid-service is a tiny standalone AngularJS UUID/GUID generator service that is RFC4122 version 4 compliant.
 * @author Daniel Lamb <dlamb.open.source@gmail.com>
 */
angular.module('uuid', []).factory('rfc4122', function () {
  function getRandom(max) {
    return Math.random() * max;
  }
 
  return {
    v4: function () {
      var id = '', i;
 
      for(i = 0; i < 36; i++)
      {
        if (i === 14) {
          id += '4';
        }
        else if (i === 19) {
          id += '89ab'.charAt(getRandom(4));
        }
        else if(i === 8 || i === 13 || i === 18 || i === 23) {
          id += '-';
        }
        else
        {
          id += '0123456789abcdef'.charAt(getRandom(16));
        }
      }
      return id;
    }
  };
});