spec/sinatra/bootstrap/css_spec.rb in skellington-0.8.9 vs spec/sinatra/bootstrap/css_spec.rb in skellington-0.9.0.pre.rc1
- old
+ new
@@ -1,153 +1,162 @@
module Skellington
describe CLI do
- let :subject do
- described_class.new
- end
+ context 'sinatra' do
+ let :subject do
+ described_class.new
+ end
- it 'installs bootstrap' do
- subject.generate 'dummy-app'
+ it 'installs bootstrap' do
+ subject.generate 'dummy-app'
- expect(File).to exist 'dummy_app/public/sass/palettes/_default.scss'
- expect('dummy_app/public/sass/_colours.scss').to have_content (
- """
- @import 'palettes/default';
+ expect(File).to exist 'dummy_app/public/sass/palettes/_default.scss'
+ expect('dummy_app/public/sass/_colours.scss').to have_content (
+ """
+ @import 'palettes/default';
- $brand-primary: $rgba-primary-0;
- //$brand-complement: $rgba-complement-0;
- //$brand-secondary-1: $rgba-secondary-1-0;
- //$brand-secondary-2: $rgba-secondary-2-0;
+ //$brand-primary: $rgba-primary-0;
+ //$brand-complement: $rgba-complement-0;
+ //$brand-secondary-1: $rgba-secondary-1-0;
+ //$brand-secondary-2: $rgba-secondary-2-0;
- $grey: rgb(127, 127, 127);
- $light-grey: lighten($grey, 25%);
- $dark-grey: darken($grey, 25%);
- """
- )
- expect('dummy_app/public/sass/_fonts.scss').to have_content (
- """
- $font-primary: 'Ubuntu Mono';
- """
- )
+ $grey: rgb(127, 127, 127);
+ $light-grey: lighten($grey, 25%);
+ $dark-grey: darken($grey, 25%);
- expect('dummy_app/public/sass/_footer.scss').to have_content (
- """
- html {
- position: relative;
- min-height: 100%;
- }
+ $theme-colors: (
+ primary: $rgba-primary-0,
+ secondary: $rgba-secondary-1-0,
+ // success: $green,
+ // info: $cyan,
+ // warning: $yellow,
+ // danger: $red,
+ // light: $gray-100,
+ // dark: $gray-800
+ )
+ """
+ )
+ expect('dummy_app/public/sass/_fonts.scss').to have_content (
+ """
+ $font-primary: 'Ubuntu Mono';
+ """
+ )
- body {
- margin-bottom: $footer-height;
- }
+ expect('dummy_app/public/sass/_footer.scss').to have_content (
+ """
+ html {
+ position: relative;
+ min-height: 100%;
+ }
- .footer {
- position: absolute;
- bottom: 0;
- width: 100%;
+ body {
+ margin-bottom: $footer-height;
+ }
- text-align: center;
+ .footer {
+ position: absolute;
+ bottom: 0;
+ width: 100%;
- margin-top: $padding-large-vertical;
- background: $brand-primary;
- color: white;
- height: $footer-height;
+ text-align: center;
- padding: $padding-large-vertical $padding-large-horizontal;
+ background: map-get($theme-colors, primary);
+ color: white;
+ height: $footer-height;
- ul {
- @extend .list-inline;
- }
+ ul {
+ @extend .list-inline;
+ }
- a {
- color: white;
+ a {
+ color: white;
+ }
}
- }
- """
- )
+ """
+ )
- expect('dummy_app/public/sass/_nav.scss').to have_content (
- """
- .navbar-default {
- .navbar-nav {
- li {
- a {
- color: $brand-primary;
+ expect('dummy_app/public/sass/_nav.scss').to have_content (
+ """
+ .navbar-default {
+ .navbar-nav {
+ li {
+ a {
+ color: $brand-primary;
+ }
}
}
}
- }
- """
- )
+ """
+ )
- expect('dummy_app/public/sass/_github-corner.scss').to have_content (
- """
- .octo-background {
- fill: $brand-primary;
- }
-
- .octo-arm, .octo-body {
- fill: white;
- }
-
- .github-corner:hover .octo-arm {
- animation: octocat-wave 560ms ease-in-out
- }
-
- @keyframes octocat-wave {
- 0%, 100% {
- transform: rotate(0)
+ expect('dummy_app/public/sass/_github-corner.scss').to have_content (
+ """
+ .octo-background {
+ fill: $brand-primary;
}
- 20%, 60% {
- transform: rotate(-25deg)
+ .octo-arm, .octo-body {
+ fill: white;
}
- 40%, 80% {
- transform: rotate(10deg)
+ .github-corner:hover .octo-arm {
+ animation: octocat-wave 560ms ease-in-out
}
- }
- @media (max-width: 500px) {
- .github-corner:hover .octo-arm {
- animation: none
+ @keyframes octocat-wave {
+ 0%, 100% {
+ transform: rotate(0)
+ }
+
+ 20%, 60% {
+ transform: rotate(-25deg)
+ }
+
+ 40%, 80% {
+ transform: rotate(10deg)
+ }
}
- .github-corner .octo-arm {
- animation: octocat-wave 560ms ease-in-out
+ @media (max-width: 500px) {
+ .github-corner:hover .octo-arm {
+ animation: none
+ }
+
+ .github-corner .octo-arm {
+ animation: octocat-wave 560ms ease-in-out
+ }
}
- }
- .github-corner {
- svg {
- position: absolute;
- top: $navbar-height;
- right: 0;
+ .github-corner {
+ svg {
+ position: absolute;
+ top: $navbar-height;
+ right: 0;
+ }
}
- }
- """
- )
- end
+ """
+ )
+ end
- it 'sets up sass' do
- subject.generate 'dummy-app'
+ it 'sets up sass' do
+ subject.generate 'dummy-app'
- expect('dummy_app/public/sass/styles.scss').to have_content (
- """
- @import 'variables';
- @import 'colours';
- @import 'fonts';
+ expect('dummy_app/public/sass/styles.scss').to have_content (
+ """
+ @import 'variables';
+ @import 'colours';
+ @import 'fonts';
- @import 'bootstrap';
+ @import '../../_sass/bootstrap';
- @import 'footer';
- @import 'nav';
- //@import 'github-corner';
+ @import 'footer';
+ //@import 'github-corner';
- h1 {
- color: $brand-primary;
- font-family: $font-primary;
- }
- """
- )
+ h1 {
+ color: map-get($theme-colors, primary);
+ font-family: $font-primary;
+ }
+ """
+ )
+ end
end
end
end