diff --git a/pages/.gitignore b/pages/.gitignore new file mode 100644 index 0000000..4c377fc --- /dev/null +++ b/pages/.gitignore @@ -0,0 +1,3 @@ +.bundle/ +.idea/ +pages_output \ No newline at end of file diff --git a/pages/.rvmrc b/pages/.rvmrc new file mode 100644 index 0000000..7a283b1 --- /dev/null +++ b/pages/.rvmrc @@ -0,0 +1 @@ +rvm use default@jasmine \ No newline at end of file diff --git a/pages/Gemfile b/pages/Gemfile new file mode 100644 index 0000000..079aa7a --- /dev/null +++ b/pages/Gemfile @@ -0,0 +1,4 @@ +source :rubygems + +gem "frank" +gem "haml" \ No newline at end of file diff --git a/pages/Gemfile.lock b/pages/Gemfile.lock new file mode 100644 index 0000000..4a31649 --- /dev/null +++ b/pages/Gemfile.lock @@ -0,0 +1,28 @@ +GEM + remote: http://rubygems.org/ + specs: + daemons (1.0.10) + frank (1.0.8) + haml (>= 3.0) + mongrel (>= 1.2.0.pre2) + net-scp (>= 1.0) + net-ssh (>= 2.0) + rack (>= 1.0) + tilt (= 0.9) + gem_plugin (0.2.3) + haml (3.0.25) + mongrel (1.2.0.pre2) + daemons (~> 1.0.10) + gem_plugin (~> 0.2.3) + net-scp (1.0.4) + net-ssh (>= 1.99.1) + net-ssh (2.1.0) + rack (1.2.1) + tilt (0.9) + +PLATFORMS + ruby + +DEPENDENCIES + frank + haml diff --git a/pages/Rakefile b/pages/Rakefile new file mode 100644 index 0000000..cec2066 --- /dev/null +++ b/pages/Rakefile @@ -0,0 +1,5 @@ +desc "build the site" +task :site do + system("staticmatic build .") + system("cp -r site/ .") +end \ No newline at end of file diff --git a/pages/config/compass.rb b/pages/config/compass.rb new file mode 100644 index 0000000..6ec0dfa --- /dev/null +++ b/pages/config/compass.rb @@ -0,0 +1,3 @@ +require "staticmatic/compass" + +project_type = :staticmatic \ No newline at end of file diff --git a/pages/config/site.rb b/pages/config/site.rb new file mode 100644 index 0000000..5f54328 --- /dev/null +++ b/pages/config/site.rb @@ -0,0 +1,16 @@ +# Default is 3000 +# configuration.preview_server_port = 3000 + +# Default is localhost +# configuration.preview_server_host = "localhost" + +# Default is true +# When false .html & index.html get stripped off generated urls +# configuration.use_extensions_for_page_links = true + +# Default is an empty hash +# configuration.sass_options = {} + +# Default is an empty hash +# http://haml-lang.com/docs/yardoc/file.HAML_REFERENCE.html#options +# configuration.haml_options = {} \ No newline at end of file diff --git a/pages/css/960gs/960.css b/pages/css/960gs/960.css new file mode 100755 index 0000000..bdfa213 --- /dev/null +++ b/pages/css/960gs/960.css @@ -0,0 +1 @@ +.container_12,.container_16{margin-left:auto;margin-right:auto;width:960px}.grid_1,.grid_2,.grid_3,.grid_4,.grid_5,.grid_6,.grid_7,.grid_8,.grid_9,.grid_10,.grid_11,.grid_12,.grid_13,.grid_14,.grid_15,.grid_16{display:inline;float:left;position:relative;margin-left:10px;margin-right:10px}.container_12 .grid_3,.container_16 .grid_4{width:220px}.container_12 .grid_6,.container_16 .grid_8{width:460px}.container_12 .grid_9,.container_16 .grid_12{width:700px}.container_12 .grid_12,.container_16 .grid_16{width:940px}.alpha{margin-left:0}.omega{margin-right:0}.container_12 .grid_1{width:60px}.container_12 .grid_2{width:140px}.container_12 .grid_4{width:300px}.container_12 .grid_5{width:380px}.container_12 .grid_7{width:540px}.container_12 .grid_8{width:620px}.container_12 .grid_10{width:780px}.container_12 .grid_11{width:860px}.container_16 .grid_1{width:40px}.container_16 .grid_2{width:100px}.container_16 .grid_3{width:160px}.container_16 .grid_5{width:280px}.container_16 .grid_6{width:340px}.container_16 .grid_7{width:400px}.container_16 .grid_9{width:520px}.container_16 .grid_10{width:580px}.container_16 .grid_11{width:640px}.container_16 .grid_13{width:760px}.container_16 .grid_14{width:820px}.container_16 .grid_15{width:880px}.container_12 .prefix_3,.container_16 .prefix_4{padding-left:240px}.container_12 .prefix_6,.container_16 .prefix_8{padding-left:480px}.container_12 .prefix_9,.container_16 .prefix_12{padding-left:720px}.container_12 .prefix_1{padding-left:80px}.container_12 .prefix_2{padding-left:160px}.container_12 .prefix_4{padding-left:320px}.container_12 .prefix_5{padding-left:400px}.container_12 .prefix_7{padding-left:560px}.container_12 .prefix_8{padding-left:640px}.container_12 .prefix_10{padding-left:800px}.container_12 .prefix_11{padding-left:880px}.container_16 .prefix_1{padding-left:60px}.container_16 .prefix_2{padding-left:120px}.container_16 .prefix_3{padding-left:180px}.container_16 .prefix_5{padding-left:300px}.container_16 .prefix_6{padding-left:360px}.container_16 .prefix_7{padding-left:420px}.container_16 .prefix_9{padding-left:540px}.container_16 .prefix_10{padding-left:600px}.container_16 .prefix_11{padding-left:660px}.container_16 .prefix_13{padding-left:780px}.container_16 .prefix_14{padding-left:840px}.container_16 .prefix_15{padding-left:900px}.container_12 .suffix_3,.container_16 .suffix_4{padding-right:240px}.container_12 .suffix_6,.container_16 .suffix_8{padding-right:480px}.container_12 .suffix_9,.container_16 .suffix_12{padding-right:720px}.container_12 .suffix_1{padding-right:80px}.container_12 .suffix_2{padding-right:160px}.container_12 .suffix_4{padding-right:320px}.container_12 .suffix_5{padding-right:400px}.container_12 .suffix_7{padding-right:560px}.container_12 .suffix_8{padding-right:640px}.container_12 .suffix_10{padding-right:800px}.container_12 .suffix_11{padding-right:880px}.container_16 .suffix_1{padding-right:60px}.container_16 .suffix_2{padding-right:120px}.container_16 .suffix_3{padding-right:180px}.container_16 .suffix_5{padding-right:300px}.container_16 .suffix_6{padding-right:360px}.container_16 .suffix_7{padding-right:420px}.container_16 .suffix_9{padding-right:540px}.container_16 .suffix_10{padding-right:600px}.container_16 .suffix_11{padding-right:660px}.container_16 .suffix_13{padding-right:780px}.container_16 .suffix_14{padding-right:840px}.container_16 .suffix_15{padding-right:900px}.container_12 .push_3,.container_16 .push_4{left:240px}.container_12 .push_6,.container_16 .push_8{left:480px}.container_12 .push_9,.container_16 .push_12{left:720px}.container_12 .push_1{left:80px}.container_12 .push_2{left:160px}.container_12 .push_4{left:320px}.container_12 .push_5{left:400px}.container_12 .push_7{left:560px}.container_12 .push_8{left:640px}.container_12 .push_10{left:800px}.container_12 .push_11{left:880px}.container_16 .push_1{left:60px}.container_16 .push_2{left:120px}.container_16 .push_3{left:180px}.container_16 .push_5{left:300px}.container_16 .push_6{left:360px}.container_16 .push_7{left:420px}.container_16 .push_9{left:540px}.container_16 .push_10{left:600px}.container_16 .push_11{left:660px}.container_16 .push_13{left:780px}.container_16 .push_14{left:840px}.container_16 .push_15{left:900px}.container_12 .pull_3,.container_16 .pull_4{left:-240px}.container_12 .pull_6,.container_16 .pull_8{left:-480px}.container_12 .pull_9,.container_16 .pull_12{left:-720px}.container_12 .pull_1{left:-80px}.container_12 .pull_2{left:-160px}.container_12 .pull_4{left:-320px}.container_12 .pull_5{left:-400px}.container_12 .pull_7{left:-560px}.container_12 .pull_8{left:-640px}.container_12 .pull_10{left:-800px}.container_12 .pull_11{left:-880px}.container_16 .pull_1{left:-60px}.container_16 .pull_2{left:-120px}.container_16 .pull_3{left:-180px}.container_16 .pull_5{left:-300px}.container_16 .pull_6{left:-360px}.container_16 .pull_7{left:-420px}.container_16 .pull_9{left:-540px}.container_16 .pull_10{left:-600px}.container_16 .pull_11{left:-660px}.container_16 .pull_13{left:-780px}.container_16 .pull_14{left:-840px}.container_16 .pull_15{left:-900px}.clear{clear:both;display:block;overflow:hidden;visibility:hidden;width:0;height:0}.clearfix:after{clear:both;content:' ';display:block;font-size:0;line-height:0;visibility:hidden;width:0;height:0}* html .clearfix,*:first-child+html .clearfix{zoom:1} \ No newline at end of file diff --git a/pages/css/960gs/960_24_col.css b/pages/css/960gs/960_24_col.css new file mode 100644 index 0000000..6d92fa7 --- /dev/null +++ b/pages/css/960gs/960_24_col.css @@ -0,0 +1 @@ +.container_24{margin-left:auto;margin-right:auto;width:960px}.grid_1,.grid_2,.grid_3,.grid_4,.grid_5,.grid_6,.grid_7,.grid_8,.grid_9,.grid_10,.grid_11,.grid_12,.grid_13,.grid_14,.grid_15,.grid_16,.grid_17,.grid_18,.grid_19,.grid_20,.grid_21,.grid_22,.grid_23,.grid_24{display:inline;float:left;position:relative;margin-left:5px;margin-right:5px}.alpha{margin-left:0}.omega{margin-right:0}.container_24 .grid_1{width:30px}.container_24 .grid_2{width:70px}.container_24 .grid_3{width:110px}.container_24 .grid_4{width:150px}.container_24 .grid_5{width:190px}.container_24 .grid_6{width:230px}.container_24 .grid_7{width:270px}.container_24 .grid_8{width:310px}.container_24 .grid_9{width:350px}.container_24 .grid_10{width:390px}.container_24 .grid_11{width:430px}.container_24 .grid_12{width:470px}.container_24 .grid_13{width:510px}.container_24 .grid_14{width:550px}.container_24 .grid_15{width:590px}.container_24 .grid_16{width:630px}.container_24 .grid_17{width:670px}.container_24 .grid_18{width:710px}.container_24 .grid_19{width:750px}.container_24 .grid_20{width:790px}.container_24 .grid_21{width:830px}.container_24 .grid_22{width:870px}.container_24 .grid_23{width:910px}.container_24 .grid_24{width:950px}.container_24 .prefix_1{padding-left:40px}.container_24 .prefix_2{padding-left:80px}.container_24 .prefix_3{padding-left:120px}.container_24 .prefix_4{padding-left:160px}.container_24 .prefix_5{padding-left:200px}.container_24 .prefix_6{padding-left:240px}.container_24 .prefix_7{padding-left:280px}.container_24 .prefix_8{padding-left:320px}.container_24 .prefix_9{padding-left:360px}.container_24 .prefix_10{padding-left:400px}.container_24 .prefix_11{padding-left:440px}.container_24 .prefix_12{padding-left:480px}.container_24 .prefix_13{padding-left:520px}.container_24 .prefix_14{padding-left:560px}.container_24 .prefix_15{padding-left:600px}.container_24 .prefix_16{padding-left:640px}.container_24 .prefix_17{padding-left:680px}.container_24 .prefix_18{padding-left:720px}.container_24 .prefix_19{padding-left:760px}.container_24 .prefix_20{padding-left:800px}.container_24 .prefix_21{padding-left:840px}.container_24 .prefix_22{padding-left:880px}.container_24 .prefix_23{padding-left:920px}.container_24 .suffix_1{padding-right:40px}.container_24 .suffix_2{padding-right:80px}.container_24 .suffix_3{padding-right:120px}.container_24 .suffix_4{padding-right:160px}.container_24 .suffix_5{padding-right:200px}.container_24 .suffix_6{padding-right:240px}.container_24 .suffix_7{padding-right:280px}.container_24 .suffix_8{padding-right:320px}.container_24 .suffix_9{padding-right:360px}.container_24 .suffix_10{padding-right:400px}.container_24 .suffix_11{padding-right:440px}.container_24 .suffix_12{padding-right:480px}.container_24 .suffix_13{padding-right:520px}.container_24 .suffix_14{padding-right:560px}.container_24 .suffix_15{padding-right:600px}.container_24 .suffix_16{padding-right:640px}.container_24 .suffix_17{padding-right:680px}.container_24 .suffix_18{padding-right:720px}.container_24 .suffix_19{padding-right:760px}.container_24 .suffix_20{padding-right:800px}.container_24 .suffix_21{padding-right:840px}.container_24 .suffix_22{padding-right:880px}.container_24 .suffix_23{padding-right:920px}.container_24 .push_1{left:40px}.container_24 .push_2{left:80px}.container_24 .push_3{left:120px}.container_24 .push_4{left:160px}.container_24 .push_5{left:200px}.container_24 .push_6{left:240px}.container_24 .push_7{left:280px}.container_24 .push_8{left:320px}.container_24 .push_9{left:360px}.container_24 .push_10{left:400px}.container_24 .push_11{left:440px}.container_24 .push_12{left:480px}.container_24 .push_13{left:520px}.container_24 .push_14{left:560px}.container_24 .push_15{left:600px}.container_24 .push_16{left:640px}.container_24 .push_17{left:680px}.container_24 .push_18{left:720px}.container_24 .push_19{left:760px}.container_24 .push_20{left:800px}.container_24 .push_21{left:840px}.container_24 .push_22{left:880px}.container_24 .push_23{left:920px}.container_24 .pull_1{left:-40px}.container_24 .pull_2{left:-80px}.container_24 .pull_3{left:-120px}.container_24 .pull_4{left:-160px}.container_24 .pull_5{left:-200px}.container_24 .pull_6{left:-240px}.container_24 .pull_7{left:-280px}.container_24 .pull_8{left:-320px}.container_24 .pull_9{left:-360px}.container_24 .pull_10{left:-400px}.container_24 .pull_11{left:-440px}.container_24 .pull_12{left:-480px}.container_24 .pull_13{left:-520px}.container_24 .pull_14{left:-560px}.container_24 .pull_15{left:-600px}.container_24 .pull_16{left:-640px}.container_24 .pull_17{left:-680px}.container_24 .pull_18{left:-720px}.container_24 .pull_19{left:-760px}.container_24 .pull_20{left:-800px}.container_24 .pull_21{left:-840px}.container_24 .pull_22{left:-880px}.container_24 .pull_23{left:-920px}.clear{clear:both;display:block;overflow:hidden;visibility:hidden;width:0;height:0}.clearfix:after{clear:both;content:' ';display:block;font-size:0;line-height:0;visibility:hidden;width:0;height:0}* html .clearfix,*:first-child+html .clearfix{zoom:1} \ No newline at end of file diff --git a/pages/css/960gs/reset.css b/pages/css/960gs/reset.css new file mode 100755 index 0000000..99a0211 --- /dev/null +++ b/pages/css/960gs/reset.css @@ -0,0 +1 @@ +html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,font,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none}:focus{outline:0}ins{text-decoration:none}del{text-decoration:line-through}table{border-collapse:collapse;border-spacing:0} \ No newline at end of file diff --git a/pages/css/960gs/text.css b/pages/css/960gs/text.css new file mode 100755 index 0000000..f37d174 --- /dev/null +++ b/pages/css/960gs/text.css @@ -0,0 +1 @@ +body{font:13px/1.5 'Helvetica Neue',Arial,'Liberation Sans',FreeSans,sans-serif}a:focus{outline:1px dotted}hr{border:0 #ccc solid;border-top-width:1px;clear:both;height:0}h1{font-size:25px}h2{font-size:23px}h3{font-size:21px}h4{font-size:19px}h5{font-size:17px}h6{font-size:15px}ol{list-style:decimal}ul{list-style:disc}li{margin-left:30px}p,dl,hr,h1,h2,h3,h4,h5,h6,ol,ul,pre,table,address,fieldset{margin-bottom:20px} \ No newline at end of file diff --git a/pages/css/pygments.css b/pages/css/pygments.css new file mode 100644 index 0000000..e89794f --- /dev/null +++ b/pages/css/pygments.css @@ -0,0 +1,62 @@ +code .hll { background-color: #ffffcc } +code { background: #ffffff; } +code .c { color: #808080 } /* Comment */ +code .err { color: #F00000; background-color: #F0A0A0 } /* Error */ +code .k { color: #008000; font-weight: bold } /* Keyword */ +code .o { color: #303030 } /* Operator */ +code .cm { color: #808080 } /* Comment.Multiline */ +code .cp { color: #507090 } /* Comment.Preproc */ +code .c1 { color: #808080 } /* Comment.Single */ +code .cs { color: #cc0000; font-weight: bold } /* Comment.Special */ +code .gd { color: #A00000 } /* Generic.Deleted */ +code .ge { font-style: italic } /* Generic.Emph */ +code .gr { color: #FF0000 } /* Generic.Error */ +code .gh { color: #000080; font-weight: bold } /* Generic.Heading */ +code .gi { color: #00A000 } /* Generic.Inserted */ +code .go { color: #808080 } /* Generic.Output */ +code .gp { color: #c65d09; font-weight: bold } /* Generic.Prompt */ +code .gs { font-weight: bold } /* Generic.Strong */ +code .gu { color: #800080; font-weight: bold } /* Generic.Subheading */ +code .gt { color: #0040D0 } /* Generic.Traceback */ +code .kc { color: #008000; font-weight: bold } /* Keyword.Constant */ +code .kd { color: #008000; font-weight: bold } /* Keyword.Declaration */ +code .kn { color: #008000; font-weight: bold } /* Keyword.Namespace */ +code .kp { color: #003080; font-weight: bold } /* Keyword.Pseudo */ +code .kr { color: #008000; font-weight: bold } /* Keyword.Reserved */ +code .kt { color: #303090; font-weight: bold } /* Keyword.Type */ +code .m { color: #6000E0; font-weight: bold } /* Literal.Number */ +code .s { background-color: #fff0f0 } /* Literal.String */ +code .na { color: #0000C0 } /* Name.Attribute */ +code .nb { color: #007020 } /* Name.Builtin */ +code .nc { color: #B00060; font-weight: bold } /* Name.Class */ +code .no { color: #003060; font-weight: bold } /* Name.Constant */ +code .nd { color: #505050; font-weight: bold } /* Name.Decorator */ +code .ni { color: #800000; font-weight: bold } /* Name.Entity */ +code .ne { color: #F00000; font-weight: bold } /* Name.Exception */ +code .nf { color: #0060B0; font-weight: bold } /* Name.Function */ +code .nl { color: #907000; font-weight: bold } /* Name.Label */ +code .nn { color: #0e84b5; font-weight: bold } /* Name.Namespace */ +code .nt { color: #007000 } /* Name.Tag */ +code .nv { color: #906030 } /* Name.Variable */ +code .ow { color: #000000; font-weight: bold } /* Operator.Word */ +code .w { color: #bbbbbb } /* Text.Whitespace */ +code .mf { color: #6000E0; font-weight: bold } /* Literal.Number.Float */ +code .mh { color: #005080; font-weight: bold } /* Literal.Number.Hex */ +code .mi { color: #0000D0; font-weight: bold } /* Literal.Number.Integer */ +code .mo { color: #4000E0; font-weight: bold } /* Literal.Number.Oct */ +code .sb { background-color: #fff0f0 } /* Literal.String.Backtick */ +code .sc { color: #0040D0 } /* Literal.String.Char */ +code .sd { color: #D04020 } /* Literal.String.Doc */ +code .s2 { background-color: #fff0f0 } /* Literal.String.Double */ +code .se { color: #606060; font-weight: bold; background-color: #fff0f0 } /* Literal.String.Escape */ +code .sh { background-color: #fff0f0 } /* Literal.String.Heredoc */ +code .si { background-color: #e0e0e0 } /* Literal.String.Interpol */ +code .sx { color: #D02000; background-color: #fff0f0 } /* Literal.String.Other */ +code .sr { color: #000000; background-color: #fff0ff } /* Literal.String.Regex */ +code .s1 { background-color: #fff0f0 } /* Literal.String.Single */ +code .ss { color: #A06000 } /* Literal.String.Symbol */ +code .bp { color: #007020 } /* Name.Builtin.Pseudo */ +code .vc { color: #306090 } /* Name.Variable.Class */ +code .vg { color: #d07000; font-weight: bold } /* Name.Variable.Global */ +code .vi { color: #3030B0 } /* Name.Variable.Instance */ +code .il { color: #0000D0; font-weight: bold } /* Literal.Number.Integer.Long */ diff --git a/pages/css/screen.css b/pages/css/screen.css new file mode 100644 index 0000000..5a08a87 --- /dev/null +++ b/pages/css/screen.css @@ -0,0 +1,152 @@ +@import url("960gs/960.css"); + +/* http://www.levien.com/type/myfonts/inconsolata.html */ +@font-face +{ + font-family: "inconsolata"; + src: url("../fonts/inconsolata.otf"); +} + +@font-face +{ + font-family: "droid sans"; + src: url("../fonts/droidsans.ttf"); +} +@font-face +{ + font-family: "droid sans bold"; + src: url("../fonts/droidsans-bold.ttf"); +} +body +{ + color:#333; + font-family: helvetica, arial, sans-serif; + font-size:87.5%; /* 16px * 0.875 = 14px */ + line-height: 137.5%; /* 16px * 1.375 = 22px */ +} +a +{ + color: #55862e; + text-decoration: none; + border-bottom: solid 1px #3030a2; +} +a:hover +{ + text-decoration: none; + border-bottom: 0; +} + +a:visited{ + color: #777; + border-bottom: solid 1px #ccc; +} + +h1, h2, h3, h4, h5, h6 +{ + color: #000; +} +h1, h2, h3 +{ + font-family: "droid sans", helvetica, arial, sans-serif; +} + +h4, h5, h6 +{ + font-family: "droid sans bold", helvetica, arial, sans-serif; +} + +h1 +{ + font-size: 150.0%; +} +h2 +{ + font-size: 137.5%; +} +h3 +{ + font-size: 125.0%; +} +h4 +{ + font-size: 112.5%; +} +h5, h6{ + font-size: 100%; +} + +pre,code +{ + font-family: "inconsolata", monospace; + /* font-size: 1.142em; */ +} + +pre { + border-left: 2px solid #55862e; + padding-left: 1em; +} + +.noul +{ + border-bottom: 0; + text-decoration: none; +} + +img { + border: 0; +} + +img.screenshot { + padding-left: 35px; + padding-right: 10px; +} + +header, footer +{ + display: block; + padding: .1em 0; +} + + +header h1{ + font-size:1.142em; +} + +header h1 a, header h1 a:visited +{ + color:#55862e; + text-decoration: none; + border-bottom: none; +} + +footer{ + margin-top:1em; + border-top: solid 3px #ccc; +} + +footer img { + vertical-align: middle; + height: 59px; +} +.twtr-widget a, +.twtr-widget a:visited, +footer a, +footer a:visited { + border-bottom: none; +} + +ul.posts +{ + list-style-type: none; +} + +nav { + margin-bottom: 25px; +} + +table { border-collapse: collapse; width: 100% } +table th, table td { border: 1px solid #aaa; padding: .2em; } +table td { white-space:nowrap; } +#standalone-downloads td { font-family: monospace; } +#standalone-downloads td.sha { font-size: 0.8em; } +#standalone-downloads .rc td { background-color: #ddd; } diff --git a/pages/download.html b/pages/download.html new file mode 100644 index 0000000..d607387 --- /dev/null +++ b/pages/download.html @@ -0,0 +1,86 @@ + + + + + Jasmine: BDD for your JavaScript + + + + + + + Fork me on GitHub + +
+
+ These files are for the standalone release, meant for inclusion on a static HTML page and manual management of files. +
+
+ For a using Jasmine with Ruby on Rails, other Ruby frameworks, within continuous integration environments, or to gain more dynamic source and test file loading, see + Using the Jasmine Gem + . +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
VersionSizeDateSHA1
1.0.220k2011/02/27 12:17:47 PSTba6c43c0b70de0632e45c2346b4ba841d909ba49
1.0.120k2011/02/27 09:56:14 PSTb2b3d00a7cb8d5ccd65a3356bb5ae15775328119
1.0.020k2011/02/27 09:56:14 PST1866f654a3ad0ab9109393ce31d6613c77916607
1.0.0.rc119k2011/02/27 09:56:14 PST20e7da22bc7ce3433331a5ad44eb199f4ff34065
0.11.118k2011/02/27 09:56:14 PST26998c7ca047e47f84c382a4efeb1dc5cb8661a6
+
+
+ Powered by   + + Pivotal Labs, Inc. + + diff --git a/pages/downloads/jasmine-standalone-0.11.1.zip b/pages/downloads/jasmine-standalone-0.11.1.zip new file mode 100644 index 0000000..ab92663 Binary files /dev/null and b/pages/downloads/jasmine-standalone-0.11.1.zip differ diff --git a/pages/downloads/jasmine-standalone-1.0.0.rc1.zip b/pages/downloads/jasmine-standalone-1.0.0.rc1.zip new file mode 100644 index 0000000..553e41c Binary files /dev/null and b/pages/downloads/jasmine-standalone-1.0.0.rc1.zip differ diff --git a/pages/downloads/jasmine-standalone-1.0.0.zip b/pages/downloads/jasmine-standalone-1.0.0.zip new file mode 100644 index 0000000..f46fdf7 Binary files /dev/null and b/pages/downloads/jasmine-standalone-1.0.0.zip differ diff --git a/pages/downloads/jasmine-standalone-1.0.1.zip b/pages/downloads/jasmine-standalone-1.0.1.zip new file mode 100644 index 0000000..9127103 Binary files /dev/null and b/pages/downloads/jasmine-standalone-1.0.1.zip differ diff --git a/pages/downloads/jasmine-standalone-1.0.2.zip b/pages/downloads/jasmine-standalone-1.0.2.zip new file mode 100644 index 0000000..bce3d0c Binary files /dev/null and b/pages/downloads/jasmine-standalone-1.0.2.zip differ diff --git a/pages/favicon.ico b/pages/favicon.ico new file mode 100644 index 0000000..e69de29 diff --git a/pages/fonts/droidsans-bold.ttf b/pages/fonts/droidsans-bold.ttf new file mode 100644 index 0000000..7ac04b6 Binary files /dev/null and b/pages/fonts/droidsans-bold.ttf differ diff --git a/pages/fonts/droidsans.ttf b/pages/fonts/droidsans.ttf new file mode 100644 index 0000000..767c63a Binary files /dev/null and b/pages/fonts/droidsans.ttf differ diff --git a/pages/fonts/inconsolata.otf b/pages/fonts/inconsolata.otf new file mode 100644 index 0000000..3488898 Binary files /dev/null and b/pages/fonts/inconsolata.otf differ diff --git a/pages/images/jasmine_logo.png b/pages/images/jasmine_logo.png new file mode 100644 index 0000000..9ffc5a0 Binary files /dev/null and b/pages/images/jasmine_logo.png differ diff --git a/pages/images/pivotal_logo.gif b/pages/images/pivotal_logo.gif new file mode 100644 index 0000000..9306043 Binary files /dev/null and b/pages/images/pivotal_logo.gif differ diff --git a/pages/index.html b/pages/index.html new file mode 100644 index 0000000..e5563f9 --- /dev/null +++ b/pages/index.html @@ -0,0 +1,79 @@ + + + + + Jasmine: BDD for your JavaScript + + + + + + + Fork me on GitHub + +
+
+ Jasmine is a behavior-driven development framework for testing your JavaScript code. It does not depend on any other + JavaScript frameworks. It does not require a DOM. And it has a clean, obvious syntax so that you can easily write tests. +
+
+
describe("Jasmine", function() {
  it("makes testing JavaScript awesome!", function() {
    expect(yourCode).toBeLotsBetter();
  });
});
+
+
+ Jasmine can be run anywhere you can execute JavaScript: a static web page, your continuous integration environment, + or server-side environments like + Node.js + . +
+
+ Find out more in the + documentation + . +
+

Downloads

+ +

Support

+ +
+
+ Powered by   + + Pivotal Labs, Inc. + + diff --git a/pages/jasmine b/pages/jasmine new file mode 120000 index 0000000..68b6fc2 --- /dev/null +++ b/pages/jasmine @@ -0,0 +1 @@ +jasmine \ No newline at end of file diff --git a/pages/jsdoc/files.html b/pages/jsdoc/files.html new file mode 100644 index 0000000..9f94559 --- /dev/null +++ b/pages/jsdoc/files.html @@ -0,0 +1,450 @@ + + + + + + JsDoc Reference - File Index + + + + + + + + +
+
Class Index +| File Index
+
+

Classes

+ +
+
+ +
+

File Index

+ + +
+

src/base.js

+ +
+ + + + +
+
+
+ +
+

src/Block.js

+ +
+ + + + +
+
+
+ +
+

src/Env.js

+ +
+ + + + +
+
+
+ +
+

src/html/TrivialReporter.js

+ +
+ + + + +
+
+
+ +
+

src/JsApiReporter.js

+ +
+ + + + +
+
+
+ +
+

src/Matchers.js

+ +
+ + + + +
+
+
+ +
+

src/mock-timeout.js

+ +
+ + + + +
+
+
+ +
+

src/MultiReporter.js

+ +
+ + + + +
+
+
+ +
+

src/NestedResults.js

+ +
+ + + + +
+
+
+ +
+

src/PrettyPrinter.js

+ +
+ + + + +
+
+
+ +
+

src/Queue.js

+ +
+ + + + +
+
+
+ +
+

src/Reporter.js

+ +
+ + + + +
+
+
+ +
+

src/Runner.js

+ +
+ + + + +
+
+
+ +
+

src/Spec.js

+ +
+ + + + +
+
+
+ +
+

src/Suite.js

+ +
+ + + + +
+
+
+ +
+

src/util.js

+ +
+ + + + +
+
+
+ +
+

src/WaitsBlock.js

+ +
+ + + + +
+
+
+ +
+

src/WaitsForBlock.js

+ +
+ + + + +
+
+
+ + +
+
+ + Documentation generated by JsDoc Toolkit 2.1.0 on Sun Feb 27 2011 12:17:46 GMT-0800 (PST) +
+ + \ No newline at end of file diff --git a/pages/jsdoc/index.html b/pages/jsdoc/index.html new file mode 100644 index 0000000..3da3b72 --- /dev/null +++ b/pages/jsdoc/index.html @@ -0,0 +1,330 @@ + + + + + + JsDoc Reference - Index + + + + + + + + +
+
Class Index +| File Index
+
+

Classes

+ +
+
+ +
+

Class Index

+ + +
+

_global_

+ +
+
+ +
+

jasmine

+ +
+
+ +
+

jasmine.Block

+ +
+
+ +
+

jasmine.Clock

+ +
+
+ +
+

jasmine.Env

+ +
+
+ +
+

jasmine.JsApiReporter

+ +
+
+ +
+

jasmine.Matchers

+ +
+
+ +
+

jasmine.MultiReporter

+ +
+
+ +
+

jasmine.NestedResults

+ +
+
+ +
+

jasmine.Reporter

+ +
+
+ +
+

jasmine.Runner

+ +
+
+ +
+

jasmine.Spec

+ +
+
+ +
+

jasmine.Spy

+ +
+
+ +
+

jasmine.Suite

+ +
+
+ +
+

jasmine.util

+ +
+
+ +
+

