docs: function ScreenshotReporter(options) {
  	options = options || {};
  	if(!options.baseDirectory || options.baseDirectory.length === 0) {
  		throw new Error('Please pass a valid base directory to store the ' +
  			'screenshots into.');
  	} else {
  		this.baseDirectory = options.baseDirectory;
  	}
  
  	if(typeof (options.cssOverrideFile) !== 'undefined' && _.isString(options.cssOverrideFile) ){
  		this.cssOverrideFile = options.cssOverrideFile;
  	} else {
  		this.cssOverrideFile = null;
  	}
  
  	this.pathBuilder = options.pathBuilder || defaultPathBuilder;
  	this.docTitle = options.docTitle || 'Generated test report';
  	this.docName = options.docName || 'report.html';
  	this.metaDataBuilder = options.metaDataBuilder || defaultMetaDataBuilder;
  	this.preserveDirectory = options.preserveDirectory || false;
  	this.takeScreenShotsForSkippedSpecs =
  		options.takeScreenShotsForSkippedSpecs || false;
  		this.takeScreenShotsOnlyForFailedSpecs =
   		options.takeScreenShotsOnlyForFailedSpecs || false;
   	this.finalOptions = {
   		takeScreenShotsOnlyForFailedSpecs: this.takeScreenShotsOnlyForFailedSpecs,
   		takeScreenShotsForSkippedSpecs: this.takeScreenShotsForSkippedSpecs,
   		metaDataBuilder: this.metaDataBuilder,
   		pathBuilder: this.pathBuilder,
   		baseDirectory: this.baseDirectory,
   		docTitle: this.docTitle,
   		docName: this.docName,
   		cssOverrideFile: this.cssOverrideFile
   	};
  
   	if(!this.preserveDirectory){
   		util.removeDirectory(this.finalOptions.baseDirectory);
   	}
  }