Builder = require("../src/builder")
builder = new Builder()
Path = require("path")

it "should report path, line and column for generic error", ->
  try
    builder.build("test/builder/invalid/parserError.js")
  catch e
    e.type.should.equal("PreprocessorError")
    Path.basename(e.path).should.equal("parserError.js")
    e.line.should.equal(5)
    e.column.should.equal(13)

it "should report path, line and column for default compilers errors", ->
  try
    builder.build("test/builder/invalid/coffeeError.coffee", destType: "javascript")
  catch e
    e.type.should.equal("PreprocessorError")
    Path.basename(e.path).should.equal("coffeeError.coffee")
    e.line.should.equal(1)
    e.column.should.equal(1)

it "should report path, line and column for default compilers errors while including", ->
  try
    builder.build("test/builder/invalid/requireCoffeeError.js")
  catch e
    e.type.should.equal("PreprocessorError")
    Path.basename(e.path).should.equal("coffeeError.coffee")
    e.line.should.equal(1)
    e.column.should.equal(1)

it "should report path, line and column for resolver errors", ->
  try
    builder.build("test/builder/invalid/resolverError.js")
  catch e
    e.type.should.equal("PreprocessorError")
    Path.basename(e.path).should.equal("resolverError.js")
    e.line.should.equal(1)
    e.column.should.equal(5)
