describe('logge', function() {
  var $console, log;

  beforeEach(module('logge'));
  beforeEach(function() {
    var logMethod = function(msg) { log += (msg + ';'); };

    log = '';
    $console = {
      'debug': logMethod,
      'log': logMethod,
      'info': logMethod,
      'warn': logMethod,
      'error': logMethod
    };
  });

  describe('when console is present', function() {
    beforeEach(module(function($provide) {
      $provide.value('$window', {console: $console});
    }));

    it('logs messages', inject(function($logge) {
      $logge.debug('debug');
      $logge.log('log');
      $logge.info('info');
      $logge.warn('warn');
      $logge.error('error');
      expect(log).toEqual('debug;log;info;warn;error;');
    }));
  });

  describe('when console is not present', function() {
    beforeEach(module(function($provide) {
      $provide.value('$window', {});
    }));

    it('calls noop', inject(function($logge) {
      $logge.debug('debug;');
      $logge.log('log');
      $logge.info('info;');
      $logge.warn('warn;');
      $logge.error('error;');
      expect(log).toEqual('');
    }));
  });
});


@@ -1129,14 +1129,401 @@
 );%0A  %7D);
+%0A%0A  describe('when level is set', function() %7B%0A    beforeEach(module(function($provide, $loggeProvider) %7B%0A      $provide.value('$window', %7Bconsole: $console%7D);%0A      $loggeProvider.level('error');%0A    %7D));%0A%0A    it('calls noop of equal or greater level', inject(function($logge) %7B%0A      $logge.info('info');%0A      $logge.error('error');%0A      expect(log).toEqual('error;');%0A    %7D));%0A  %7D);
 %0A%7D);%0A%0A

Add log level configuration specs