2014-09-01 18:52:58 +00:00
< html >
< head >
2017-05-12 00:17:49 +00:00
< meta charset = 'utf-8' >
2014-09-01 18:52:58 +00:00
< title > TextSecure test runner< / title >
2018-05-20 03:53:12 +00:00
< link rel = "stylesheet" href = "../node_modules/mocha/mocha.css" / >
2016-09-22 23:37:12 +00:00
< link rel = "stylesheet" href = "../stylesheets/manifest.css" / >
2014-09-01 18:52:58 +00:00
< / head >
2015-01-14 21:21:54 +00:00
< body >
2019-03-20 17:42:28 +00:00
< div id = "mocha" > < / div >
< div id = "tests" > < / div >
2019-01-14 21:49:58 +00:00
2017-07-25 01:43:35 +00:00
< script type = 'text/x-tmpl-mustache' id = 'app-loading-screen' >
< div class = 'content' >
2020-03-05 21:24:51 +00:00
< div class = "module-splash-screen__logo module-img--150" > < / div >
2017-07-25 01:43:35 +00:00
< div class = 'container' >
< span class = 'dot' > < / span >
< span class = 'dot' > < / span >
< span class = 'dot' > < / span >
< / div >
2019-01-14 21:49:58 +00:00
< div class = 'message' > {{ message }}< / div >
2017-07-25 01:43:35 +00:00
< / div >
< / script >
2019-01-14 21:49:58 +00:00
2017-07-25 01:43:35 +00:00
< script type = 'text/x-tmpl-mustache' id = 'conversation-loading-screen' >
< div class = 'content' >
2020-03-05 21:24:51 +00:00
< div class = "module-splash-screen__logo module-img--128" > < / div >
2017-07-25 01:43:35 +00:00
< div class = 'container' >
< span class = 'dot' > < / span >
< span class = 'dot' > < / span >
< span class = 'dot' > < / span >
< / div >
< / div >
< / script >
2019-01-14 21:49:58 +00:00
2016-09-22 23:37:12 +00:00
< script type = 'text/x-tmpl-mustache' id = 'two-column' >
< div class = 'gutter' >
2019-01-14 21:49:58 +00:00
< div class = 'left-pane-placeholder' > < / div >
2016-09-22 23:37:12 +00:00
< / div >
< div class = 'conversation-stack' >
< div class = 'conversation placeholder' >
< div class = 'conversation-header' > < / div >
2019-01-14 21:49:58 +00:00
< div class = 'container' >
< div class = 'content' >
2020-03-05 21:24:51 +00:00
< div class = "module-splash-screen__logo module-img--128" > < / div >
2019-01-14 21:49:58 +00:00
< h3 > {{ welcomeToSignal }}< / h3 >
< p > {{ selectAContact }}< / p >
< / div >
2016-09-22 23:37:12 +00:00
< / div >
< / div >
< / div >
2019-01-14 21:49:58 +00:00
< div class = 'lightbox-container' > < / div >
2016-09-22 23:37:12 +00:00
< / script >
2019-01-14 21:49:58 +00:00
2017-06-14 00:36:32 +00:00
< script type = 'text/x-tmpl-mustache' id = 'scroll-down-button-view' >
2019-01-14 21:49:58 +00:00
< button class = 'text module-scroll-down__button {{ buttonClass }}' alt = '{{ moreBelow }}' >
< div class = 'module-scroll-down__icon' > < / div >
2017-06-14 00:36:32 +00:00
< / button >
< / script >
2019-01-14 21:49:58 +00:00
2017-06-14 00:36:32 +00:00
< script type = 'text/x-tmpl-mustache' id = 'last-seen-indicator-view' >
2019-01-14 21:49:58 +00:00
< div class = 'module-last-seen-indicator__bar' / >
< div class = 'module-last-seen-indicator__text' >
{{ unreadMessages }}
2017-06-14 00:36:32 +00:00
< / div >
< / script >
2019-01-14 21:49:58 +00:00
2017-06-14 00:36:32 +00:00
< script type = 'text/x-tmpl-mustache' id = 'banner' >
< div class = 'body' >
2017-06-16 21:29:27 +00:00
< span class = 'icon warning' > < / span >
2017-06-14 00:36:32 +00:00
{{ message }}
2017-06-16 21:29:27 +00:00
< span class = 'icon dismiss' > < / span >
2017-06-14 00:36:32 +00:00
< / div >
< / script >
2019-01-14 21:49:58 +00:00
2016-09-22 23:37:12 +00:00
< script type = 'text/x-tmpl-mustache' id = 'toast' >
{{ toastMessage }}
< / script >
2019-01-14 21:49:58 +00:00
2014-09-01 18:52:58 +00:00
< script type = 'text/x-tmpl-mustache' id = 'conversation' >
2018-07-09 21:29:13 +00:00
< div class = 'conversation-header' > < / div >
2016-09-22 23:37:12 +00:00
< div class = 'main panel' >
< div class = 'discussion-container' >
< div class = 'bar-container hide' >
< div class = 'bar active progress-bar-striped progress-bar' > < / div >
< / div >
< / div >
< div class = 'bottom-bar' id = 'footer' >
2019-01-14 21:49:58 +00:00
< div class = 'emoji-panel-container' > < / div >
< div class = 'attachment-list' > < / div >
< div class = 'compose' >
< form class = 'send clearfix file-input' >
2016-09-22 23:37:12 +00:00
< div class = 'flex' >
2019-01-14 21:49:58 +00:00
< button class = 'emoji' > < / button >
2016-09-22 23:37:12 +00:00
< textarea class = 'send-message' placeholder = '{{ send-message }}' rows = '1' dir = 'auto' > < / textarea >
< div class = 'capture-audio' >
2019-01-14 21:49:58 +00:00
< button class = 'microphone' > < / button >
< / div >
< div class = 'choose-file' >
< button class = 'paperclip thumbnail' > < / button >
< input type = 'file' class = 'file-input' multiple = 'multiple' >
2016-09-22 23:37:12 +00:00
< / div >
< / div >
2019-01-14 21:49:58 +00:00
< / form >
< / div >
2016-09-22 23:37:12 +00:00
< / div >
< / div >
< / script >
2019-01-14 21:49:58 +00:00
< script type = 'text/x-tmpl-mustache' id = 'message-list' >
< div class = 'messages' > < / div >
< div class = 'typing-container' > < / div >
< / script >
2016-09-22 23:37:12 +00:00
< script type = 'text/x-tmpl-mustache' id = 'recorder' >
< button class = 'finish' > < span class = 'icon' > < / span > < / button >
< span class = 'time' > 0:00< / span >
< button class = 'close' > < span class = 'icon' > < / span > < / button >
< / script >
2019-01-14 21:49:58 +00:00
2016-09-22 23:37:12 +00:00
< script type = 'text/x-tmpl-mustache' id = 'confirmation-dialog' >
< div class = "content" >
< div class = 'message' > {{ message }}< / div >
< div class = 'buttons' >
2017-07-11 22:54:46 +00:00
{{ #showCancel }}
< button class = 'cancel' tabindex = '2' > {{ cancel }}< / button >
{{ /showCancel }}
< button class = 'ok' tabindex = '1' > {{ ok }}< / button >
2016-09-22 23:37:12 +00:00
< / div >
< / div >
< / script >
2019-01-14 21:49:58 +00:00
2016-09-22 23:37:12 +00:00
< script type = 'text/x-tmpl-mustache' id = 'identicon-svg' >
< svg xmlns = 'http://www.w3.org/2000/svg' width = '100' height = '100' >
< circle cx = '50' cy = '50' r = '40' fill = '{{ color }}' / >
2017-07-07 20:18:29 +00:00
< text text-anchor = 'middle' fill = 'white' font-family = 'sans-serif' font-size = '24px' x = '50' y = '50' baseline-shift = '-8px' >
2016-09-22 23:37:12 +00:00
{{ content }}
< / text >
< / svg >
< / script >
2019-01-14 21:49:58 +00:00
2016-09-22 23:37:12 +00:00
< script type = 'text/x-tmpl-mustache' id = 'phone-number' >
< div class = 'phone-input-form' >
< div class = 'number-container' >
< input type = 'tel' class = 'number' placeholder = "Phone Number" / >
2014-09-01 18:52:58 +00:00
< / div >
< / div >
2016-09-22 23:37:12 +00:00
< / script >
2019-01-14 21:49:58 +00:00
2016-09-22 23:37:12 +00:00
< script type = 'text/x-tmpl-mustache' id = 'file-size-modal' >
{{ file-size-warning }}
({{ limit }}{{ units }})
< / script >
2019-01-14 21:49:58 +00:00
2016-09-22 23:37:12 +00:00
< script type = 'text/x-tmpl-mustache' id = 'attachment-type-modal' >
Sorry, your attachment has a type, {{type}}, that is not currently supported.
< / script >
2019-01-14 21:49:58 +00:00
2016-09-22 23:37:12 +00:00
< script type = 'text/x-tmpl-mustache' id = 'group-member-list' >
2017-06-16 23:48:06 +00:00
< div class = 'container' >
{{ #summary }} < div class = 'summary' > {{ summary }}< / div > {{ /summary }}
< / div >
2016-09-22 23:37:12 +00:00
< / script >
2019-01-14 21:49:58 +00:00
2017-06-09 01:08:41 +00:00
< script type = 'text/x-tmpl-mustache' id = 'key-verification' >
2016-09-22 23:37:12 +00:00
< div class = 'container' >
2017-07-11 22:54:46 +00:00
{{ ^hasTheirKey }}
< div class = 'placeholder' > {{ theirKeyUnknown }}< / div >
{{ /hasTheirKey }}
{{ #hasTheirKey }}
2017-06-09 01:08:41 +00:00
< label > {{ yourSafetyNumberWith }} < / label >
<!-- <div class='qr'></div> -->
2016-09-22 23:37:12 +00:00
< div class = 'key' >
2017-06-09 01:08:41 +00:00
{{ #chunks }} < span > {{ . }}< / span > {{ /chunks }}
2016-09-22 23:37:12 +00:00
< / div >
2017-07-11 22:54:46 +00:00
{{ /hasTheirKey }}
{{ verifyHelp }}
2017-06-09 01:08:41 +00:00
< p > {{> link_to_support }} < / p >
2017-06-30 00:32:40 +00:00
< div class = 'summary' >
{{ #isVerified }}
< span class = 'icon verified' > < / span >
{{ /isVerified }}
{{ ^isVerified }}
< span class = 'icon shield' > < / span >
{{ /isVerified }}
{{ verifiedStatus }}
< / div >
< div class = 'verify' >
< button class = 'verify grey' >
{{ verifyButton }}
< / button >
< / div >
2017-06-09 01:08:41 +00:00
< / div >
2016-09-22 23:37:12 +00:00
< / script >
2019-01-14 21:49:58 +00:00
< script type = 'text/x-tmpl-mustache' id = 'clear-data' >
{{#isStep1}}
< div class = 'step' >
< div class = 'inner' >
< div class = 'step-body' >
< span class = 'banner-icon alert-outline-red' > < / span >
< div class = 'header' > {{ header }}< / div >
< div class = 'body-text-wide' > {{ body }}< / div >
2016-09-22 23:37:12 +00:00
< / div >
2019-01-14 21:49:58 +00:00
< div class = 'nav' >
< div >
< a class = 'button neutral cancel' > {{ cancelButton }}< / a >
< a class = 'button destructive delete-all-data' > {{ deleteButton }}< / a >
< / div >
2016-09-22 23:37:12 +00:00
< / div >
< / div >
2019-01-14 21:49:58 +00:00
< / div >
{{/isStep1}}
{{#isStep2}}
< div id = 'step3' class = 'step' >
< div class = 'inner' >
< div class = 'step-body' >
< span class = 'banner-icon delete' > < / span >
< div class = 'header' > {{ deleting }}< / div >
< / div >
< div class = 'progress' >
< div class = 'bar-container' >
< div class = 'bar progress-bar progress-bar-striped active' > < / div >
< / div >
< / div >
2016-09-22 23:37:12 +00:00
< / div >
2019-01-14 21:49:58 +00:00
< / div >
{{/isStep2}}
2016-09-22 23:37:12 +00:00
< / script >
2019-01-14 21:49:58 +00:00
< script type = 'text/x-tmpl-mustache' id = 'link-flow-template' >
{{#isStep3}}
< div id = 'step3' class = 'step' >
< div class = 'inner' >
< div class = 'step-body' >
< div class = 'header' > {{ linkYourPhone }}< / div >
< div id = "qr" >
< div class = 'container' >
< span class = 'dot' > < / span >
< span class = 'dot' > < / span >
< span class = 'dot' > < / span >
< / div >
< / div >
< / div >
< div class = 'nav' >
< div class = 'instructions' >
< div class = 'android' >
< div class = 'label' >
< span class = 'os-icon android' > < / span >
< / div >
< div class = 'body' >
< div > → {{ signalSettings }}< / div >
< div > → {{ linkedDevices }}< / div >
< div > → {{ androidFinalStep }}< / div >
< / div >
< / div >
< div class = 'apple' >
< div class = 'label' >
< span class = 'os-icon apple' > < / span >
< / div >
< div class = 'body' >
< div > → {{ signalSettings }}< / div >
< div > → {{ linkedDevices }}< / div >
< div > → {{ appleFinalStep }}< / div >
< / div >
< / div >
< / div >
< / div >
< / div >
< / div >
{{/isStep3}}
{{#isStep4}}
< form id = 'link-phone' >
< div id = 'step4' class = 'step' >
< div class = 'inner' >
< div class = 'step-body' >
< span class = 'banner-icon lead-pencil' > < / span >
< div class = 'header' > {{ chooseName }}< / div >
< div >
< input type = 'text' class = 'device-name' spellcheck = 'false' maxlength = '50' / >
< / div >
< / div >
< div class = 'nav' >
< div >
< a class = 'button finish' > {{ finishLinkingPhoneButton }}< / a >
< / div >
< / div >
< / div >
< / div >
< / form >
{{/isStep4}}
{{#isStep5}}
< div id = 'step5' class = 'step' >
< div class = 'inner' >
< div class = 'step-body' >
< span class = 'banner-icon sync' > < / span >
< div class = 'header' > {{ syncing }}< / div >
< / div >
< div class = 'progress' >
< div class = 'bar-container' >
< div class = 'bar progress-bar progress-bar-striped active' > < / div >
< / div >
< / div >
< / div >
< / div >
{{/isStep5}}
{{#isError}}
< div id = 'error' class = 'step' >
< div class = 'inner' >
< div class = 'step-body' >
< span class = 'banner-icon alert-outline' > < / span >
< div class = 'header' > {{ errorHeader }}< / div >
< div class = 'body' > {{ errorMessage }}< / div >
< / div >
< div class = 'nav' >
< a class = 'button try-again' > {{ errorButton }}< / a >
< / div >
< / div >
< / div >
{{/isError}}
< / script >
< script type = 'text/x-tmpl-mustache' id = 'standalone' >
< div class = 'step' >
< div class = 'inner' >
< div class = 'step-body' >
2020-03-05 21:24:51 +00:00
< div class = "banner-image module-splash-screen__logo module-img--128" > < / div >
2019-01-14 21:49:58 +00:00
< div class = 'header' > Create your Signal Account< / div >
< div id = 'phone-number-input' >
< div class = 'phone-input-form' >
< div id = 'number-container' class = 'number-container' >
< input type = 'tel' class = 'number' placeholder = 'Phone Number' / >
< / div >
< / div >
< / div >
< div class = 'clearfix' >
< a class = 'button' id = 'request-sms' > Send SMS< / a >
< a class = 'link' id = 'request-voice' tabindex = -1 > Call< / a >
< / div >
< input class = 'form-control' type = 'text' pattern = '\s*[0-9]{3}-?[0-9]{3}\s*' title = 'Enter your 6-digit verification code. If you did not receive a code, click Call or Send SMS to request a new one' id = 'code' placeholder = 'Verification Code' autocomplete = 'off' >
< div id = 'error' class = 'collapse' > < / div >
< div id = status > < / div >
< / div >
< div class = 'nav' >
< a class = 'button' id = 'verifyCode' data-loading-text = 'Please wait...' > Register< / a >
< / div >
< / div >
2017-05-09 21:28:21 +00:00
< / div >
2017-04-18 23:03:23 +00:00
< / script >
2017-01-04 03:37:56 +00:00
2018-05-26 01:01:56 +00:00
< script type = "text/javascript" src = "../libtextsecure/test/fake_web_api.js" > < / script >
2017-04-13 18:59:33 +00:00
< script type = "text/javascript" src = "../js/components.js" > < / script >
2017-07-19 18:59:08 +00:00
< script type = "text/javascript" src = "../js/reliable_trigger.js" data-cover > < / script >
2015-01-06 22:46:33 +00:00
< script type = "text/javascript" src = "test.js" > < / script >
2014-10-29 20:46:09 +00:00
2017-07-03 22:08:10 +00:00
< script type = "text/javascript" src = "../js/chromium.js" data-cover > < / script >
< script type = "text/javascript" src = "../js/database.js" data-cover > < / script >
< script type = "text/javascript" src = "../js/storage.js" data-cover > < / script >
< script type = "text/javascript" src = "../js/signal_protocol_store.js" data-cover > < / script >
< script type = "text/javascript" src = "../js/libtextsecure.js" data-cover > < / script >
2015-01-14 00:09:32 +00:00
< script type = "text/javascript" src = "../js/libphonenumber-util.js" > < / script >
2015-01-06 22:46:33 +00:00
< script type = "text/javascript" src = "../js/models/messages.js" data-cover > < / script >
< script type = "text/javascript" src = "../js/models/conversations.js" data-cover > < / script >
2017-05-18 19:28:06 +00:00
< script type = "text/javascript" src = "../js/models/blockedNumbers.js" data-cover > < / script >
2015-09-17 18:40:19 +00:00
< script type = "text/javascript" src = "../js/conversation_controller.js" data-cover > < / script >
2019-03-26 01:10:30 +00:00
< script type = "text/javascript" src = "../js/message_controller.js" data-cover > < / script >
2017-07-03 22:08:10 +00:00
< script type = "text/javascript" src = "../js/keychange_listener.js" data-cover > < / script >
< script type = 'text/javascript' src = '../js/expiring_messages.js' data-cover > < / script >
2019-06-26 19:33:13 +00:00
< script type = 'text/javascript' src = '../js/expiring_tap_to_view_messages.js' data-cover > < / script >
2017-07-03 22:08:10 +00:00
< script type = 'text/javascript' src = '../js/notifications.js' data-cover > < / script >
2014-09-01 18:52:58 +00:00
2017-07-03 22:08:10 +00:00
< script type = "text/javascript" src = "../js/chromium.js" data-cover > < / script >
2014-09-04 07:16:06 +00:00
2018-04-19 23:10:08 +00:00
< script type = 'text/javascript' src = '../js/views/react_wrapper_view.js' > < / script >
2016-09-22 23:37:12 +00:00
< script type = 'text/javascript' src = '../js/views/whisper_view.js' data-cover > < / script >
< script type = 'text/javascript' src = '../js/views/debug_log_view.js' data-cover > < / script >
< script type = 'text/javascript' src = '../js/views/toast_view.js' data-cover > < / script >
< script type = 'text/javascript' src = '../js/views/list_view.js' data-cover > < / script >
< script type = 'text/javascript' src = '../js/views/contact_list_view.js' data-cover > < / script >
< script type = 'text/javascript' src = '../js/views/key_verification_view.js' data-cover > < / script >
< script type = 'text/javascript' src = '../js/views/group_member_list_view.js' data-cover > < / script >
< script type = 'text/javascript' src = '../js/views/recorder_view.js' data-cover > < / script >
< script type = 'text/javascript' src = '../js/views/conversation_view.js' data-cover > < / script >
< script type = 'text/javascript' src = '../js/views/inbox_view.js' data-cover > < / script >
< script type = 'text/javascript' src = '../js/views/confirmation_dialog_view.js' data-cover > < / script >
< script type = 'text/javascript' src = '../js/views/identicon_svg_view.js' data-cover > < / script >
2017-06-14 00:36:32 +00:00
< script type = 'text/javascript' src = '../js/views/banner_view.js' data-cover > < / script >
2018-07-03 22:33:50 +00:00
< script type = 'text/javascript' src = '../js/views/clear_data_view.js' > < / script >
2014-09-04 07:16:06 +00:00
2018-10-18 01:01:21 +00:00
< script type = "text/javascript" src = "metadata/SecretSessionCipher_test.js" > < / script >
2015-03-05 23:25:49 +00:00
< script type = "text/javascript" src = "views/whisper_view_test.js" > < / script >
2014-10-18 14:08:57 +00:00
< script type = "text/javascript" src = "views/list_view_test.js" > < / script >
2017-05-19 01:33:35 +00:00
2015-01-06 22:46:33 +00:00
< script type = "text/javascript" src = "models/messages_test.js" > < / script >
2017-05-19 01:33:35 +00:00
< script type = "text/javascript" src = "libphonenumber_util_test.js" > < / script >
2015-04-01 20:08:09 +00:00
< script type = "text/javascript" src = "storage_test.js" > < / script >
2017-05-07 21:18:22 +00:00
< script type = "text/javascript" src = "keychange_listener_test.js" > < / script >
2017-07-19 18:59:08 +00:00
< script type = "text/javascript" src = "reliable_trigger_test.js" > < / script >
2017-09-07 01:20:42 +00:00
< script type = "text/javascript" src = "backup_test.js" > < / script >
2018-03-19 19:42:12 +00:00
< script type = "text/javascript" src = "crypto_test.js" > < / script >
2018-03-08 00:16:03 +00:00
< script type = "text/javascript" src = "database_test.js" > < / script >
2017-05-15 21:48:19 +00:00
< script type = "text/javascript" src = "i18n_test.js" > < / script >
2016-09-22 23:37:12 +00:00
2017-07-05 23:31:06 +00:00
<!-- Comment out to turn off code coverage. Useful for getting real callstacks. -->
2018-05-26 01:01:56 +00:00
<!-- NOTE: blanket doesn't support modern syntax and will choke until we find a replacement. :0( -->
2017-07-05 23:31:06 +00:00
<!-- <script type="text/javascript" src="blanket_mocha.js"></script> -->
<!-- Uncomment to start tests without code coverage enabled -->
2017-05-18 18:10:52 +00:00
< script type = "text/javascript" >
mocha.run();
< / script >
2014-09-01 18:52:58 +00:00
< / body >
< / html >