jasmine.WaitsForBlock

+ +
+
+ + +
+
+ + Documentation generated by JsDoc Toolkit 2.1.0 on Sun Feb 27 2011 12:17:46 GMT-0800 (PST) +
+ + \ No newline at end of file diff --git a/pages/jsdoc/symbols/_global_.html b/pages/jsdoc/symbols/_global_.html new file mode 100644 index 0000000..91ca60e --- /dev/null +++ b/pages/jsdoc/symbols/_global_.html @@ -0,0 +1,1131 @@ + + + + + + + JsDoc Reference - _global_ + + + + + + + + + + + +
+ +
Class Index +| File Index
+
+

Classes

+ +
+ +
+ +
+ +

+ + Built-In Namespace _global_ +

+ + +

+ + + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Method Summary
Method AttributesMethod Name and Description
  +
afterEach(afterEachFunction) +
+
A function that is called after each spec in a suite.
+
  +
beforeEach(beforeEachFunction) +
+
A function that is called before each spec in a suite.
+
  +
clearInterval(timeoutKey) +
+
+
  +
clearTimeout(timeoutKey) +
+
+
  +
describe(description, specDefinitions) +
+
Defines a suite of specifications.
+
  +
expect(actual) +
+
Starts a chain for a Jasmine expectation.
+
  +
it(desc, func) +
+
Creates a Jasmine spec that will be added to the current suite.
+
  +
runs(func) +
+
Defines part of a jasmine spec.
+
  +
setInterval(funcToCall, millis) +
+
+
  +
setTimeout(funcToCall, millis) +
+
+
  +
spyOn(obj, methodName) +
+
Function that installs a spy on an existing object's method name.
+
  +
waits(timeout) +
+
Waits a fixed time period before moving to the next block.
+
  +
waitsFor(latchFunction, optional_timeoutMessage, optional_timeout) +
+
Waits for the latchFunction to return true before proceeding to the next block.
+
  +
xdescribe(description, specDefinitions) +
+
Disables a suite of specifications.
+
  +
xit(desc, func) +
+
Creates a disabled Jasmine spec.
+
+ + + + + + + + + + + + + + + +
+ Method Detail +
+ + +
+ + + afterEach(afterEachFunction) + +
+
+ A function that is called after each spec in a suite. + +Used for restoring any state that is hijacked during spec execution. + +
+ Defined in: base.js. + + +
+ + + + +
+
Parameters:
+ +
+ {Function} afterEachFunction + +
+
+ +
+ + + + + + + + +
+ + +
+ + + beforeEach(beforeEachFunction) + +
+
+ A function that is called before each spec in a suite. + +Used for spec setup, including validating assumptions. + +
+ Defined in: base.js. + + +
+ + + + +
+
Parameters:
+ +
+ {Function} beforeEachFunction + +
+
+ +
+ + + + + + + + +
+ + +
+ + + clearInterval(timeoutKey) + +
+
+ + +
+ Defined in: mock-timeout.js. + + +
+ + + + +
+
Parameters:
+ +
+ timeoutKey + +
+
+ +
+ + + + + + + + +
+ + +
+ + + clearTimeout(timeoutKey) + +
+
+ + +
+ Defined in: mock-timeout.js. + + +
+ + + + +
+
Parameters:
+ +
+ timeoutKey + +
+
+ +
+ + + + + + + + +
+ + +
+ + + describe(description, specDefinitions) + +
+
+ Defines a suite of specifications. + +Stores the description and all defined specs in the Jasmine environment as one suite of specs. Variables declared +are accessible by calls to beforeEach, it, and afterEach. Describe blocks can be nested, allowing for specialization +of setup in some tests. + +
+ Defined in: base.js. + + +
+ + + +
// TODO: a simple suite
+
+// TODO: a simple suite with a nested describe block
+ + + + +
+
Parameters:
+ +
+ {String} description + +
+
A string, usually the class under test.
+ +
+ {Function} specDefinitions + +
+
function that defines several specs.
+ +
+ + + + + + + + +
+ + +
+ + + expect(actual) + +
+
+ Starts a chain for a Jasmine expectation. + +It is passed an Object that is the actual value and should chain to one of the many +jasmine.Matchers functions. + +
+ Defined in: base.js. + + +
+ + + + +
+
Parameters:
+ +
+ {Object} actual + +
+
Actual value to test against and expected value
+ +
+ + + + + + + + +
+ + +
+ + + it(desc, func) + +
+
+ Creates a Jasmine spec that will be added to the current suite. + +// TODO: pending tests + +
+ Defined in: base.js. + + +
+ + + +
it('should be true', function() {
+  expect(true).toEqual(true);
+});
+ + + + +
+
Parameters:
+ +
+ {String} desc + +
+
description of this specification
+ +
+ {Function} func + +
+
defines the preconditions and expectations of the spec
+ +
+ + + + + + + + +
+ + +
+ + + runs(func) + +
+
+ Defines part of a jasmine spec. Used in cominbination with waits or waitsFor in asynchrnous specs. + +
+ Defined in: base.js. + + +
+ + + + +
+
Parameters:
+ +
+ {Function} func + +
+
Function that defines part of a jasmine spec.
+ +
+ + + + + + + + +
+ + +
+ + + setInterval(funcToCall, millis) + +
+
+ + +
+ Defined in: mock-timeout.js. + + +
+ + + + +
+
Parameters:
+ +
+ funcToCall + +
+
+ +
+ millis + +
+
+ +
+ + + + + + + + +
+ + +
+ + + setTimeout(funcToCall, millis) + +
+
+ + +
+ Defined in: mock-timeout.js. + + +
+ + + + +
+
Parameters:
+ +
+ funcToCall + +
+
+ +
+ millis + +
+
+ +
+ + + + + + + + +
+ + +
+ + + spyOn(obj, methodName) + +
+
+ Function that installs a spy on an existing object's method name. Used within a Spec to create a spy. + +
+ Defined in: base.js. + + +
+ + + +
// spy example
+var foo = {
+  not: function(bool) { return !bool; }
+}
+spyOn(foo, 'not'); // actual foo.not will not be called, execution stops
+ + + + +
+
Parameters:
+ +
+ obj + +
+
+ +
+ methodName + +
+
+ +
+ + + + + +
+
Returns:
+ +
a Jasmine spy that can be chained with all spy methods
+ +
+ + + +
+
See:
+ +
jasmine.createSpy
+ +
+ + +
+ + +
+ + + waits(timeout) + +
+
+ Waits a fixed time period before moving to the next block. + +
+ Defined in: base.js. + + +
+ + + + +
+
Parameters:
+ +
+ {Number} timeout + +
+
milliseconds to wait
+ +
+ + +
+
Deprecated:
+
+ Use waitsFor() instead +
+
+ + + + + + + +
+ + +
+ + + waitsFor(latchFunction, optional_timeoutMessage, optional_timeout) + +
+
+ Waits for the latchFunction to return true before proceeding to the next block. + +
+ Defined in: base.js. + + +
+ + + + +
+
Parameters:
+ +
+ {Function} latchFunction + +
+
+ +
+ {String} optional_timeoutMessage + +
+
+ +
+ {Number} optional_timeout + +
+
+ +
+ + + + + + + + +
+ + +
+ + + xdescribe(description, specDefinitions) + +
+
+ Disables a suite of specifications. Used to disable some suites in a file, or files, temporarily during development. + +
+ Defined in: base.js. + + +
+ + + + +
+
Parameters:
+ +
+ {String} description + +
+
A string, usually the class under test.
+ +
+ {Function} specDefinitions + +
+
function that defines several specs.
+ +
+ + + + + + + + +
+ + +
+ + + xit(desc, func) + +
+
+ Creates a disabled Jasmine spec. + +A convenience method that allows existing specs to be disabled temporarily during development. + +
+ Defined in: base.js. + + +
+ + + + +
+
Parameters:
+ +
+ {String} desc + +
+
description of this specification
+ +
+ {Function} func + +
+
defines the preconditions and expectations of the spec
+ +
+ + + + + + + + + + + + + + + +
+
+ + + +
+ + Documentation generated by JsDoc Toolkit 2.1.0 on Sun Feb 27 2011 12:17:44 GMT-0800 (PST) +
+ + diff --git a/pages/jsdoc/symbols/jasmine.Block.html b/pages/jsdoc/symbols/jasmine.Block.html new file mode 100644 index 0000000..f604ccd --- /dev/null +++ b/pages/jsdoc/symbols/jasmine.Block.html @@ -0,0 +1,419 @@ + + + + + + + JsDoc Reference - jasmine.Block + + + + + + + + + + + +
+ +
Class Index +| File Index
+
+

Classes

+ +
+ +
+ +
+ +

+ + Class jasmine.Block +

+ + +

+ + + + + +
Defined in: Block.js. + +

+ + + + + + + + + + + + + + + + + +
Class Summary
Constructor AttributesConstructor Name and Description
  +
+ jasmine.Block(env, func, spec) +
+
Blocks are functions with executable code that make up a spec.
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
Method Summary
Method AttributesMethod Name and Description
  +
execute(onComplete) +
+
+
+ + + + + + + + + +
+
+ Class Detail +
+ +
+ jasmine.Block(env, func, spec) +
+ +
+ Blocks are functions with executable code that make up a spec. + +
+ + + + + +
+
Parameters:
+ +
+ {jasmine.Env} env + +
+
+ +
+ {Function} func + +
+
+ +
+ {jasmine.Spec} spec + +
+
+ +
+ + + + + + + + +
+ + + + + + + +
+ Method Detail +
+ + +
+ + + execute(onComplete) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ onComplete + +
+
+ +
+ + + + + + + + + + + + + + + +
+
+ + + +
+ + Documentation generated by JsDoc Toolkit 2.1.0 on Sun Feb 27 2011 12:17:45 GMT-0800 (PST) +
+ + diff --git a/pages/jsdoc/symbols/jasmine.Clock.html b/pages/jsdoc/symbols/jasmine.Clock.html new file mode 100644 index 0000000..e1bbd61 --- /dev/null +++ b/pages/jsdoc/symbols/jasmine.Clock.html @@ -0,0 +1,714 @@ + + + + + + + JsDoc Reference - jasmine.Clock + + + + + + + + + + + +
+ +
Class Index +| File Index
+
+

Classes

+ +
+ +
+ +
+ +

+ + Namespace jasmine.Clock +

+ + +

+ + + + + +
Defined in: mock-timeout.js. + +

+ + + + + + + + + + + + + + + + + +
Namespace Summary
Constructor AttributesConstructor Name and Description
  + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Method Summary
Method AttributesMethod Name and Description
<static>   +
jasmine.Clock.assertInstalled() +
+
+
<static>   +
jasmine.Clock.installMock() +
+
+
<static>   +
jasmine.Clock.isInstalled() +
+
+
<static>   +
jasmine.Clock.reset() +
+
+
<static>   +
jasmine.Clock.runFunctionsWithinRange(oldMillis, nowMillis) +
+
+
<static>   +
jasmine.Clock.scheduleFunction(timeoutKey, funcToCall, millis, recurring) +
+
+
<static>   +
jasmine.Clock.tick(millis) +
+
+
<static>   +
jasmine.Clock.uninstallMock() +
+
+
<static>   +
jasmine.Clock.useMock() +
+
+
+ + + + + + + + + +
+
+ Namespace Detail +
+ +
+ jasmine.Clock +
+ +
+ + +
+ + + + + + + + + + + + +
+ + + + + + + +
+ Method Detail +
+ + +
<static> + + + jasmine.Clock.assertInstalled() + +
+
+ + + +
+ + + + + + + + + + + +
+ + +
<static> + + + jasmine.Clock.installMock() + +
+
+ + + +
+ + + + + + + + + + + +
+ + +
<static> + + + jasmine.Clock.isInstalled() + +
+
+ + + +
+ + + + + + + + + + + +
+ + +
<static> + + + jasmine.Clock.reset() + +
+
+ + + +
+ + + + + + + + + + + +
+ + +
<static> + + + jasmine.Clock.runFunctionsWithinRange(oldMillis, nowMillis) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ oldMillis + +
+
+ +
+ nowMillis + +
+
+ +
+ + + + + + + + +
+ + +
<static> + + + jasmine.Clock.scheduleFunction(timeoutKey, funcToCall, millis, recurring) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ timeoutKey + +
+
+ +
+ funcToCall + +
+
+ +
+ millis + +
+
+ +
+ recurring + +
+
+ +
+ + + + + + + + +
+ + +
<static> + + + jasmine.Clock.tick(millis) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ millis + +
+
+ +
+ + + + + + + + +
+ + +
<static> + + + jasmine.Clock.uninstallMock() + +
+
+ + + +
+ + + + + + + + + + + +
+ + +
<static> + + + jasmine.Clock.useMock() + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + +
+
+ + + +
+ + Documentation generated by JsDoc Toolkit 2.1.0 on Sun Feb 27 2011 12:17:45 GMT-0800 (PST) +
+ + diff --git a/pages/jsdoc/symbols/jasmine.Env.html b/pages/jsdoc/symbols/jasmine.Env.html new file mode 100644 index 0000000..87aec30 --- /dev/null +++ b/pages/jsdoc/symbols/jasmine.Env.html @@ -0,0 +1,1212 @@ + + + + + + + JsDoc Reference - jasmine.Env + + + + + + + + + + + +
+ +
Class Index +| File Index
+
+

Classes

+ +
+ +
+ +
+ +

+ + Class jasmine.Env +

+ + +

+ + + + + +
Defined in: Env.js. + +

+ + + + + + + + + + + + + + + + + +
Class Summary
Constructor AttributesConstructor Name and Description
  +
+ jasmine.Env() +
+
Environment for Jasmine
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Method Summary
Method AttributesMethod Name and Description
  +
addEqualityTester(equalityTester) +
+
+
  +
addReporter(reporter) +
+
Register a reporter to receive status updates from Jasmine.
+
  +
afterEach(afterEachFunction) +
+
+
  +
beforeEach(beforeEachFunction) +
+
+
  +
compareObjects_(a, b, mismatchKeys, mismatchValues) +
+
+
  +
contains_(haystack, needle) +
+
+
  + +
+
  +
describe(description, specDefinitions) +
+
+
  +
equals_(a, b, mismatchKeys, mismatchValues) +
+
+
  +
execute() +
+
+
  +
it(description, func) +
+
+
  + +
+
  + +
+
  + +
+
  + +
+
  +
version() +
+
+
  + +
+
  +
xdescribe(desc, specDefinitions) +
+
+
  +
xit(desc, func) +
+
+
+ + + + + + + + + +
+
+ Class Detail +
+ +
+ jasmine.Env() +
+ +
+ Environment for Jasmine + +
+ + + + + + + + + + + + +
+ + + + + + + +
+ Method Detail +
+ + +
+ + + addEqualityTester(equalityTester) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ equalityTester + +
+
+ +
+ + + + + + + + +
+ + +
+ + + addReporter(reporter) + +
+
+ Register a reporter to receive status updates from Jasmine. + + +
+ + + + +
+
Parameters:
+ +
+ {jasmine.Reporter} reporter + +
+
An object which will receive status updates.
+ +
+ + + + + + + + +
+ + +
+ + + afterEach(afterEachFunction) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ afterEachFunction + +
+
+ +
+ + + + + + + + +
+ + +
+ + + beforeEach(beforeEachFunction) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ beforeEachFunction + +
+
+ +
+ + + + + + + + +
+ + +
+ + + compareObjects_(a, b, mismatchKeys, mismatchValues) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ a + +
+
+ +
+ b + +
+
+ +
+ mismatchKeys + +
+
+ +
+ mismatchValues + +
+
+ +
+ + + + + + + + +
+ + +
+ + + contains_(haystack, needle) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ haystack + +
+
+ +
+ needle + +
+
+ +
+ + + + + + + + +
+ + +
+ + + currentRunner() + +
+
+ + + +
+ + + + + + + + + + + +
+ + +
+ + + describe(description, specDefinitions) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ description + +
+
+ +
+ specDefinitions + +
+
+ +
+ + + + + + + + +
+ + +
+ + + equals_(a, b, mismatchKeys, mismatchValues) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ a + +
+
+ +
+ b + +
+
+ +
+ mismatchKeys + +
+
+ +
+ mismatchValues + +
+
+ +
+ + + + + + + + +
+ + +
+ + + execute() + +
+
+ + + +
+ + + + + + + + + + + +
+ + +
+ + + it(description, func) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ description + +
+
+ +
+ func + +
+
+ +
+ + + + + + + + +
+ + +
+ + + matchersClass() + +
+
+ + + +
+ + + + + + + + + + + +
+ + +
+ + + nextSpecId() + +
+
+ + + +
+ + + + + + + + +
+
Returns:
+ +
a sequential integer starting at 0
+ +
+ + + + +
+ + +
+ + + nextSuiteId() + +
+
+ + + +
+ + + + + + + + +
+
Returns:
+ +
a sequential integer starting at 0
+ +
+ + + + +
+ + +
+ + + specFilter() + +
+
+ + + +
+ + + + + + + + + + + +
+ + +
+ + + version() + +
+
+ + + +
+ + + + + + + + +
+
Returns:
+ +
an object containing jasmine version build info, if set.
+ +
+ + + + +
+ + +
+ + + versionString() + +
+
+ + + +
+ + + + + + + + +
+
Returns:
+ +
string containing jasmine version build info, if set.
+ +
+ + + + +
+ + +
+ + + xdescribe(desc, specDefinitions) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ desc + +
+
+ +
+ specDefinitions + +
+
+ +
+ + + + + + + + +
+ + +
+ + + xit(desc, func) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ desc + +
+
+ +
+ func + +
+
+ +
+ + + + + + + + + + + + + + + +
+
+ + + +
+ + Documentation generated by JsDoc Toolkit 2.1.0 on Sun Feb 27 2011 12:17:45 GMT-0800 (PST) +
+ + diff --git a/pages/jsdoc/symbols/jasmine.JsApiReporter.html b/pages/jsdoc/symbols/jasmine.JsApiReporter.html new file mode 100644 index 0000000..8dbaf37 --- /dev/null +++ b/pages/jsdoc/symbols/jasmine.JsApiReporter.html @@ -0,0 +1,824 @@ + + + + + + + JsDoc Reference - jasmine.JsApiReporter + + + + + + + + + + + +
+ +
Class Index +| File Index
+
+

Classes

+ +
+ +
+ +
+ +

+ + Class jasmine.JsApiReporter +

+ + +

+ + + + + +
Defined in: JsApiReporter.js. + +

+ + + + + + + + + + + + + + + + + +
Class Summary
Constructor AttributesConstructor Name and Description
  + +
JavaScript API reporter.
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Method Summary
Method AttributesMethod Name and Description
  +
log(str) +
+
+
  + +
+
  + +
+
  + +
+
  + +
+
  +
results() +
+
+
  +
resultsForSpec(specId) +
+
+
  +
resultsForSpecs(specIds) +
+
+
  +
suites() +
+
+
  +
summarize_(suiteOrSpec) +
+
+
  +
summarizeResult_(result) +
+
+
+ + + + + + + + + +
+
+ Class Detail +
+ +
+ jasmine.JsApiReporter() +
+ +
+ JavaScript API reporter. + +
+ + + + + + + + + + + + +
+ + + + + + + +
+ Method Detail +
+ + +
+ + + log(str) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ str + +
+
+ +
+ + + + + + + + +
+ + +
+ + + reportRunnerResults(runner) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ runner + +
+
+ +
+ + + + + + + + +
+ + +
+ + + reportRunnerStarting(runner) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ runner + +
+
+ +
+ + + + + + + + +
+ + +
+ + + reportSpecResults(spec) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ spec + +
+
+ +
+ + + + + + + + +
+ + +
+ + + reportSuiteResults(suite) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ suite + +
+
+ +
+ + + + + + + + +
+ + +
+ + + results() + +
+
+ + + +
+ + + + + + + + + + + +
+ + +
+ + + resultsForSpec(specId) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ specId + +
+
+ +
+ + + + + + + + +
+ + +
+ + + resultsForSpecs(specIds) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ specIds + +
+
+ +
+ + + + + + + + +
+ + +
+ + + suites() + +
+
+ + + +
+ + + + + + + + + + + +
+ + +
+ + + summarize_(suiteOrSpec) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ suiteOrSpec + +
+
+ +
+ + + + + + + + +
+ + +
+ + + summarizeResult_(result) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ result + +
+
+ +
+ + + + + + + + + + + + + + + +
+
+ + + +
+ + Documentation generated by JsDoc Toolkit 2.1.0 on Sun Feb 27 2011 12:17:45 GMT-0800 (PST) +
+ + diff --git a/pages/jsdoc/symbols/jasmine.Matchers.html b/pages/jsdoc/symbols/jasmine.Matchers.html new file mode 100644 index 0000000..9ba6cb7 --- /dev/null +++ b/pages/jsdoc/symbols/jasmine.Matchers.html @@ -0,0 +1,1612 @@ + + + + + + + JsDoc Reference - jasmine.Matchers + + + + + + + + + + + +
+ +
Class Index +| File Index
+
+

Classes

+ +
+ +
+ +
+ +

+ + Class jasmine.Matchers +

+ + +

+ + + + + +
Defined in: Matchers.js. + +

+ + + + + + + + + + + + + + + + + +
Class Summary
Constructor AttributesConstructor Name and Description
  +
+ jasmine.Matchers(env, actual, spec, opt_isNot) +
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
Field Summary
Field AttributesField Name and Description
  +
+ wasCalled +
+
+
  + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Method Summary
Method AttributesMethod Name and Description
<static>   +
jasmine.Matchers.Any(expectedClass) +
+
+
<static>   +
jasmine.Matchers.matcherFn_(matcherName, matcherFunction) +
+
+
  +
message() +
+
+
<static>   +
jasmine.Matchers.pp(str) +
+
+
  +
report(result, failing_message, details) +
+
+
  +
toBe(expected) +
+
toBe: compares the actual to the expected using ===
+
  + +
Matcher that compares the actual to jasmine.undefined.
+
  + +
Matcher that boolean nots the actual.
+
  +
toBeGreaterThan(expected) +
+
+
  +
toBeLessThan(expected) +
+
+
  + +
Matcher that compares the actual to null.
+
  + +
Matcher that boolean not-nots the actual.
+
  + +
Matcher that compares the actual to jasmine.undefined.
+
  +
toContain(expected) +
+
Matcher that checks that the expected item is an element in the actual Array.
+
  +
toEqual(expected) +
+
toEqual: compares the actual to the expected using common sense equality.
+
  + +
Matcher that checks to see if the actual, a Jasmine spy, was called.
+
  + +
Matcher that checks to see if the actual, a Jasmine spy, was called with a set of parameters.
+
  +
toMatch(expected) +
+
Matcher that compares the actual to the expected using a regular expression.
+
  +
toNotBe(expected) +
+
toNotBe: compares the actual to the expected using !==
+
  +
toNotContain(expected) +
+
Matcher that checks that the expected item is NOT an element in the actual Array.
+
  +
toNotEqual(expected) +
+
toNotEqual: compares the actual to the expected using the ! of jasmine.Matchers.toEqual
+
  +
toNotMatch(expected) +
+
Matcher that compares the actual to the expected using the boolean inverse of jasmine.Matchers.toMatch
+
  +
toThrow(expected) +
+
Matcher that checks that the expected exception was thrown by the actual.
+
  + +
Matcher that checks to see if the actual, a Jasmine spy, was not called.
+
  + +
+
<static>   +
jasmine.Matchers.wrapInto_(prototype, matchersClass) +
+
+
+ + + + + + + + + +
+
+ Class Detail +
+ +
+ jasmine.Matchers(env, actual, spec, opt_isNot) +
+ +
+ + +
+ + + + + +
+
Parameters:
+ +
+ {jasmine.Env} env + +
+
+ +
+ actual + +
+
+ +
+ {jasmine.Spec} spec + +
+
+ +
+ opt_isNot + +
+
+ +
+ + + + + + + + +
+ + + + +
+ Field Detail +
+ + +
+ + + wasCalled + +
+
+ + + +
+ + + + +
+
Deprecated:
+
+ Use expect(xxx).toHaveBeenCalled() instead +
+
+ + + + + +
+ + +
+ + + wasCalledWith + +
+
+ + + +
+ + + + +
+
Deprecated:
+
+ Use expect(xxx).toHaveBeenCalledWith() instead +
+
+ + + + + + + + + + + +
+ Method Detail +
+ + +
<static> + + + jasmine.Matchers.Any(expectedClass) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ expectedClass + +
+
+ +
+ + + + + + + + +
+ + +
<static> + + + jasmine.Matchers.matcherFn_(matcherName, matcherFunction) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ matcherName + +
+
+ +
+ matcherFunction + +
+
+ +
+ + + + + + + + +
+ + +
+ + + message() + +
+
+ + + +
+ + + + + + + + + + + +
+ + +
<static> + + + jasmine.Matchers.pp(str) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ str + +
+
+ +
+ + + + + + + + +
+ + +
+ + + report(result, failing_message, details) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ result + +
+
+ +
+ failing_message + +
+
+ +
+ details + +
+
+ +
+ + + + + + + + +
+ + +
+ + + toBe(expected) + +
+
+ toBe: compares the actual to the expected using === + + +
+ + + + +
+
Parameters:
+ +
+ expected + +
+
+ +
+ + + + + + + + +
+ + +
+ + + toBeDefined() + +
+
+ Matcher that compares the actual to jasmine.undefined. + + +
+ + + + + + + + + + + +
+ + +
+ + + toBeFalsy() + +
+
+ Matcher that boolean nots the actual. + + +
+ + + + + + + + + + + +
+ + +
+ + + toBeGreaterThan(expected) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ expected + +
+
+ +
+ + + + + + + + +
+ + +
+ + + toBeLessThan(expected) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ expected + +
+
+ +
+ + + + + + + + +
+ + +
+ + + toBeNull() + +
+
+ Matcher that compares the actual to null. + + +
+ + + + + + + + + + + +
+ + +
+ + + toBeTruthy() + +
+
+ Matcher that boolean not-nots the actual. + + +
+ + + + + + + + + + + +
+ + +
+ + + toBeUndefined() + +
+
+ Matcher that compares the actual to jasmine.undefined. + + +
+ + + + + + + + + + + +
+ + +
+ + + toContain(expected) + +
+
+ Matcher that checks that the expected item is an element in the actual Array. + + +
+ + + + +
+
Parameters:
+ +
+ {Object} expected + +
+
+ +
+ + + + + + + + +
+ + +
+ + + toEqual(expected) + +
+
+ toEqual: compares the actual to the expected using common sense equality. Handles Objects, Arrays, etc. + + +
+ + + + +
+
Parameters:
+ +
+ expected + +
+
+ +
+ + + + + + + + +
+ + +
+ + + toHaveBeenCalled() + +
+
+ Matcher that checks to see if the actual, a Jasmine spy, was called. + + +
+ + + + + + + + + + + +
+ + +
+ + + toHaveBeenCalledWith() + +
+
+ Matcher that checks to see if the actual, a Jasmine spy, was called with a set of parameters. + + +
+ + + +

+					
+					
+					
+						
+						
+						
+						
+						
+						
+						
+
+					
+ + +
+ + + toMatch(expected) + +
+
+ Matcher that compares the actual to the expected using a regular expression. Constructs a RegExp, so takes +a pattern or a String. + + +
+ + + + +
+
Parameters:
+ +
+ expected + +
+
+ +
+ + + + + + + + +
+ + +
+ + + toNotBe(expected) + +
+
+ toNotBe: compares the actual to the expected using !== + + +
+ + + + +
+
Parameters:
+ +
+ expected + +
+
+ +
+ + +
+
Deprecated:
+
+ as of 1.0. Use not.toBe() instead. +
+
+ + + + + + + +
+ + +
+ + + toNotContain(expected) + +
+
+ Matcher that checks that the expected item is NOT an element in the actual Array. + + +
+ + + + +
+
Parameters:
+ +
+ {Object} expected + +
+
+ +
+ + +
+
Deprecated:
+
+ as of 1.0. Use not.toNotContain() instead. +
+
+ + + + + + + +
+ + +
+ + + toNotEqual(expected) + +
+
+ toNotEqual: compares the actual to the expected using the ! of jasmine.Matchers.toEqual + + +
+ + + + +
+
Parameters:
+ +
+ expected + +
+
+ +
+ + +
+
Deprecated:
+
+ as of 1.0. Use not.toNotEqual() instead. +
+
+ + + + + + + +
+ + +
+ + + toNotMatch(expected) + +
+
+ Matcher that compares the actual to the expected using the boolean inverse of jasmine.Matchers.toMatch + + +
+ + + + +
+
Parameters:
+ +
+ expected + +
+
+ +
+ + +
+
Deprecated:
+
+ as of 1.0. Use not.toMatch() instead. +
+
+ + + + + + + +
+ + +
+ + + toThrow(expected) + +
+
+ Matcher that checks that the expected exception was thrown by the actual. + + +
+ + + + +
+
Parameters:
+ +
+ {String} expected + +
+
+ +
+ + + + + + + + +
+ + +
+ + + wasNotCalled() + +
+
+ Matcher that checks to see if the actual, a Jasmine spy, was not called. + + +
+ + + + + +
+
Deprecated:
+
+ Use expect(xxx).not.toHaveBeenCalled() instead +
+
+ + + + + + + +
+ + +
+ + + wasNotCalledWith() + +
+
+ + + +
+ + + + + +
+
Deprecated:
+
+ Use expect(xxx).not.toHaveBeenCalledWith() instead +
+
+ + + + + + + +
+ + +
<static> + + + jasmine.Matchers.wrapInto_(prototype, matchersClass) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ prototype + +
+
+ +
+ matchersClass + +
+
+ +
+ + + + + + + + + + + + + + + +
+
+ + + +
+ + Documentation generated by JsDoc Toolkit 2.1.0 on Sun Feb 27 2011 12:17:45 GMT-0800 (PST) +
+ + diff --git a/pages/jsdoc/symbols/jasmine.MultiReporter.html b/pages/jsdoc/symbols/jasmine.MultiReporter.html new file mode 100644 index 0000000..98c2532 --- /dev/null +++ b/pages/jsdoc/symbols/jasmine.MultiReporter.html @@ -0,0 +1,396 @@ + + + + + + + JsDoc Reference - jasmine.MultiReporter + + + + + + + + + + + +
+ +
Class Index +| File Index
+
+

Classes

+ +
+ +
+ +
+ +

+ + Class jasmine.MultiReporter +

+ + +

+ + + + + +
Defined in: MultiReporter.js. + +

+ + + + + + + + + + + + + + + + + +
Class Summary
Constructor AttributesConstructor Name and Description
  + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
Method Summary
Method AttributesMethod Name and Description
  +
addReporter(reporter) +
+
+
+ + + + + + + + + +
+
+ Class Detail +
+ +
+ jasmine.MultiReporter() +
+ +
+ + +
+ + + + + + + + + + + + +
+ + + + + + + +
+ Method Detail +
+ + +
+ + + addReporter(reporter) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ reporter + +
+
+ +
+ + + + + + + + + + + + + + + +
+
+ + + +
+ + Documentation generated by JsDoc Toolkit 2.1.0 on Sun Feb 27 2011 12:17:45 GMT-0800 (PST) +
+ + diff --git a/pages/jsdoc/symbols/jasmine.NestedResults.html b/pages/jsdoc/symbols/jasmine.NestedResults.html new file mode 100644 index 0000000..b9f4616 --- /dev/null +++ b/pages/jsdoc/symbols/jasmine.NestedResults.html @@ -0,0 +1,712 @@ + + + + + + + JsDoc Reference - jasmine.NestedResults + + + + + + + + + + + +
+ +
Class Index +| File Index
+
+

Classes

+ +
+ +
+ +
+ +

+ + Class jasmine.NestedResults +

+ + +

+ + + + + +
Defined in: NestedResults.js. + +

+ + + + + + + + + + + + + + + + + +
Class Summary
Constructor AttributesConstructor Name and Description
  + +
Holds results for a set of Jasmine spec.
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Field Summary
Field AttributesField Name and Description
  + +
