52 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			52 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
var mockPackage = require('../mocks/mockPackage');
 | 
						|
var Dgeni = require('dgeni');
 | 
						|
 | 
						|
describe('cheatsheetItemParser', function() {
 | 
						|
  var dgeni, injector, cheatsheetItemParser;
 | 
						|
 | 
						|
  beforeEach(function() {
 | 
						|
    dgeni = new Dgeni([mockPackage()]);
 | 
						|
    injector = dgeni.configureInjector();
 | 
						|
    cheatsheetItemParser = injector.get('cheatsheetItemParser');
 | 
						|
  });
 | 
						|
 | 
						|
  it('should extract the syntax', function() {
 | 
						|
    expect(cheatsheetItemParser('`abc`')).toEqual({
 | 
						|
      syntax: 'abc',
 | 
						|
      bold: [],
 | 
						|
      description: ''
 | 
						|
    });
 | 
						|
  });
 | 
						|
 | 
						|
  it('should extract the bolds', function() {
 | 
						|
    expect(cheatsheetItemParser('`abc`|`bold1`|`bold2`')).toEqual({
 | 
						|
      syntax: 'abc',
 | 
						|
      bold: ['bold1', 'bold2'],
 | 
						|
      description: ''
 | 
						|
    });
 | 
						|
  });
 | 
						|
 | 
						|
  it('should extract the description', function() {
 | 
						|
    expect(cheatsheetItemParser('`abc`|`bold1`|`bold2`some description')).toEqual({
 | 
						|
      syntax: 'abc',
 | 
						|
      bold: ['bold1', 'bold2'],
 | 
						|
      description: 'some description'
 | 
						|
    });
 | 
						|
  });
 | 
						|
 | 
						|
  it('should allow bold to be optional', function() {
 | 
						|
    expect(cheatsheetItemParser('`abc`some description')).toEqual({
 | 
						|
      syntax: 'abc',
 | 
						|
      bold: [],
 | 
						|
      description: 'some description'
 | 
						|
    });
 | 
						|
  });
 | 
						|
 | 
						|
  it('should allow whitespace between the parts', function() {
 | 
						|
    expect(cheatsheetItemParser('`abc`|  `bold1`|  `bold2`\n\nsome description')).toEqual({
 | 
						|
      syntax: 'abc',
 | 
						|
      bold: ['bold1', 'bold2'],
 | 
						|
      description: '\n\nsome description'
 | 
						|
    });
 | 
						|
  })
 | 
						|
}); |