mirror of
https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snowflake.git
synced 2025-10-13 20:11:19 -04:00
Make badge and debug extend ui
Permits further ui extension
This commit is contained in:
parent
5b18729e77
commit
2b1852c1a5
6 changed files with 49 additions and 52 deletions
|
@ -17,11 +17,7 @@ class WebSocket
|
|||
@bufferedAmount = 0
|
||||
send: (data) ->
|
||||
log = ->
|
||||
class FakeUI
|
||||
log: ->
|
||||
setActive: ->
|
||||
setStatus: ->
|
||||
fakeUI = new FakeUI()
|
||||
fakeUI = new UI()
|
||||
class FakeBroker
|
||||
getClientOffer: -> new Promise((F,R) -> {})
|
||||
# Fake snowflake to interact with
|
||||
|
|
|
@ -3,7 +3,7 @@ jasmine tests for Snowflake UI
|
|||
###
|
||||
|
||||
document =
|
||||
getElementById: (id) ->
|
||||
getElementById: (id) -> {}
|
||||
|
||||
describe 'UI', ->
|
||||
|
||||
|
@ -11,9 +11,8 @@ describe 'UI', ->
|
|||
spyOn(document, 'getElementById').and.callFake (id) ->
|
||||
return null if 'badge' == id
|
||||
return {}
|
||||
u = new UI()
|
||||
expect(u.debug).toBe true
|
||||
expect(document.getElementById.calls.count()).toEqual 3
|
||||
u = new DebugUI()
|
||||
expect(document.getElementById.calls.count()).toEqual 2
|
||||
expect(u.$status).not.toBeNull()
|
||||
expect(u.$msglog).not.toBeNull()
|
||||
|
||||
|
@ -21,49 +20,35 @@ describe 'UI', ->
|
|||
spyOn(document, 'getElementById').and.callFake (id) ->
|
||||
return {} if 'badge' == id
|
||||
return null
|
||||
u = new UI()
|
||||
expect(u.debug).toBe false
|
||||
u = new BadgeUI()
|
||||
expect(document.getElementById).toHaveBeenCalled()
|
||||
expect(document.getElementById.calls.count()).toEqual 1
|
||||
expect(u.$status).toBeNull()
|
||||
expect(u.$msglog).toBeNull()
|
||||
expect(u.$badge).not.toBeNull()
|
||||
|
||||
it 'sets status message only when in debug mode', ->
|
||||
u = new UI()
|
||||
it 'sets status message when in debug mode', ->
|
||||
u = new DebugUI()
|
||||
u.$status = { innerHTML: '' }
|
||||
u.debug = false
|
||||
u.setStatus('test')
|
||||
expect(u.$status.innerHTML).toEqual ''
|
||||
u.debug = true
|
||||
u.setStatus('test')
|
||||
expect(u.$status.innerHTML).toEqual 'Status: test'
|
||||
|
||||
it 'sets message log css correctly for debug mode', ->
|
||||
u = new UI()
|
||||
u.debug = true
|
||||
u.$msglog = {}
|
||||
u = new DebugUI()
|
||||
u.setActive true
|
||||
expect(u.$msglog.className).toEqual 'active'
|
||||
u.setActive false
|
||||
expect(u.$msglog.className).toEqual ''
|
||||
|
||||
it 'sets badge css correctly for non-debug mode', ->
|
||||
u = new UI()
|
||||
u.debug = false
|
||||
u = new BadgeUI()
|
||||
u.$badge = {}
|
||||
u.setActive true
|
||||
expect(u.$badge.className).toEqual 'active'
|
||||
u.setActive false
|
||||
expect(u.$badge.className).toEqual ''
|
||||
|
||||
it 'logs to the textarea correctly, only when debug mode', ->
|
||||
u = new UI()
|
||||
it 'logs to the textarea correctly when debug mode', ->
|
||||
u = new DebugUI()
|
||||
u.$msglog = { value: '', scrollTop: 0, scrollHeight: 1337 }
|
||||
u.debug = false
|
||||
u.log 'test'
|
||||
expect(u.$msglog.value).toEqual ''
|
||||
expect(u.$msglog.scrollTop).toEqual 0
|
||||
u.debug = true
|
||||
u.log 'test'
|
||||
expect(u.$msglog.value).toEqual 'test\n'
|
||||
expect(u.$msglog.scrollTop).toEqual 1337
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue