diff --git a/spec/fixtures/mixins/grid-media.scss b/spec/fixtures/mixins/grid-media.scss new file mode 100644 index 00000000..acb0b012 --- /dev/null +++ b/spec/fixtures/mixins/grid-media.scss @@ -0,0 +1,39 @@ +@import "setup"; + +$medium-screen: 1000px; + +$custom-neat-grid: ( + columns: 12, + gutter: 50px, + media: $medium-screen, +); + +$specific-neat-grid: ( + columns: 12, + gutter: 80px, + media: "only screen and (min-width: 1000px) and (max-width: 1100px)", +); + +$print-neat-grid: ( + columns: 10, + gutter: 20px, + media: print, +); + +.grid-column-media-custom-neat-grid { + @include grid-media($custom-neat-grid) { + @include grid-column(3); + } +} + +.grid-column-media-specific-neat-grid { + @include grid-media($specific-neat-grid) { + @include grid-column(6); + } +} + +.grid-column-media-print-neat-grid { + @include grid-media($print-neat-grid) { + @include grid-column(8); + } +} diff --git a/spec/neat/mixins/grid_media_spec.rb b/spec/neat/mixins/grid_media_spec.rb new file mode 100644 index 00000000..178b5d8d --- /dev/null +++ b/spec/neat/mixins/grid_media_spec.rb @@ -0,0 +1,25 @@ +require "spec_helper" + +describe "@include grid-media() {...}" do + before(:all) do + ParserSupport.parse_file("mixins/grid-media") + end + + context "with argument ($custom-neat-grid)" do + it "outputs @media only screen and (min-width: 1000px)" do + expect(".grid-column-media-custom-neat-grid").to be_contained_in("only screen and (min-width: 1000px)") + end + end + + context "with argument ($specific-neat-grid)" do + it "outputs @media only screen and (min-width: 1000px) and (max-width: 1100px)" do + expect(".grid-column-media-specific-neat-grid").to be_contained_in("only screen and (min-width: 1000px) and (max-width: 1100px)") + end + end + + context "with argument ($print-neat-grid)" do + it "outputs @media print" do + expect(".grid-column-media-print-neat-grid").to be_contained_in("print") + end + end +end