Adding duty directive tests
parent
0e4da5b483
commit
5239faab6b
|
@ -0,0 +1,79 @@
|
|||
describe "homeDirective", () ->
|
||||
scope = compile = provide = null
|
||||
mockTgProjectsService = null
|
||||
mockTgNavUrls = null
|
||||
mockTranslate = null
|
||||
template = "<div tg-duty='duty'></div>"
|
||||
|
||||
createDirective = () ->
|
||||
elm = compile(template)(scope)
|
||||
return elm
|
||||
|
||||
_mockTgNavUrls = () ->
|
||||
mockTgNavUrls = {
|
||||
resolve: sinon.stub()
|
||||
}
|
||||
provide.value "$tgNavUrls", mockTgNavUrls
|
||||
|
||||
_mockTgProjectsService = () ->
|
||||
mockTgProjectsService = {
|
||||
projectsById: {
|
||||
get: sinon.stub()
|
||||
}
|
||||
}
|
||||
provide.value "tgProjectsService", mockTgProjectsService
|
||||
|
||||
_mockTranslate = () ->
|
||||
mockTranslate = {
|
||||
instant: sinon.stub()
|
||||
}
|
||||
provide.value "$translate", mockTranslate
|
||||
|
||||
_mocks = () ->
|
||||
module ($provide) ->
|
||||
provide = $provide
|
||||
_mockTgNavUrls()
|
||||
_mockTgProjectsService()
|
||||
_mockTranslate()
|
||||
return null
|
||||
|
||||
beforeEach ->
|
||||
module "templates"
|
||||
module "taigaHome"
|
||||
|
||||
_mocks()
|
||||
|
||||
inject ($rootScope, $compile) ->
|
||||
scope = $rootScope.$new()
|
||||
compile = $compile
|
||||
|
||||
it "duty directive content", () ->
|
||||
scope.duty = {
|
||||
project: 1
|
||||
ref: 1
|
||||
_name: "userstories"
|
||||
subject: "Testing js subject"
|
||||
status_extra_info: {
|
||||
color: "#CCCCCC"
|
||||
}
|
||||
assigned_to_extra_info: {
|
||||
photo: "http://jstesting.taiga.io/photo"
|
||||
full_name_display: "Taiga testing js"
|
||||
}
|
||||
}
|
||||
|
||||
mockTgProjectsService.projectsById.get
|
||||
.withArgs("1")
|
||||
.returns({slug: "project-slug", "name": "testing js project"})
|
||||
|
||||
mockTgNavUrls.resolve
|
||||
.withArgs("project-userstories-detail", {project: "project-slug", ref: 1})
|
||||
.returns("http://jstesting.taiga.io")
|
||||
|
||||
mockTranslate.instant
|
||||
.withArgs("COMMON.USER_STORY")
|
||||
.returns("COMMON.USER_STORY")
|
||||
|
||||
elm = createDirective()
|
||||
scope.$apply()
|
||||
expect(elm.find('.duty-status').css("color")).to.be.equal('rgb(204, 204, 204)')
|
|
@ -1,6 +1,5 @@
|
|||
HomeDirective = (homeService) ->
|
||||
link = (scope, el, attrs, ctrl) ->
|
||||
console.log 111111
|
||||
scope.vm = {}
|
||||
taiga.defineImmutableProperty(scope.vm, "workInProgress", () -> homeService.workInProgress)
|
||||
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
describe "homeDirective", () ->
|
||||
scope = compile = provide = null
|
||||
mockTgHomeService = null
|
||||
template = "<div ng-controller='HomePage' tg-home></div>"
|
||||
template = "<div tg-home></div>"
|
||||
|
||||
createDirective = () ->
|
||||
elm = compile(template)(scope)
|
||||
|
@ -12,26 +11,41 @@ describe "homeDirective", () ->
|
|||
workInProgress: Immutable.fromJS({
|
||||
assignedTo: {
|
||||
userStories: [{"id": 1}]
|
||||
tasks: []
|
||||
issues: []
|
||||
tasks: [{"id": 2}]
|
||||
issues: [{"id": 3}]
|
||||
}
|
||||
watching: {
|
||||
userStories: []
|
||||
tasks: []
|
||||
issues: []
|
||||
userStories: [{"id": 4}]
|
||||
tasks: [{"id": 5}]
|
||||
issues: [{"id": 6}]
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
provide.value "tgHomeService", mockTgHomeService
|
||||
|
||||
_mockTranslateFilter = () ->
|
||||
mockTranslateFilter = (value) ->
|
||||
return value
|
||||
provide.value "translateFilter", mockTranslateFilter
|
||||
|
||||
_mockTgDuty = () ->
|
||||
provide.factory 'tgDutyDirective', () -> {}
|
||||
|
||||
_mockHomeProjectList = () ->
|
||||
provide.factory 'tgHomeProjectListDirective', () -> {}
|
||||
|
||||
_mocks = () ->
|
||||
module ($provide) ->
|
||||
provide = $provide
|
||||
_mockTgDuty()
|
||||
_mockHomeProjectList()
|
||||
_mockTgHomeService()
|
||||
_mockTranslateFilter()
|
||||
return null
|
||||
|
||||
beforeEach ->
|
||||
module "templates"
|
||||
module "taigaHome"
|
||||
|
||||
_mocks()
|
||||
|
@ -42,4 +56,5 @@ describe "homeDirective", () ->
|
|||
|
||||
it "home directive content", () ->
|
||||
elm = createDirective()
|
||||
console.log 111, elm, elm.find('div')
|
||||
scope.$apply()
|
||||
expect(elm.find('.duty-single')).to.have.length(6)
|
||||
|
|
|
@ -5,7 +5,7 @@ div.home-wrapper.centered
|
|||
div.duty-summary
|
||||
div.title-bar.working-on-title(ng-show="vm.assignedTo.size", translate="HOME.WORKING_ON_SECTION")
|
||||
section.working-on(ng-show="vm.assignedTo.size")
|
||||
div.duty-single(tg-duty="duty", tg-repeat="duty in vm.assignedTo", ng-class="{blocked: duty.is_blocked}")
|
||||
div.duty-single(tg-duty="duty", ng-repeat="duty in vm.assignedTo", ng-class="{blocked: duty.is_blocked}")
|
||||
|
||||
div.title-bar.watching-title(translate="HOME.WATCHING_SECTION")
|
||||
|
||||
|
|
Loading…
Reference in New Issue