Verify all sass files generate the correct css in the test fixtures.

This commit is contained in:
Chris Eppstein 2010-05-31 13:48:25 -07:00
parent a7b6ae0d50
commit 7639223dc3
10 changed files with 985 additions and 15 deletions

View File

@ -33,7 +33,9 @@ class CompassTest < Test::Unit::TestCase
each_css_file(proj.css_path) do |css_file|
assert_no_errors css_file, :blueprint
end
assert_renders_correctly :typography
each_sass_file do |sass_file|
assert_renders_correctly sass_file
end
end
end
@ -42,7 +44,9 @@ class CompassTest < Test::Unit::TestCase
each_css_file(proj.css_path) do |css_file|
assert_no_errors css_file, 'compass'
end
assert_renders_correctly :reset, :layout, :utilities, :gradients, :image_size, :box
each_sass_file do |sass_file|
assert_renders_correctly sass_file
end
end
end
@ -51,16 +55,20 @@ class CompassTest < Test::Unit::TestCase
each_css_file(proj.css_path) do |css_file|
assert_no_errors css_file, 'image_urls'
end
assert_renders_correctly :screen
each_sass_file do |sass_file|
assert_renders_correctly sass_file
end
end
end
def test_image_urls
def test_relative
within_project('relative') do |proj|
each_css_file(proj.css_path) do |css_file|
assert_no_errors css_file, 'relative'
end
assert_renders_correctly :screen
each_sass_file do |sass_file|
assert_renders_correctly sass_file
end
end
end
@ -104,9 +112,14 @@ private
raise
end
def each_css_file(dir)
Dir.glob("#{dir}/**/*.css").each do |css_file|
yield css_file
def each_css_file(dir, &block)
Dir.glob("#{dir}/**/*.css").each(&block)
end
def each_sass_file(sass_dir = nil)
sass_dir ||= template_path(@current_project)
Dir.glob("#{sass_dir}/**/*.s[ac]ss").each do |sass_file|
yield sass_file[(sass_dir.length+1)..-6]
end
end

View File