Number of failed results
+
  + +
Number of passed results
+
  +
+ skipped +
+
Was this suite/spec skipped?
+
  + +
The total count of results
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Method Summary
Method AttributesMethod Name and Description
  +
addResult(result) +
+
Adds a result, tracking counts (total, passed, & failed)
+
  + +
Getter for the results: message & results.
+
  +
log(values) +
+
Adds a log message.
+
  +
passed() +
+
+
  +
rollupCounts(result) +
+
Roll up the result counts.
+
+ + + + + + + + + +
+
+ Class Detail +
+ +
+ jasmine.NestedResults() +
+ +
+ Holds results for a set of Jasmine spec. Allows for the results array to hold another jasmine.NestedResults + +
+ + + + + + + + + + + + +
+ + + + +
+ Field Detail +
+ + +
+ + + failedCount + +
+
+ Number of failed results + + +
+ + + + + + + + +
+ + +
+ + + passedCount + +
+
+ Number of passed results + + +
+ + + + + + + + +
+ + +
+ + + skipped + +
+
+ Was this suite/spec skipped? + + +
+ + + + + + + + +
+ + +
+ + + totalCount + +
+
+ The total count of results + + +
+ + + + + + + + + + + + + + +
+ Method Detail +
+ + +
+ + + addResult(result) + +
+
+ Adds a result, tracking counts (total, passed, & failed) + + +
+ + + + +
+
Parameters:
+ +
+ {jasmine.ExpectationResult|jasmine.NestedResults} result + +
+
+ +
+ + + + + + + + +
+ + +
+ + + getItems() + +
+
+ Getter for the results: message & results. + + +
+ + + + + + + + + + + +
+ + +
+ + + log(values) + +
+
+ Adds a log message. + + +
+ + + + +
+
Parameters:
+ +
+ values + +
+
Array of message parts which will be concatenated later.
+ +
+ + + + + + + + +
+ + +
+ + {Boolean} + passed() + +
+
+ + + +
+ + + + + + + + +
+
Returns:
+ +
{Boolean} True if everything below passed
+ +
+ + + + +
+ + +
+ + + rollupCounts(result) + +
+
+ Roll up the result counts. + + +
+ + + + +
+
Parameters:
+ +
+ result + +
+
+ +
+ + + + + + + + + + + + + + + +
+
+ + + +
+ + Documentation generated by JsDoc Toolkit 2.1.0 on Sun Feb 27 2011 12:17:45 GMT-0800 (PST) +
+ + diff --git a/pages/jsdoc/symbols/jasmine.Reporter.html b/pages/jsdoc/symbols/jasmine.Reporter.html new file mode 100644 index 0000000..7c055f7 --- /dev/null +++ b/pages/jsdoc/symbols/jasmine.Reporter.html @@ -0,0 +1,621 @@ + + + + + + + JsDoc Reference - jasmine.Reporter + + + + + + + + + + + +
+ +
Class Index +| File Index
+
+

Classes

+ +
+ +
+ +
+ +

+ + Class jasmine.Reporter +

+ + +

+ + + + + +
Defined in: Reporter.js. + +

+ + + + + + + + + + + + + + + + + +
Class Summary
Constructor AttributesConstructor Name and Description
  + +
No-op base class for Jasmine reporters.
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Method Summary
Method AttributesMethod Name and Description
  +
log(str) +
+
+
  + +
+
  + +
+
  + +
+
  + +
+
  + +
+
+ + + + + + + + + +
+
+ Class Detail +
+ +
+ jasmine.Reporter() +
+ +
+ No-op base class for Jasmine reporters. + +
+ + + + + + + + + + + + +
+ + + + + + + +
+ Method Detail +
+ + +
+ + + log(str) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ str + +
+
+ +
+ + + + + + + + +
+ + +
+ + + reportRunnerResults(runner) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ runner + +
+
+ +
+ + + + + + + + +
+ + +
+ + + reportRunnerStarting(runner) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ runner + +
+
+ +
+ + + + + + + + +
+ + +
+ + + reportSpecResults(spec) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ spec + +
+
+ +
+ + + + + + + + +
+ + +
+ + + reportSpecStarting(spec) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ spec + +
+
+ +
+ + + + + + + + +
+ + +
+ + + reportSuiteResults(suite) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ suite + +
+
+ +
+ + + + + + + + + + + + + + + +
+
+ + + +
+ + Documentation generated by JsDoc Toolkit 2.1.0 on Sun Feb 27 2011 12:17:45 GMT-0800 (PST) +
+ + diff --git a/pages/jsdoc/symbols/jasmine.Runner.html b/pages/jsdoc/symbols/jasmine.Runner.html new file mode 100644 index 0000000..7b29116 --- /dev/null +++ b/pages/jsdoc/symbols/jasmine.Runner.html @@ -0,0 +1,746 @@ + + + + + + + JsDoc Reference - jasmine.Runner + + + + + + + + + + + +
+ +
Class Index +| File Index
+
+

Classes

+ +
+ +
+ +
+ +

+ + Class jasmine.Runner +

+ + +

+ + + + + +
Defined in: Runner.js. + +

+ + + + + + + + + + + + + + + + + +
Class Summary
Constructor AttributesConstructor Name and Description
  +
+ jasmine.Runner(env) +
+
Runner
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Method Summary
Method AttributesMethod Name and Description
  +
add(block) +
+
+
  +
addSuite(suite) +
+
+
  +
afterEach(afterEachFunction) +
+
+
  +
beforeEach(beforeEachFunction) +
+
+
  +
execute() +
+
+
  + +
+
  +
results() +
+
+
  +
specs() +
+
+
  +
suites() +
+
+
  + +
+
+ + + + + + + + + +
+
+ Class Detail +
+ +
+ jasmine.Runner(env) +
+ +
+ Runner + +
+ + + + + +
+
Parameters:
+ +
+ {jasmine.Env} env + +
+
+ +
+ + + + + + + + +
+ + + + + + + +
+ Method Detail +
+ + +
+ + + add(block) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ block + +
+
+ +
+ + + + + + + + +
+ + +
+ + + addSuite(suite) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ suite + +
+
+ +
+ + + + + + + + +
+ + +
+ + + afterEach(afterEachFunction) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ afterEachFunction + +
+
+ +
+ + + + + + + + +
+ + +
+ + + beforeEach(beforeEachFunction) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ beforeEachFunction + +
+
+ +
+ + + + + + + + +
+ + +
+ + + execute() + +
+
+ + + +
+ + + + + + + + + + + +
+ + +
+ + + finishCallback() + +
+
+ + + +
+ + + + + + + + + + + +
+ + +
+ + + results() + +
+
+ + + +
+ + + + + + + + + + + +
+ + +
+ + + specs() + +
+
+ + + +
+ + + + + + + + + + + +
+ + +
+ + + suites() + +
+
+ + + +
+ + + + + + + + + + + +
+ + +
+ + + topLevelSuites() + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + +
+
+ + + +
+ + Documentation generated by JsDoc Toolkit 2.1.0 on Sun Feb 27 2011 12:17:45 GMT-0800 (PST) +
+ + diff --git a/pages/jsdoc/symbols/jasmine.Spec.html b/pages/jsdoc/symbols/jasmine.Spec.html new file mode 100644 index 0000000..99eefb3 --- /dev/null +++ b/pages/jsdoc/symbols/jasmine.Spec.html @@ -0,0 +1,1219 @@ + + + + + + + JsDoc Reference - jasmine.Spec + + + + + + + + + + + +
+ +
Class Index +| File Index
+
+

Classes

+ +
+ +
+ +
+ +

+ + Class jasmine.Spec +

+ + +

+ + + + + +
Defined in: Spec.js. + +

+ + + + + + + + + + + + + + + + + +
Class Summary
Constructor AttributesConstructor Name and Description
  +
+ jasmine.Spec(env, suite, description) +
+
Internal representation of a Jasmine specification, or test.
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Method Summary
Method AttributesMethod Name and Description
  + +
+
  +
addMatcherResult(result) +
+
+
  +
addMatchers(matchersPrototype) +
+
+
  +
addToQueue(block) +
+
+
  +
after(doAfter) +
+
+
  +
execute(onComplete) +
+
+
  +
expect(actual) +
+
+
  + +
+
  +
fail(e) +
+
+
  +
finish(onComplete) +
+
+
  + +
+
  + +
+
  + +
+
  +
log() +
+
All parameters are pretty-printed and concatenated together, then written to the spec's output.
+
  + +
+
  +
results() +
+
+
  +
runs(func) +
+
+
  +
spyOn(obj, methodName, ignoreMethodDoesntExist) +
+
+
  +
waits(timeout) +
+
Waits a fixed time period before moving to the next block.
+
  +
waitsFor(latchFunction, optional_timeoutMessage, optional_timeout) +
+
Waits for the latchFunction to return true before proceeding to the next block.
+
+ + + + + + + + + +
+
+ Class Detail +
+ +
+ jasmine.Spec(env, suite, description) +
+ +
+ Internal representation of a Jasmine specification, or test. + +
+ + + + + +
+
Parameters:
+ +
+ {jasmine.Env} env + +
+
+ +
+ {jasmine.Suite} suite + +
+
+ +
+ {String} description + +
+
+ +
+ + + + + + + + +
+ + + + + + + +
+ Method Detail +
+ + +
+ + + addBeforesAndAftersToQueue() + +
+
+ + + +
+ + + + + + + + + + + +
+ + +
+ + + addMatcherResult(result) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ {jasmine.ExpectationResult} result + +
+
+ +
+ + + + + + + + +
+ + +
+ + + addMatchers(matchersPrototype) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ matchersPrototype + +
+
+ +
+ + + + + + + + +
+ + +
+ + + addToQueue(block) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ block + +
+
+ +
+ + + + + + + + +
+ + +
+ + + after(doAfter) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ doAfter + +
+
+ +
+ + + + + + + + +
+ + +
+ + + execute(onComplete) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ onComplete + +
+
+ +
+ + + + + + + + +
+ + +
+ + + expect(actual) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ actual + +
+
+ +
+ + + + + + + + +
+ + +
+ + + explodes() + +
+
+ + + +
+ + + + + + + + + + + +
+ + +
+ + + fail(e) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ e + +
+
+ +
+ + + + + + + + +
+ + +
+ + + finish(onComplete) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ onComplete + +
+
+ +
+ + + + + + + + +
+ + +
+ + + finishCallback() + +
+
+ + + +
+ + + + + + + + + + + +
+ + +
+ + + getFullName() + +
+
+ + + +
+ + + + + + + + + + + +
+ + +
+ + + getMatchersClass_() + +
+
+ + + +
+ + + + + + + + + + + +
+ + +
+ + + log() + +
+
+ All parameters are pretty-printed and concatenated together, then written to the spec's output. + +Be careful not to leave calls to jasmine.log in production code. + + +
+ + + + + + + + + + + +
+ + +
+ + + removeAllSpies() + +
+
+ + + +
+ + + + + + + + + + + +
+ + +
+ + + results() + +
+
+ + + +
+ + + + + + + + + + + +
+ + +
+ + + runs(func) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ func + +
+
+ +
+ + + + + + + + +
+ + +
+ + + spyOn(obj, methodName, ignoreMethodDoesntExist) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ obj + +
+
+ +
+ methodName + +
+
+ +
+ ignoreMethodDoesntExist + +
+
+ +
+ + + + + + + + +
+ + +
+ + + waits(timeout) + +
+
+ Waits a fixed time period before moving to the next block. + + +
+ + + + +
+
Parameters:
+ +
+ {Number} timeout + +
+
milliseconds to wait
+ +
+ + +
+
Deprecated:
+
+ Use waitsFor() instead +
+
+ + + + + + + +
+ + +
+ + + waitsFor(latchFunction, optional_timeoutMessage, optional_timeout) + +
+
+ Waits for the latchFunction to return true before proceeding to the next block. + + +
+ + + + +
+
Parameters:
+ +
+ {Function} latchFunction + +
+
+ +
+ {String} optional_timeoutMessage + +
+
+ +
+ {Number} optional_timeout + +
+
+ +
+ + + + + + + + + + + + + + + +
+
+ + + +
+ + Documentation generated by JsDoc Toolkit 2.1.0 on Sun Feb 27 2011 12:17:45 GMT-0800 (PST) +
+ + diff --git a/pages/jsdoc/symbols/jasmine.Spy.html b/pages/jsdoc/symbols/jasmine.Spy.html new file mode 100644 index 0000000..5f76492 --- /dev/null +++ b/pages/jsdoc/symbols/jasmine.Spy.html @@ -0,0 +1,858 @@ + + + + + + + JsDoc Reference - jasmine.Spy + + + + + + + + + + + +
+ +
Class Index +| File Index
+
+

Classes

+ +
+ +
+ +
+ +

+ + Class jasmine.Spy +

+ + +

+ + + + + +
Defined in: base.js. + +

+ + + + + + + + + + + + + + + + + +
Class Summary
Constructor AttributesConstructor Name and Description
  +
+ jasmine.Spy(name) +
+
Jasmine Spies are test doubles that can act as stubs, spies, fakes or when used in an expecation, mocks.
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Field Summary
Field AttributesField Name and Description
  + +
Holds arguments for each call to the spy, indexed by call count
+
  +
+ identity +
+
The name of the spy, if provided.
+
  +
+ isSpy +
+
Is this Object a spy?
+
  + +
Tracking of the most recent call to the spy.
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Method Summary
Method AttributesMethod Name and Description
  +
andCallFake(fakeFunc) +
+
Calls an alternate implementation when a spy is called.
+
  + +
Tells a spy to call through to the actual implemenatation.
+
  +
andReturn(value) +
+
For setting the return value of a spy.
+
  +
andThrow(exceptionMsg) +
+
For throwing an exception when a spy is called.
+
  +
plan() +
+
The actual function this spy stubs.
+
  +
