I'm unable to instantiate (or call their methods) classes present in other files in my protractor codes in testing. Here are my files
Input.coffee
class exports.Input
@element = null
constructor: (@type, @selector, @identifier) ->
if @selector is "id"
@element = element(By.id(@identifier))
if @selector is "class"
@element = element(By.css(@identifier))
console.log @element
click: ->
@element.click()
putText: (inputText) ->
@element.sendKeys(inputText)
test.coffee
describe 'Testing protractor modules', ->
it 'Testing demo and experimentations', ->
# Initialize all the DOM elements which the suite covers
initialize = require('..\\utils\\initialize.coffee').Initialize("https://url.com")
inputText = require('..\\utils\\input.coffee').Input("text", "id", "user_email")
inputPassword = require('..\\utils\\input.coffee').Input("text", "id", "user_password")
console.log inputText # This is printing undefined
inputText.putText("analytics@grs.com")
inputPassword.putText("analytics123")
initialize.coffee
class exports.Initialize
constructor: (@url) ->
browser.ignoreSynchronization = true
browser.get @url
console.log "Initialize constructor" # This works
Error: Cannot read property of undefined.