@ -0,0 +1,60 @@
body {
text-align: center; }
* html body legend {
margin: 0px -8px 16px 0;
padding: 0; }
html > body p code {
*white-space: normal; }
.container {
text-align: left; }
sup {
vertical-align: text-top; }
sub {
vertical-align: text-bottom; }
hr {
margin: -8px auto 11px; }
img {
-ms-interpolation-mode: bicubic; }
fieldset {
padding-top: 0; }
textarea {
overflow: auto; }
input.text {
margin: 0.5em 0;
background-color: white;
border: 1px solid #bbbbbb; }
input.text:focus {
border: 1px solid #666666; }
input.title {
margin: 0.5em 0;
background-color: white;
border: 1px solid #bbbbbb; }
input.title:focus {
border: 1px solid #666666; }
input.checkbox {
position: relative;
top: 0.25em; }
input.radio {
position: relative;
top: 0.25em; }
input.button {
position: relative;
top: 0.25em; }
textarea {
margin: 0.5em 0; }
select {
margin: 0.5em 0; }
button {
position: relative;
top: 0.25em; }

View File

@ -0,0 +1,56 @@
body {
line-height: 1.5;
font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;
color: black;
background: none;
font-size: 10pt; }
.container {
background: none; }
hr {
background: #cccccc;
color: #cccccc;
width: 100%;
height: 2px;
margin: 2em 0;
padding: 0;
border: none; }
hr.space {
background: white;
color: white; }
h1, h2, h3, h4, h5, h6 {
font-family: "Helvetica Neue", Arial, Helvetica, sans-serif; }
code {
font-size: 0.9em;
font-family: "andale mono", "lucida console", monospace; }
a img {
border: none; }
a:link, a:visited {
background: transparent;
font-weight: 700;
text-decoration: underline; }
p img.top {
margin-top: 0; }
blockquote {
margin: 1.5em;
padding: 1em;
font-style: italic;
font-size: 0.9em; }
.small {
font-size: 0.9em; }
.large {
font-size: 1.1em; }
.quiet {
color: #999999; }
.hide {
display: none; }

View File

@ -0,0 +1,804 @@
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,
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-weight: inherit;
font-style: inherit;
font-size: 100%;
font-family: inherit;
vertical-align: baseline; }
body {
line-height: 1;
color: black;
background: white; }
ol, ul {
list-style: none; }
table {
border-collapse: separate;
border-spacing: 0;
vertical-align: middle; }
caption, th, td {
text-align: left;
font-weight: normal;
vertical-align: middle; }
q, blockquote {
quotes: "" ""; }
q:before, q:after, blockquote:before, blockquote:after {
content: ""; }
a img {
border: none; }
body {
line-height: 1.5;
font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;
color: #333333;
font-size: 75%; }
h1, h2, h3, h4, h5, h6 {
font-weight: normal;
color: #222222; }
h1 img, h2 img, h3 img, h4 img, h5 img, h6 img {
margin: 0; }
h1 {
font-size: 3em;
line-height: 1;
margin-bottom: 0.50em; }
h2 {
font-size: 2em;
margin-bottom: 0.75em; }
h3 {
font-size: 1.5em;
line-height: 1;
margin-bottom: 1.00em; }
h4 {
font-size: 1.2em;
line-height: 1.25;
margin-bottom: 1.25em; }
h5 {
font-size: 1em;
font-weight: bold;
margin-bottom: 1.50em; }
h6 {
font-size: 1em;
font-weight: bold; }
p {
margin: 0 0 1.5em; }
p img.left {
display: inline;
float: left;
margin: 1.5em 1.5em 1.5em 0;
padding: 0; }
p img.right {
display: inline;
float: right;
margin: 1.5em 0 1.5em 1.5em;
padding: 0; }
a {
text-decoration: underline;
color: #000099; }
a:visited {
color: #000066; }
a:focus {
color: black; }
a:hover {
color: black; }
a:active {
color: #cc0099; }
blockquote {
margin: 1.5em;
color: #666666;
font-style: italic; }
strong {
font-weight: bold; }
em {
font-style: italic; }
dfn {
font-style: italic;
font-weight: bold; }
sup, sub {
line-height: 0; }
abbr, acronym {
border-bottom: 1px dotted #666666; }
address {
margin: 0 0 1.5em;
font-style: italic; }
del {
color: #666666; }
pre {
margin: 1.5em 0;
white-space: pre; }
pre, code, tt {
font: 1em "andale mono", "lucida console", monospace;
line-height: 1.5; }
li ul, li ol {
margin: 0; }
ul, ol {
margin: 0 1.5em 1.5em 0;
padding-left: 3.333em; }
ul {
list-style-type: disc; }
ol {
list-style-type: decimal; }
dl {
margin: 0 0 1.5em 0; }
dl dt {
font-weight: bold; }
dd {
margin-left: 1.5em; }
table {
margin-bottom: 1.4em;
width: 100%; }
th {
font-weight: bold; }
thead th {
background: #c3d9ff; }
th, td, caption {
padding: 4px 10px 4px 5px; }
tr.even td {
background: #e5ecf9; }
tfoot {
font-style: italic; }
caption {
background: #eeeeee; }
.quiet {
color: #666666; }
.loud {
color: #111111; }
.clear {
clear: both; }
.nowrap {
white-space: nowrap; }
.clearfix {
overflow: hidden;
display: inline-block; }
.clearfix {
display: block; }
.small {
font-size: 0.8em;
margin-bottom: 1.875em;
line-height: 1.875em; }
.large {
font-size: 1.2em;
line-height: 2.5em;
margin-bottom: 1.25em; }
.first {
margin-left: 0;
padding-left: 0; }
.last {
margin-right: 0;
padding-right: 0; }
.top {
margin-top: 0;
padding-top: 0; }
.bottom {
margin-bottom: 0;
padding-bottom: 0; }
.container {
width: 950px;
margin: 0 auto;
overflow: hidden;
display: inline-block; }
.container {
display: block; }
.column, div.span-1, div.span-2, div.span-3, div.span-4, div.span-5, div.span-6, div.span-7, div.span-8, div.span-9, div.span-10, div.span-11, div.span-12, div.span-13, div.span-14, div.span-15, div.span-16, div.span-17, div.span-18, div.span-19, div.span-20, div.span-21, div.span-22, div.span-23, div.span-24 {
display: inline;
float: left;
margin-right: 10px; }
* html .column, * html div.span-1, * html div.span-2, * html div.span-3, * html div.span-4, * html div.span-5, * html div.span-6, * html div.span-7, * html div.span-8, * html div.span-9, * html div.span-10, * html div.span-11, * html div.span-12, * html div.span-13, * html div.span-14, * html div.span-15, * html div.span-16, * html div.span-17, * html div.span-18, * html div.span-19, * html div.span-20, * html div.span-21, * html div.span-22, * html div.span-23, * html div.span-24 {
overflow-x: hidden; }
.last, div.last {
margin-right: 0; }
.span-1 {
width: 30px; }
.span-2 {
width: 70px; }
.span-3 {
width: 110px; }
.span-4 {
width: 150px; }
.span-5 {
width: 190px; }
.span-6 {
width: 230px; }
.span-7 {
width: 270px; }
.span-8 {
width: 310px; }
.span-9 {
width: 350px; }
.span-10 {
width: 390px; }
.span-11 {
width: 430px; }
.span-12 {
width: 470px; }
.span-13 {
width: 510px; }
.span-14 {
width: 550px; }
.span-15 {
width: 590px; }
.span-16 {
width: 630px; }
.span-17 {
width: 670px; }
.span-18 {
width: 710px; }
.span-19 {
width: 750px; }
.span-20 {
width: 790px; }
.span-21 {
width: 830px; }
.span-22 {
width: 870px; }
.span-23 {
width: 910px; }
.span-24, div.span-24 {
width: 950px;
margin: 0; }
input.span-1, textarea.span-1, select.span-1 {
width: 30px !important; }
input.span-2, textarea.span-2, select.span-2 {
width: 70px !important; }
input.span-3, textarea.span-3, select.span-3 {
width: 110px !important; }
input.span-4, textarea.span-4, select.span-4 {
width: 150px !important; }
input.span-5, textarea.span-5, select.span-5 {
width: 190px !important; }
input.span-6, textarea.span-6, select.span-6 {
width: 230px !important; }
input.span-7, textarea.span-7, select.span-7 {
width: 270px !important; }
input.span-8, textarea.span-8, select.span-8 {
width: 310px !important; }
input.span-9, textarea.span-9, select.span-9 {
width: 350px !important; }
input.span-10, textarea.span-10, select.span-10 {
width: 390px !important; }
input.span-11, textarea.span-11, select.span-11 {
width: 430px !important; }
input.span-12, textarea.span-12, select.span-12 {
width: 470px !important; }
input.span-13, textarea.span-13, select.span-13 {
width: 510px !important; }
input.span-14, textarea.span-14, select.span-14 {
width: 550px !important; }
input.span-15, textarea.span-15, select.span-15 {
width: 590px !important; }
input.span-16, textarea.span-16, select.span-16 {
width: 630px !important; }
input.span-17, textarea.span-17, select.span-17 {
width: 670px !important; }
input.span-18, textarea.span-18, select.span-18 {
width: 710px !important; }
input.span-19, textarea.span-19, select.span-19 {
width: 750px !important; }
input.span-20, textarea.span-20, select.span-20 {
width: 790px !important; }
input.span-21, textarea.span-21, select.span-21 {
width: 830px !important; }
input.span-22, textarea.span-22, select.span-22 {
width: 870px !important; }
input.span-23, textarea.span-23, select.span-23 {
width: 910px !important; }
input.span-24, textarea.span-24, select.span-24 {
width: 950px !important; }
.append-1 {
padding-right: 40px; }
.append-2 {
padding-right: 80px; }
.append-3 {
padding-right: 120px; }
.append-4 {
padding-right: 160px; }
.append-5 {
padding-right: 200px; }
.append-6 {
padding-right: 240px; }
.append-7 {
padding-right: 280px; }
.append-8 {
padding-right: 320px; }
.append-9 {
padding-right: 360px; }
.append-10 {
padding-right: 400px; }
.append-11 {
padding-right: 440px; }
.append-12 {
padding-right: 480px; }
.append-13 {
padding-right: 520px; }
.append-14 {
padding-right: 560px; }
.append-15 {
padding-right: 600px; }
.append-16 {
padding-right: 640px; }
.append-17 {
padding-right: 680px; }
.append-18 {
padding-right: 720px; }
.append-19 {
padding-right: 760px; }
.append-20 {
padding-right: 800px; }
.append-21 {
padding-right: 840px; }
.append-22 {
padding-right: 880px; }
.append-23 {
padding-right: 920px; }
.prepend-1 {
padding-left: 40px; }
.prepend-2 {
padding-left: 80px; }
.prepend-3 {
padding-left: 120px; }
.prepend-4 {
padding-left: 160px; }
.prepend-5 {
padding-left: 200px; }
.prepend-6 {
padding-left: 240px; }
.prepend-7 {
padding-left: 280px; }
.prepend-8 {
padding-left: 320px; }
.prepend-9 {
padding-left: 360px; }
.prepend-10 {
padding-left: 400px; }
.prepend-11 {
padding-left: 440px; }
.prepend-12 {
padding-left: 480px; }
.prepend-13 {
padding-left: 520px; }
.prepend-14 {
padding-left: 560px; }
.prepend-15 {
padding-left: 600px; }
.prepend-16 {
padding-left: 640px; }
.prepend-17 {
padding-left: 680px; }
.prepend-18 {
padding-left: 720px; }
.prepend-19 {
padding-left: 760px; }
.prepend-20 {
padding-left: 800px; }
.prepend-21 {
padding-left: 840px; }
.prepend-22 {
padding-left: 880px; }
.prepend-23 {
padding-left: 920px; }
.pull-1, .pull-2, .pull-3, .pull-4, .pull-5, .pull-6, .pull-7, .pull-8, .pull-9, .pull-10, .pull-11, .pull-12, .pull-13, .pull-14, .pull-15, .pull-16, .pull-17, .pull-18, .pull-19, .pull-20, .pull-21, .pull-22, .pull-23, .pull-24 {
display: inline;
float: left;
position: relative; }
.pull-1 {
margin-left: -40px; }
.pull-2 {
margin-left: -80px; }
.pull-3 {
margin-left: -120px; }
.pull-4 {
margin-left: -160px; }
.pull-5 {
margin-left: -200px; }
.pull-6 {
margin-left: -240px; }
.pull-7 {
margin-left: -280px; }
.pull-8 {
margin-left: -320px; }
.pull-9 {
margin-left: -360px; }
.pull-10 {
margin-left: -400px; }
.pull-11 {
margin-left: -440px; }
.pull-12 {
margin-left: -480px; }
.pull-13 {
margin-left: -520px; }
.pull-14 {
margin-left: -560px; }
.pull-15 {
margin-left: -600px; }
.pull-16 {
margin-left: -640px; }
.pull-17 {
margin-left: -680px; }
.pull-18 {
margin-left: -720px; }
.pull-19 {
margin-left: -760px; }
.pull-20 {
margin-left: -800px; }
.pull-21 {
margin-left: -840px; }
.pull-22 {
margin-left: -880px; }
.pull-23 {
margin-left: -920px; }
.pull-24 {
margin-left: -960px; }
.push-1, .push-2, .push-3, .push-4, .push-5, .push-6, .push-7, .push-8, .push-9, .push-10, .push-11, .push-12, .push-13, .push-14, .push-15, .push-16, .push-17, .push-18, .push-19, .push-20, .push-21, .push-22, .push-23, .push-24 {
display: inline;
float: right;
position: relative; }
.push-1 {
margin: 0 -40px 1.5em 40px; }
.push-2 {
margin: 0 -80px 1.5em 80px; }
.push-3 {
margin: 0 -120px 1.5em 120px; }
.push-4 {
margin: 0 -160px 1.5em 160px; }
.push-5 {
margin: 0 -200px 1.5em 200px; }
.push-6 {
margin: 0 -240px 1.5em 240px; }
.push-7 {
margin: 0 -280px 1.5em 280px; }
.push-8 {
margin: 0 -320px 1.5em 320px; }
.push-9 {
margin: 0 -360px 1.5em 360px; }
.push-10 {
margin: 0 -400px 1.5em 400px; }
.push-11 {
margin: 0 -440px 1.5em 440px; }
.push-12 {
margin: 0 -480px 1.5em 480px; }
.push-13 {
margin: 0 -520px 1.5em 520px; }
.push-14 {
margin: 0 -560px 1.5em 560px; }
.push-15 {
margin: 0 -600px 1.5em 600px; }
.push-16 {
margin: 0 -640px 1.5em 640px; }
.push-17 {
margin: 0 -680px 1.5em 680px; }
.push-18 {
margin: 0 -720px 1.5em 720px; }
.push-19 {
margin: 0 -760px 1.5em 760px; }
.push-20 {
margin: 0 -800px 1.5em 800px; }
.push-21 {
margin: 0 -840px 1.5em 840px; }
.push-22 {
margin: 0 -880px 1.5em 880px; }
.push-23 {
margin: 0 -920px 1.5em 920px; }
.push-24 {
margin: 0 -960px 1.5em 960px; }
.prepend-top {
margin-top: 1.5em; }
.append-bottom {
margin-bottom: 1.5em; }
.showgrid {
background: url('/images/grid.png?1275242906'); }
.error {
padding: 0.8em;
margin-bottom: 1em;
border: 2px solid #dddddd;
background: #fbe3e4;
color: #8a1f11;
border-color: #fbc2c4; }
.error a {
color: #8a1f11; }
.notice {
padding: 0.8em;
margin-bottom: 1em;
border: 2px solid #dddddd;
background: #fff6bf;
color: #514721;
border-color: #ffd324; }
.notice a {
color: #514721; }
.success {
padding: 0.8em;
margin-bottom: 1em;
border: 2px solid #dddddd;
background: #e6efc2;
color: #264409;
border-color: #c6d880; }
.success a {
color: #264409; }
.hide {
display: none; }
.highlight {
background: yellow; }
.added {
background: #006600;
color: white; }
.removed {
background: #990000;
color: white; }
label {
font-weight: bold; }
fieldset {
padding: 1.4em;
margin: 0 0 1.5em 0; }
legend {
font-weight: bold;
font-size: 1.2em; }
input.text, input.title, input[type=text], input[type=password] {
margin: 0.5em 0;
background-color: white;
padding: 5px; }
input.title {
font-size: 1.5em; }
input[type=checkbox], input.checkbox, input[type=radio], input.radio {
position: relative;
top: 0.25em; }
textarea {
margin: 0.5em 0;
padding: 5px; }
select {
margin: 0.5em 0; }
fieldset {
border: 1px solid #cccccc; }
input.text, input.title, input[type=text], input[type=password],
textarea, select {
border: 1px solid #bbbbbb; }
input.text:focus, input.title:focus, input[type=text]:focus, input[type=password]:focus,
textarea:focus, select:focus {
border: 1px solid #666666; }
input.text, input.title, input[type=text], input[type=password] {
width: 300px; }
textarea {
width: 390px;
height: 250px; }
#main.container #top {
display: inline;
float: left;
margin-right: 0;
width: 950px; }
* html #main.container #top {
overflow-x: hidden; }
#main.container #middle {
display: inline;
float: left;
margin-right: 0;
width: 950px; }
* html #main.container #middle {
overflow-x: hidden; }
#main.container #middle #left {
display: inline;
float: left;
margin-right: 10px;
width: 230px; }
* html #main.container #middle #left {
overflow-x: hidden; }
#main.container #middle #content {
display: inline;
float: left;
margin-right: 10px;
width: 470px; }
* html #main.container #middle #content {
overflow-x: hidden; }
#main.container #middle #right {
display: inline;
float: left;
margin-right: 0;
width: 230px; }
* html #main.container #middle #right {
overflow-x: hidden; }
#main.container #bottom {
display: inline;
float: left;
margin-right: 0;
width: 950px; }
* html #main.container #bottom {
overflow-x: hidden; }

View File

@ -0,0 +1,37 @@
.clear {
clear: both; }
.nowrap {
white-space: nowrap; }
.clearfix {
overflow: hidden;
display: inline-block; }
.clearfix {
display: block; }
.small {
font-size: 0.8em;
margin-bottom: 1.875em;
line-height: 1.875em; }
.large {
font-size: 1.2em;
line-height: 2.5em;
margin-bottom: 1.25em; }
.first {
margin-left: 0;
padding-left: 0; }
.last {
margin-right: 0;
padding-right: 0; }
.top {
margin-top: 0;
padding-top: 0; }
.bottom {
margin-bottom: 0;
padding-bottom: 0; }

View File

@ -0,0 +1,3 @@
@import "blueprint/utilities"
+blueprint-utilities

View File

@ -1,5 +1,4 @@
.noprint,
.no-print {
.noprint, .no-print {
display: none; }
address.print-only, blockquote.print-only, center.print-only, dir.print-only, div.print-only, dd.print-only, dl.print-only, dt.print-only, fieldset.print-only, form.print-only, frameset.print-only, h1.print-only, h2.print-only, h3.print-only, h4.print-only, h5.print-only, h6.print-only, hr.print-only, isindex.print-only, menu.print-only, noframes.print-only, noscript.print-only, ol.print-only, p.print-only, pre.print-only, ul.print-only {

View File

@ -1,5 +1,3 @@
/* line 1, ../sass/screen.sass */
.showgrid { background-image: url('http://assets2.example.com/images/grid.png?busted=true'); }
/* line 4, ../sass/screen.sass */
.inlinegrid { background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAUEAYAAACv1qP4AAAABmJLR0T///////8JWPfcAAAACXBIWXMAAABIAAAASABGyWs+AAAAZ0lEQVRYw+3QwQ2AIBAFUTEUwI3+uzN7gDscsIgxEuO8An52J11X73OudfxMraXkzHfO3Y98nQEhA0IGhAwIGRAyIGRAyICQASEDQgaEDAgZEDIgZEDIgJABoZzSGK3tPuN9ERFP7Nw4fg+c5g8V1wAAAABJRU5ErkJggg=='); }

View File

@ -1,5 +1,5 @@
.showgrid
background-image: image_url(unquote("grid.png"))
background-image: image-url(unquote("grid.png"))
.inlinegrid
background-image: inline_image(unquote("grid.png"))
background-image: inline-image(unquote("grid.png"))

View File

@ -1 +1 @@
/* Welcome to Compass. Use this file to write IE specific override styles. Import this file using the following HTML or equivalent: <!--[if IE]> <link href="/stylesheets/ie.css" media="screen, projection" rel="stylesheet" type="text/css" /> <![endif]--> */
/* Welcome to Compass. Use this file to write IE specific override styles. Import this file using the following HTML or equivalent: <!--[if IE]> <link href="/stylesheets/ie.css" media="screen, projection" rel="stylesheet" type="text/css" /> <![endif]--> */