reset() +
+
Resets all of a spy's the tracking variables so that it can be used again.
+
+ + + + + + + + + +
+
+ Class Detail +
+ +
+ jasmine.Spy(name) +
+ +
+ Jasmine Spies are test doubles that can act as stubs, spies, fakes or when used in an expecation, mocks. + +Spies should be created in test setup, before expectations. They can then be checked, using the standard Jasmine +expectation syntax. Spies can be checked if they were called or not and what the calling params were. + +A Spy has the following fields: wasCalled, callCount, mostRecentCall, and argsForCall (see docs). + +Spies are torn down at the end of every spec. + +Note: Do not call new jasmine.Spy() directly - a spy must be created using spyOn, jasmine.createSpy or jasmine.createSpyObj. + +
+ + + +
// a stub
+var myStub = jasmine.createSpy('myStub');  // can be used anywhere
+
+// spy example
+var foo = {
+  not: function(bool) { return !bool; }
+}
+
+// actual foo.not will not be called, execution stops
+spyOn(foo, 'not');
+
+ // foo.not spied upon, execution will continue to implementation
+spyOn(foo, 'not').andCallThrough();
+
+// fake example
+var foo = {
+  not: function(bool) { return !bool; }
+}
+
+// foo.not(val) will return val
+spyOn(foo, 'not').andCallFake(function(value) {return value;});
+
+// mock example
+foo.not(7 == 7);
+expect(foo.not).toHaveBeenCalled();
+expect(foo.not).toHaveBeenCalledWith(true);
+ + + + + +
+
Parameters:
+ +
+ {String} name + +
+
+ +
+ + + + + + + +
+
See:
+ +
spyOn, jasmine.createSpy, jasmine.createSpyObj
+ +
+ + +
+ + + + +
+ Field Detail +
+ + +
+ + + argsForCall + +
+
+ Holds arguments for each call to the spy, indexed by call count + + +
+ + + +
var mySpy = jasmine.createSpy('foo');
+mySpy(1, 2);
+mySpy(7, 8);
+mySpy.mostRecentCall.args = [7, 8];
+mySpy.argsForCall[0] = [1, 2];
+mySpy.argsForCall[1] = [7, 8];
+ + + + + + + + +
+ + +
+ + + identity + +
+
+ The name of the spy, if provided. + + +
+ + + + + + + + +
+ + +
+ + + isSpy + +
+
+ Is this Object a spy? + + +
+ + + + + + + + +
+ + +
+ + + mostRecentCall + +
+
+ Tracking of the most recent call to the spy. + + +
+ + + +
var mySpy = jasmine.createSpy('foo');
+mySpy(1, 2);
+mySpy.mostRecentCall.args = [1, 2];
+ + + + + + + + + + + + + + +
+ Method Detail +
+ + +
+ + + andCallFake(fakeFunc) + +
+
+ Calls an alternate implementation when a spy is called. + + +
+ + + +
var baz = function() {
+  // do some stuff, return something
+}
+// defining a spy from scratch: foo() calls the function baz
+var foo = jasmine.createSpy('spy on foo').andCall(baz);
+
+// defining a spy on an existing property: foo.bar() calls an anonymnous function
+spyOn(foo, 'bar').andCall(function() { return 'baz';} );
+ + + + +
+
Parameters:
+ +
+ {Function} fakeFunc + +
+
+ +
+ + + + + + + + +
+ + +
+ + + andCallThrough() + +
+
+ Tells a spy to call through to the actual implemenatation. + + +
+ + + +
var foo = {
+  bar: function() { // do some stuff }
+}
+
+// defining a spy on an existing property: foo.bar
+spyOn(foo, 'bar').andCallThrough();
+ + + + + + + + + + + +
+ + +
+ + + andReturn(value) + +
+
+ For setting the return value of a spy. + + +
+ + + +
// defining a spy from scratch: foo() returns 'baz'
+var foo = jasmine.createSpy('spy on foo').andReturn('baz');
+
+// defining a spy on an existing property: foo.bar() returns 'baz'
+spyOn(foo, 'bar').andReturn('baz');
+ + + + +
+
Parameters:
+ +
+ {Object} value + +
+
+ +
+ + + + + + + + +
+ + +
+ + + andThrow(exceptionMsg) + +
+
+ For throwing an exception when a spy is called. + + +
+ + + +
// defining a spy from scratch: foo() throws an exception w/ message 'ouch'
+var foo = jasmine.createSpy('spy on foo').andThrow('baz');
+
+// defining a spy on an existing property: foo.bar() throws an exception w/ message 'ouch'
+spyOn(foo, 'bar').andThrow('baz');
+ + + + +
+
Parameters:
+ +
+ {String} exceptionMsg + +
+
+ +
+ + + + + + + + +
+ + +
+ + + plan() + +
+
+ The actual function this spy stubs. + + +
+ + + + + + + + + + + +
+ + +
+ + + reset() + +
+
+ Resets all of a spy's the tracking variables so that it can be used again. + + +
+ + + +
spyOn(foo, 'bar');
+
+foo.bar();
+
+expect(foo.bar.callCount).toEqual(1);
+
+foo.bar.reset();
+
+expect(foo.bar.callCount).toEqual(0);
+ + + + + + + + + + + + + + + + + + +
+
+ + + +
+ + Documentation generated by JsDoc Toolkit 2.1.0 on Sun Feb 27 2011 12:17:45 GMT-0800 (PST) +
+ + diff --git a/pages/jsdoc/symbols/jasmine.Suite.html b/pages/jsdoc/symbols/jasmine.Suite.html new file mode 100644 index 0000000..d944a8a --- /dev/null +++ b/pages/jsdoc/symbols/jasmine.Suite.html @@ -0,0 +1,775 @@ + + + + + + + JsDoc Reference - jasmine.Suite + + + + + + + + + + + +
+ +
Class Index +| File Index
+
+

Classes

+ +
+ +
+ +
+ +

+ + Class jasmine.Suite +

+ + +

+ + + + + +
Defined in: Suite.js. + +

+ + + + + + + + + + + + + + + + + +
Class Summary
Constructor AttributesConstructor Name and Description
  +
+ jasmine.Suite(env, description, specDefinitions, parentSuite) +
+
Internal representation of a Jasmine suite.
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Method Summary
Method AttributesMethod Name and Description
  +
add(suiteOrSpec) +
+
+
  +
afterEach(afterEachFunction) +
+
+
  +
beforeEach(beforeEachFunction) +
+
+
  + +
+
  +
execute(onComplete) +
+
+
  +
finish(onComplete) +
+
+
  + +
+
  +
results() +
+
+
  +
specs() +
+
+
  +
suites() +
+
+
+ + + + + + + + + +
+
+ Class Detail +
+ +
+ jasmine.Suite(env, description, specDefinitions, parentSuite) +
+ +
+ Internal representation of a Jasmine suite. + +
+ + + + + +
+
Parameters:
+ +
+ {jasmine.Env} env + +
+
+ +
+ {String} description + +
+
+ +
+ {Function} specDefinitions + +
+
+ +
+ {jasmine.Suite} parentSuite + +
+
+ +
+ + + + + + + + +
+ + + + + + + +
+ Method Detail +
+ + +
+ + + add(suiteOrSpec) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ suiteOrSpec + +
+
+ +
+ + + + + + + + +
+ + +
+ + + afterEach(afterEachFunction) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ afterEachFunction + +
+
+ +
+ + + + + + + + +
+ + +
+ + + beforeEach(beforeEachFunction) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ beforeEachFunction + +
+
+ +
+ + + + + + + + +
+ + +
+ + + children() + +
+
+ + + +
+ + + + + + + + + + + +
+ + +
+ + + execute(onComplete) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ onComplete + +
+
+ +
+ + + + + + + + +
+ + +
+ + + finish(onComplete) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ onComplete + +
+
+ +
+ + + + + + + + +
+ + +
+ + + getFullName() + +
+
+ + + +
+ + + + + + + + + + + +
+ + +
+ + + results() + +
+
+ + + +
+ + + + + + + + + + + +
+ + +
+ + + specs() + +
+
+ + + +
+ + + + + + + + + + + +
+ + +
+ + + suites() + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + +
+
+ + + +
+ + Documentation generated by JsDoc Toolkit 2.1.0 on Sun Feb 27 2011 12:17:45 GMT-0800 (PST) +
+ + diff --git a/pages/jsdoc/symbols/jasmine.WaitsForBlock.html b/pages/jsdoc/symbols/jasmine.WaitsForBlock.html new file mode 100644 index 0000000..b11a17b --- /dev/null +++ b/pages/jsdoc/symbols/jasmine.WaitsForBlock.html @@ -0,0 +1,437 @@ + + + + + + + JsDoc Reference - jasmine.WaitsForBlock + + + + + + + + + + + +
+ +
Class Index +| File Index
+
+

Classes

+ +
+ +
+ +
+ +

+ + Class jasmine.WaitsForBlock +

+ + +

+
Extends + jasmine.Block.
+ + + + + +
Defined in: WaitsForBlock.js. + +

+ + + + + + + + + + + + + + + + + +
Class Summary
Constructor AttributesConstructor Name and Description
  +
+ jasmine.WaitsForBlock(env, timeout, latchFunction, message, spec) +
+
A block which waits for some condition to become true, with timeout.
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
Method Summary
Method AttributesMethod Name and Description
  +
execute(onComplete) +
+
+
+ + + +
+ +
+ + + + + + + +
+
+ Class Detail +
+ +
+ jasmine.WaitsForBlock(env, timeout, latchFunction, message, spec) +
+ +
+ A block which waits for some condition to become true, with timeout. + +
+ + + + + +
+
Parameters:
+ +
+ {jasmine.Env} env + +
+
The Jasmine environment.
+ +
+ {Number} timeout + +
+
The maximum time in milliseconds to wait for the condition to become true.
+ +
+ {Function} latchFunction + +
+
A function which returns true when the desired condition has been met.
+ +
+ {String} message + +
+
The message to display if the desired condition hasn't been met within the given time period.
+ +
+ {jasmine.Spec} spec + +
+
The Jasmine spec.
+ +
+ + + + + + + + +
+ + + + + + + +
+ Method Detail +
+ + +
+ + + execute(onComplete) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ onComplete + +
+
+ +
+ + + + + + + + + + + + + + + +
+
+ + + +
+ + Documentation generated by JsDoc Toolkit 2.1.0 on Sun Feb 27 2011 12:17:46 GMT-0800 (PST) +
+ + diff --git a/pages/jsdoc/symbols/jasmine.html b/pages/jsdoc/symbols/jasmine.html new file mode 100644 index 0000000..0623d13 --- /dev/null +++ b/pages/jsdoc/symbols/jasmine.html @@ -0,0 +1,1209 @@ + + + + + + + JsDoc Reference - jasmine + + + + + + + + + + + +
+ +
Class Index +| File Index
+
+

Classes

+ +
+ +
+ +
+ +

+ + Namespace jasmine +

+ + +

+ + + + + +
Defined in: base.js. + +

+ + + + + + + + + + + + + + + + + +
Namespace Summary
Constructor AttributesConstructor Name and Description
  +
+ jasmine +
+
Top level namespace for Jasmine, a lightweight JavaScript BDD/spec/testing framework.
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
Field Summary
Field AttributesField Name and Description
<static>   + +
Default timeout interval in milliseconds for waitsFor() blocks.
+
<static>   + +
Default interval in milliseconds for event loop yields (e.g.
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Method Summary
Method AttributesMethod Name and Description
<static>   +
jasmine.any(clazz) +
+
Returns a matchable 'generic' object of the class type.
+
<static>   +
jasmine.createSpy(name) +
+
+
<static>   +
jasmine.createSpyObj(baseName, methodNames) +
+
Creates a more complicated spy: an Object that has every property a function that is a spy.
+
<static>   +
jasmine.ExpectationResult(params) +
+
+
<static>   +
jasmine.FakeTimer() +
+
+
<static>   +
jasmine.getEnv() +
+
Getter for the Jasmine environment.
+
<static>   +
jasmine.getGlobal() +
+
+
<static>   +
jasmine.isDomNode(obj) +
+
Returns true if the object is a DOM Node.
+
<static>   +
jasmine.isSpy(putativeSpy) +
+
Determines whether an object is a spy.
+
<static>   +
jasmine.log() +
+
All parameters are pretty-printed and concatenated together, then written to the current spec's output.
+
<static>   +
jasmine.MessageResult(values) +
+
+
<static>   +
jasmine.pp(value) +
+
Pretty printer for expecations.
+
<static>   +
jasmine.PrettyPrinter() +
+
Base class for pretty printing for expectation results.
+
<static>   +
jasmine.Queue(env) +
+
+
<static>   +
jasmine.StringPrettyPrinter() +
+
+
<static>   +
jasmine.TrivialReporter(doc) +
+
+
<static>   +
jasmine.WaitsBlock(env, timeout, spec) +
+
+
+ + + + + + + + + +
+
+ Namespace Detail +
+ +
+ jasmine +
+ +
+ Top level namespace for Jasmine, a lightweight JavaScript BDD/spec/testing framework. + +
+ + + + + + + + + + + + +
+ + + + +
+ Field Detail +
+ + +
<static> + + + jasmine.DEFAULT_TIMEOUT_INTERVAL + +
+
+ Default timeout interval in milliseconds for waitsFor() blocks. + + +
+ + + + + + + + +
+ + +
<static> + + + jasmine.DEFAULT_UPDATE_INTERVAL + +
+
+ Default interval in milliseconds for event loop yields (e.g. to allow network activity or to refresh the screen with the HTML-based runner). Small values here may result in slow test running. Zero means no updates until all tests have completed. + + +
+ + + + + + + + + + + + + + +
+ Method Detail +
+ + +
<static> + + + jasmine.any(clazz) + +
+
+ Returns a matchable 'generic' object of the class type. For use in expecations of type when values don't matter. + + +
+ + + +
// don't care about which function is passed in, as long as it's a function
+expect(mySpy).toHaveBeenCalledWith(jasmine.any(Function));
+ + + + +
+
Parameters:
+ +
+ {Class} clazz + +
+
+ +
+ + + + + +
+
Returns:
+ +
matchable object of the type clazz
+ +
+ + + + +
+ + +
<static> + + + jasmine.createSpy(name) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ name + +
+
+ +
+ + + + + + + + +
+ + +
<static> + + + jasmine.createSpyObj(baseName, methodNames) + +
+
+ Creates a more complicated spy: an Object that has every property a function that is a spy. Used for stubbing something +large in one call. + + +
+ + + + +
+
Parameters:
+ +
+ {String} baseName + +
+
name of spy class
+ +
+ {Array} methodNames + +
+
array of names of methods to make spies
+ +
+ + + + + + + + +
+ + +
<static> + + + jasmine.ExpectationResult(params) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ params + +
+
+ +
+ + + + + + + + +
+ + +
<static> + + + jasmine.FakeTimer() + +
+
+ + +
+ Defined in: mock-timeout.js. + + +
+ + + + + + + + + + + +
+ + +
<static> + + + jasmine.getEnv() + +
+
+ Getter for the Jasmine environment. Ensures one gets created + + +
+ + + + + + + + + + + +
+ + +
<static> + + + jasmine.getGlobal() + +
+
+ + + +
+ + + + + + + + + + + +
+ + +
<static> + + {Boolean} + jasmine.isDomNode(obj) + +
+
+ Returns true if the object is a DOM Node. + + +
+ + + + +
+
Parameters:
+ +
+ {Object} obj + +
+
object to check
+ +
+ + + + + +
+
Returns:
+ +
{Boolean}
+ +
+ + + + +
+ + +
<static> + + {Boolean} + jasmine.isSpy(putativeSpy) + +
+
+ Determines whether an object is a spy. + + +
+ + + + +
+
Parameters:
+ +
+ {jasmine.Spy|Object} putativeSpy + +
+
+ +
+ + + + + +
+
Returns:
+ +
{Boolean}
+ +
+ + + + +
+ + +
<static> + + + jasmine.log() + +
+
+ All parameters are pretty-printed and concatenated together, then written to the current spec's output. + +Be careful not to leave calls to jasmine.log in production code. + + +
+ + + + + + + + + + + +
+ + +
<static> + + + jasmine.MessageResult(values) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ values + +
+
+ +
+ + + + + + + + +
+ + +
<static> + + {String} + jasmine.pp(value) + +
+
+ Pretty printer for expecations. Takes any object and turns it into a human-readable string. + + +
+ + + + +
+
Parameters:
+ +
+ value + +
+
{Object} an object to be outputted
+ +
+ + + + + +
+
Returns:
+ +
{String}
+ +
+ + + + +
+ + +
<static> + + + jasmine.PrettyPrinter() + +
+
+ Base class for pretty printing for expectation results. + +
+ Defined in: PrettyPrinter.js. + + +
+ + + + + + + + + + + +
+ + +
<static> + + + jasmine.Queue(env) + +
+
+ + +
+ Defined in: Queue.js. + + +
+ + + + +
+
Parameters:
+ +
+ env + +
+
+ +
+ + + + + + + + +
+ + +
<static> + + + jasmine.StringPrettyPrinter() + +
+
+ + +
+ Defined in: PrettyPrinter.js. + + +
+ + + + + + + + + + + +
+ + +
<static> + + + jasmine.TrivialReporter(doc) + +
+
+ + +
+ Defined in: TrivialReporter.js. + + +
+ + + + +
+
Parameters:
+ +
+ doc + +
+
+ +
+ + + + + + + + +
+ + +
<static> + + + jasmine.WaitsBlock(env, timeout, spec) + +
+
+ + +
+ Defined in: WaitsBlock.js. + + +
+ + + + +
+
Parameters:
+ +
+ env + +
+
+ +
+ timeout + +
+
+ +
+ spec + +
+
+ +
+ + + + + + + + + + + + + + + +
+
+ + + +
+ + Documentation generated by JsDoc Toolkit 2.1.0 on Sun Feb 27 2011 12:17:45 GMT-0800 (PST) +
+ + diff --git a/pages/jsdoc/symbols/jasmine.util.html b/pages/jsdoc/symbols/jasmine.util.html new file mode 100644 index 0000000..c8ae759 --- /dev/null +++ b/pages/jsdoc/symbols/jasmine.util.html @@ -0,0 +1,537 @@ + + + + + + + JsDoc Reference - jasmine.util + + + + + + + + + + + +
+ +
Class Index +| File Index
+
+

Classes

+ +
+ +
+ +
+ +

+ + Namespace jasmine.util +

+ + +

+ + + + + +
Defined in: util.js. + +

+ + + + + + + + + + + + + + + + + +
Namespace Summary
Constructor AttributesConstructor Name and Description
  + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Method Summary
Method AttributesMethod Name and Description
<static>   +
jasmine.util.argsToArray(args) +
+
+
<static>   +
jasmine.util.extend(destination, source) +
+
+
<static>   +
jasmine.util.formatException(e) +
+
+
<static>   +
jasmine.util.htmlEscape(str) +
+
+
+ + + + + + + + + +
+
+ Namespace Detail +
+ +
+ jasmine.util +
+ +
+ + +
+ + + + + + + + + + + + +
+ + + + + + + +
+ Method Detail +
+ + +
<static> + + + jasmine.util.argsToArray(args) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ args + +
+
+ +
+ + + + + + + + +
+ + +
<static> + + + jasmine.util.extend(destination, source) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ destination + +
+
+ +
+ source + +
+
+ +
+ + + + + + + + +
+ + +
<static> + + + jasmine.util.formatException(e) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ e + +
+
+ +
+ + + + + + + + +
+ + +
<static> + + + jasmine.util.htmlEscape(str) + +
+
+ + + +
+ + + + +
+
Parameters:
+ +
+ str + +
+
+ +
+ + + + + + + + + + + + + + + +
+
+ + + +
+ + Documentation generated by JsDoc Toolkit 2.1.0 on Sun Feb 27 2011 12:17:46 GMT-0800 (PST) +
+ + diff --git a/pages/jsdoc/symbols/src/src_Block.js.html b/pages/jsdoc/symbols/src/src_Block.js.html new file mode 100644 index 0000000..a834f58 --- /dev/null +++ b/pages/jsdoc/symbols/src/src_Block.js.html @@ -0,0 +1,29 @@ +
  1 /**
+  2  * Blocks are functions with executable code that make up a spec.
+  3  *
+  4  * @constructor
+  5  * @param {jasmine.Env} env
+  6  * @param {Function} func
+  7  * @param {jasmine.Spec} spec
+  8  */
+  9 jasmine.Block = function(env, func, spec) {
+ 10   this.env = env;
+ 11   this.func = func;
+ 12   this.spec = spec;
+ 13 };
+ 14 
+ 15 jasmine.Block.prototype.execute = function(onComplete) {  
+ 16   try {
+ 17     this.func.apply(this.spec);
+ 18   } catch (e) {
+ 19     this.spec.fail(e);
+ 20   }
+ 21   onComplete();
+ 22 };
\ No newline at end of file diff --git a/pages/jsdoc/symbols/src/src_Env.js.html b/pages/jsdoc/symbols/src/src_Env.js.html new file mode 100644 index 0000000..bdcf2ef --- /dev/null +++ b/pages/jsdoc/symbols/src/src_Env.js.html @@ -0,0 +1,272 @@ +
  1 /**
+  2  * Environment for Jasmine
+  3  *
+  4  * @constructor
+  5  */
+  6 jasmine.Env = function() {
+  7   this.currentSpec = null;
+  8   this.currentSuite = null;
+  9   this.currentRunner_ = new jasmine.Runner(this);
+ 10 
+ 11   this.reporter = new jasmine.MultiReporter();
+ 12 
+ 13   this.updateInterval = jasmine.DEFAULT_UPDATE_INTERVAL;
+ 14   this.defaultTimeoutInterval = jasmine.DEFAULT_TIMEOUT_INTERVAL;
+ 15   this.lastUpdate = 0;
+ 16   this.specFilter = function() {
+ 17     return true;
+ 18   };
+ 19 
+ 20   this.nextSpecId_ = 0;
+ 21   this.nextSuiteId_ = 0;
+ 22   this.equalityTesters_ = [];
+ 23 
+ 24   // wrap matchers
+ 25   this.matchersClass = function() {
+ 26     jasmine.Matchers.apply(this, arguments);
+ 27   };
+ 28   jasmine.util.inherit(this.matchersClass, jasmine.Matchers);
+ 29 
+ 30   jasmine.Matchers.wrapInto_(jasmine.Matchers.prototype, this.matchersClass);
+ 31 };
+ 32 
+ 33 
+ 34 jasmine.Env.prototype.setTimeout = jasmine.setTimeout;
+ 35 jasmine.Env.prototype.clearTimeout = jasmine.clearTimeout;
+ 36 jasmine.Env.prototype.setInterval = jasmine.setInterval;
+ 37 jasmine.Env.prototype.clearInterval = jasmine.clearInterval;
+ 38 
+ 39 /**
+ 40  * @returns an object containing jasmine version build info, if set.
+ 41  */
+ 42 jasmine.Env.prototype.version = function () {
+ 43   if (jasmine.version_) {
+ 44     return jasmine.version_;
+ 45   } else {
+ 46     throw new Error('Version not set');
+ 47   }
+ 48 };
+ 49 
+ 50 /**
+ 51  * @returns string containing jasmine version build info, if set.
+ 52  */
+ 53 jasmine.Env.prototype.versionString = function() {
+ 54   if (jasmine.version_) {
+ 55     var version = this.version();
+ 56     return version.major + "." + version.minor + "." + version.build + " revision " + version.revision;
+ 57   } else {
+ 58     return "version unknown";
+ 59   }
+ 60 };
+ 61 
+ 62 /**
+ 63  * @returns a sequential integer starting at 0
+ 64  */
+ 65 jasmine.Env.prototype.nextSpecId = function () {
+ 66   return this.nextSpecId_++;
+ 67 };
+ 68 
+ 69 /**
+ 70  * @returns a sequential integer starting at 0
+ 71  */
+ 72 jasmine.Env.prototype.nextSuiteId = function () {
+ 73   return this.nextSuiteId_++;
+ 74 };
+ 75 
+ 76 /**
+ 77  * Register a reporter to receive status updates from Jasmine.
+ 78  * @param {jasmine.Reporter} reporter An object which will receive status updates.
+ 79  */
+ 80 jasmine.Env.prototype.addReporter = function(reporter) {
+ 81   this.reporter.addReporter(reporter);
+ 82 };
+ 83 
+ 84 jasmine.Env.prototype.execute = function() {
+ 85   this.currentRunner_.execute();
+ 86 };
+ 87 
+ 88 jasmine.Env.prototype.describe = function(description, specDefinitions) {
+ 89   var suite = new jasmine.Suite(this, description, specDefinitions, this.currentSuite);
+ 90 
+ 91   var parentSuite = this.currentSuite;
+ 92   if (parentSuite) {
+ 93     parentSuite.add(suite);
+ 94   } else {
+ 95     this.currentRunner_.add(suite);
+ 96   }
+ 97 
+ 98   this.currentSuite = suite;
+ 99 
+100   var declarationError = null;
+101   try {
+102     specDefinitions.call(suite);
+103   } catch(e) {
+104     declarationError = e;
+105   }
+106 
+107   this.currentSuite = parentSuite;
+108 
+109   if (declarationError) {
+110     this.it("encountered a declaration exception", function() {
+111       throw declarationError;
+112     });
+113   }
+114 
+115   return suite;
+116 };
+117 
+118 jasmine.Env.prototype.beforeEach = function(beforeEachFunction) {
+119   if (this.currentSuite) {
+120     this.currentSuite.beforeEach(beforeEachFunction);
+121   } else {
+122     this.currentRunner_.beforeEach(beforeEachFunction);
+123   }
+124 };
+125 
+126 jasmine.Env.prototype.currentRunner = function () {
+127   return this.currentRunner_;
+128 };
+129 
+130 jasmine.Env.prototype.afterEach = function(afterEachFunction) {
+131   if (this.currentSuite) {
+132     this.currentSuite.afterEach(afterEachFunction);
+133   } else {
+134     this.currentRunner_.afterEach(afterEachFunction);
+135   }
+136 
+137 };
+138 
+139 jasmine.Env.prototype.xdescribe = function(desc, specDefinitions) {
+140   return {
+141     execute: function() {
+142     }
+143   };
+144 };
+145 
+146 jasmine.Env.prototype.it = function(description, func) {
+147   var spec = new jasmine.Spec(this, this.currentSuite, description);
+148   this.currentSuite.add(spec);
+149   this.currentSpec = spec;
+150 
+151   if (func) {
+152     spec.runs(func);
+153   }
+154 
+155   return spec;
+156 };
+157 
+158 jasmine.Env.prototype.xit = function(desc, func) {
+159   return {
+160     id: this.nextSpecId(),
+161     runs: function() {
+162     }
+163   };
+164 };
+165 
+166 jasmine.Env.prototype.compareObjects_ = function(a, b, mismatchKeys, mismatchValues) {
+167   if (a.__Jasmine_been_here_before__ === b && b.__Jasmine_been_here_before__ === a) {
+168     return true;
+169   }
+170 
+171   a.__Jasmine_been_here_before__ = b;
+172   b.__Jasmine_been_here_before__ = a;
+173 
+174   var hasKey = function(obj, keyName) {
+175     return obj != null && obj[keyName] !== jasmine.undefined;
+176   };
+177 
+178   for (var property in b) {
+179     if (!hasKey(a, property) && hasKey(b, property)) {
+180       mismatchKeys.push("expected has key '" + property + "', but missing from actual.");
+181     }
+182   }
+183   for (property in a) {
+184     if (!hasKey(b, property) && hasKey(a, property)) {
+185       mismatchKeys.push("expected missing key '" + property + "', but present in actual.");
+186     }
+187   }
+188   for (property in b) {
+189     if (property == '__Jasmine_been_here_before__') continue;
+190     if (!this.equals_(a[property], b[property], mismatchKeys, mismatchValues)) {
+191       mismatchValues.push("'" + property + "' was '" + (b[property] ? jasmine.util.htmlEscape(b[property].toString()) : b[property]) + "' in expected, but was '" + (a[property] ? jasmine.util.htmlEscape(a[property].toString()) : a[property]) + "' in actual.");
+192     }
+193   }
+194 
+195   if (jasmine.isArray_(a) && jasmine.isArray_(b) && a.length != b.length) {
+196     mismatchValues.push("arrays were not the same length");
+197   }
+198 
+199   delete a.__Jasmine_been_here_before__;
+200   delete b.__Jasmine_been_here_before__;
+201   return (mismatchKeys.length == 0 && mismatchValues.length == 0);
+202 };
+203 
+204 jasmine.Env.prototype.equals_ = function(a, b, mismatchKeys, mismatchValues) {
+205   mismatchKeys = mismatchKeys || [];
+206   mismatchValues = mismatchValues || [];
+207 
+208   for (var i = 0; i < this.equalityTesters_.length; i++) {
+209     var equalityTester = this.equalityTesters_[i];
+210     var result = equalityTester(a, b, this, mismatchKeys, mismatchValues);
+211     if (result !== jasmine.undefined) return result;
+212   }
+213 
+214   if (a === b) return true;
+215 
+216   if (a === jasmine.undefined || a === null || b === jasmine.undefined || b === null) {
+217     return (a == jasmine.undefined && b == jasmine.undefined);
+218   }
+219 
+220   if (jasmine.isDomNode(a) && jasmine.isDomNode(b)) {
+221     return a === b;
+222   }
+223 
+224   if (a instanceof Date && b instanceof Date) {
+225     return a.getTime() == b.getTime();
+226   }
+227 
+228   if (a instanceof jasmine.Matchers.Any) {
+229     return a.matches(b);
+230   }
+231 
+232   if (b instanceof jasmine.Matchers.Any) {
+233     return b.matches(a);
+234   }
+235 
+236   if (jasmine.isString_(a) && jasmine.isString_(b)) {
+237     return (a == b);
+238   }
+239 
+240   if (jasmine.isNumber_(a) && jasmine.isNumber_(b)) {
+241     return (a == b);
+242   }
+243 
+244   if (typeof a === "object" && typeof b === "object") {
+245     return this.compareObjects_(a, b, mismatchKeys, mismatchValues);
+246   }
+247 
+248   //Straight check
+249   return (a === b);
+250 };
+251 
+252 jasmine.Env.prototype.contains_ = function(haystack, needle) {
+253   if (jasmine.isArray_(haystack)) {
+254     for (var i = 0; i < haystack.length; i++) {
+255       if (this.equals_(haystack[i], needle)) return true;
+256     }
+257     return false;
+258   }
+259   return haystack.indexOf(needle) >= 0;
+260 };
+261 
+262 jasmine.Env.prototype.addEqualityTester = function(equalityTester) {
+263   this.equalityTesters_.push(equalityTester);
+264 };
+265 
\ No newline at end of file diff --git a/pages/jsdoc/symbols/src/src_JsApiReporter.js.html b/pages/jsdoc/symbols/src/src_JsApiReporter.js.html new file mode 100644 index 0000000..8ba33ff --- /dev/null +++ b/pages/jsdoc/symbols/src/src_JsApiReporter.js.html @@ -0,0 +1,110 @@ +
  1 /** JavaScript API reporter.
+  2  *
+  3  * @constructor
+  4  */
+  5 jasmine.JsApiReporter = function() {
+  6   this.started = false;
+  7   this.finished = false;
+  8   this.suites_ = [];
+  9   this.results_ = {};
+ 10 };
+ 11 
+ 12 jasmine.JsApiReporter.prototype.reportRunnerStarting = function(runner) {
+ 13   this.started = true;
+ 14   var suites = runner.topLevelSuites();
+ 15   for (var i = 0; i < suites.length; i++) {
+ 16     var suite = suites[i];
+ 17     this.suites_.push(this.summarize_(suite));
+ 18   }
+ 19 };
+ 20 
+ 21 jasmine.JsApiReporter.prototype.suites = function() {
+ 22   return this.suites_;
+ 23 };
+ 24 
+ 25 jasmine.JsApiReporter.prototype.summarize_ = function(suiteOrSpec) {
+ 26   var isSuite = suiteOrSpec instanceof jasmine.Suite;
+ 27   var summary = {
+ 28     id: suiteOrSpec.id,
+ 29     name: suiteOrSpec.description,
+ 30     type: isSuite ? 'suite' : 'spec',
+ 31     children: []
+ 32   };
+ 33   
+ 34   if (isSuite) {
+ 35     var children = suiteOrSpec.children();
+ 36     for (var i = 0; i < children.length; i++) {
+ 37       summary.children.push(this.summarize_(children[i]));
+ 38     }
+ 39   }
+ 40   return summary;
+ 41 };
+ 42 
+ 43 jasmine.JsApiReporter.prototype.results = function() {
+ 44   return this.results_;
+ 45 };
+ 46 
+ 47 jasmine.JsApiReporter.prototype.resultsForSpec = function(specId) {
+ 48   return this.results_[specId];
+ 49 };
+ 50 
+ 51 //noinspection JSUnusedLocalSymbols
+ 52 jasmine.JsApiReporter.prototype.reportRunnerResults = function(runner) {
+ 53   this.finished = true;
+ 54 };
+ 55 
+ 56 //noinspection JSUnusedLocalSymbols
+ 57 jasmine.JsApiReporter.prototype.reportSuiteResults = function(suite) {
+ 58 };
+ 59 
+ 60 //noinspection JSUnusedLocalSymbols
+ 61 jasmine.JsApiReporter.prototype.reportSpecResults = function(spec) {
+ 62   this.results_[spec.id] = {
+ 63     messages: spec.results().getItems(),
+ 64     result: spec.results().failedCount > 0 ? "failed" : "passed"
+ 65   };
+ 66 };
+ 67 
+ 68 //noinspection JSUnusedLocalSymbols
+ 69 jasmine.JsApiReporter.prototype.log = function(str) {
+ 70 };
+ 71 
+ 72 jasmine.JsApiReporter.prototype.resultsForSpecs = function(specIds){
+ 73   var results = {};
+ 74   for (var i = 0; i < specIds.length; i++) {
+ 75     var specId = specIds[i];
+ 76     results[specId] = this.summarizeResult_(this.results_[specId]);
+ 77   }
+ 78   return results;
+ 79 };
+ 80 
+ 81 jasmine.JsApiReporter.prototype.summarizeResult_ = function(result){
+ 82   var summaryMessages = [];
+ 83   var messagesLength = result.messages.length;
+ 84   for (var messageIndex = 0; messageIndex < messagesLength; messageIndex++) {
+ 85     var resultMessage = result.messages[messageIndex];
+ 86     summaryMessages.push({
+ 87       text: resultMessage.type == 'log' ? resultMessage.toString() : jasmine.undefined,
+ 88       passed: resultMessage.passed ? resultMessage.passed() : true,
+ 89       type: resultMessage.type,
+ 90       message: resultMessage.message,
+ 91       trace: {
+ 92         stack: resultMessage.passed && !resultMessage.passed() ? resultMessage.trace.stack : jasmine.undefined
+ 93       }
+ 94     });
+ 95   }
+ 96 
+ 97   return {
+ 98     result : result.result,
+ 99     messages : summaryMessages
+100   };
+101 };
+102 
+103 
\ No newline at end of file diff --git a/pages/jsdoc/symbols/src/src_Matchers.js.html b/pages/jsdoc/symbols/src/src_Matchers.js.html new file mode 100644 index 0000000..ab3d5fb --- /dev/null +++ b/pages/jsdoc/symbols/src/src_Matchers.js.html @@ -0,0 +1,362 @@ +
  1 /**
+  2  * @constructor
+  3  * @param {jasmine.Env} env
+  4  * @param actual
+  5  * @param {jasmine.Spec} spec
+  6  */
+  7 jasmine.Matchers = function(env, actual, spec, opt_isNot) {
+  8   this.env = env;
+  9   this.actual = actual;
+ 10   this.spec = spec;
+ 11   this.isNot = opt_isNot || false;
+ 12   this.reportWasCalled_ = false;
+ 13 };
+ 14 
+ 15 // todo: @deprecated as of Jasmine 0.11, remove soon [xw]
+ 16 jasmine.Matchers.pp = function(str) {
+ 17   throw new Error("jasmine.Matchers.pp() is no longer supported, please use jasmine.pp() instead!");
+ 18 };
+ 19 
+ 20 // todo: @deprecated Deprecated as of Jasmine 0.10. Rewrite your custom matchers to return true or false. [xw]
+ 21 jasmine.Matchers.prototype.report = function(result, failing_message, details) {
+ 22   throw new Error("As of jasmine 0.11, custom matchers must be implemented differently -- please see jasmine docs");
+ 23 };
+ 24 
+ 25 jasmine.Matchers.wrapInto_ = function(prototype, matchersClass) {
+ 26   for (var methodName in prototype) {
+ 27     if (methodName == 'report') continue;
+ 28     var orig = prototype[methodName];
+ 29     matchersClass.prototype[methodName] = jasmine.Matchers.matcherFn_(methodName, orig);
+ 30   }
+ 31 };
+ 32 
+ 33 jasmine.Matchers.matcherFn_ = function(matcherName, matcherFunction) {
+ 34   return function() {
+ 35     var matcherArgs = jasmine.util.argsToArray(arguments);
+ 36     var result = matcherFunction.apply(this, arguments);
+ 37 
+ 38     if (this.isNot) {
+ 39       result = !result;
+ 40     }
+ 41 
+ 42     if (this.reportWasCalled_) return result;
+ 43 
+ 44     var message;
+ 45     if (!result) {
+ 46       if (this.message) {
+ 47         message = this.message.apply(this, arguments);
+ 48         if (jasmine.isArray_(message)) {
+ 49           message = message[this.isNot ? 1 : 0];
+ 50         }
+ 51       } else {
+ 52         var englishyPredicate = matcherName.replace(/[A-Z]/g, function(s) { return ' ' + s.toLowerCase(); });
+ 53         message = "Expected " + jasmine.pp(this.actual) + (this.isNot ? " not " : " ") + englishyPredicate;
+ 54         if (matcherArgs.length > 0) {
+ 55           for (var i = 0; i < matcherArgs.length; i++) {
+ 56             if (i > 0) message += ",";
+ 57             message += " " + jasmine.pp(matcherArgs[i]);
+ 58           }
+ 59         }
+ 60         message += ".";
+ 61       }
+ 62     }
+ 63     var expectationResult = new jasmine.ExpectationResult({
+ 64       matcherName: matcherName,
+ 65       passed: result,
+ 66       expected: matcherArgs.length > 1 ? matcherArgs : matcherArgs[0],
+ 67       actual: this.actual,
+ 68       message: message
+ 69     });
+ 70     this.spec.addMatcherResult(expectationResult);
+ 71     return jasmine.undefined;
+ 72   };
+ 73 };
+ 74 
+ 75 
+ 76 
+ 77 
+ 78 /**
+ 79  * toBe: compares the actual to the expected using ===
+ 80  * @param expected
+ 81  */
+ 82 jasmine.Matchers.prototype.toBe = function(expected) {
+ 83   return this.actual === expected;
+ 84 };
+ 85 
+ 86 /**
+ 87  * toNotBe: compares the actual to the expected using !==
+ 88  * @param expected
+ 89  * @deprecated as of 1.0. Use not.toBe() instead.
+ 90  */
+ 91 jasmine.Matchers.prototype.toNotBe = function(expected) {
+ 92   return this.actual !== expected;
+ 93 };
+ 94 
+ 95 /**
+ 96  * toEqual: compares the actual to the expected using common sense equality. Handles Objects, Arrays, etc.
+ 97  *
+ 98  * @param expected
+ 99  */
+100 jasmine.Matchers.prototype.toEqual = function(expected) {
+101   return this.env.equals_(this.actual, expected);
+102 };
+103 
+104 /**
+105  * toNotEqual: compares the actual to the expected using the ! of jasmine.Matchers.toEqual
+106  * @param expected
+107  * @deprecated as of 1.0. Use not.toNotEqual() instead.
+108  */
+109 jasmine.Matchers.prototype.toNotEqual = function(expected) {
+110   return !this.env.equals_(this.actual, expected);
+111 };
+112 
+113 /**
+114  * Matcher that compares the actual to the expected using a regular expression.  Constructs a RegExp, so takes
+115  * a pattern or a String.
+116  *
+117  * @param expected
+118  */
+119 jasmine.Matchers.prototype.toMatch = function(expected) {
+120   return new RegExp(expected).test(this.actual);
+121 };
+122 
+123 /**
+124  * Matcher that compares the actual to the expected using the boolean inverse of jasmine.Matchers.toMatch
+125  * @param expected
+126  * @deprecated as of 1.0. Use not.toMatch() instead.
+127  */
+128 jasmine.Matchers.prototype.toNotMatch = function(expected) {
+129   return !(new RegExp(expected).test(this.actual));
+130 };
+131 
+132 /**
+133  * Matcher that compares the actual to jasmine.undefined.
+134  */
+135 jasmine.Matchers.prototype.toBeDefined = function() {
+136   return (this.actual !== jasmine.undefined);
+137 };
+138 
+139 /**
+140  * Matcher that compares the actual to jasmine.undefined.
+141  */
+142 jasmine.Matchers.prototype.toBeUndefined = function() {
+143   return (this.actual === jasmine.undefined);
+144 };
+145 
+146 /**
+147  * Matcher that compares the actual to null.
+148  */
+149 jasmine.Matchers.prototype.toBeNull = function() {
+150   return (this.actual === null);
+151 };
+152 
+153 /**
+154  * Matcher that boolean not-nots the actual.
+155  */
+156 jasmine.Matchers.prototype.toBeTruthy = function() {
+157   return !!this.actual;
+158 };
+159 
+160 
+161 /**
+162  * Matcher that boolean nots the actual.
+163  */
+164 jasmine.Matchers.prototype.toBeFalsy = function() {
+165   return !this.actual;
+166 };
+167 
+168 
+169 /**
+170  * Matcher that checks to see if the actual, a Jasmine spy, was called.
+171  */
+172 jasmine.Matchers.prototype.toHaveBeenCalled = function() {
+173   if (arguments.length > 0) {
+174     throw new Error('toHaveBeenCalled does not take arguments, use toHaveBeenCalledWith');
+175   }
+176 
+177   if (!jasmine.isSpy(this.actual)) {
+178     throw new Error('Expected a spy, but got ' + jasmine.pp(this.actual) + '.');
+179   }
+180 
+181   this.message = function() {
+182     return [
+183       "Expected spy " + this.actual.identity + " to have been called.",
+184       "Expected spy " + this.actual.identity + " not to have been called."
+185     ];
+186   };
+187 
+188   return this.actual.wasCalled;
+189 };
+190 
+191 /** @deprecated Use expect(xxx).toHaveBeenCalled() instead */
+192 jasmine.Matchers.prototype.wasCalled = jasmine.Matchers.prototype.toHaveBeenCalled;
+193 
+194 /**
+195  * Matcher that checks to see if the actual, a Jasmine spy, was not called.
+196  *
+197  * @deprecated Use expect(xxx).not.toHaveBeenCalled() instead
+198  */
+199 jasmine.Matchers.prototype.wasNotCalled = function() {
+200   if (arguments.length > 0) {
+201     throw new Error('wasNotCalled does not take arguments');
+202   }
+203 
+204   if (!jasmine.isSpy(this.actual)) {
+205     throw new Error('Expected a spy, but got ' + jasmine.pp(this.actual) + '.');
+206   }
+207 
+208   this.message = function() {
+209     return [
+210       "Expected spy " + this.actual.identity + " to not have been called.",
+211       "Expected spy " + this.actual.identity + " to have been called."
+212     ];
+213   };
+214 
+215   return !this.actual.wasCalled;
+216 };
+217 
+218 /**
+219  * Matcher that checks to see if the actual, a Jasmine spy, was called with a set of parameters.
+220  *
+221  * @example
+222  *
+223  */
+224 jasmine.Matchers.prototype.toHaveBeenCalledWith = function() {
+225   var expectedArgs = jasmine.util.argsToArray(arguments);
+226   if (!jasmine.isSpy(this.actual)) {
+227     throw new Error('Expected a spy, but got ' + jasmine.pp(this.actual) + '.');
+228   }
+229   this.message = function() {
+230     if (this.actual.callCount == 0) {
+231       // todo: what should the failure message for .not.toHaveBeenCalledWith() be? is this right? test better. [xw]
+232       return [
+233         "Expected spy to have been called with " + jasmine.pp(expectedArgs) + " but it was never called.",
+234         "Expected spy not to have been called with " + jasmine.pp(expectedArgs) + " but it was."
+235       ];
+236     } else {
+237       return [
+238         "Expected spy to have been called with " + jasmine.pp(expectedArgs) + " but was called with " + jasmine.pp(this.actual.argsForCall),
+239         "Expected spy not to have been called with " + jasmine.pp(expectedArgs) + " but was called with " + jasmine.pp(this.actual.argsForCall)
+240       ];
+241     }
+242   };
+243 
+244   return this.env.contains_(this.actual.argsForCall, expectedArgs);
+245 };
+246 
+247 /** @deprecated Use expect(xxx).toHaveBeenCalledWith() instead */
+248 jasmine.Matchers.prototype.wasCalledWith = jasmine.Matchers.prototype.toHaveBeenCalledWith;
+249 
+250 /** @deprecated Use expect(xxx).not.toHaveBeenCalledWith() instead */
+251 jasmine.Matchers.prototype.wasNotCalledWith = function() {
+252   var expectedArgs = jasmine.util.argsToArray(arguments);
+253   if (!jasmine.isSpy(this.actual)) {
+254     throw new Error('Expected a spy, but got ' + jasmine.pp(this.actual) + '.');
+255   }
+256 
+257   this.message = function() {
+258     return [
+259       "Expected spy not to have been called with " + jasmine.pp(expectedArgs) + " but it was",
+260       "Expected spy to have been called with " + jasmine.pp(expectedArgs) + " but it was"
+261     ]
+262   };
+263 
+264   return !this.env.contains_(this.actual.argsForCall, expectedArgs);
+265 };
+266 
+267 /**
+268  * Matcher that checks that the expected item is an element in the actual Array.
+269  *
+270  * @param {Object} expected
+271  */
+272 jasmine.Matchers.prototype.toContain = function(expected) {
+273   return this.env.contains_(this.actual, expected);
+274 };
+275 
+276 /**
+277  * Matcher that checks that the expected item is NOT an element in the actual Array.
+278  *
+279  * @param {Object} expected
+280  * @deprecated as of 1.0. Use not.toNotContain() instead.
+281  */
+282 jasmine.Matchers.prototype.toNotContain = function(expected) {
+283   return !this.env.contains_(this.actual, expected);
+284 };
+285 
+286 jasmine.Matchers.prototype.toBeLessThan = function(expected) {
+287   return this.actual < expected;
+288 };
+289 
+290 jasmine.Matchers.prototype.toBeGreaterThan = function(expected) {
+291   return this.actual > expected;
+292 };
+293 
+294 /**
+295  * Matcher that checks that the expected exception was thrown by the actual.
+296  *
+297  * @param {String} expected
+298  */
+299 jasmine.Matchers.prototype.toThrow = function(expected) {
+300   var result = false;
+301   var exception;
+302   if (typeof this.actual != 'function') {
+303     throw new Error('Actual is not a function');
+304   }
+305   try {
+306     this.actual();
+307   } catch (e) {
+308     exception = e;
+309   }
+310   if (exception) {
+311     result = (expected === jasmine.undefined || this.env.equals_(exception.message || exception, expected.message || expected));
+312   }
+313 
+314   var not = this.isNot ? "not " : "";
+315 
+316   this.message = function() {
+317     if (exception && (expected === jasmine.undefined || !this.env.equals_(exception.message || exception, expected.message || expected))) {
+318       return ["Expected function " + not + "to throw", expected ? expected.message || expected : " an exception", ", but it threw", exception.message || exception].join(' ');
+319     } else {
+320       return "Expected function to throw an exception.";
+321     }
+322   };
+323 
+324   return result;
+325 };
+326 
+327 jasmine.Matchers.Any = function(expectedClass) {
+328   this.expectedClass = expectedClass;
+329 };
+330 
+331 jasmine.Matchers.Any.prototype.matches = function(other) {
+332   if (this.expectedClass == String) {
+333     return typeof other == 'string' || other instanceof String;
+334   }
+335 
+336   if (this.expectedClass == Number) {
+337     return typeof other == 'number' || other instanceof Number;
+338   }
+339 
+340   if (this.expectedClass == Function) {
+341     return typeof other == 'function' || other instanceof Function;
+342   }
+343 
+344   if (this.expectedClass == Object) {
+345     return typeof other == 'object';
+346   }
+347 
+348   return other instanceof this.expectedClass;
+349 };
+350 
+351 jasmine.Matchers.Any.prototype.toString = function() {
+352   return '<jasmine.any(' + this.expectedClass + ')>';
+353 };
+354 
+355 
\ No newline at end of file diff --git a/pages/jsdoc/symbols/src/src_MultiReporter.js.html b/pages/jsdoc/symbols/src/src_MultiReporter.js.html new file mode 100644 index 0000000..2316cea --- /dev/null +++ b/pages/jsdoc/symbols/src/src_MultiReporter.js.html @@ -0,0 +1,43 @@ +
  1 /**
+  2  * @constructor
+  3  */
+  4 jasmine.MultiReporter = function() {
+  5   this.subReporters_ = [];
+  6 };
+  7 jasmine.util.inherit(jasmine.MultiReporter, jasmine.Reporter);
+  8 
+  9 jasmine.MultiReporter.prototype.addReporter = function(reporter) {
+ 10   this.subReporters_.push(reporter);
+ 11 };
+ 12 
+ 13 (function() {
+ 14   var functionNames = [
+ 15     "reportRunnerStarting",
+ 16     "reportRunnerResults",
+ 17     "reportSuiteResults",
+ 18     "reportSpecStarting",
+ 19     "reportSpecResults",
+ 20     "log"
+ 21   ];
+ 22   for (var i = 0; i < functionNames.length; i++) {
+ 23     var functionName = functionNames[i];
+ 24     jasmine.MultiReporter.prototype[functionName] = (function(functionName) {
+ 25       return function() {
+ 26         for (var j = 0; j < this.subReporters_.length; j++) {
+ 27           var subReporter = this.subReporters_[j];
+ 28           if (subReporter[functionName]) {
+ 29             subReporter[functionName].apply(subReporter, arguments);
+ 30           }
+ 31         }
+ 32       };
+ 33     })(functionName);
+ 34   }
+ 35 })();
+ 36 
\ No newline at end of file diff --git a/pages/jsdoc/symbols/src/src_NestedResults.js.html b/pages/jsdoc/symbols/src/src_NestedResults.js.html new file mode 100644 index 0000000..7a9e82a --- /dev/null +++ b/pages/jsdoc/symbols/src/src_NestedResults.js.html @@ -0,0 +1,88 @@ +
  1 /**
+  2  * Holds results for a set of Jasmine spec. Allows for the results array to hold another jasmine.NestedResults
+  3  *
+  4  * @constructor
+  5  */
+  6 jasmine.NestedResults = function() {
+  7   /**
+  8    * The total count of results
+  9    */
+ 10   this.totalCount = 0;
+ 11   /**
+ 12    * Number of passed results
+ 13    */
+ 14   this.passedCount = 0;
+ 15   /**
+ 16    * Number of failed results
+ 17    */
+ 18   this.failedCount = 0;
+ 19   /**
+ 20    * Was this suite/spec skipped?
+ 21    */
+ 22   this.skipped = false;
+ 23   /**
+ 24    * @ignore
+ 25    */
+ 26   this.items_ = [];
+ 27 };
+ 28 
+ 29 /**
+ 30  * Roll up the result counts.
+ 31  *
+ 32  * @param result
+ 33  */
+ 34 jasmine.NestedResults.prototype.rollupCounts = function(result) {
+ 35   this.totalCount += result.totalCount;
+ 36   this.passedCount += result.passedCount;
+ 37   this.failedCount += result.failedCount;
+ 38 };
+ 39 
+ 40 /**
+ 41  * Adds a log message.
+ 42  * @param values Array of message parts which will be concatenated later.
+ 43  */
+ 44 jasmine.NestedResults.prototype.log = function(values) {
+ 45   this.items_.push(new jasmine.MessageResult(values));
+ 46 };
+ 47 
+ 48 /**
+ 49  * Getter for the results: message & results.
+ 50  */
+ 51 jasmine.NestedResults.prototype.getItems = function() {
+ 52   return this.items_;
+ 53 };
+ 54 
+ 55 /**
+ 56  * Adds a result, tracking counts (total, passed, & failed)
+ 57  * @param {jasmine.ExpectationResult|jasmine.NestedResults} result
+ 58  */
+ 59 jasmine.NestedResults.prototype.addResult = function(result) {
+ 60   if (result.type != 'log') {
+ 61     if (result.items_) {
+ 62       this.rollupCounts(result);
+ 63     } else {
+ 64       this.totalCount++;
+ 65       if (result.passed()) {
+ 66         this.passedCount++;
+ 67       } else {
+ 68         this.failedCount++;
+ 69       }
+ 70     }
+ 71   }
+ 72   this.items_.push(result);
+ 73 };
+ 74 
+ 75 /**
+ 76  * @returns {Boolean} True if <b>everything</b> below passed
+ 77  */
+ 78 jasmine.NestedResults.prototype.passed = function() {
+ 79   return this.passedCount === this.totalCount;
+ 80 };
+ 81 
\ No newline at end of file diff --git a/pages/jsdoc/symbols/src/src_PrettyPrinter.js.html b/pages/jsdoc/symbols/src/src_PrettyPrinter.js.html new file mode 100644 index 0000000..9e638b4 --- /dev/null +++ b/pages/jsdoc/symbols/src/src_PrettyPrinter.js.html @@ -0,0 +1,130 @@ +
  1 /**
+  2  * Base class for pretty printing for expectation results.
+  3  */
+  4 jasmine.PrettyPrinter = function() {
+  5   this.ppNestLevel_ = 0;
+  6 };
+  7 
+  8 /**
+  9  * Formats a value in a nice, human-readable string.
+ 10  *
+ 11  * @param value
+ 12  */
+ 13 jasmine.PrettyPrinter.prototype.format = function(value) {
+ 14   if (this.ppNestLevel_ > 40) {
+ 15     throw new Error('jasmine.PrettyPrinter: format() nested too deeply!');
+ 16   }
+ 17 
+ 18   this.ppNestLevel_++;
+ 19   try {
+ 20     if (value === jasmine.undefined) {
+ 21       this.emitScalar('undefined');
+ 22     } else if (value === null) {
+ 23       this.emitScalar('null');
+ 24     } else if (value === jasmine.getGlobal()) {
+ 25       this.emitScalar('<global>');
+ 26     } else if (value instanceof jasmine.Matchers.Any) {
+ 27       this.emitScalar(value.toString());
+ 28     } else if (typeof value === 'string') {
+ 29       this.emitString(value);
+ 30     } else if (jasmine.isSpy(value)) {
+ 31       this.emitScalar("spy on " + value.identity);
+ 32     } else if (value instanceof RegExp) {
+ 33       this.emitScalar(value.toString());
+ 34     } else if (typeof value === 'function') {
+ 35       this.emitScalar('Function');
+ 36     } else if (typeof value.nodeType === 'number') {
+ 37       this.emitScalar('HTMLNode');
+ 38     } else if (value instanceof Date) {
+ 39       this.emitScalar('Date(' + value + ')');
+ 40     } else if (value.__Jasmine_been_here_before__) {
+ 41       this.emitScalar('<circular reference: ' + (jasmine.isArray_(value) ? 'Array' : 'Object') + '>');
+ 42     } else if (jasmine.isArray_(value) || typeof value == 'object') {
+ 43       value.__Jasmine_been_here_before__ = true;
+ 44       if (jasmine.isArray_(value)) {
+ 45         this.emitArray(value);
+ 46       } else {
+ 47         this.emitObject(value);
+ 48       }
+ 49       delete value.__Jasmine_been_here_before__;
+ 50     } else {
+ 51       this.emitScalar(value.toString());
+ 52     }
+ 53   } finally {
+ 54     this.ppNestLevel_--;
+ 55   }
+ 56 };
+ 57 
+ 58 jasmine.PrettyPrinter.prototype.iterateObject = function(obj, fn) {
+ 59   for (var property in obj) {
+ 60     if (property == '__Jasmine_been_here_before__') continue;
+ 61     fn(property, obj.__lookupGetter__ ? (obj.__lookupGetter__(property) != null) : false);
+ 62   }
+ 63 };
+ 64 
+ 65 jasmine.PrettyPrinter.prototype.emitArray = jasmine.unimplementedMethod_;
+ 66 jasmine.PrettyPrinter.prototype.emitObject = jasmine.unimplementedMethod_;
+ 67 jasmine.PrettyPrinter.prototype.emitScalar = jasmine.unimplementedMethod_;
+ 68 jasmine.PrettyPrinter.prototype.emitString = jasmine.unimplementedMethod_;
+ 69 
+ 70 jasmine.StringPrettyPrinter = function() {
+ 71   jasmine.PrettyPrinter.call(this);
+ 72 
+ 73   this.string = '';
+ 74 };
+ 75 jasmine.util.inherit(jasmine.StringPrettyPrinter, jasmine.PrettyPrinter);
+ 76 
+ 77 jasmine.StringPrettyPrinter.prototype.emitScalar = function(value) {
+ 78   this.append(value);
+ 79 };
+ 80 
+ 81 jasmine.StringPrettyPrinter.prototype.emitString = function(value) {
+ 82   this.append("'" + value + "'");
+ 83 };
+ 84 
+ 85 jasmine.StringPrettyPrinter.prototype.emitArray = function(array) {
+ 86   this.append('[ ');
+ 87   for (var i = 0; i < array.length; i++) {
+ 88     if (i > 0) {
+ 89       this.append(', ');
+ 90     }
+ 91     this.format(array[i]);
+ 92   }
+ 93   this.append(' ]');
+ 94 };
+ 95 
+ 96 jasmine.StringPrettyPrinter.prototype.emitObject = function(obj) {
+ 97   var self = this;
+ 98   this.append('{ ');
+ 99   var first = true;
+100 
+101   this.iterateObject(obj, function(property, isGetter) {
+102     if (first) {
+103       first = false;
+104     } else {
+105       self.append(', ');
+106     }
+107 
+108     self.append(property);
+109     self.append(' : ');
+110     if (isGetter) {
+111       self.append('<getter>');
+112     } else {
+113       self.format(obj[property]);
+114     }
+115   });
+116 
+117   this.append(' }');
+118 };
+119 
+120 jasmine.StringPrettyPrinter.prototype.append = function(value) {
+121   this.string += value;
+122 };
+123 
\ No newline at end of file diff --git a/pages/jsdoc/symbols/src/src_Queue.js.html b/pages/jsdoc/symbols/src/src_Queue.js.html new file mode 100644 index 0000000..3e798fc --- /dev/null +++ b/pages/jsdoc/symbols/src/src_Queue.js.html @@ -0,0 +1,107 @@ +
  1 jasmine.Queue = function(env) {
+  2   this.env = env;
+  3   this.blocks = [];
+  4   this.running = false;
+  5   this.index = 0;
+  6   this.offset = 0;
+  7   this.abort = false;
+  8 };
+  9 
+ 10 jasmine.Queue.prototype.addBefore = function(block) {
+ 11   this.blocks.unshift(block);
+ 12 };
+ 13 
+ 14 jasmine.Queue.prototype.add = function(block) {
+ 15   this.blocks.push(block);
+ 16 };
+ 17 
+ 18 jasmine.Queue.prototype.insertNext = function(block) {
+ 19   this.blocks.splice((this.index + this.offset + 1), 0, block);
+ 20   this.offset++;
+ 21 };
+ 22 
+ 23 jasmine.Queue.prototype.start = function(onComplete) {
+ 24   this.running = true;
+ 25   this.onComplete = onComplete;
+ 26   this.next_();
+ 27 };
+ 28 
+ 29 jasmine.Queue.prototype.isRunning = function() {
+ 30   return this.running;
+ 31 };
+ 32 
+ 33 jasmine.Queue.LOOP_DONT_RECURSE = true;
+ 34 
+ 35 jasmine.Queue.prototype.next_ = function() {
+ 36   var self = this;
+ 37   var goAgain = true;
+ 38 
+ 39   while (goAgain) {
+ 40     goAgain = false;
+ 41     
+ 42     if (self.index < self.blocks.length && !this.abort) {
+ 43       var calledSynchronously = true;
+ 44       var completedSynchronously = false;
+ 45 
+ 46       var onComplete = function () {
+ 47         if (jasmine.Queue.LOOP_DONT_RECURSE && calledSynchronously) {
+ 48           completedSynchronously = true;
+ 49           return;
+ 50         }
+ 51 
+ 52         if (self.blocks[self.index].abort) {
+ 53           self.abort = true;
+ 54         }
+ 55 
+ 56         self.offset = 0;
+ 57         self.index++;
+ 58 
+ 59         var now = new Date().getTime();
+ 60         if (self.env.updateInterval && now - self.env.lastUpdate > self.env.updateInterval) {
+ 61           self.env.lastUpdate = now;
+ 62           self.env.setTimeout(function() {
+ 63             self.next_();
+ 64           }, 0);
+ 65         } else {
+ 66           if (jasmine.Queue.LOOP_DONT_RECURSE && completedSynchronously) {
+ 67             goAgain = true;
+ 68           } else {
+ 69             self.next_();
+ 70           }
+ 71         }
+ 72       };
+ 73       self.blocks[self.index].execute(onComplete);
+ 74 
+ 75       calledSynchronously = false;
+ 76       if (completedSynchronously) {
+ 77         onComplete();
+ 78       }
+ 79       
+ 80     } else {
+ 81       self.running = false;
+ 82       if (self.onComplete) {
+ 83         self.onComplete();
+ 84       }
+ 85     }
+ 86   }
+ 87 };
+ 88 
+ 89 jasmine.Queue.prototype.results = function() {
+ 90   var results = new jasmine.NestedResults();
+ 91   for (var i = 0; i < this.blocks.length; i++) {
+ 92     if (this.blocks[i].results) {
+ 93       results.addResult(this.blocks[i].results());
+ 94     }
+ 95   }
+ 96   return results;
+ 97 };
+ 98 
+ 99 
+100 
\ No newline at end of file diff --git a/pages/jsdoc/symbols/src/src_Reporter.js.html b/pages/jsdoc/symbols/src/src_Reporter.js.html new file mode 100644 index 0000000..f5a65df --- /dev/null +++ b/pages/jsdoc/symbols/src/src_Reporter.js.html @@ -0,0 +1,39 @@ +
  1 /** No-op base class for Jasmine reporters.
+  2  *
+  3  * @constructor
+  4  */
+  5 jasmine.Reporter = function() {
+  6 };
+  7 
+  8 //noinspection JSUnusedLocalSymbols
+  9 jasmine.Reporter.prototype.reportRunnerStarting = function(runner) {
+ 10 };
+ 11 
+ 12 //noinspection JSUnusedLocalSymbols
+ 13 jasmine.Reporter.prototype.reportRunnerResults = function(runner) {
+ 14 };
+ 15 
+ 16 //noinspection JSUnusedLocalSymbols
+ 17 jasmine.Reporter.prototype.reportSuiteResults = function(suite) {
+ 18 };
+ 19 
+ 20 //noinspection JSUnusedLocalSymbols
+ 21 jasmine.Reporter.prototype.reportSpecStarting = function(spec) {
+ 22 };
+ 23 
+ 24 //noinspection JSUnusedLocalSymbols
+ 25 jasmine.Reporter.prototype.reportSpecResults = function(spec) {
+ 26 };
+ 27 
+ 28 //noinspection JSUnusedLocalSymbols
+ 29 jasmine.Reporter.prototype.log = function(str) {
+ 30 };
+ 31 
+ 32 
\ No newline at end of file diff --git a/pages/jsdoc/symbols/src/src_Runner.js.html b/pages/jsdoc/symbols/src/src_Runner.js.html new file mode 100644 index 0000000..1bb191d --- /dev/null +++ b/pages/jsdoc/symbols/src/src_Runner.js.html @@ -0,0 +1,84 @@ +
  1 /**
+  2  * Runner
+  3  *
+  4  * @constructor
+  5  * @param {jasmine.Env} env
+  6  */
+  7 jasmine.Runner = function(env) {
+  8   var self = this;
+  9   self.env = env;
+ 10   self.queue = new jasmine.Queue(env);
+ 11   self.before_ = [];
+ 12   self.after_ = [];
+ 13   self.suites_ = [];
+ 14 };
+ 15 
+ 16 jasmine.Runner.prototype.execute = function() {
+ 17   var self = this;
+ 18   if (self.env.reporter.reportRunnerStarting) {
+ 19     self.env.reporter.reportRunnerStarting(this);
+ 20   }
+ 21   self.queue.start(function () {
+ 22     self.finishCallback();
+ 23   });
+ 24 };
+ 25 
+ 26 jasmine.Runner.prototype.beforeEach = function(beforeEachFunction) {
+ 27   beforeEachFunction.typeName = 'beforeEach';
+ 28   this.before_.splice(0,0,beforeEachFunction);
+ 29 };
+ 30 
+ 31 jasmine.Runner.prototype.afterEach = function(afterEachFunction) {
+ 32   afterEachFunction.typeName = 'afterEach';
+ 33   this.after_.splice(0,0,afterEachFunction);
+ 34 };
+ 35 
+ 36 
+ 37 jasmine.Runner.prototype.finishCallback = function() {
+ 38   this.env.reporter.reportRunnerResults(this);
+ 39 };
+ 40 
+ 41 jasmine.Runner.prototype.addSuite = function(suite) {
+ 42   this.suites_.push(suite);
+ 43 };
+ 44 
+ 45 jasmine.Runner.prototype.add = function(block) {
+ 46   if (block instanceof jasmine.Suite) {
+ 47     this.addSuite(block);
+ 48   }
+ 49   this.queue.add(block);
+ 50 };
+ 51 
+ 52 jasmine.Runner.prototype.specs = function () {
+ 53   var suites = this.suites();
+ 54   var specs = [];
+ 55   for (var i = 0; i < suites.length; i++) {
+ 56     specs = specs.concat(suites[i].specs());
+ 57   }
+ 58   return specs;
+ 59 };
+ 60 
+ 61 jasmine.Runner.prototype.suites = function() {
+ 62   return this.suites_;
+ 63 };
+ 64 
+ 65 jasmine.Runner.prototype.topLevelSuites = function() {
+ 66   var topLevelSuites = [];
+ 67   for (var i = 0; i < this.suites_.length; i++) {
+ 68     if (!this.suites_[i].parentSuite) {
+ 69       topLevelSuites.push(this.suites_[i]);
+ 70     }
+ 71   }
+ 72   return topLevelSuites;
+ 73 };
+ 74 
+ 75 jasmine.Runner.prototype.results = function() {
+ 76   return this.queue.results();
+ 77 };
\ No newline at end of file diff --git a/pages/jsdoc/symbols/src/src_Spec.js.html b/pages/jsdoc/symbols/src/src_Spec.js.html new file mode 100644 index 0000000..8d7ef7f --- /dev/null +++ b/pages/jsdoc/symbols/src/src_Spec.js.html @@ -0,0 +1,250 @@ +
  1 /**
+  2  * Internal representation of a Jasmine specification, or test.
+  3  *
+  4  * @constructor
+  5  * @param {jasmine.Env} env
+  6  * @param {jasmine.Suite} suite
+  7  * @param {String} description
+  8  */
+  9 jasmine.Spec = function(env, suite, description) {
+ 10   if (!env) {
+ 11     throw new Error('jasmine.Env() required');
+ 12   }
+ 13   if (!suite) {
+ 14     throw new Error('jasmine.Suite() required');
+ 15   }
+ 16   var spec = this;
+ 17   spec.id = env.nextSpecId ? env.nextSpecId() : null;
+ 18   spec.env = env;
+ 19   spec.suite = suite;
+ 20   spec.description = description;
+ 21   spec.queue = new jasmine.Queue(env);
+ 22 
+ 23   spec.afterCallbacks = [];
+ 24   spec.spies_ = [];
+ 25 
+ 26   spec.results_ = new jasmine.NestedResults();
+ 27   spec.results_.description = description;
+ 28   spec.matchersClass = null;
+ 29 };
+ 30 
+ 31 jasmine.Spec.prototype.getFullName = function() {
+ 32   return this.suite.getFullName() + ' ' + this.description + '.';
+ 33 };
+ 34 
+ 35 
+ 36 jasmine.Spec.prototype.results = function() {
+ 37   return this.results_;
+ 38 };
+ 39 
+ 40 /**
+ 41  * All parameters are pretty-printed and concatenated together, then written to the spec's output.
+ 42  *
+ 43  * Be careful not to leave calls to <code>jasmine.log</code> in production code.
+ 44  */
+ 45 jasmine.Spec.prototype.log = function() {
+ 46   return this.results_.log(arguments);
+ 47 };
+ 48 
+ 49 jasmine.Spec.prototype.runs = function (func) {
+ 50   var block = new jasmine.Block(this.env, func, this);
+ 51   this.addToQueue(block);
+ 52   return this;
+ 53 };
+ 54 
+ 55 jasmine.Spec.prototype.addToQueue = function (block) {
+ 56   if (this.queue.isRunning()) {
+ 57     this.queue.insertNext(block);
+ 58   } else {
+ 59     this.queue.add(block);
+ 60   }
+ 61 };
+ 62 
+ 63 /**
+ 64  * @param {jasmine.ExpectationResult} result
+ 65  */
+ 66 jasmine.Spec.prototype.addMatcherResult = function(result) {
+ 67   this.results_.addResult(result);
+ 68 };
+ 69 
+ 70 jasmine.Spec.prototype.expect = function(actual) {
+ 71   var positive = new (this.getMatchersClass_())(this.env, actual, this);
+ 72   positive.not = new (this.getMatchersClass_())(this.env, actual, this, true);
+ 73   return positive;
+ 74 };
+ 75 
+ 76 /**
+ 77  * Waits a fixed time period before moving to the next block.
+ 78  *
+ 79  * @deprecated Use waitsFor() instead
+ 80  * @param {Number} timeout milliseconds to wait
+ 81  */
+ 82 jasmine.Spec.prototype.waits = function(timeout) {
+ 83   var waitsFunc = new jasmine.WaitsBlock(this.env, timeout, this);
+ 84   this.addToQueue(waitsFunc);
+ 85   return this;
+ 86 };
+ 87 
+ 88 /**
+ 89  * Waits for the latchFunction to return true before proceeding to the next block.
+ 90  *
+ 91  * @param {Function} latchFunction
+ 92  * @param {String} optional_timeoutMessage
+ 93  * @param {Number} optional_timeout
+ 94  */
+ 95 jasmine.Spec.prototype.waitsFor = function(latchFunction, optional_timeoutMessage, optional_timeout) {
+ 96   var latchFunction_ = null;
+ 97   var optional_timeoutMessage_ = null;
+ 98   var optional_timeout_ = null;
+ 99 
+100   for (var i = 0; i < arguments.length; i++) {
+101     var arg = arguments[i];
+102     switch (typeof arg) {
+103       case 'function':
+104         latchFunction_ = arg;
+105         break;
+106       case 'string':
+107         optional_timeoutMessage_ = arg;
+108         break;
+109       case 'number':
+110         optional_timeout_ = arg;
+111         break;
+112     }
+113   }
+114 
+115   var waitsForFunc = new jasmine.WaitsForBlock(this.env, optional_timeout_, latchFunction_, optional_timeoutMessage_, this);
+116   this.addToQueue(waitsForFunc);
+117   return this;
+118 };
+119 
+120 jasmine.Spec.prototype.fail = function (e) {
+121   var expectationResult = new jasmine.ExpectationResult({
+122     passed: false,
+123     message: e ? jasmine.util.formatException(e) : 'Exception'
+124   });
+125   this.results_.addResult(expectationResult);
+126 };
+127 
+128 jasmine.Spec.prototype.getMatchersClass_ = function() {
+129   return this.matchersClass || this.env.matchersClass;
+130 };
+131 
+132 jasmine.Spec.prototype.addMatchers = function(matchersPrototype) {
+133   var parent = this.getMatchersClass_();
+134   var newMatchersClass = function() {
+135     parent.apply(this, arguments);
+136   };
+137   jasmine.util.inherit(newMatchersClass, parent);
+138   jasmine.Matchers.wrapInto_(matchersPrototype, newMatchersClass);
+139   this.matchersClass = newMatchersClass;
+140 };
+141 
+142 jasmine.Spec.prototype.finishCallback = function() {
+143   this.env.reporter.reportSpecResults(this);
+144 };
+145 
+146 jasmine.Spec.prototype.finish = function(onComplete) {
+147   this.removeAllSpies();
+148   this.finishCallback();
+149   if (onComplete) {
+150     onComplete();
+151   }
+152 };
+153 
+154 jasmine.Spec.prototype.after = function(doAfter) {
+155   if (this.queue.isRunning()) {
+156     this.queue.add(new jasmine.Block(this.env, doAfter, this));
+157   } else {
+158     this.afterCallbacks.unshift(doAfter);
+159   }
+160 };
+161 
+162 jasmine.Spec.prototype.execute = function(onComplete) {
+163   var spec = this;
+164   if (!spec.env.specFilter(spec)) {
+165     spec.results_.skipped = true;
+166     spec.finish(onComplete);
+167     return;
+168   }
+169 
+170   this.env.reporter.reportSpecStarting(this);
+171 
+172   spec.env.currentSpec = spec;
+173 
+174   spec.addBeforesAndAftersToQueue();
+175 
+176   spec.queue.start(function () {
+177     spec.finish(onComplete);
+178   });
+179 };
+180 
+181 jasmine.Spec.prototype.addBeforesAndAftersToQueue = function() {
+182   var runner = this.env.currentRunner();
+183   var i;
+184 
+185   for (var suite = this.suite; suite; suite = suite.parentSuite) {
+186     for (i = 0; i < suite.before_.length; i++) {
+187       this.queue.addBefore(new jasmine.Block(this.env, suite.before_[i], this));
+188     }
+189   }
+190   for (i = 0; i < runner.before_.length; i++) {
+191     this.queue.addBefore(new jasmine.Block(this.env, runner.before_[i], this));
+192   }
+193   for (i = 0; i < this.afterCallbacks.length; i++) {
+194     this.queue.add(new jasmine.Block(this.env, this.afterCallbacks[i], this));
+195   }
+196   for (suite = this.suite; suite; suite = suite.parentSuite) {
+197     for (i = 0; i < suite.after_.length; i++) {
+198       this.queue.add(new jasmine.Block(this.env, suite.after_[i], this));
+199     }
+200   }
+201   for (i = 0; i < runner.after_.length; i++) {
+202     this.queue.add(new jasmine.Block(this.env, runner.after_[i], this));
+203   }
+204 };
+205 
+206 jasmine.Spec.prototype.explodes = function() {
+207   throw 'explodes function should not have been called';
+208 };
+209 
+210 jasmine.Spec.prototype.spyOn = function(obj, methodName, ignoreMethodDoesntExist) {
+211   if (obj == jasmine.undefined) {
+212     throw "spyOn could not find an object to spy upon for " + methodName + "()";
+213   }
+214 
+215   if (!ignoreMethodDoesntExist && obj[methodName] === jasmine.undefined) {
+216     throw methodName + '() method does not exist';
+217   }
+218 
+219   if (!ignoreMethodDoesntExist && obj[methodName] && obj[methodName].isSpy) {
+220     throw new Error(methodName + ' has already been spied upon');
+221   }
+222 
+223   var spyObj = jasmine.createSpy(methodName);
+224 
+225   this.spies_.push(spyObj);
+226   spyObj.baseObj = obj;
+227   spyObj.methodName = methodName;
+228   spyObj.originalValue = obj[methodName];
+229 
+230   obj[methodName] = spyObj;
+231 
+232   return spyObj;
+233 };
+234 
+235 jasmine.Spec.prototype.removeAllSpies = function() {
+236   for (var i = 0; i < this.spies_.length; i++) {
+237     var spy = this.spies_[i];
+238     spy.baseObj[spy.methodName] = spy.originalValue;
+239   }
+240   this.spies_ = [];
+241 };
+242 
+243 
\ No newline at end of file diff --git a/pages/jsdoc/symbols/src/src_Suite.js.html b/pages/jsdoc/symbols/src/src_Suite.js.html new file mode 100644 index 0000000..3ff28ae --- /dev/null +++ b/pages/jsdoc/symbols/src/src_Suite.js.html @@ -0,0 +1,89 @@ +
  1 /**
+  2  * Internal representation of a Jasmine suite.
+  3  *
+  4  * @constructor
+  5  * @param {jasmine.Env} env
+  6  * @param {String} description
+  7  * @param {Function} specDefinitions
+  8  * @param {jasmine.Suite} parentSuite
+  9  */
+ 10 jasmine.Suite = function(env, description, specDefinitions, parentSuite) {
+ 11   var self = this;
+ 12   self.id = env.nextSuiteId ? env.nextSuiteId() : null;
+ 13   self.description = description;
+ 14   self.queue = new jasmine.Queue(env);
+ 15   self.parentSuite = parentSuite;
+ 16   self.env = env;
+ 17   self.before_ = [];
+ 18   self.after_ = [];
+ 19   self.children_ = [];
+ 20   self.suites_ = [];
+ 21   self.specs_ = [];
+ 22 };
+ 23 
+ 24 jasmine.Suite.prototype.getFullName = function() {
+ 25   var fullName = this.description;
+ 26   for (var parentSuite = this.parentSuite; parentSuite; parentSuite = parentSuite.parentSuite) {
+ 27     fullName = parentSuite.description + ' ' + fullName;
+ 28   }
+ 29   return fullName;
+ 30 };
+ 31 
+ 32 jasmine.Suite.prototype.finish = function(onComplete) {
+ 33   this.env.reporter.reportSuiteResults(this);
+ 34   this.finished = true;
+ 35   if (typeof(onComplete) == 'function') {
+ 36     onComplete();
+ 37   }
+ 38 };
+ 39 
+ 40 jasmine.Suite.prototype.beforeEach = function(beforeEachFunction) {
+ 41   beforeEachFunction.typeName = 'beforeEach';
+ 42   this.before_.unshift(beforeEachFunction);
+ 43 };
+ 44 
+ 45 jasmine.Suite.prototype.afterEach = function(afterEachFunction) {
+ 46   afterEachFunction.typeName = 'afterEach';
+ 47   this.after_.unshift(afterEachFunction);
+ 48 };
+ 49 
+ 50 jasmine.Suite.prototype.results = function() {
+ 51   return this.queue.results();
+ 52 };
+ 53 
+ 54 jasmine.Suite.prototype.add = function(suiteOrSpec) {
+ 55   this.children_.push(suiteOrSpec);
+ 56   if (suiteOrSpec instanceof jasmine.Suite) {
+ 57     this.suites_.push(suiteOrSpec);
+ 58     this.env.currentRunner().addSuite(suiteOrSpec);
+ 59   } else {
+ 60     this.specs_.push(suiteOrSpec);
+ 61   }
+ 62   this.queue.add(suiteOrSpec);
+ 63 };
+ 64 
+ 65 jasmine.Suite.prototype.specs = function() {
+ 66   return this.specs_;
+ 67 };
+ 68 
+ 69 jasmine.Suite.prototype.suites = function() {
+ 70   return this.suites_;
+ 71 };
+ 72 
+ 73 jasmine.Suite.prototype.children = function() {
+ 74   return this.children_;
+ 75 };
+ 76 
+ 77 jasmine.Suite.prototype.execute = function(onComplete) {
+ 78   var self = this;
+ 79   this.queue.start(function () {
+ 80     self.finish(onComplete);
+ 81   });
+ 82 };
\ No newline at end of file diff --git a/pages/jsdoc/symbols/src/src_WaitsBlock.js.html b/pages/jsdoc/symbols/src/src_WaitsBlock.js.html new file mode 100644 index 0000000..4a1f119 --- /dev/null +++ b/pages/jsdoc/symbols/src/src_WaitsBlock.js.html @@ -0,0 +1,21 @@ +
  1 jasmine.WaitsBlock = function(env, timeout, spec) {
+  2   this.timeout = timeout;
+  3   jasmine.Block.call(this, env, null, spec);
+  4 };
+  5 
+  6 jasmine.util.inherit(jasmine.WaitsBlock, jasmine.Block);
+  7 
+  8 jasmine.WaitsBlock.prototype.execute = function (onComplete) {
+  9   this.env.reporter.log('>> Jasmine waiting for ' + this.timeout + ' ms...');
+ 10   this.env.setTimeout(function () {
+ 11     onComplete();
+ 12   }, this.timeout);
+ 13 };
+ 14 
\ No newline at end of file diff --git a/pages/jsdoc/symbols/src/src_WaitsForBlock.js.html b/pages/jsdoc/symbols/src/src_WaitsForBlock.js.html new file mode 100644 index 0000000..5466ab4 --- /dev/null +++ b/pages/jsdoc/symbols/src/src_WaitsForBlock.js.html @@ -0,0 +1,59 @@ +
  1 /**
+  2  * A block which waits for some condition to become true, with timeout.
+  3  *
+  4  * @constructor
+  5  * @extends jasmine.Block
+  6  * @param {jasmine.Env} env The Jasmine environment.
+  7  * @param {Number} timeout The maximum time in milliseconds to wait for the condition to become true.
+  8  * @param {Function} latchFunction A function which returns true when the desired condition has been met.
+  9  * @param {String} message The message to display if the desired condition hasn't been met within the given time period.
+ 10  * @param {jasmine.Spec} spec The Jasmine spec.
+ 11  */
+ 12 jasmine.WaitsForBlock = function(env, timeout, latchFunction, message, spec) {
+ 13   this.timeout = timeout || env.defaultTimeoutInterval;
+ 14   this.latchFunction = latchFunction;
+ 15   this.message = message;
+ 16   this.totalTimeSpentWaitingForLatch = 0;
+ 17   jasmine.Block.call(this, env, null, spec);
+ 18 };
+ 19 jasmine.util.inherit(jasmine.WaitsForBlock, jasmine.Block);
+ 20 
+ 21 jasmine.WaitsForBlock.TIMEOUT_INCREMENT = 10;
+ 22 
+ 23 jasmine.WaitsForBlock.prototype.execute = function(onComplete) {
+ 24   this.env.reporter.log('>> Jasmine waiting for ' + (this.message || 'something to happen'));
+ 25   var latchFunctionResult;
+ 26   try {
+ 27     latchFunctionResult = this.latchFunction.apply(this.spec);
+ 28   } catch (e) {
+ 29     this.spec.fail(e);
+ 30     onComplete();
+ 31     return;
+ 32   }
+ 33 
+ 34   if (latchFunctionResult) {
+ 35     onComplete();
+ 36   } else if (this.totalTimeSpentWaitingForLatch >= this.timeout) {
+ 37     var message = 'timed out after ' + this.timeout + ' msec waiting for ' + (this.message || 'something to happen');
+ 38     this.spec.fail({
+ 39       name: 'timeout',
+ 40       message: message
+ 41     });
+ 42 
+ 43     this.abort = true;
+ 44     onComplete();
+ 45   } else {
+ 46     this.totalTimeSpentWaitingForLatch += jasmine.WaitsForBlock.TIMEOUT_INCREMENT;
+ 47     var self = this;
+ 48     this.env.setTimeout(function() {
+ 49       self.execute(onComplete);
+ 50     }, jasmine.WaitsForBlock.TIMEOUT_INCREMENT);
+ 51   }
+ 52 };
\ No newline at end of file diff --git a/pages/jsdoc/symbols/src/src_base.js.html b/pages/jsdoc/symbols/src/src_base.js.html new file mode 100644 index 0000000..33add32 --- /dev/null +++ b/pages/jsdoc/symbols/src/src_base.js.html @@ -0,0 +1,597 @@ +
  1 /**
+  2  * Top level namespace for Jasmine, a lightweight JavaScript BDD/spec/testing framework.
+  3  *
+  4  * @namespace
+  5  */
+  6 var jasmine = {};
+  7 
+  8 /**
+  9  * @private
+ 10  */
+ 11 jasmine.unimplementedMethod_ = function() {
+ 12   throw new Error("unimplemented method");
+ 13 };
+ 14 
+ 15 /**
+ 16  * Use <code>jasmine.undefined</code> instead of <code>undefined</code>, since <code>undefined</code> is just
+ 17  * a plain old variable and may be redefined by somebody else.
+ 18  *
+ 19  * @private
+ 20  */
+ 21 jasmine.undefined = jasmine.___undefined___;
+ 22 
+ 23 /**
+ 24  * Default interval in milliseconds for event loop yields (e.g. to allow network activity or to refresh the screen with the HTML-based runner). Small values here may result in slow test running. Zero means no updates until all tests have completed.
+ 25  *
+ 26  */
+ 27 jasmine.DEFAULT_UPDATE_INTERVAL = 250;
+ 28 
+ 29 /**
+ 30  * Default timeout interval in milliseconds for waitsFor() blocks.
+ 31  */
+ 32 jasmine.DEFAULT_TIMEOUT_INTERVAL = 5000;
+ 33 
+ 34 jasmine.getGlobal = function() {
+ 35   function getGlobal() {
+ 36     return this;
+ 37   }
+ 38 
+ 39   return getGlobal();
+ 40 };
+ 41 
+ 42 /**
+ 43  * Allows for bound functions to be compared.  Internal use only.
+ 44  *
+ 45  * @ignore
+ 46  * @private
+ 47  * @param base {Object} bound 'this' for the function
+ 48  * @param name {Function} function to find
+ 49  */
+ 50 jasmine.bindOriginal_ = function(base, name) {
+ 51   var original = base[name];
+ 52   if (original.apply) {
+ 53     return function() {
+ 54       return original.apply(base, arguments);
+ 55     };
+ 56   } else {
+ 57     // IE support
+ 58     return jasmine.getGlobal()[name];
+ 59   }
+ 60 };
+ 61 
+ 62 jasmine.setTimeout = jasmine.bindOriginal_(jasmine.getGlobal(), 'setTimeout');
+ 63 jasmine.clearTimeout = jasmine.bindOriginal_(jasmine.getGlobal(), 'clearTimeout');
+ 64 jasmine.setInterval = jasmine.bindOriginal_(jasmine.getGlobal(), 'setInterval');
+ 65 jasmine.clearInterval = jasmine.bindOriginal_(jasmine.getGlobal(), 'clearInterval');
+ 66 
+ 67 jasmine.MessageResult = function(values) {
+ 68   this.type = 'log';
+ 69   this.values = values;
+ 70   this.trace = new Error(); // todo: test better
+ 71 };
+ 72 
+ 73 jasmine.MessageResult.prototype.toString = function() {
+ 74   var text = "";
+ 75   for(var i = 0; i < this.values.length; i++) {
+ 76     if (i > 0) text += " ";
+ 77     if (jasmine.isString_(this.values[i])) {
+ 78       text += this.values[i];
+ 79     } else {
+ 80       text += jasmine.pp(this.values[i]);
+ 81     }
+ 82   }
+ 83   return text;
+ 84 };
+ 85 
+ 86 jasmine.ExpectationResult = function(params) {
+ 87   this.type = 'expect';
+ 88   this.matcherName = params.matcherName;
+ 89   this.passed_ = params.passed;
+ 90   this.expected = params.expected;
+ 91   this.actual = params.actual;
+ 92 
+ 93   this.message = this.passed_ ? 'Passed.' : params.message;
+ 94   this.trace = this.passed_ ? '' : new Error(this.message);
+ 95 };
+ 96 
+ 97 jasmine.ExpectationResult.prototype.toString = function () {
+ 98   return this.message;
+ 99 };
+100 
+101 jasmine.ExpectationResult.prototype.passed = function () {
+102   return this.passed_;
+103 };
+104 
+105 /**
+106  * Getter for the Jasmine environment. Ensures one gets created
+107  */
+108 jasmine.getEnv = function() {
+109   return jasmine.currentEnv_ = jasmine.currentEnv_ || new jasmine.Env();
+110 };
+111 
+112 /**
+113  * @ignore
+114  * @private
+115  * @param value
+116  * @returns {Boolean}
+117  */
+118 jasmine.isArray_ = function(value) {
+119   return jasmine.isA_("Array", value);  
+120 };
+121 
+122 /**
+123  * @ignore
+124  * @private
+125  * @param value
+126  * @returns {Boolean}
+127  */
+128 jasmine.isString_ = function(value) {
+129   return jasmine.isA_("String", value);
+130 };
+131 
+132 /**
+133  * @ignore
+134  * @private
+135  * @param value
+136  * @returns {Boolean}
+137  */
+138 jasmine.isNumber_ = function(value) {
+139   return jasmine.isA_("Number", value);
+140 };
+141 
+142 /**
+143  * @ignore
+144  * @private
+145  * @param {String} typeName
+146  * @param value
+147  * @returns {Boolean}
+148  */
+149 jasmine.isA_ = function(typeName, value) {
+150   return Object.prototype.toString.apply(value) === '[object ' + typeName + ']';
+151 };
+152 
+153 /**
+154  * Pretty printer for expecations.  Takes any object and turns it into a human-readable string.
+155  *
+156  * @param value {Object} an object to be outputted
+157  * @returns {String}
+158  */
+159 jasmine.pp = function(value) {
+160   var stringPrettyPrinter = new jasmine.StringPrettyPrinter();
+161   stringPrettyPrinter.format(value);
+162   return stringPrettyPrinter.string;
+163 };
+164 
+165 /**
+166  * Returns true if the object is a DOM Node.
+167  *
+168  * @param {Object} obj object to check
+169  * @returns {Boolean}
+170  */
+171 jasmine.isDomNode = function(obj) {
+172   return obj['nodeType'] > 0;
+173 };
+174 
+175 /**
+176  * Returns a matchable 'generic' object of the class type.  For use in expecations of type when values don't matter.
+177  *
+178  * @example
+179  * // don't care about which function is passed in, as long as it's a function
+180  * expect(mySpy).toHaveBeenCalledWith(jasmine.any(Function));
+181  *
+182  * @param {Class} clazz
+183  * @returns matchable object of the type clazz
+184  */
+185 jasmine.any = function(clazz) {
+186   return new jasmine.Matchers.Any(clazz);
+187 };
+188 
+189 /**
+190  * Jasmine Spies are test doubles that can act as stubs, spies, fakes or when used in an expecation, mocks.
+191  *
+192  * Spies should be created in test setup, before expectations.  They can then be checked, using the standard Jasmine
+193  * expectation syntax. Spies can be checked if they were called or not and what the calling params were.
+194  *
+195  * A Spy has the following fields: wasCalled, callCount, mostRecentCall, and argsForCall (see docs).
+196  *
+197  * Spies are torn down at the end of every spec.
+198  *
+199  * Note: Do <b>not</b> call new jasmine.Spy() directly - a spy must be created using spyOn, jasmine.createSpy or jasmine.createSpyObj.
+200  *
+201  * @example
+202  * // a stub
+203  * var myStub = jasmine.createSpy('myStub');  // can be used anywhere
+204  *
+205  * // spy example
+206  * var foo = {
+207  *   not: function(bool) { return !bool; }
+208  * }
+209  *
+210  * // actual foo.not will not be called, execution stops
+211  * spyOn(foo, 'not');
+212 
+213  // foo.not spied upon, execution will continue to implementation
+214  * spyOn(foo, 'not').andCallThrough();
+215  *
+216  * // fake example
+217  * var foo = {
+218  *   not: function(bool) { return !bool; }
+219  * }
+220  *
+221  * // foo.not(val) will return val
+222  * spyOn(foo, 'not').andCallFake(function(value) {return value;});
+223  *
+224  * // mock example
+225  * foo.not(7 == 7);
+226  * expect(foo.not).toHaveBeenCalled();
+227  * expect(foo.not).toHaveBeenCalledWith(true);
+228  *
+229  * @constructor
+230  * @see spyOn, jasmine.createSpy, jasmine.createSpyObj
+231  * @param {String} name
+232  */
+233 jasmine.Spy = function(name) {
+234   /**
+235    * The name of the spy, if provided.
+236    */
+237   this.identity = name || 'unknown';
+238   /**
+239    *  Is this Object a spy?
+240    */
+241   this.isSpy = true;
+242   /**
+243    * The actual function this spy stubs.
+244    */
+245   this.plan = function() {
+246   };
+247   /**
+248    * Tracking of the most recent call to the spy.
+249    * @example
+250    * var mySpy = jasmine.createSpy('foo');
+251    * mySpy(1, 2);
+252    * mySpy.mostRecentCall.args = [1, 2];
+253    */
+254   this.mostRecentCall = {};
+255 
+256   /**
+257    * Holds arguments for each call to the spy, indexed by call count
+258    * @example
+259    * var mySpy = jasmine.createSpy('foo');
+260    * mySpy(1, 2);
+261    * mySpy(7, 8);
+262    * mySpy.mostRecentCall.args = [7, 8];
+263    * mySpy.argsForCall[0] = [1, 2];
+264    * mySpy.argsForCall[1] = [7, 8];
+265    */
+266   this.argsForCall = [];
+267   this.calls = [];
+268 };
+269 
+270 /**
+271  * Tells a spy to call through to the actual implemenatation.
+272  *
+273  * @example
+274  * var foo = {
+275  *   bar: function() { // do some stuff }
+276  * }
+277  *
+278  * // defining a spy on an existing property: foo.bar
+279  * spyOn(foo, 'bar').andCallThrough();
+280  */
+281 jasmine.Spy.prototype.andCallThrough = function() {
+282   this.plan = this.originalValue;
+283   return this;
+284 };
+285 
+286 /**
+287  * For setting the return value of a spy.
+288  *
+289  * @example
+290  * // defining a spy from scratch: foo() returns 'baz'
+291  * var foo = jasmine.createSpy('spy on foo').andReturn('baz');
+292  *
+293  * // defining a spy on an existing property: foo.bar() returns 'baz'
+294  * spyOn(foo, 'bar').andReturn('baz');
+295  *
+296  * @param {Object} value
+297  */
+298 jasmine.Spy.prototype.andReturn = function(value) {
+299   this.plan = function() {
+300     return value;
+301   };
+302   return this;
+303 };
+304 
+305 /**
+306  * For throwing an exception when a spy is called.
+307  *
+308  * @example
+309  * // defining a spy from scratch: foo() throws an exception w/ message 'ouch'
+310  * var foo = jasmine.createSpy('spy on foo').andThrow('baz');
+311  *
+312  * // defining a spy on an existing property: foo.bar() throws an exception w/ message 'ouch'
+313  * spyOn(foo, 'bar').andThrow('baz');
+314  *
+315  * @param {String} exceptionMsg
+316  */
+317 jasmine.Spy.prototype.andThrow = function(exceptionMsg) {
+318   this.plan = function() {
+319     throw exceptionMsg;
+320   };
+321   return this;
+322 };
+323 
+324 /**
+325  * Calls an alternate implementation when a spy is called.
+326  *
+327  * @example
+328  * var baz = function() {
+329  *   // do some stuff, return something
+330  * }
+331  * // defining a spy from scratch: foo() calls the function baz
+332  * var foo = jasmine.createSpy('spy on foo').andCall(baz);
+333  *
+334  * // defining a spy on an existing property: foo.bar() calls an anonymnous function
+335  * spyOn(foo, 'bar').andCall(function() { return 'baz';} );
+336  *
+337  * @param {Function} fakeFunc
+338  */
+339 jasmine.Spy.prototype.andCallFake = function(fakeFunc) {
+340   this.plan = fakeFunc;
+341   return this;
+342 };
+343 
+344 /**
+345  * Resets all of a spy's the tracking variables so that it can be used again.
+346  *
+347  * @example
+348  * spyOn(foo, 'bar');
+349  *
+350  * foo.bar();
+351  *
+352  * expect(foo.bar.callCount).toEqual(1);
+353  *
+354  * foo.bar.reset();
+355  *
+356  * expect(foo.bar.callCount).toEqual(0);
+357  */
+358 jasmine.Spy.prototype.reset = function() {
+359   this.wasCalled = false;
+360   this.callCount = 0;
+361   this.argsForCall = [];
+362   this.calls = [];
+363   this.mostRecentCall = {};
+364 };
+365 
+366 jasmine.createSpy = function(name) {
+367 
+368   var spyObj = function() {
+369     spyObj.wasCalled = true;
+370     spyObj.callCount++;
+371     var args = jasmine.util.argsToArray(arguments);
+372     spyObj.mostRecentCall.object = this;
+373     spyObj.mostRecentCall.args = args;
+374     spyObj.argsForCall.push(args);
+375     spyObj.calls.push({object: this, args: args});
+376     return spyObj.plan.apply(this, arguments);
+377   };
+378 
+379   var spy = new jasmine.Spy(name);
+380 
+381   for (var prop in spy) {
+382     spyObj[prop] = spy[prop];
+383   }
+384 
+385   spyObj.reset();
+386 
+387   return spyObj;
+388 };
+389 
+390 /**
+391  * Determines whether an object is a spy.
+392  *
+393  * @param {jasmine.Spy|Object} putativeSpy
+394  * @returns {Boolean}
+395  */
+396 jasmine.isSpy = function(putativeSpy) {
+397   return putativeSpy && putativeSpy.isSpy;
+398 };
+399 
+400 /**
+401  * Creates a more complicated spy: an Object that has every property a function that is a spy.  Used for stubbing something
+402  * large in one call.
+403  *
+404  * @param {String} baseName name of spy class
+405  * @param {Array} methodNames array of names of methods to make spies
+406  */
+407 jasmine.createSpyObj = function(baseName, methodNames) {
+408   if (!jasmine.isArray_(methodNames) || methodNames.length == 0) {
+409     throw new Error('createSpyObj requires a non-empty array of method names to create spies for');
+410   }
+411   var obj = {};
+412   for (var i = 0; i < methodNames.length; i++) {
+413     obj[methodNames[i]] = jasmine.createSpy(baseName + '.' + methodNames[i]);
+414   }
+415   return obj;
+416 };
+417 
+418 /**
+419  * All parameters are pretty-printed and concatenated together, then written to the current spec's output.
+420  *
+421  * Be careful not to leave calls to <code>jasmine.log</code> in production code.
+422  */
+423 jasmine.log = function() {
+424   var spec = jasmine.getEnv().currentSpec;
+425   spec.log.apply(spec, arguments);
+426 };
+427 
+428 /**
+429  * Function that installs a spy on an existing object's method name.  Used within a Spec to create a spy.
+430  *
+431  * @example
+432  * // spy example
+433  * var foo = {
+434  *   not: function(bool) { return !bool; }
+435  * }
+436  * spyOn(foo, 'not'); // actual foo.not will not be called, execution stops
+437  *
+438  * @see jasmine.createSpy
+439  * @param obj
+440  * @param methodName
+441  * @returns a Jasmine spy that can be chained with all spy methods
+442  */
+443 var spyOn = function(obj, methodName) {
+444   return jasmine.getEnv().currentSpec.spyOn(obj, methodName);
+445 };
+446 
+447 /**
+448  * Creates a Jasmine spec that will be added to the current suite.
+449  *
+450  * // TODO: pending tests
+451  *
+452  * @example
+453  * it('should be true', function() {
+454  *   expect(true).toEqual(true);
+455  * });
+456  *
+457  * @param {String} desc description of this specification
+458  * @param {Function} func defines the preconditions and expectations of the spec
+459  */
+460 var it = function(desc, func) {
+461   return jasmine.getEnv().it(desc, func);
+462 };
+463 
+464 /**
+465  * Creates a <em>disabled</em> Jasmine spec.
+466  *
+467  * A convenience method that allows existing specs to be disabled temporarily during development.
+468  *
+469  * @param {String} desc description of this specification
+470  * @param {Function} func defines the preconditions and expectations of the spec
+471  */
+472 var xit = function(desc, func) {
+473   return jasmine.getEnv().xit(desc, func);
+474 };
+475 
+476 /**
+477  * Starts a chain for a Jasmine expectation.
+478  *
+479  * It is passed an Object that is the actual value and should chain to one of the many
+480  * jasmine.Matchers functions.
+481  *
+482  * @param {Object} actual Actual value to test against and expected value
+483  */
+484 var expect = function(actual) {
+485   return jasmine.getEnv().currentSpec.expect(actual);
+486 };
+487 
+488 /**
+489  * Defines part of a jasmine spec.  Used in cominbination with waits or waitsFor in asynchrnous specs.
+490  *
+491  * @param {Function} func Function that defines part of a jasmine spec.
+492  */
+493 var runs = function(func) {
+494   jasmine.getEnv().currentSpec.runs(func);
+495 };
+496 
+497 /**
+498  * Waits a fixed time period before moving to the next block.
+499  *
+500  * @deprecated Use waitsFor() instead
+501  * @param {Number} timeout milliseconds to wait
+502  */
+503 var waits = function(timeout) {
+504   jasmine.getEnv().currentSpec.waits(timeout);
+505 };
+506 
+507 /**
+508  * Waits for the latchFunction to return true before proceeding to the next block.
+509  *
+510  * @param {Function} latchFunction
+511  * @param {String} optional_timeoutMessage
+512  * @param {Number} optional_timeout
+513  */
+514 var waitsFor = function(latchFunction, optional_timeoutMessage, optional_timeout) {
+515   jasmine.getEnv().currentSpec.waitsFor.apply(jasmine.getEnv().currentSpec, arguments);
+516 };
+517 
+518 /**
+519  * A function that is called before each spec in a suite.
+520  *
+521  * Used for spec setup, including validating assumptions.
+522  *
+523  * @param {Function} beforeEachFunction
+524  */
+525 var beforeEach = function(beforeEachFunction) {
+526   jasmine.getEnv().beforeEach(beforeEachFunction);
+527 };
+528 
+529 /**
+530  * A function that is called after each spec in a suite.
+531  *
+532  * Used for restoring any state that is hijacked during spec execution.
+533  *
+534  * @param {Function} afterEachFunction
+535  */
+536 var afterEach = function(afterEachFunction) {
+537   jasmine.getEnv().afterEach(afterEachFunction);
+538 };
+539 
+540 /**
+541  * Defines a suite of specifications.
+542  *
+543  * Stores the description and all defined specs in the Jasmine environment as one suite of specs. Variables declared
+544  * are accessible by calls to beforeEach, it, and afterEach. Describe blocks can be nested, allowing for specialization
+545  * of setup in some tests.
+546  *
+547  * @example
+548  * // TODO: a simple suite
+549  *
+550  * // TODO: a simple suite with a nested describe block
+551  *
+552  * @param {String} description A string, usually the class under test.
+553  * @param {Function} specDefinitions function that defines several specs.
+554  */
+555 var describe = function(description, specDefinitions) {
+556   return jasmine.getEnv().describe(description, specDefinitions);
+557 };
+558 
+559 /**
+560  * Disables a suite of specifications.  Used to disable some suites in a file, or files, temporarily during development.
+561  *
+562  * @param {String} description A string, usually the class under test.
+563  * @param {Function} specDefinitions function that defines several specs.
+564  */
+565 var xdescribe = function(description, specDefinitions) {
+566   return jasmine.getEnv().xdescribe(description, specDefinitions);
+567 };
+568 
+569 
+570 // Provide the XMLHttpRequest class for IE 5.x-6.x:
+571 jasmine.XmlHttpRequest = (typeof XMLHttpRequest == "undefined") ? function() {
+572   try {
+573     return new ActiveXObject("Msxml2.XMLHTTP.6.0");
+574   } catch(e) {
+575   }
+576   try {
+577     return new ActiveXObject("Msxml2.XMLHTTP.3.0");
+578   } catch(e) {
+579   }
+580   try {
+581     return new ActiveXObject("Msxml2.XMLHTTP");
+582   } catch(e) {
+583   }
+584   try {
+585     return new ActiveXObject("Microsoft.XMLHTTP");
+586   } catch(e) {
+587   }
+588   throw new Error("This browser does not support XMLHttpRequest.");
+589 } : XMLHttpRequest;
+590 
\ No newline at end of file diff --git a/pages/jsdoc/symbols/src/src_html_TrivialReporter.js.html b/pages/jsdoc/symbols/src/src_html_TrivialReporter.js.html new file mode 100644 index 0000000..1f8915a --- /dev/null +++ b/pages/jsdoc/symbols/src/src_html_TrivialReporter.js.html @@ -0,0 +1,196 @@ +
  1 jasmine.TrivialReporter = function(doc) {
+  2   this.document = doc || document;
+  3   this.suiteDivs = {};
+  4   this.logRunningSpecs = false;
+  5 };
+  6 
+  7 jasmine.TrivialReporter.prototype.createDom = function(type, attrs, childrenVarArgs) {
+  8   var el = document.createElement(type);
+  9 
+ 10   for (var i = 2; i < arguments.length; i++) {
+ 11     var child = arguments[i];
+ 12 
+ 13     if (typeof child === 'string') {
+ 14       el.appendChild(document.createTextNode(child));
+ 15     } else {
+ 16       if (child) { el.appendChild(child); }
+ 17     }
+ 18   }
+ 19 
+ 20   for (var attr in attrs) {
+ 21     if (attr == "className") {
+ 22       el[attr] = attrs[attr];
+ 23     } else {
+ 24       el.setAttribute(attr, attrs[attr]);
+ 25     }
+ 26   }
+ 27 
+ 28   return el;
+ 29 };
+ 30 
+ 31 jasmine.TrivialReporter.prototype.reportRunnerStarting = function(runner) {
+ 32   var showPassed, showSkipped;
+ 33 
+ 34   this.outerDiv = this.createDom('div', { className: 'jasmine_reporter' },
+ 35       this.createDom('div', { className: 'banner' },
+ 36         this.createDom('div', { className: 'logo' },
+ 37             this.createDom('a', { href: 'http://pivotal.github.com/jasmine/', target: "_blank" }, "Jasmine"),
+ 38             this.createDom('span', { className: 'version' }, runner.env.versionString())),
+ 39         this.createDom('div', { className: 'options' },
+ 40             "Show ",
+ 41             showPassed = this.createDom('input', { id: "__jasmine_TrivialReporter_showPassed__", type: 'checkbox' }),
+ 42             this.createDom('label', { "for": "__jasmine_TrivialReporter_showPassed__" }, " passed "),
+ 43             showSkipped = this.createDom('input', { id: "__jasmine_TrivialReporter_showSkipped__", type: 'checkbox' }),
+ 44             this.createDom('label', { "for": "__jasmine_TrivialReporter_showSkipped__" }, " skipped")
+ 45             )
+ 46           ),
+ 47 
+ 48       this.runnerDiv = this.createDom('div', { className: 'runner running' },
+ 49           this.createDom('a', { className: 'run_spec', href: '?' }, "run all"),
+ 50           this.runnerMessageSpan = this.createDom('span', {}, "Running..."),
+ 51           this.finishedAtSpan = this.createDom('span', { className: 'finished-at' }, ""))
+ 52       );
+ 53 
+ 54   this.document.body.appendChild(this.outerDiv);
+ 55 
+ 56   var suites = runner.suites();
+ 57   for (var i = 0; i < suites.length; i++) {
+ 58     var suite = suites[i];
+ 59     var suiteDiv = this.createDom('div', { className: 'suite' },
+ 60         this.createDom('a', { className: 'run_spec', href: '?spec=' + encodeURIComponent(suite.getFullName()) }, "run"),
+ 61         this.createDom('a', { className: 'description', href: '?spec=' + encodeURIComponent(suite.getFullName()) }, suite.description));
+ 62     this.suiteDivs[suite.id] = suiteDiv;
+ 63     var parentDiv = this.outerDiv;
+ 64     if (suite.parentSuite) {
+ 65       parentDiv = this.suiteDivs[suite.parentSuite.id];
+ 66     }
+ 67     parentDiv.appendChild(suiteDiv);
+ 68   }
+ 69 
+ 70   this.startedAt = new Date();
+ 71 
+ 72   var self = this;
+ 73   showPassed.onclick = function(evt) {
+ 74     if (showPassed.checked) {
+ 75       self.outerDiv.className += ' show-passed';
+ 76     } else {
+ 77       self.outerDiv.className = self.outerDiv.className.replace(/ show-passed/, '');
+ 78     }
+ 79   };
+ 80 
+ 81   showSkipped.onclick = function(evt) {
+ 82     if (showSkipped.checked) {
+ 83       self.outerDiv.className += ' show-skipped';
+ 84     } else {
+ 85       self.outerDiv.className = self.outerDiv.className.replace(/ show-skipped/, '');
+ 86     }
+ 87   };
+ 88 };
+ 89 
+ 90 jasmine.TrivialReporter.prototype.reportRunnerResults = function(runner) {
+ 91   var results = runner.results();
+ 92   var className = (results.failedCount > 0) ? "runner failed" : "runner passed";
+ 93   this.runnerDiv.setAttribute("class", className);
+ 94   //do it twice for IE
+ 95   this.runnerDiv.setAttribute("className", className);
+ 96   var specs = runner.specs();
+ 97   var specCount = 0;
+ 98   for (var i = 0; i < specs.length; i++) {
+ 99     if (this.specFilter(specs[i])) {
+100       specCount++;
+101     }
+102   }
+103   var message = "" + specCount + " spec" + (specCount == 1 ? "" : "s" ) + ", " + results.failedCount + " failure" + ((results.failedCount == 1) ? "" : "s");
+104   message += " in " + ((new Date().getTime() - this.startedAt.getTime()) / 1000) + "s";
+105   this.runnerMessageSpan.replaceChild(this.createDom('a', { className: 'description', href: '?'}, message), this.runnerMessageSpan.firstChild);
+106 
+107   this.finishedAtSpan.appendChild(document.createTextNode("Finished at " + new Date().toString()));
+108 };
+109 
+110 jasmine.TrivialReporter.prototype.reportSuiteResults = function(suite) {
+111   var results = suite.results();
+112   var status = results.passed() ? 'passed' : 'failed';
+113   if (results.totalCount == 0) { // todo: change this to check results.skipped
+114     status = 'skipped';
+115   }
+116   this.suiteDivs[suite.id].className += " " + status;
+117 };
+118 
+119 jasmine.TrivialReporter.prototype.reportSpecStarting = function(spec) {
+120   if (this.logRunningSpecs) {
+121     this.log('>> Jasmine Running ' + spec.suite.description + ' ' + spec.description + '...');
+122   }
+123 };
+124 
+125 jasmine.TrivialReporter.prototype.reportSpecResults = function(spec) {
+126   var results = spec.results();
+127   var status = results.passed() ? 'passed' : 'failed';
+128   if (results.skipped) {
+129     status = 'skipped';
+130   }
+131   var specDiv = this.createDom('div', { className: 'spec '  + status },
+132       this.createDom('a', { className: 'run_spec', href: '?spec=' + encodeURIComponent(spec.getFullName()) }, "run"),
+133       this.createDom('a', {
+134         className: 'description',
+135         href: '?spec=' + encodeURIComponent(spec.getFullName()),
+136         title: spec.getFullName()
+137       }, spec.description));
+138 
+139 
+140   var resultItems = results.getItems();
+141   var messagesDiv = this.createDom('div', { className: 'messages' });
+142   for (var i = 0; i < resultItems.length; i++) {
+143     var result = resultItems[i];
+144 
+145     if (result.type == 'log') {
+146       messagesDiv.appendChild(this.createDom('div', {className: 'resultMessage log'}, result.toString()));
+147     } else if (result.type == 'expect' && result.passed && !result.passed()) {
+148       messagesDiv.appendChild(this.createDom('div', {className: 'resultMessage fail'}, result.message));
+149 
+150       if (result.trace.stack) {
+151         messagesDiv.appendChild(this.createDom('div', {className: 'stackTrace'}, result.trace.stack));
+152       }
+153     }
+154   }
+155 
+156   if (messagesDiv.childNodes.length > 0) {
+157     specDiv.appendChild(messagesDiv);
+158   }
+159 
+160   this.suiteDivs[spec.suite.id].appendChild(specDiv);
+161 };
+162 
+163 jasmine.TrivialReporter.prototype.log = function() {
+164   var console = jasmine.getGlobal().console;
+165   if (console && console.log) {
+166     if (console.log.apply) {
+167       console.log.apply(console, arguments);
+168     } else {
+169       console.log(arguments); // ie fix: console.log.apply doesn't exist on ie
+170     }
+171   }
+172 };
+173 
+174 jasmine.TrivialReporter.prototype.getLocation = function() {
+175   return this.document.location;
+176 };
+177 
+178 jasmine.TrivialReporter.prototype.specFilter = function(spec) {
+179   var paramMap = {};
+180   var params = this.getLocation().search.substring(1).split('&');
+181   for (var i = 0; i < params.length; i++) {
+182     var p = params[i].split('=');
+183     paramMap[decodeURIComponent(p[0])] = decodeURIComponent(p[1]);
+184   }
+185 
+186   if (!paramMap["spec"]) return true;
+187   return spec.getFullName().indexOf(paramMap["spec"]) == 0;
+188 };
+189 
\ No newline at end of file diff --git a/pages/jsdoc/symbols/src/src_mock-timeout.js.html b/pages/jsdoc/symbols/src/src_mock-timeout.js.html new file mode 100644 index 0000000..93f9afc --- /dev/null +++ b/pages/jsdoc/symbols/src/src_mock-timeout.js.html @@ -0,0 +1,191 @@ +
  1 // Mock setTimeout, clearTimeout
+  2 // Contributed by Pivotal Computer Systems, www.pivotalsf.com
+  3 
+  4 jasmine.FakeTimer = function() {
+  5   this.reset();
+  6 
+  7   var self = this;
+  8   self.setTimeout = function(funcToCall, millis) {
+  9     self.timeoutsMade++;
+ 10     self.scheduleFunction(self.timeoutsMade, funcToCall, millis, false);
+ 11     return self.timeoutsMade;
+ 12   };
+ 13 
+ 14   self.setInterval = function(funcToCall, millis) {
+ 15     self.timeoutsMade++;
+ 16     self.scheduleFunction(self.timeoutsMade, funcToCall, millis, true);
+ 17     return self.timeoutsMade;
+ 18   };
+ 19 
+ 20   self.clearTimeout = function(timeoutKey) {
+ 21     self.scheduledFunctions[timeoutKey] = jasmine.undefined;
+ 22   };
+ 23 
+ 24   self.clearInterval = function(timeoutKey) {
+ 25     self.scheduledFunctions[timeoutKey] = jasmine.undefined;
+ 26   };
+ 27 
+ 28 };
+ 29 
+ 30 jasmine.FakeTimer.prototype.reset = function() {
+ 31   this.timeoutsMade = 0;
+ 32   this.scheduledFunctions = {};
+ 33   this.nowMillis = 0;
+ 34 };
+ 35 
+ 36 jasmine.FakeTimer.prototype.tick = function(millis) {
+ 37   var oldMillis = this.nowMillis;
+ 38   var newMillis = oldMillis + millis;
+ 39   this.runFunctionsWithinRange(oldMillis, newMillis);
+ 40   this.nowMillis = newMillis;
+ 41 };
+ 42 
+ 43 jasmine.FakeTimer.prototype.runFunctionsWithinRange = function(oldMillis, nowMillis) {
+ 44   var scheduledFunc;
+ 45   var funcsToRun = [];
+ 46   for (var timeoutKey in this.scheduledFunctions) {
+ 47     scheduledFunc = this.scheduledFunctions[timeoutKey];
+ 48     if (scheduledFunc != jasmine.undefined &&
+ 49         scheduledFunc.runAtMillis >= oldMillis &&
+ 50         scheduledFunc.runAtMillis <= nowMillis) {
+ 51       funcsToRun.push(scheduledFunc);
+ 52       this.scheduledFunctions[timeoutKey] = jasmine.undefined;
+ 53     }
+ 54   }
+ 55 
+ 56   if (funcsToRun.length > 0) {
+ 57     funcsToRun.sort(function(a, b) {
+ 58       return a.runAtMillis - b.runAtMillis;
+ 59     });
+ 60     for (var i = 0; i < funcsToRun.length; ++i) {
+ 61       try {
+ 62         var funcToRun = funcsToRun[i];
+ 63         this.nowMillis = funcToRun.runAtMillis;
+ 64         funcToRun.funcToCall();
+ 65         if (funcToRun.recurring) {
+ 66           this.scheduleFunction(funcToRun.timeoutKey,
+ 67               funcToRun.funcToCall,
+ 68               funcToRun.millis,
+ 69               true);
+ 70         }
+ 71       } catch(e) {
+ 72       }
+ 73     }
+ 74     this.runFunctionsWithinRange(oldMillis, nowMillis);
+ 75   }
+ 76 };
+ 77 
+ 78 jasmine.FakeTimer.prototype.scheduleFunction = function(timeoutKey, funcToCall, millis, recurring) {
+ 79   this.scheduledFunctions[timeoutKey] = {
+ 80     runAtMillis: this.nowMillis + millis,
+ 81     funcToCall: funcToCall,
+ 82     recurring: recurring,
+ 83     timeoutKey: timeoutKey,
+ 84     millis: millis
+ 85   };
+ 86 };
+ 87 
+ 88 /**
+ 89  * @namespace
+ 90  */
+ 91 jasmine.Clock = {
+ 92   defaultFakeTimer: new jasmine.FakeTimer(),
+ 93 
+ 94   reset: function() {
+ 95     jasmine.Clock.assertInstalled();
+ 96     jasmine.Clock.defaultFakeTimer.reset();
+ 97   },
+ 98 
+ 99   tick: function(millis) {
+100     jasmine.Clock.assertInstalled();
+101     jasmine.Clock.defaultFakeTimer.tick(millis);
+102   },
+103 
+104   runFunctionsWithinRange: function(oldMillis, nowMillis) {
+105     jasmine.Clock.defaultFakeTimer.runFunctionsWithinRange(oldMillis, nowMillis);
+106   },
+107 
+108   scheduleFunction: function(timeoutKey, funcToCall, millis, recurring) {
+109     jasmine.Clock.defaultFakeTimer.scheduleFunction(timeoutKey, funcToCall, millis, recurring);
+110   },
+111 
+112   useMock: function() {
+113     if (!jasmine.Clock.isInstalled()) {
+114       var spec = jasmine.getEnv().currentSpec;
+115       spec.after(jasmine.Clock.uninstallMock);
+116 
+117       jasmine.Clock.installMock();
+118     }
+119   },
+120 
+121   installMock: function() {
+122     jasmine.Clock.installed = jasmine.Clock.defaultFakeTimer;
+123   },
+124 
+125   uninstallMock: function() {
+126     jasmine.Clock.assertInstalled();
+127     jasmine.Clock.installed = jasmine.Clock.real;
+128   },
+129 
+130   real: {
+131     setTimeout: jasmine.getGlobal().setTimeout,
+132     clearTimeout: jasmine.getGlobal().clearTimeout,
+133     setInterval: jasmine.getGlobal().setInterval,
+134     clearInterval: jasmine.getGlobal().clearInterval
+135   },
+136 
+137   assertInstalled: function() {
+138     if (!jasmine.Clock.isInstalled()) {
+139       throw new Error("Mock clock is not installed, use jasmine.Clock.useMock()");
+140     }
+141   },
+142 
+143   isInstalled: function() {
+144     return jasmine.Clock.installed == jasmine.Clock.defaultFakeTimer;
+145   },
+146 
+147   installed: null
+148 };
+149 jasmine.Clock.installed = jasmine.Clock.real;
+150 
+151 //else for IE support
+152 jasmine.getGlobal().setTimeout = function(funcToCall, millis) {
+153   if (jasmine.Clock.installed.setTimeout.apply) {
+154     return jasmine.Clock.installed.setTimeout.apply(this, arguments);
+155   } else {
+156     return jasmine.Clock.installed.setTimeout(funcToCall, millis);
+157   }
+158 };
+159 
+160 jasmine.getGlobal().setInterval = function(funcToCall, millis) {
+161   if (jasmine.Clock.installed.setInterval.apply) {
+162     return jasmine.Clock.installed.setInterval.apply(this, arguments);
+163   } else {
+164     return jasmine.Clock.installed.setInterval(funcToCall, millis);
+165   }
+166 };
+167 
+168 jasmine.getGlobal().clearTimeout = function(timeoutKey) {
+169   if (jasmine.Clock.installed.clearTimeout.apply) {
+170     return jasmine.Clock.installed.clearTimeout.apply(this, arguments);
+171   } else {
+172     return jasmine.Clock.installed.clearTimeout(timeoutKey);
+173   }
+174 };
+175 
+176 jasmine.getGlobal().clearInterval = function(timeoutKey) {
+177   if (jasmine.Clock.installed.clearTimeout.apply) {
+178     return jasmine.Clock.installed.clearInterval.apply(this, arguments);
+179   } else {
+180     return jasmine.Clock.installed.clearInterval(timeoutKey);
+181   }
+182 };
+183 
+184 
\ No newline at end of file diff --git a/pages/jsdoc/symbols/src/src_util.js.html b/pages/jsdoc/symbols/src/src_util.js.html new file mode 100644 index 0000000..31f3e27 --- /dev/null +++ b/pages/jsdoc/symbols/src/src_util.js.html @@ -0,0 +1,75 @@ +
  1 /**
+  2  * @namespace
+  3  */
+  4 jasmine.util = {};
+  5 
+  6 /**
+  7  * Declare that a child class inherit it's prototype from the parent class.
+  8  *
+  9  * @private
+ 10  * @param {Function} childClass
+ 11  * @param {Function} parentClass
+ 12  */
+ 13 jasmine.util.inherit = function(childClass, parentClass) {
+ 14   /**
+ 15    * @private
+ 16    */
+ 17   var subclass = function() {
+ 18   };
+ 19   subclass.prototype = parentClass.prototype;
+ 20   childClass.prototype = new subclass;
+ 21 };
+ 22 
+ 23 jasmine.util.formatException = function(e) {
+ 24   var lineNumber;
+ 25   if (e.line) {
+ 26     lineNumber = e.line;
+ 27   }
+ 28   else if (e.lineNumber) {
+ 29     lineNumber = e.lineNumber;
+ 30   }
+ 31 
+ 32   var file;
+ 33 
+ 34   if (e.sourceURL) {
+ 35     file = e.sourceURL;
+ 36   }
+ 37   else if (e.fileName) {
+ 38     file = e.fileName;
+ 39   }
+ 40 
+ 41   var message = (e.name && e.message) ? (e.name + ': ' + e.message) : e.toString();
+ 42 
+ 43   if (file && lineNumber) {
+ 44     message += ' in ' + file + ' (line ' + lineNumber + ')';
+ 45   }
+ 46 
+ 47   return message;
+ 48 };
+ 49 
+ 50 jasmine.util.htmlEscape = function(str) {
+ 51   if (!str) return str;
+ 52   return str.replace(/&/g, '&')
+ 53     .replace(/</g, '<')
+ 54     .replace(/>/g, '>');
+ 55 };
+ 56 
+ 57 jasmine.util.argsToArray = function(args) {
+ 58   var arrayOfArgs = [];
+ 59   for (var i = 0; i < args.length; i++) arrayOfArgs.push(args[i]);
+ 60   return arrayOfArgs;
+ 61 };
+ 62 
+ 63 jasmine.util.extend = function(destination, source) {
+ 64   for (var property in source) destination[property] = source[property];
+ 65   return destination;
+ 66 };
+ 67 
+ 68 
\ No newline at end of file diff --git a/pages/pages_source/dynamic/_download_item.haml b/pages/pages_source/dynamic/_download_item.haml new file mode 100644 index 0000000..311e56d --- /dev/null +++ b/pages/pages_source/dynamic/_download_item.haml @@ -0,0 +1,7 @@ +%tr{ :class => rc } + %td.link + %a{ :href => "/jasmine/downloads/#{filename}"}= filename + %td.version= version + %td.size= size + %td.date= date + %td.sha= sha \ No newline at end of file diff --git a/pages/pages_source/dynamic/download.haml b/pages/pages_source/dynamic/download.haml new file mode 100644 index 0000000..cea8125 --- /dev/null +++ b/pages/pages_source/dynamic/download.haml @@ -0,0 +1,24 @@ + +.copy + These files are for the standalone release, meant for inclusion on a static HTML page and manual management of files. + +.copy + For a using Jasmine with Ruby on Rails, other Ruby frameworks, within continuous integration environments, or to gain more dynamic source and test file loading, see + %a{ :href => "http://github.com/pivotal/jasmine/wiki" } Using the Jasmine Gem + = "." + +%table#standalone-downloads + %tr + %th + %th Version + %th Size + %th Date + %th SHA1 + + - downloads.each do |d| + = render_partial "download_item", :filename => d[:filename], + :version => d[:version], + :rc => d[:rc], + :size => d[:size], + :date => d[:date], + :sha => d[:sha] \ No newline at end of file diff --git a/pages/pages_source/dynamic/index.haml b/pages/pages_source/dynamic/index.haml new file mode 100644 index 0000000..f6bd3cb --- /dev/null +++ b/pages/pages_source/dynamic/index.haml @@ -0,0 +1,48 @@ +.copy + Jasmine is a behavior-driven development framework for testing your JavaScript code. It does not depend on any other + JavaScript frameworks. It does not require a DOM. And it has a clean, obvious syntax so that you can easily write tests. + +.highlight + %pre + %code.javascript= jasmine_snippet + +.copy + Jasmine can be run anywhere you can execute JavaScript: a static web page, your continuous integration environment, | + or server-side environments like + %a{:target => '_blank', :href => "httpe://nodejs.org"} Node.js + = '.' + +.copy + Find out more in the + %a{:target => '_blank', :href => "http://github.com/pivotal/jasmine/wiki"} documentation + = '.' + +%h2 Downloads + +%ul + %li + %a{:target => '_blank', :href => "download.html"} Standalone + %li + %a{:target => '_blank', :href => "http://github.com/pivotal/jasmine/wiki/A-ruby-project"} Jasmine Ruby Gem + for Rails, Ruby, or Ruby-friendly development + %li + %a{:target => '_blank', :href => "http://github.com/pivotal/jasmine/wiki"} Other environments + Node.js, Maven, etc. + +%h2 Support + +%ul + %li + %a{:target => '_blank', :href => "jsdoc/index.html"} API Documentation + %li + %a{:target => '_blank', :href => "http://groups.google.com/group/jasmine-js"} Google Group for email list: + %a{:target => '_blank', :href => "mailto:jasmine-js@googlegroups.com"} jasmine-js@googlegroups.com + %li + %a{:target => '_blank', :href => "http://ci.pivotallabs.com"} Current Build Status + %li + %a{:target => '_blank', :href => "http://github.com/pivotal/jasmine/issues"} Report bugs at Github + %li + %a{:target => '_blank', :href => "http://www.pivotaltracker.com/projects/10606"} Project Backlog at Pivotal Tracker + %li + %img{:src => "http://twitter-badges.s3.amazonaws.com/t_mini-c.png"} + %a{:target => '_blank', :href => "http://twitter.com/JasmineBDD"} Follow @JasmineBDD on Twitter \ No newline at end of file diff --git a/pages/pages_source/helpers.rb b/pages/pages_source/helpers.rb new file mode 100644 index 0000000..e0c85d7 --- /dev/null +++ b/pages/pages_source/helpers.rb @@ -0,0 +1,25 @@ +module FrankHelpers + def jasmine_snippet + "describe("Jasmine", function() { + it("makes testing JavaScript awesome!", function() { + expect(yourCode).toBeLotsBetter(); + }); +});" + end + + def downloads + require 'digest/sha1' + + Dir.glob('../downloads/*.zip').sort.reverse.collect do |f| + item = {} + item[:filename] = File.basename(f) + item[:version] = /jasmine-standalone-(.*).zip/.match(f)[1] + item[:rc] = /\.rc/.match(f) ? 'rc' : '' + item[:size] = "#{File.size(f) / 1024}k" + item[:date] = File.mtime(f).strftime("%Y/%m/%d %H:%M:%S %Z") + item[:sha] = Digest::SHA1.hexdigest File.read(f) + item + end + end + +end \ No newline at end of file diff --git a/pages/pages_source/layouts/default.haml b/pages/pages_source/layouts/default.haml new file mode 100644 index 0000000..0527e3a --- /dev/null +++ b/pages/pages_source/layouts/default.haml @@ -0,0 +1,18 @@ +!!! +%head + %meta{:charset => "utf-8"} + %title + = "Jasmine: BDD for your JavaScript" + %link{ :rel => "shortcut icon", :type => "image/x-icon", :href =>"favicon.ico" } + %link{ :rel => "stylesheet", :type => "text/css", :media => "screen, projection", :href => "/jasmine/css/screen.css" } + %link{ :rel => "stylesheet", :type => "text/css", :media => "screen, projection", :href => "/jasmine/css/pygments.css" } +%body + %img.github{ :style => "position: absolute; top: 0; right: 0; border: 0;", :src => "http://s3.amazonaws.com/github/ribbons/forkme_right_darkblue_121621.png", :alt => "Fork me on GitHub" } + .banner + %img{ :src => "/jasmine/images/jasmine_logo.png", :alt => "Jasmine: BDD for your JavaScript" } + %h3 BDD for JavaScript + %section{ :class => "content" }= yield + %hr + %span.small Powered by   + %a{ :href => "http://pivotallabs.com" , :target => '_blank' } + %img{ :src => "/jasmine/images/pivotal_logo.gif", :alt => "Pivotal Labs, Inc." } diff --git a/pages/pages_source/out/css/960gs/960.css b/pages/pages_source/out/css/960gs/960.css new file mode 100644 index 0000000..bdfa213 --- /dev/null +++ b/pages/pages_source/out/css/960gs/960.css @@ -0,0 +1 @@ +.container_12,.container_16{margin-left:auto;margin-right:auto;width:960px}.grid_1,.grid_2,.grid_3,.grid_4,.grid_5,.grid_6,.grid_7,.grid_8,.grid_9,.grid_10,.grid_11,.grid_12,.grid_13,.grid_14,.grid_15,.grid_16{display:inline;float:left;position:relative;margin-left:10px;margin-right:10px}.container_12 .grid_3,.container_16 .grid_4{width:220px}.container_12 .grid_6,.container_16 .grid_8{width:460px}.container_12 .grid_9,.container_16 .grid_12{width:700px}.container_12 .grid_12,.container_16 .grid_16{width:940px}.alpha{margin-left:0}.omega{margin-right:0}.container_12 .grid_1{width:60px}.container_12 .grid_2{width:140px}.container_12 .grid_4{width:300px}.container_12 .grid_5{width:380px}.container_12 .grid_7{width:540px}.container_12 .grid_8{width:620px}.container_12 .grid_10{width:780px}.container_12 .grid_11{width:860px}.container_16 .grid_1{width:40px}.container_16 .grid_2{width:100px}.container_16 .grid_3{width:160px}.container_16 .grid_5{width:280px}.container_16 .grid_6{width:340px}.container_16 .grid_7{width:400px}.container_16 .grid_9{width:520px}.container_16 .grid_10{width:580px}.container_16 .grid_11{width:640px}.container_16 .grid_13{width:760px}.container_16 .grid_14{width:820px}.container_16 .grid_15{width:880px}.container_12 .prefix_3,.container_16 .prefix_4{padding-left:240px}.container_12 .prefix_6,.container_16 .prefix_8{padding-left:480px}.container_12 .prefix_9,.container_16 .prefix_12{padding-left:720px}.container_12 .prefix_1{padding-left:80px}.container_12 .prefix_2{padding-left:160px}.container_12 .prefix_4{padding-left:320px}.container_12 .prefix_5{padding-left:400px}.container_12 .prefix_7{padding-left:560px}.container_12 .prefix_8{padding-left:640px}.container_12 .prefix_10{padding-left:800px}.container_12 .prefix_11{padding-left:880px}.container_16 .prefix_1{padding-left:60px}.container_16 .prefix_2{padding-left:120px}.container_16 .prefix_3{padding-left:180px}.container_16 .prefix_5{padding-left:300px}.container_16 .prefix_6{padding-left:360px}.container_16 .prefix_7{padding-left:420px}.container_16 .prefix_9{padding-left:540px}.container_16 .prefix_10{padding-left:600px}.container_16 .prefix_11{padding-left:660px}.container_16 .prefix_13{padding-left:780px}.container_16 .prefix_14{padding-left:840px}.container_16 .prefix_15{padding-left:900px}.container_12 .suffix_3,.container_16 .suffix_4{padding-right:240px}.container_12 .suffix_6,.container_16 .suffix_8{padding-right:480px}.container_12 .suffix_9,.container_16 .suffix_12{padding-right:720px}.container_12 .suffix_1{padding-right:80px}.container_12 .suffix_2{padding-right:160px}.container_12 .suffix_4{padding-right:320px}.container_12 .suffix_5{padding-right:400px}.container_12 .suffix_7{padding-right:560px}.container_12 .suffix_8{padding-right:640px}.container_12 .suffix_10{padding-right:800px}.container_12 .suffix_11{padding-right:880px}.container_16 .suffix_1{padding-right:60px}.container_16 .suffix_2{padding-right:120px}.container_16 .suffix_3{padding-right:180px}.container_16 .suffix_5{padding-right:300px}.container_16 .suffix_6{padding-right:360px}.container_16 .suffix_7{padding-right:420px}.container_16 .suffix_9{padding-right:540px}.container_16 .suffix_10{padding-right:600px}.container_16 .suffix_11{padding-right:660px}.container_16 .suffix_13{padding-right:780px}.container_16 .suffix_14{padding-right:840px}.container_16 .suffix_15{padding-right:900px}.container_12 .push_3,.container_16 .push_4{left:240px}.container_12 .push_6,.container_16 .push_8{left:480px}.container_12 .push_9,.container_16 .push_12{left:720px}.container_12 .push_1{left:80px}.container_12 .push_2{left:160px}.container_12 .push_4{left:320px}.container_12 .push_5{left:400px}.container_12 .push_7{left:560px}.container_12 .push_8{left:640px}.container_12 .push_10{left:800px}.container_12 .push_11{left:880px}.container_16 .push_1{left:60px}.container_16 .push_2{left:120px}.container_16 .push_3{left:180px}.container_16 .push_5{left:300px}.container_16 .push_6{left:360px}.container_16 .push_7{left:420px}.container_16 .push_9{left:540px}.container_16 .push_10{left:600px}.container_16 .push_11{left:660px}.container_16 .push_13{left:780px}.container_16 .push_14{left:840px}.container_16 .push_15{left:900px}.container_12 .pull_3,.container_16 .pull_4{left:-240px}.container_12 .pull_6,.container_16 .pull_8{left:-480px}.container_12 .pull_9,.container_16 .pull_12{left:-720px}.container_12 .pull_1{left:-80px}.container_12 .pull_2{left:-160px}.container_12 .pull_4{left:-320px}.container_12 .pull_5{left:-400px}.container_12 .pull_7{left:-560px}.container_12 .pull_8{left:-640px}.container_12 .pull_10{left:-800px}.container_12 .pull_11{left:-880px}.container_16 .pull_1{left:-60px}.container_16 .pull_2{left:-120px}.container_16 .pull_3{left:-180px}.container_16 .pull_5{left:-300px}.container_16 .pull_6{left:-360px}.container_16 .pull_7{left:-420px}.container_16 .pull_9{left:-540px}.container_16 .pull_10{left:-600px}.container_16 .pull_11{left:-660px}.container_16 .pull_13{left:-780px}.container_16 .pull_14{left:-840px}.container_16 .pull_15{left:-900px}.clear{clear:both;display:block;overflow:hidden;visibility:hidden;width:0;height:0}.clearfix:after{clear:both;content:' ';display:block;font-size:0;line-height:0;visibility:hidden;width:0;height:0}* html .clearfix,*:first-child+html .clearfix{zoom:1} \ No newline at end of file diff --git a/pages/pages_source/out/css/960gs/960_24_col.css b/pages/pages_source/out/css/960gs/960_24_col.css new file mode 100644 index 0000000..6d92fa7 --- /dev/null +++ b/pages/pages_source/out/css/960gs/960_24_col.css @@ -0,0 +1 @@ +.container_24{margin-left:auto;margin-right:auto;width:960px}.grid_1,.grid_2,.grid_3,.grid_4,.grid_5,.grid_6,.grid_7,.grid_8,.grid_9,.grid_10,.grid_11,.grid_12,.grid_13,.grid_14,.grid_15,.grid_16,.grid_17,.grid_18,.grid_19,.grid_20,.grid_21,.grid_22,.grid_23,.grid_24{display:inline;float:left;position:relative;margin-left:5px;margin-right:5px}.alpha{margin-left:0}.omega{margin-right:0}.container_24 .grid_1{width:30px}.container_24 .grid_2{width:70px}.container_24 .grid_3{width:110px}.container_24 .grid_4{width:150px}.container_24 .grid_5{width:190px}.container_24 .grid_6{width:230px}.container_24 .grid_7{width:270px}.container_24 .grid_8{width:310px}.container_24 .grid_9{width:350px}.container_24 .grid_10{width:390px}.container_24 .grid_11{width:430px}.container_24 .grid_12{width:470px}.container_24 .grid_13{width:510px}.container_24 .grid_14{width:550px}.container_24 .grid_15{width:590px}.container_24 .grid_16{width:630px}.container_24 .grid_17{width:670px}.container_24 .grid_18{width:710px}.container_24 .grid_19{width:750px}.container_24 .grid_20{width:790px}.container_24 .grid_21{width:830px}.container_24 .grid_22{width:870px}.container_24 .grid_23{width:910px}.container_24 .grid_24{width:950px}.container_24 .prefix_1{padding-left:40px}.container_24 .prefix_2{padding-left:80px}.container_24 .prefix_3{padding-left:120px}.container_24 .prefix_4{padding-left:160px}.container_24 .prefix_5{padding-left:200px}.container_24 .prefix_6{padding-left:240px}.container_24 .prefix_7{padding-left:280px}.container_24 .prefix_8{padding-left:320px}.container_24 .prefix_9{padding-left:360px}.container_24 .prefix_10{padding-left:400px}.container_24 .prefix_11{padding-left:440px}.container_24 .prefix_12{padding-left:480px}.container_24 .prefix_13{padding-left:520px}.container_24 .prefix_14{padding-left:560px}.container_24 .prefix_15{padding-left:600px}.container_24 .prefix_16{padding-left:640px}.container_24 .prefix_17{padding-left:680px}.container_24 .prefix_18{padding-left:720px}.container_24 .prefix_19{padding-left:760px}.container_24 .prefix_20{padding-left:800px}.container_24 .prefix_21{padding-left:840px}.container_24 .prefix_22{padding-left:880px}.container_24 .prefix_23{padding-left:920px}.container_24 .suffix_1{padding-right:40px}.container_24 .suffix_2{padding-right:80px}.container_24 .suffix_3{padding-right:120px}.container_24 .suffix_4{padding-right:160px}.container_24 .suffix_5{padding-right:200px}.container_24 .suffix_6{padding-right:240px}.container_24 .suffix_7{padding-right:280px}.container_24 .suffix_8{padding-right:320px}.container_24 .suffix_9{padding-right:360px}.container_24 .suffix_10{padding-right:400px}.container_24 .suffix_11{padding-right:440px}.container_24 .suffix_12{padding-right:480px}.container_24 .suffix_13{padding-right:520px}.container_24 .suffix_14{padding-right:560px}.container_24 .suffix_15{padding-right:600px}.container_24 .suffix_16{padding-right:640px}.container_24 .suffix_17{padding-right:680px}.container_24 .suffix_18{padding-right:720px}.container_24 .suffix_19{padding-right:760px}.container_24 .suffix_20{padding-right:800px}.container_24 .suffix_21{padding-right:840px}.container_24 .suffix_22{padding-right:880px}.container_24 .suffix_23{padding-right:920px}.container_24 .push_1{left:40px}.container_24 .push_2{left:80px}.container_24 .push_3{left:120px}.container_24 .push_4{left:160px}.container_24 .push_5{left:200px}.container_24 .push_6{left:240px}.container_24 .push_7{left:280px}.container_24 .push_8{left:320px}.container_24 .push_9{left:360px}.container_24 .push_10{left:400px}.container_24 .push_11{left:440px}.container_24 .push_12{left:480px}.container_24 .push_13{left:520px}.container_24 .push_14{left:560px}.container_24 .push_15{left:600px}.container_24 .push_16{left:640px}.container_24 .push_17{left:680px}.container_24 .push_18{left:720px}.container_24 .push_19{left:760px}.container_24 .push_20{left:800px}.container_24 .push_21{left:840px}.container_24 .push_22{left:880px}.container_24 .push_23{left:920px}.container_24 .pull_1{left:-40px}.container_24 .pull_2{left:-80px}.container_24 .pull_3{left:-120px}.container_24 .pull_4{left:-160px}.container_24 .pull_5{left:-200px}.container_24 .pull_6{left:-240px}.container_24 .pull_7{left:-280px}.container_24 .pull_8{left:-320px}.container_24 .pull_9{left:-360px}.container_24 .pull_10{left:-400px}.container_24 .pull_11{left:-440px}.container_24 .pull_12{left:-480px}.container_24 .pull_13{left:-520px}.container_24 .pull_14{left:-560px}.container_24 .pull_15{left:-600px}.container_24 .pull_16{left:-640px}.container_24 .pull_17{left:-680px}.container_24 .pull_18{left:-720px}.container_24 .pull_19{left:-760px}.container_24 .pull_20{left:-800px}.container_24 .pull_21{left:-840px}.container_24 .pull_22{left:-880px}.container_24 .pull_23{left:-920px}.clear{clear:both;display:block;overflow:hidden;visibility:hidden;width:0;height:0}.clearfix:after{clear:both;content:' ';display:block;font-size:0;line-height:0;visibility:hidden;width:0;height:0}* html .clearfix,*:first-child+html .clearfix{zoom:1} \ No newline at end of file diff --git a/pages/pages_source/out/css/960gs/reset.css b/pages/pages_source/out/css/960gs/reset.css new file mode 100644 index 0000000..99a0211 --- /dev/null +++ b/pages/pages_source/out/css/960gs/reset.css @@ -0,0 +1 @@ +html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,font,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none}:focus{outline:0}ins{text-decoration:none}del{text-decoration:line-through}table{border-collapse:collapse;border-spacing:0} \ No newline at end of file diff --git a/pages/pages_source/out/css/960gs/text.css b/pages/pages_source/out/css/960gs/text.css new file mode 100644 index 0000000..f37d174 --- /dev/null +++ b/pages/pages_source/out/css/960gs/text.css @@ -0,0 +1 @@ +body{font:13px/1.5 'Helvetica Neue',Arial,'Liberation Sans',FreeSans,sans-serif}a:focus{outline:1px dotted}hr{border:0 #ccc solid;border-top-width:1px;clear:both;height:0}h1{font-size:25px}h2{font-size:23px}h3{font-size:21px}h4{font-size:19px}h5{font-size:17px}h6{font-size:15px}ol{list-style:decimal}ul{list-style:disc}li{margin-left:30px}p,dl,hr,h1,h2,h3,h4,h5,h6,ol,ul,pre,table,address,fieldset{margin-bottom:20px} \ No newline at end of file diff --git a/pages/pages_source/out/css/pygments.css b/pages/pages_source/out/css/pygments.css new file mode 100644 index 0000000..e89794f --- /dev/null +++ b/pages/pages_source/out/css/pygments.css @@ -0,0 +1,62 @@ +code .hll { background-color: #ffffcc } +code { background: #ffffff; } +code .c { color: #808080 } /* Comment */ +code .err { color: #F00000; background-color: #F0A0A0 } /* Error */ +code .k { color: #008000; font-weight: bold } /* Keyword */ +code .o { color: #303030 } /* Operator */ +code .cm { color: #808080 } /* Comment.Multiline */ +code .cp { color: #507090 } /* Comment.Preproc */ +code .c1 { color: #808080 } /* Comment.Single */ +code .cs { color: #cc0000; font-weight: bold } /* Comment.Special */ +code .gd { color: #A00000 } /* Generic.Deleted */ +code .ge { font-style: italic } /* Generic.Emph */ +code .gr { color: #FF0000 } /* Generic.Error */ +code .gh { color: #000080; font-weight: bold } /* Generic.Heading */ +code .gi { color: #00A000 } /* Generic.Inserted */ +code .go { color: #808080 } /* Generic.Output */ +code .gp { color: #c65d09; font-weight: bold } /* Generic.Prompt */ +code .gs { font-weight: bold } /* Generic.Strong */ +code .gu { color: #800080; font-weight: bold } /* Generic.Subheading */ +code .gt { color: #0040D0 } /* Generic.Traceback */ +code .kc { color: #008000; font-weight: bold } /* Keyword.Constant */ +code .kd { color: #008000; font-weight: bold } /* Keyword.Declaration */ +code .kn { color: #008000; font-weight: bold } /* Keyword.Namespace */ +code .kp { color: #003080; font-weight: bold } /* Keyword.Pseudo */ +code .kr { color: #008000; font-weight: bold } /* Keyword.Reserved */ +code .kt { color: #303090; font-weight: bold } /* Keyword.Type */ +code .m { color: #6000E0; font-weight: bold } /* Literal.Number */ +code .s { background-color: #fff0f0 } /* Literal.String */ +code .na { color: #0000C0 } /* Name.Attribute */ +code .nb { color: #007020 } /* Name.Builtin */ +code .nc { color: #B00060; font-weight: bold } /* Name.Class */ +code .no { color: #003060; font-weight: bold } /* Name.Constant */ +code .nd { color: #505050; font-weight: bold } /* Name.Decorator */ +code .ni { color: #800000; font-weight: bold } /* Name.Entity */ +code .ne { color: #F00000; font-weight: bold } /* Name.Exception */ +code .nf { color: #0060B0; font-weight: bold } /* Name.Function */ +code .nl { color: #907000; font-weight: bold } /* Name.Label */ +code .nn { color: #0e84b5; font-weight: bold } /* Name.Namespace */ +code .nt { color: #007000 } /* Name.Tag */ +code .nv { color: #906030 } /* Name.Variable */ +code .ow { color: #000000; font-weight: bold } /* Operator.Word */ +code .w { color: #bbbbbb } /* Text.Whitespace */ +code .mf { color: #6000E0; font-weight: bold } /* Literal.Number.Float */ +code .mh { color: #005080; font-weight: bold } /* Literal.Number.Hex */ +code .mi { color: #0000D0; font-weight: bold } /* Literal.Number.Integer */ +code .mo { color: #4000E0; font-weight: bold } /* Literal.Number.Oct */ +code .sb { background-color: #fff0f0 } /* Literal.String.Backtick */ +code .sc { color: #0040D0 } /* Literal.String.Char */ +code .sd { color: #D04020 } /* Literal.String.Doc */ +code .s2 { background-color: #fff0f0 } /* Literal.String.Double */ +code .se { color: #606060; font-weight: bold; background-color: #fff0f0 } /* Literal.String.Escape */ +code .sh { background-color: #fff0f0 } /* Literal.String.Heredoc */ +code .si { background-color: #e0e0e0 } /* Literal.String.Interpol */ +code .sx { color: #D02000; background-color: #fff0f0 } /* Literal.String.Other */ +code .sr { color: #000000; background-color: #fff0ff } /* Literal.String.Regex */ +code .s1 { background-color: #fff0f0 } /* Literal.String.Single */ +code .ss { color: #A06000 } /* Literal.String.Symbol */ +code .bp { color: #007020 } /* Name.Builtin.Pseudo */ +code .vc { color: #306090 } /* Name.Variable.Class */ +code .vg { color: #d07000; font-weight: bold } /* Name.Variable.Global */ +code .vi { color: #3030B0 } /* Name.Variable.Instance */ +code .il { color: #0000D0; font-weight: bold } /* Literal.Number.Integer.Long */ diff --git a/pages/pages_source/out/css/screen.css b/pages/pages_source/out/css/screen.css new file mode 100644 index 0000000..5a08a87 --- /dev/null +++ b/pages/pages_source/out/css/screen.css @@ -0,0 +1,152 @@ +@import url("960gs/960.css"); + +/* http://www.levien.com/type/myfonts/inconsolata.html */ +@font-face +{ + font-family: "inconsolata"; + src: url("../fonts/inconsolata.otf"); +} + +@font-face +{ + font-family: "droid sans"; + src: url("../fonts/droidsans.ttf"); +} +@font-face +{ + font-family: "droid sans bold"; + src: url("../fonts/droidsans-bold.ttf"); +} +body +{ + color:#333; + font-family: helvetica, arial, sans-serif; + font-size:87.5%; /* 16px * 0.875 = 14px */ + line-height: 137.5%; /* 16px * 1.375 = 22px */ +} +a +{ + color: #55862e; + text-decoration: none; + border-bottom: solid 1px #3030a2; +} +a:hover +{ + text-decoration: none; + border-bottom: 0; +} + +a:visited{ + color: #777; + border-bottom: solid 1px #ccc; +} + +h1, h2, h3, h4, h5, h6 +{ + color: #000; +} +h1, h2, h3 +{ + font-family: "droid sans", helvetica, arial, sans-serif; +} + +h4, h5, h6 +{ + font-family: "droid sans bold", helvetica, arial, sans-serif; +} + +h1 +{ + font-size: 150.0%; +} +h2 +{ + font-size: 137.5%; +} +h3 +{ + font-size: 125.0%; +} +h4 +{ + font-size: 112.5%; +} +h5, h6{ + font-size: 100%; +} + +pre,code +{ + font-family: "inconsolata", monospace; + /* font-size: 1.142em; */ +} + +pre { + border-left: 2px solid #55862e; + padding-left: 1em; +} + +.noul +{ + border-bottom: 0; + text-decoration: none; +} + +img { + border: 0; +} + +img.screenshot { + padding-left: 35px; + padding-right: 10px; +} + +header, footer +{ + display: block; + padding: .1em 0; +} + + +header h1{ + font-size:1.142em; +} + +header h1 a, header h1 a:visited +{ + color:#55862e; + text-decoration: none; + border-bottom: none; +} + +footer{ + margin-top:1em; + border-top: solid 3px #ccc; +} + +footer img { + vertical-align: middle; + height: 59px; +} +.twtr-widget a, +.twtr-widget a:visited, +footer a, +footer a:visited { + border-bottom: none; +} + +ul.posts +{ + list-style-type: none; +} + +nav { + margin-bottom: 25px; +} + +table { border-collapse: collapse; width: 100% } +table th, table td { border: 1px solid #aaa; padding: .2em; } +table td { white-space:nowrap; } +#standalone-downloads td { font-family: monospace; } +#standalone-downloads td.sha { font-size: 0.8em; } +#standalone-downloads .rc td { background-color: #ddd; } diff --git a/pages/pages_source/out/download.html b/pages/pages_source/out/download.html new file mode 100644 index 0000000..2a3be33 --- /dev/null +++ b/pages/pages_source/out/download.html @@ -0,0 +1,41 @@ + + + + + Jasmine: BDD for your JavaScript + + + + + + + Fork me on GitHub + +
+
+ These files are for the standalone release, meant for inclusion on a static HTML page and manual management of files. +
+
+ For a using Jasmine with Ruby on Rails, other Ruby frameworks, within continuous integration environments, or to gain more dynamic source and test file loading, see + Using the Jasmine Gem + . +
+ + + + + + + + +
VersionSizeDateSHA1
+
+
+ Powered by   + + Pivotal Labs, Inc. + + diff --git a/pages/pages_source/out/favicon.ico b/pages/pages_source/out/favicon.ico new file mode 100644 index 0000000..e69de29 diff --git a/pages/pages_source/out/images/jasmine_logo.png b/pages/pages_source/out/images/jasmine_logo.png new file mode 100644 index 0000000..9ffc5a0 Binary files /dev/null and b/pages/pages_source/out/images/jasmine_logo.png differ diff --git a/pages/pages_source/out/images/pivotal_logo.gif b/pages/pages_source/out/images/pivotal_logo.gif new file mode 100644 index 0000000..9306043 Binary files /dev/null and b/pages/pages_source/out/images/pivotal_logo.gif differ diff --git a/pages/pages_source/out/index.html b/pages/pages_source/out/index.html new file mode 100644 index 0000000..e5563f9 --- /dev/null +++ b/pages/pages_source/out/index.html @@ -0,0 +1,79 @@ + + + + + Jasmine: BDD for your JavaScript + + + + + + + Fork me on GitHub + +
+
+ Jasmine is a behavior-driven development framework for testing your JavaScript code. It does not depend on any other + JavaScript frameworks. It does not require a DOM. And it has a clean, obvious syntax so that you can easily write tests. +
+
+
describe("Jasmine", function() {
  it("makes testing JavaScript awesome!", function() {
    expect(yourCode).toBeLotsBetter();
  });
});
+
+
+ Jasmine can be run anywhere you can execute JavaScript: a static web page, your continuous integration environment, + or server-side environments like + Node.js + . +
+
+ Find out more in the + documentation + . +
+

Downloads

+ +

Support

+ +
+
+ Powered by   + + Pivotal Labs, Inc. + + diff --git a/pages/pages_source/setup.rb b/pages/pages_source/setup.rb new file mode 100644 index 0000000..0d021a9 --- /dev/null +++ b/pages/pages_source/setup.rb @@ -0,0 +1,70 @@ +# ---------------------- +# Server settings: +# +# Change the server host/port to bind rack to. +# 'server' can be any Rack-supported server, e.g. +# Mongrel, Thin, WEBrick +# +Frank.server.handler = "mongrel" +Frank.server.hostname = "0.0.0.0" +Frank.server.port = "3601" + +# ---------------------- +# Static folder: +# +# All files in this folder will be served up +# directly, without interpretation +# +Frank.static_folder = "static" + +# ---------------------- +# Dynamic folder: +# +# Frank will try to interpret any of the files +# in this folder based on their extension +# +Frank.dynamic_folder = "dynamic" + +# ---------------------- +# Layouts folder: +# +# Frank will look for layouts in this folder +# the default layout is `default' +# it respects nested layouts that correspond to nested +# folders in the `dynamic_folder' +# for example: a template: `dynamic_folder/blog/a-blog-post.haml' +# would look for a layout: `layouts/blog/default.haml' +# and if not found use the default: `layouts/default.haml' +# +# Frank also supports defining layouts on an +# individual template basis using meta data +# you can do this by defining a meta field `layout: my_layout.haml' +# +Frank.layouts_folder = "layouts" + +# ---------------------- +# Publish settings: +# +# Frank can publish your exported project to +# a server. All you have to do is tell Frank what host, path, and username. +# If you have ssh keys setup there is no need for a password. +# Just uncomment the Publish settings below and +# make the appropriate changes. +# +# Frank.publish.host = "example.com" +# Frank.publish.path = "/www" +# Frank.publish.username = 'me' +# Frank.publish.password = 'secret' +# Frank.publish.port = 22 +# + +# ---------------------- +# Sass Options: +# Frank.sass_options = { :load_paths => [ File.join(File.dirname(__FILE__), 'dynamic/css') ] } + + +# ---------------------- +# Initializers: +# +# Add any other project setup code, or requires here +# .... \ No newline at end of file diff --git a/pages/pages_source/static/css/960gs/960.css b/pages/pages_source/static/css/960gs/960.css new file mode 100644 index 0000000..bdfa213 --- /dev/null +++ b/pages/pages_source/static/css/960gs/960.css @@ -0,0 +1 @@ +.container_12,.container_16{margin-left:auto;margin-right:auto;width:960px}.grid_1,.grid_2,.grid_3,.grid_4,.grid_5,.grid_6,.grid_7,.grid_8,.grid_9,.grid_10,.grid_11,.grid_12,.grid_13,.grid_14,.grid_15,.grid_16{display:inline;float:left;position:relative;margin-left:10px;margin-right:10px}.container_12 .grid_3,.container_16 .grid_4{width:220px}.container_12 .grid_6,.container_16 .grid_8{width:460px}.container_12 .grid_9,.container_16 .grid_12{width:700px}.container_12 .grid_12,.container_16 .grid_16{width:940px}.alpha{margin-left:0}.omega{margin-right:0}.container_12 .grid_1{width:60px}.container_12 .grid_2{width:140px}.container_12 .grid_4{width:300px}.container_12 .grid_5{width:380px}.container_12 .grid_7{width:540px}.container_12 .grid_8{width:620px}.container_12 .grid_10{width:780px}.container_12 .grid_11{width:860px}.container_16 .grid_1{width:40px}.container_16 .grid_2{width:100px}.container_16 .grid_3{width:160px}.container_16 .grid_5{width:280px}.container_16 .grid_6{width:340px}.container_16 .grid_7{width:400px}.container_16 .grid_9{width:520px}.container_16 .grid_10{width:580px}.container_16 .grid_11{width:640px}.container_16 .grid_13{width:760px}.container_16 .grid_14{width:820px}.container_16 .grid_15{width:880px}.container_12 .prefix_3,.container_16 .prefix_4{padding-left:240px}.container_12 .prefix_6,.container_16 .prefix_8{padding-left:480px}.container_12 .prefix_9,.container_16 .prefix_12{padding-left:720px}.container_12 .prefix_1{padding-left:80px}.container_12 .prefix_2{padding-left:160px}.container_12 .prefix_4{padding-left:320px}.container_12 .prefix_5{padding-left:400px}.container_12 .prefix_7{padding-left:560px}.container_12 .prefix_8{padding-left:640px}.container_12 .prefix_10{padding-left:800px}.container_12 .prefix_11{padding-left:880px}.container_16 .prefix_1{padding-left:60px}.container_16 .prefix_2{padding-left:120px}.container_16 .prefix_3{padding-left:180px}.container_16 .prefix_5{padding-left:300px}.container_16 .prefix_6{padding-left:360px}.container_16 .prefix_7{padding-left:420px}.container_16 .prefix_9{padding-left:540px}.container_16 .prefix_10{padding-left:600px}.container_16 .prefix_11{padding-left:660px}.container_16 .prefix_13{padding-left:780px}.container_16 .prefix_14{padding-left:840px}.container_16 .prefix_15{padding-left:900px}.container_12 .suffix_3,.container_16 .suffix_4{padding-right:240px}.container_12 .suffix_6,.container_16 .suffix_8{padding-right:480px}.container_12 .suffix_9,.container_16 .suffix_12{padding-right:720px}.container_12 .suffix_1{padding-right:80px}.container_12 .suffix_2{padding-right:160px}.container_12 .suffix_4{padding-right:320px}.container_12 .suffix_5{padding-right:400px}.container_12 .suffix_7{padding-right:560px}.container_12 .suffix_8{padding-right:640px}.container_12 .suffix_10{padding-right:800px}.container_12 .suffix_11{padding-right:880px}.container_16 .suffix_1{padding-right:60px}.container_16 .suffix_2{padding-right:120px}.container_16 .suffix_3{padding-right:180px}.container_16 .suffix_5{padding-right:300px}.container_16 .suffix_6{padding-right:360px}.container_16 .suffix_7{padding-right:420px}.container_16 .suffix_9{padding-right:540px}.container_16 .suffix_10{padding-right:600px}.container_16 .suffix_11{padding-right:660px}.container_16 .suffix_13{padding-right:780px}.container_16 .suffix_14{padding-right:840px}.container_16 .suffix_15{padding-right:900px}.container_12 .push_3,.container_16 .push_4{left:240px}.container_12 .push_6,.container_16 .push_8{left:480px}.container_12 .push_9,.container_16 .push_12{left:720px}.container_12 .push_1{left:80px}.container_12 .push_2{left:160px}.container_12 .push_4{left:320px}.container_12 .push_5{left:400px}.container_12 .push_7{left:560px}.container_12 .push_8{left:640px}.container_12 .push_10{left:800px}.container_12 .push_11{left:880px}.container_16 .push_1{left:60px}.container_16 .push_2{left:120px}.container_16 .push_3{left:180px}.container_16 .push_5{left:300px}.container_16 .push_6{left:360px}.container_16 .push_7{left:420px}.container_16 .push_9{left:540px}.container_16 .push_10{left:600px}.container_16 .push_11{left:660px}.container_16 .push_13{left:780px}.container_16 .push_14{left:840px}.container_16 .push_15{left:900px}.container_12 .pull_3,.container_16 .pull_4{left:-240px}.container_12 .pull_6,.container_16 .pull_8{left:-480px}.container_12 .pull_9,.container_16 .pull_12{left:-720px}.container_12 .pull_1{left:-80px}.container_12 .pull_2{left:-160px}.container_12 .pull_4{left:-320px}.container_12 .pull_5{left:-400px}.container_12 .pull_7{left:-560px}.container_12 .pull_8{left:-640px}.container_12 .pull_10{left:-800px}.container_12 .pull_11{left:-880px}.container_16 .pull_1{left:-60px}.container_16 .pull_2{left:-120px}.container_16 .pull_3{left:-180px}.container_16 .pull_5{left:-300px}.container_16 .pull_6{left:-360px}.container_16 .pull_7{left:-420px}.container_16 .pull_9{left:-540px}.container_16 .pull_10{left:-600px}.container_16 .pull_11{left:-660px}.container_16 .pull_13{left:-780px}.container_16 .pull_14{left:-840px}.container_16 .pull_15{left:-900px}.clear{clear:both;display:block;overflow:hidden;visibility:hidden;width:0;height:0}.clearfix:after{clear:both;content:' ';display:block;font-size:0;line-height:0;visibility:hidden;width:0;height:0}* html .clearfix,*:first-child+html .clearfix{zoom:1} \ No newline at end of file diff --git a/pages/pages_source/static/css/960gs/960_24_col.css b/pages/pages_source/static/css/960gs/960_24_col.css new file mode 100644 index 0000000..6d92fa7 --- /dev/null +++ b/pages/pages_source/static/css/960gs/960_24_col.css @@ -0,0 +1 @@ +.container_24{margin-left:auto;margin-right:auto;width:960px}.grid_1,.grid_2,.grid_3,.grid_4,.grid_5,.grid_6,.grid_7,.grid_8,.grid_9,.grid_10,.grid_11,.grid_12,.grid_13,.grid_14,.grid_15,.grid_16,.grid_17,.grid_18,.grid_19,.grid_20,.grid_21,.grid_22,.grid_23,.grid_24{display:inline;float:left;position:relative;margin-left:5px;margin-right:5px}.alpha{margin-left:0}.omega{margin-right:0}.container_24 .grid_1{width:30px}.container_24 .grid_2{width:70px}.container_24 .grid_3{width:110px}.container_24 .grid_4{width:150px}.container_24 .grid_5{width:190px}.container_24 .grid_6{width:230px}.container_24 .grid_7{width:270px}.container_24 .grid_8{width:310px}.container_24 .grid_9{width:350px}.container_24 .grid_10{width:390px}.container_24 .grid_11{width:430px}.container_24 .grid_12{width:470px}.container_24 .grid_13{width:510px}.container_24 .grid_14{width:550px}.container_24 .grid_15{width:590px}.container_24 .grid_16{width:630px}.container_24 .grid_17{width:670px}.container_24 .grid_18{width:710px}.container_24 .grid_19{width:750px}.container_24 .grid_20{width:790px}.container_24 .grid_21{width:830px}.container_24 .grid_22{width:870px}.container_24 .grid_23{width:910px}.container_24 .grid_24{width:950px}.container_24 .prefix_1{padding-left:40px}.container_24 .prefix_2{padding-left:80px}.container_24 .prefix_3{padding-left:120px}.container_24 .prefix_4{padding-left:160px}.container_24 .prefix_5{padding-left:200px}.container_24 .prefix_6{padding-left:240px}.container_24 .prefix_7{padding-left:280px}.container_24 .prefix_8{padding-left:320px}.container_24 .prefix_9{padding-left:360px}.container_24 .prefix_10{padding-left:400px}.container_24 .prefix_11{padding-left:440px}.container_24 .prefix_12{padding-left:480px}.container_24 .prefix_13{padding-left:520px}.container_24 .prefix_14{padding-left:560px}.container_24 .prefix_15{padding-left:600px}.container_24 .prefix_16{padding-left:640px}.container_24 .prefix_17{padding-left:680px}.container_24 .prefix_18{padding-left:720px}.container_24 .prefix_19{padding-left:760px}.container_24 .prefix_20{padding-left:800px}.container_24 .prefix_21{padding-left:840px}.container_24 .prefix_22{padding-left:880px}.container_24 .prefix_23{padding-left:920px}.container_24 .suffix_1{padding-right:40px}.container_24 .suffix_2{padding-right:80px}.container_24 .suffix_3{padding-right:120px}.container_24 .suffix_4{padding-right:160px}.container_24 .suffix_5{padding-right:200px}.container_24 .suffix_6{padding-right:240px}.container_24 .suffix_7{padding-right:280px}.container_24 .suffix_8{padding-right:320px}.container_24 .suffix_9{padding-right:360px}.container_24 .suffix_10{padding-right:400px}.container_24 .suffix_11{padding-right:440px}.container_24 .suffix_12{padding-right:480px}.container_24 .suffix_13{padding-right:520px}.container_24 .suffix_14{padding-right:560px}.container_24 .suffix_15{padding-right:600px}.container_24 .suffix_16{padding-right:640px}.container_24 .suffix_17{padding-right:680px}.container_24 .suffix_18{padding-right:720px}.container_24 .suffix_19{padding-right:760px}.container_24 .suffix_20{padding-right:800px}.container_24 .suffix_21{padding-right:840px}.container_24 .suffix_22{padding-right:880px}.container_24 .suffix_23{padding-right:920px}.container_24 .push_1{left:40px}.container_24 .push_2{left:80px}.container_24 .push_3{left:120px}.container_24 .push_4{left:160px}.container_24 .push_5{left:200px}.container_24 .push_6{left:240px}.container_24 .push_7{left:280px}.container_24 .push_8{left:320px}.container_24 .push_9{left:360px}.container_24 .push_10{left:400px}.container_24 .push_11{left:440px}.container_24 .push_12{left:480px}.container_24 .push_13{left:520px}.container_24 .push_14{left:560px}.container_24 .push_15{left:600px}.container_24 .push_16{left:640px}.container_24 .push_17{left:680px}.container_24 .push_18{left:720px}.container_24 .push_19{left:760px}.container_24 .push_20{left:800px}.container_24 .push_21{left:840px}.container_24 .push_22{left:880px}.container_24 .push_23{left:920px}.container_24 .pull_1{left:-40px}.container_24 .pull_2{left:-80px}.container_24 .pull_3{left:-120px}.container_24 .pull_4{left:-160px}.container_24 .pull_5{left:-200px}.container_24 .pull_6{left:-240px}.container_24 .pull_7{left:-280px}.container_24 .pull_8{left:-320px}.container_24 .pull_9{left:-360px}.container_24 .pull_10{left:-400px}.container_24 .pull_11{left:-440px}.container_24 .pull_12{left:-480px}.container_24 .pull_13{left:-520px}.container_24 .pull_14{left:-560px}.container_24 .pull_15{left:-600px}.container_24 .pull_16{left:-640px}.container_24 .pull_17{left:-680px}.container_24 .pull_18{left:-720px}.container_24 .pull_19{left:-760px}.container_24 .pull_20{left:-800px}.container_24 .pull_21{left:-840px}.container_24 .pull_22{left:-880px}.container_24 .pull_23{left:-920px}.clear{clear:both;display:block;overflow:hidden;visibility:hidden;width:0;height:0}.clearfix:after{clear:both;content:' ';display:block;font-size:0;line-height:0;visibility:hidden;width:0;height:0}* html .clearfix,*:first-child+html .clearfix{zoom:1} \ No newline at end of file diff --git a/pages/pages_source/static/css/960gs/reset.css b/pages/pages_source/static/css/960gs/reset.css new file mode 100644 index 0000000..99a0211 --- /dev/null +++ b/pages/pages_source/static/css/960gs/reset.css @@ -0,0 +1 @@ +html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,font,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none}:focus{outline:0}ins{text-decoration:none}del{text-decoration:line-through}table{border-collapse:collapse;border-spacing:0} \ No newline at end of file diff --git a/pages/pages_source/static/css/960gs/text.css b/pages/pages_source/static/css/960gs/text.css new file mode 100644 index 0000000..f37d174 --- /dev/null +++ b/pages/pages_source/static/css/960gs/text.css @@ -0,0 +1 @@ +body{font:13px/1.5 'Helvetica Neue',Arial,'Liberation Sans',FreeSans,sans-serif}a:focus{outline:1px dotted}hr{border:0 #ccc solid;border-top-width:1px;clear:both;height:0}h1{font-size:25px}h2{font-size:23px}h3{font-size:21px}h4{font-size:19px}h5{font-size:17px}h6{font-size:15px}ol{list-style:decimal}ul{list-style:disc}li{margin-left:30px}p,dl,hr,h1,h2,h3,h4,h5,h6,ol,ul,pre,table,address,fieldset{margin-bottom:20px} \ No newline at end of file diff --git a/pages/pages_source/static/css/pygments.css b/pages/pages_source/static/css/pygments.css new file mode 100644 index 0000000..e89794f --- /dev/null +++ b/pages/pages_source/static/css/pygments.css @@ -0,0 +1,62 @@ +code .hll { background-color: #ffffcc } +code { background: #ffffff; } +code .c { color: #808080 } /* Comment */ +code .err { color: #F00000; background-color: #F0A0A0 } /* Error */ +code .k { color: #008000; font-weight: bold } /* Keyword */ +code .o { color: #303030 } /* Operator */ +code .cm { color: #808080 } /* Comment.Multiline */ +code .cp { color: #507090 } /* Comment.Preproc */ +code .c1 { color: #808080 } /* Comment.Single */ +code .cs { color: #cc0000; font-weight: bold } /* Comment.Special */ +code .gd { color: #A00000 } /* Generic.Deleted */ +code .ge { font-style: italic } /* Generic.Emph */ +code .gr { color: #FF0000 } /* Generic.Error */ +code .gh { color: #000080; font-weight: bold } /* Generic.Heading */ +code .gi { color: #00A000 } /* Generic.Inserted */ +code .go { color: #808080 } /* Generic.Output */ +code .gp { color: #c65d09; font-weight: bold } /* Generic.Prompt */ +code .gs { font-weight: bold } /* Generic.Strong */ +code .gu { color: #800080; font-weight: bold } /* Generic.Subheading */ +code .gt { color: #0040D0 } /* Generic.Traceback */ +code .kc { color: #008000; font-weight: bold } /* Keyword.Constant */ +code .kd { color: #008000; font-weight: bold } /* Keyword.Declaration */ +code .kn { color: #008000; font-weight: bold } /* Keyword.Namespace */ +code .kp { color: #003080; font-weight: bold } /* Keyword.Pseudo */ +code .kr { color: #008000; font-weight: bold } /* Keyword.Reserved */ +code .kt { color: #303090; font-weight: bold } /* Keyword.Type */ +code .m { color: #6000E0; font-weight: bold } /* Literal.Number */ +code .s { background-color: #fff0f0 } /* Literal.String */ +code .na { color: #0000C0 } /* Name.Attribute */ +code .nb { color: #007020 } /* Name.Builtin */ +code .nc { color: #B00060; font-weight: bold } /* Name.Class */ +code .no { color: #003060; font-weight: bold } /* Name.Constant */ +code .nd { color: #505050; font-weight: bold } /* Name.Decorator */ +code .ni { color: #800000; font-weight: bold } /* Name.Entity */ +code .ne { color: #F00000; font-weight: bold } /* Name.Exception */ +code .nf { color: #0060B0; font-weight: bold } /* Name.Function */ +code .nl { color: #907000; font-weight: bold } /* Name.Label */ +code .nn { color: #0e84b5; font-weight: bold } /* Name.Namespace */ +code .nt { color: #007000 } /* Name.Tag */ +code .nv { color: #906030 } /* Name.Variable */ +code .ow { color: #000000; font-weight: bold } /* Operator.Word */ +code .w { color: #bbbbbb } /* Text.Whitespace */ +code .mf { color: #6000E0; font-weight: bold } /* Literal.Number.Float */ +code .mh { color: #005080; font-weight: bold } /* Literal.Number.Hex */ +code .mi { color: #0000D0; font-weight: bold } /* Literal.Number.Integer */ +code .mo { color: #4000E0; font-weight: bold } /* Literal.Number.Oct */ +code .sb { background-color: #fff0f0 } /* Literal.String.Backtick */ +code .sc { color: #0040D0 } /* Literal.String.Char */ +code .sd { color: #D04020 } /* Literal.String.Doc */ +code .s2 { background-color: #fff0f0 } /* Literal.String.Double */ +code .se { color: #606060; font-weight: bold; background-color: #fff0f0 } /* Literal.String.Escape */ +code .sh { background-color: #fff0f0 } /* Literal.String.Heredoc */ +code .si { background-color: #e0e0e0 } /* Literal.String.Interpol */ +code .sx { color: #D02000; background-color: #fff0f0 } /* Literal.String.Other */ +code .sr { color: #000000; background-color: #fff0ff } /* Literal.String.Regex */ +code .s1 { background-color: #fff0f0 } /* Literal.String.Single */ +code .ss { color: #A06000 } /* Literal.String.Symbol */ +code .bp { color: #007020 } /* Name.Builtin.Pseudo */ +code .vc { color: #306090 } /* Name.Variable.Class */ +code .vg { color: #d07000; font-weight: bold } /* Name.Variable.Global */ +code .vi { color: #3030B0 } /* Name.Variable.Instance */ +code .il { color: #0000D0; font-weight: bold } /* Literal.Number.Integer.Long */ diff --git a/pages/pages_source/static/css/screen.css b/pages/pages_source/static/css/screen.css new file mode 100644 index 0000000..5a08a87 --- /dev/null +++ b/pages/pages_source/static/css/screen.css @@ -0,0 +1,152 @@ +@import url("960gs/960.css"); + +/* http://www.levien.com/type/myfonts/inconsolata.html */ +@font-face +{ + font-family: "inconsolata"; + src: url("../fonts/inconsolata.otf"); +} + +@font-face +{ + font-family: "droid sans"; + src: url("../fonts/droidsans.ttf"); +} +@font-face +{ + font-family: "droid sans bold"; + src: url("../fonts/droidsans-bold.ttf"); +} +body +{ + color:#333; + font-family: helvetica, arial, sans-serif; + font-size:87.5%; /* 16px * 0.875 = 14px */ + line-height: 137.5%; /* 16px * 1.375 = 22px */ +} +a +{ + color: #55862e; + text-decoration: none; + border-bottom: solid 1px #3030a2; +} +a:hover +{ + text-decoration: none; + border-bottom: 0; +} + +a:visited{ + color: #777; + border-bottom: solid 1px #ccc; +} + +h1, h2, h3, h4, h5, h6 +{ + color: #000; +} +h1, h2, h3 +{ + font-family: "droid sans", helvetica, arial, sans-serif; +} + +h4, h5, h6 +{ + font-family: "droid sans bold", helvetica, arial, sans-serif; +} + +h1 +{ + font-size: 150.0%; +} +h2 +{ + font-size: 137.5%; +} +h3 +{ + font-size: 125.0%; +} +h4 +{ + font-size: 112.5%; +} +h5, h6{ + font-size: 100%; +} + +pre,code +{ + font-family: "inconsolata", monospace; + /* font-size: 1.142em; */ +} + +pre { + border-left: 2px solid #55862e; + padding-left: 1em; +} + +.noul +{ + border-bottom: 0; + text-decoration: none; +} + +img { + border: 0; +} + +img.screenshot { + padding-left: 35px; + padding-right: 10px; +} + +header, footer +{ + display: block; + padding: .1em 0; +} + + +header h1{ + font-size:1.142em; +} + +header h1 a, header h1 a:visited +{ + color:#55862e; + text-decoration: none; + border-bottom: none; +} + +footer{ + margin-top:1em; + border-top: solid 3px #ccc; +} + +footer img { + vertical-align: middle; + height: 59px; +} +.twtr-widget a, +.twtr-widget a:visited, +footer a, +footer a:visited { + border-bottom: none; +} + +ul.posts +{ + list-style-type: none; +} + +nav { + margin-bottom: 25px; +} + +table { border-collapse: collapse; width: 100% } +table th, table td { border: 1px solid #aaa; padding: .2em; } +table td { white-space:nowrap; } +#standalone-downloads td { font-family: monospace; } +#standalone-downloads td.sha { font-size: 0.8em; } +#standalone-downloads .rc td { background-color: #ddd; } diff --git a/pages/pages_source/static/favicon.ico b/pages/pages_source/static/favicon.ico new file mode 100644 index 0000000..e69de29 diff --git a/pages/pages_source/static/images/jasmine_logo.png b/pages/pages_source/static/images/jasmine_logo.png new file mode 100644 index 0000000..9ffc5a0 Binary files /dev/null and b/pages/pages_source/static/images/jasmine_logo.png differ diff --git a/pages/pages_source/static/images/pivotal_logo.gif b/pages/pages_source/static/images/pivotal_logo.gif new file mode 100644 index 0000000..9306043 Binary files /dev/null and b/pages/pages_source/static/images/pivotal_logo.gif differ diff --git a/pages/src/stylesheets/screen.sass b/pages/src/stylesheets/screen.sass new file mode 100644 index 0000000..74bf16e --- /dev/null +++ b/pages/src/stylesheets/screen.sass @@ -0,0 +1,4 @@ +body + font: + family: Verdana + size: 10pt \ No newline at end of file diff --git a/pages/stylesheets/screen.css b/pages/stylesheets/screen.css new file mode 100644 index 0000000..a6b7f5b --- /dev/null +++ b/pages/stylesheets/screen.css @@ -0,0 +1,5 @@ +/* line 1 */ +body { + font-family: Verdana; + font-size: 10pt; +}