middleman-presentation 0.15.8 → 0.16.0.beta

Sign up to get free protection for your applications and to get access to all the features.
Files changed (146) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +31 -4
  3. data/Rakefile +8 -3
  4. data/bin/middleman-presentation +9 -1
  5. data/bin/mp +9 -1
  6. data/lib/middleman-presentation.rb +1 -71
  7. data/middleman-presentation.gemspec +7 -20
  8. metadata +14 -357
  9. data/.gitignore +0 -33
  10. data/.rdebugrc +0 -7
  11. data/.rspec +0 -5
  12. data/.simplecov +0 -8
  13. data/.travis.yml +0 -8
  14. data/.yardopts +0 -5
  15. data/CONTRIBUTING.md +0 -44
  16. data/Gemfile +0 -49
  17. data/Gemfile.lock +0 -328
  18. data/Guardfile +0 -13
  19. data/LICENSE.software +0 -21
  20. data/README.md +0 -608
  21. data/RELEASE_NOTES.md +0 -36
  22. data/config/license_finder.yml +0 -13
  23. data/config/rubocop/exclude.yml +0 -25
  24. data/config/rubocop/include.yml +0 -142
  25. data/cucumber.yml +0 -2
  26. data/doc/licenses/dependencies.csv +0 -55
  27. data/doc/licenses/dependencies.db +0 -0
  28. data/doc/licenses/dependencies.html +0 -1415
  29. data/doc/licenses/dependencies.md +0 -603
  30. data/doc/licenses/dependencies_detailed.csv +0 -190
  31. data/features/create_presentation-cli.feature +0 -312
  32. data/features/create_theme-cli.feature +0 -62
  33. data/features/grouping_slides.feature +0 -116
  34. data/features/ignore_slides.feature +0 -86
  35. data/features/image_gallery.feature +0 -58
  36. data/features/init_application-cli.feature +0 -91
  37. data/features/init_predefined_slides.feature +0 -13
  38. data/features/presentation.feature +0 -113
  39. data/features/show_config-cli.feature +0 -27
  40. data/features/show_style-cli.feature +0 -21
  41. data/features/show_support_information-cli.feature +0 -12
  42. data/features/slide-cli.feature +0 -311
  43. data/features/step_definitions.rb +0 -135
  44. data/features/support/ci.rb +0 -3
  45. data/features/support/env.rb +0 -19
  46. data/features/support/reporting.rb +0 -2
  47. data/features/version_number.feature +0 -18
  48. data/fixtures/images/image01.png +0 -0
  49. data/fixtures/images/image02.png +0 -0
  50. data/lib/middleman-presentation/cli/create.rb +0 -14
  51. data/lib/middleman-presentation/cli/create_presentation.rb +0 -308
  52. data/lib/middleman-presentation/cli/create_theme.rb +0 -77
  53. data/lib/middleman-presentation/cli/init.rb +0 -34
  54. data/lib/middleman-presentation/cli/reset_thor.rb +0 -18
  55. data/lib/middleman-presentation/cli/runner.rb +0 -18
  56. data/lib/middleman-presentation/cli/show.rb +0 -37
  57. data/lib/middleman-presentation/commands/presentation.rb +0 -23
  58. data/lib/middleman-presentation/commands/slide.rb +0 -86
  59. data/lib/middleman-presentation/commands/style.rb +0 -29
  60. data/lib/middleman-presentation/comparable_slide.rb +0 -69
  61. data/lib/middleman-presentation/css_class_extracter.rb +0 -41
  62. data/lib/middleman-presentation/custom_template.rb +0 -11
  63. data/lib/middleman-presentation/erb_template.rb +0 -11
  64. data/lib/middleman-presentation/existing_slide.rb +0 -133
  65. data/lib/middleman-presentation/extension.rb +0 -12
  66. data/lib/middleman-presentation/file_extensions.rb +0 -60
  67. data/lib/middleman-presentation/frontend_component.rb +0 -82
  68. data/lib/middleman-presentation/group_template.rb +0 -11
  69. data/lib/middleman-presentation/helpers.rb +0 -11
  70. data/lib/middleman-presentation/helpers/images.rb +0 -38
  71. data/lib/middleman-presentation/helpers/slides.rb +0 -31
  72. data/lib/middleman-presentation/helpers/tests.rb +0 -13
  73. data/lib/middleman-presentation/ignore_file.rb +0 -52
  74. data/lib/middleman-presentation/liquid_template.rb +0 -11
  75. data/lib/middleman-presentation/logger.rb +0 -8
  76. data/lib/middleman-presentation/main.rb +0 -40
  77. data/lib/middleman-presentation/markdown_template.rb +0 -11
  78. data/lib/middleman-presentation/new_slide.rb +0 -145
  79. data/lib/middleman-presentation/predefined_slide_templates_directory.rb +0 -11
  80. data/lib/middleman-presentation/presentation_config.rb +0 -48
  81. data/lib/middleman-presentation/slide_group.rb +0 -38
  82. data/lib/middleman-presentation/slide_list.rb +0 -46
  83. data/lib/middleman-presentation/transformers/file_keeper.rb +0 -13
  84. data/lib/middleman-presentation/transformers/group_slides.rb +0 -34
  85. data/lib/middleman-presentation/transformers/ignore_slides.rb +0 -28
  86. data/lib/middleman-presentation/transformers/remove_duplicate_slides.rb +0 -32
  87. data/lib/middleman-presentation/transformers/sort_slides.rb +0 -13
  88. data/lib/middleman-presentation/version.rb +0 -8
  89. data/locales/de.yml +0 -9
  90. data/locales/en.yml +0 -18
  91. data/script/bootstrap +0 -11
  92. data/script/ci +0 -3
  93. data/spec/css_class_extracter_spec.rb +0 -28
  94. data/spec/existing_slide_spec.rb +0 -158
  95. data/spec/frontend_resource_spec.rb +0 -87
  96. data/spec/ignore_file_spec.rb +0 -74
  97. data/spec/new_slide_spec.rb +0 -136
  98. data/spec/shared_examples/.keep +0 -0
  99. data/spec/slide_group_spec.rb +0 -69
  100. data/spec/slide_list_spec.rb +0 -90
  101. data/spec/spec_helper.rb +0 -19
  102. data/spec/support/ci.rb +0 -20
  103. data/spec/support/environment.rb +0 -18
  104. data/spec/support/filesystem.rb +0 -22
  105. data/spec/support/reporting.rb +0 -2
  106. data/spec/support/rspec.rb +0 -9
  107. data/spec/support/string.rb +0 -2
  108. data/spec/transformers/file_keeper_spec.rb +0 -23
  109. data/spec/transformers/group_slides_spec.rb +0 -44
  110. data/spec/transformers/ignore_slides_spec.rb +0 -64
  111. data/spec/transformers/remove_duplicate_slides_spec.rb +0 -120
  112. data/spec/transformers/sort_slides_spec.rb +0 -17
  113. data/templates/.bowerrc.tt +0 -4
  114. data/templates/.gitignore +0 -5
  115. data/templates/LICENSE.presentation +0 -1
  116. data/templates/Rakefile +0 -59
  117. data/templates/bower.json.tt +0 -8
  118. data/templates/config.yaml.tt +0 -41
  119. data/templates/data/config.yml.tt +0 -9
  120. data/templates/data/metadata.yml.tt +0 -77
  121. data/templates/predefined_slides.d/00.html.erb.tt +0 -23
  122. data/templates/predefined_slides.d/999980.html.erb.tt +0 -4
  123. data/templates/predefined_slides.d/999981.html.erb.tt +0 -21
  124. data/templates/predefined_slides.d/999982.html.erb.tt +0 -3
  125. data/templates/presentation_theme/bower.json.tt +0 -20
  126. data/templates/presentation_theme/images/.keep +0 -0
  127. data/templates/presentation_theme/javascripts/%theme_name%.js.tt +0 -0
  128. data/templates/presentation_theme/stylesheets/%theme_name%.scss.tt +0 -9
  129. data/templates/presentation_theme/stylesheets/_fonts.scss.tt +0 -0
  130. data/templates/presentation_theme/stylesheets/_images.scss.tt +0 -5
  131. data/templates/presentation_theme/stylesheets/_theme.scss.tt +0 -251
  132. data/templates/script/bootstrap +0 -5
  133. data/templates/script/build +0 -3
  134. data/templates/script/export +0 -34
  135. data/templates/script/presentation +0 -3
  136. data/templates/script/slide +0 -3
  137. data/templates/script/start +0 -43
  138. data/templates/slides/custom.md.tt +0 -3
  139. data/templates/slides/erb.tt +0 -5
  140. data/templates/slides/group.tt +0 -3
  141. data/templates/slides/liquid.tt +0 -5
  142. data/templates/slides/markdown.tt +0 -3
  143. data/templates/source/index.html.erb +0 -1
  144. data/templates/source/javascripts/application.js.tt +0 -3
  145. data/templates/source/layout.erb +0 -89
  146. data/templates/source/stylesheets/application.scss.tt +0 -3
@@ -1,190 +0,0 @@
1
- activesupport,4.1.4,MIT,A toolkit of support libraries and Ruby core extensions extracted from the Rails framework.,"A toolkit of support libraries and Ruby core extensions extracted from the Rails framework. Rich support for multibyte strings, internationalization, time zones, and testing."
2
- addressable,2.3.6,Apache 2.0,URI Implementation,"Addressable is a replacement for the URI implementation that is part of
3
- Ruby's standard library. It more closely conforms to the relevant RFCs and
4
- adds support for IRIs and URI templates."
5
- bundler,1.6.5,MIT,The best way to manage your application's dependencies,"Bundler manages an application's dependencies through its entire life, across many machines, systematically and repeatably"
6
- celluloid,0.15.2,MIT,Actor-based concurrent object framework for Ruby,Celluloid enables people to build concurrent programs out of concurrent objects just as easily as they build sequential programs out of sequential objects
7
- chunky_png,1.3.1,MIT,"Pure ruby library for read/write, chunk-level access to PNG files","This pure Ruby library can read and write PNG images without depending on an external
8
- image library, like RMagick. It tries to be memory efficient and reasonably fast.
9
-
10
- It supports reading and writing all PNG variants that are defined in the specification,
11
- with one limitation: only 8-bit color depth is supported. It supports all transparency,
12
- interlacing and filtering options the PNG specifications allows. It can also read and
13
- write textual metadata from PNG files. Low-level read/write access to PNG chunks is
14
- also possible.
15
-
16
- This library supports simple drawing on the image canvas and simple operations like
17
- alpha composition and cropping. Finally, it can import from and export to RMagick for
18
- interoperability.
19
-
20
- Also, have a look at OilyPNG at http://github.com/wvanbergen/oily_png. OilyPNG is a
21
- drop in mixin module that implements some of the ChunkyPNG algorithms in C, which
22
- provides a massive speed boost to encoding and decoding."
23
- coffee-script,2.3.0,MIT,Ruby CoffeeScript Compiler,Ruby CoffeeScript is a bridge to the JS CoffeeScript compiler.
24
- coffee-script-source,1.7.1,MIT,The CoffeeScript Compiler,"CoffeeScript is a little language that compiles into JavaScript.
25
- Underneath all of those embarrassing braces and semicolons,
26
- JavaScript has always had a gorgeous object model at its heart.
27
- CoffeeScript is an attempt to expose the good parts of JavaScript
28
- in a simple way."
29
- compass,0.12.7,MIT,A Real Stylesheet Framework,Compass is a Sass-based Stylesheet Framework that streamlines the creation and maintenance of CSS.
30
- compass-import-once,1.0.4,MIT,Speed up your Sass compilation by making @import only import each file once.,Changes the behavior of Sass's @import directive to only import a file once.
31
- em-websocket,0.5.1,MIT,EventMachine based WebSocket server,EventMachine based WebSocket server
32
- erubis,2.7.0,MIT,a fast and extensible eRuby implementation which supports multi-language,"Erubis is an implementation of eRuby and has the following features:
33
-
34
- * Very fast, almost three times faster than ERB and about 10% faster than eruby.
35
- * Multi-language support (Ruby/PHP/C/Java/Scheme/Perl/Javascript)
36
- * Auto escaping support
37
- * Auto trimming spaces around '<% %>'
38
- * Embedded pattern changeable (default '<% %>')
39
- * Enable to handle Processing Instructions (PI) as embedded pattern (ex. '<?rb ... ?>')
40
- * Context object available and easy to combine eRuby template with YAML datafile
41
- * Print statement available
42
- * Easy to extend and customize in subclass
43
- * Ruby on Rails support"
44
- eventmachine,1.0.3,ruby,Ruby/EventMachine library,"EventMachine implements a fast, single-threaded engine for arbitrary network
45
- communications. It's extremely easy to use in Ruby. EventMachine wraps all
46
- interactions with IP sockets, allowing programs to concentrate on the
47
- implementation of network protocols. It can be used to create both network
48
- servers and clients. To create a server or client, a Ruby program only needs
49
- to specify the IP address and port, and provide a Module that implements the
50
- communications protocol. Implementations of several standard network protocols
51
- are provided with the package, primarily to serve as examples. The real goal
52
- of EventMachine is to enable programs to easily interface with other programs
53
- using TCP/IP, especially if custom protocols are required."
54
- execjs,2.2.1,MIT,Run JavaScript code from Ruby,ExecJS lets you run JavaScript code from Ruby.
55
- facter,2.1.0,Apache 2.0,"Facter, a system inventory tool",You can prove anything with facts!
56
- fedux_org-stdlib,0.6.50,MIT,Collection of useful libraries. It maybe depend on external libraries.,""
57
- ffi,1.9.3,BSD,Ruby FFI,Ruby FFI library
58
- fssm,0.2.10,MIT,File System State Monitor,"The File System State Monitor keeps track of the state of any number of paths and will fire events when said state changes (create/update/delete). FSSM supports using FSEvents on MacOS, Inotify on GNU/Linux, and polling anywhere else."
59
- haml,4.0.5,MIT,"An elegant, structured (X)HTML/XML templating engine.","Haml (HTML Abstraction Markup Language) is a layer on top of HTML or XML that's
60
- designed to express the structure of documents in a non-repetitive, elegant, and
61
- easy way by using indentation rather than closing tags and allowing Ruby to be
62
- embedded with ease. It was originally envisioned as a plugin for Ruby on Rails,
63
- but it can function as a stand-alone templating engine."
64
- hike,1.2.3,MIT,Find files in a set of paths,A Ruby library for finding files in a set of paths.
65
- hooks,0.4.0,MIT,Generic hooks with callbacks for Ruby.,"Declaratively define hooks, add callbacks and run them with the options you like."
66
- http_parser.rb,0.6.0,MIT,Simple callback-based HTTP request/response parser,Ruby bindings to http://github.com/ry/http-parser and http://github.com/a2800276/http-parser.java
67
- i18n,0.6.11,MIT,New wave Internationalization support for Ruby,New wave Internationalization support for Ruby.
68
- json,1.8.1,ruby,This json is bundled with Ruby,""
69
- kramdown,1.4.1,MIT,"kramdown is a fast, pure-Ruby Markdown-superset converter.","kramdown is yet-another-markdown-parser but fast, pure Ruby,
70
- using a strict syntax definition and supporting several common extensions."
71
- launchy,2.4.2,ISC,Launchy is helper class for launching cross-platform applications in a fire and forget manner.,"Launchy is helper class for launching cross-platform applications in a fire and forget manner. There are application concepts (browser, email client, etc) that are common across all platforms, and they may be launched differently on each platform. Launchy is here to make a common approach to launching external application from within ruby programs."
72
- liquid,2.6.1,MIT,"A secure, non-evaling end user template engine with aesthetic markup.",""
73
- listen,2.7.9,MIT,Listen to file modifications,The Listen gem listens to file modifications and notifies you about the changes. Works everywhere!
74
- middleman,3.3.4,MIT,Hand-crafted frontend development,"A static site generator. Provides dozens of templating languages (Haml, Sass, Compass, Slim, CoffeeScript, and more). Makes minification, compression, cache busting, Yaml data (and more) an easy part of your development cycle."
75
- middleman-core,3.3.4,MIT,Hand-crafted frontend development,"A static site generator. Provides dozens of templating languages (Haml, Sass, Compass, Slim, CoffeeScript, and more). Makes minification, compression, cache busting, Yaml data (and more) an easy part of your development cycle."
76
- middleman-livereload,3.3.4,MIT,LiveReload support for Middleman,LiveReload support for Middleman
77
- middleman-presentation,0.15.2,MIT,Presentation engine for Middleman,""
78
- middleman-sprockets,3.3.6,MIT,Sprockets support for Middleman,Sprockets support for Middleman
79
- mini_portile,0.6.0,MIT,Simplistic port-like solution for developers,Simplistic port-like solution for developers. It provides a standard and simplified way to compile against dependency libraries without messing up your system.
80
- minitest,5.4.0,MIT,"minitest provides a complete suite of testing facilities supporting TDD, BDD, mocking, and benchmarking","minitest provides a complete suite of testing facilities supporting
81
- TDD, BDD, mocking, and benchmarking.
82
-
83
- ""I had a class with Jim Weirich on testing last week and we were
84
- allowed to choose our testing frameworks. Kirk Haines and I were
85
- paired up and we cracked open the code for a few test
86
- frameworks...
87
-
88
- I MUST say that minitest is *very* readable / understandable
89
- compared to the 'other two' options we looked at. Nicely done and
90
- thank you for helping us keep our mental sanity.""
91
-
92
- -- Wayne E. Seguin
93
-
94
- minitest/unit is a small and incredibly fast unit testing framework.
95
- It provides a rich set of assertions to make your tests clean and
96
- readable.
97
-
98
- minitest/spec is a functionally complete spec engine. It hooks onto
99
- minitest/unit and seamlessly bridges test assertions over to spec
100
- expectations.
101
-
102
- minitest/benchmark is an awesome way to assert the performance of your
103
- algorithms in a repeatable manner. Now you can assert that your newb
104
- co-worker doesn't replace your linear algorithm with an exponential
105
- one!
106
-
107
- minitest/mock by Steven Baker, is a beautifully tiny mock (and stub)
108
- object framework.
109
-
110
- minitest/pride shows pride in testing and adds coloring to your test
111
- output. I guess it is an example of how to write IO pipes too. :P
112
-
113
- minitest/unit is meant to have a clean implementation for language
114
- implementors that need a minimal set of methods to bootstrap a working
115
- test suite. For example, there is no magic involved for test-case
116
- discovery.
117
-
118
- ""Again, I can't praise enough the idea of a testing/specing
119
- framework that I can actually read in full in one sitting!""
120
-
121
- -- Piotr Szotkowski
122
-
123
- Comparing to rspec:
124
-
125
- rspec is a testing DSL. minitest is ruby.
126
-
127
- -- Adam Hawkins, ""Bow Before MiniTest""
128
-
129
- minitest doesn't reinvent anything that ruby already provides, like:
130
- classes, modules, inheritance, methods. This means you only have to
131
- learn ruby to use minitest and all of your regular OO practices like
132
- extract-method refactorings still apply."
133
- multi_json,1.10.1,MIT,A common interface to multiple JSON libraries.,"A common interface to multiple JSON libraries, including Oj, Yajl, the JSON gem (with C-extensions), the pure-Ruby JSON gem, NSJSONSerialization, gson.rb, JrJackson, and OkJson."
134
- nokogiri,1.6.3.1,MIT,"Nokogiri (鋸) is an HTML, XML, SAX, and Reader parser","Nokogiri (鋸) is an HTML, XML, SAX, and Reader parser. Among Nokogiri's
135
- many features is the ability to search documents via XPath or CSS3 selectors.
136
-
137
- XML is like violence - if it doesn’t solve your problems, you are not using
138
- enough of it."
139
- padrino-helpers,0.12.2,MIT,Helpers for padrino,"Tag helpers, asset helpers, form helpers, form builders and many more helpers for padrino"
140
- padrino-support,0.12.2,MIT,Support for padrino,A number of support methods and extensions for Padrino framework
141
- rack,1.5.2,MIT,a modular Ruby webserver interface,"Rack provides a minimal, modular and adaptable interface for developing
142
- web applications in Ruby. By wrapping HTTP requests and responses in
143
- the simplest way possible, it unifies and distills the API for web
144
- servers, web frameworks, and software in between (the so-called
145
- middleware) into a single method call.
146
-
147
- Also see http://rack.github.com/."
148
- rack-livereload,0.3.15,MIT,Insert LiveReload into your app easily as Rack middleware,Insert LiveReload into your app easily as Rack middleware
149
- rack-test,0.6.2,MIT,Simple testing API built on Rack,"Rack::Test is a small, simple testing API for Rack apps. It can be used on its
150
- own or as a reusable starting point for Web frameworks and testing libraries
151
- to build on. Most of its initial functionality is an extraction of Merb 1.0's
152
- request helpers feature."
153
- rake,10.3.2,MIT,Rake is a Make-like program implemented in Ruby,"Rake is a Make-like program implemented in Ruby. Tasks and dependencies are
154
- specified in standard Ruby syntax.
155
-
156
- Rake has the following features:
157
-
158
- * Rakefiles (rake's version of Makefiles) are completely defined in
159
- standard Ruby syntax. No XML files to edit. No quirky Makefile
160
- syntax to worry about (is that a tab or a space?)
161
-
162
- * Users can specify tasks with prerequisites.
163
-
164
- * Rake supports rule patterns to synthesize implicit tasks.
165
-
166
- * Flexible FileLists that act like arrays but know about manipulating
167
- file names and paths.
168
-
169
- * A library of prepackaged tasks to make building rakefiles easier. For example,
170
- tasks for building tarballs and publishing to FTP or SSH sites. (Formerly
171
- tasks for building RDoc and Gems were included in rake but they're now
172
- available in RDoc and RubyGems respectively.)
173
-
174
- * Supports parallel execution of tasks."
175
- rb-fsevent,0.9.4,MIT,Very simple & usable FSEvents API,FSEvents API with Signals catching (without RubyCocoa)
176
- rb-inotify,0.9.5,MIT,"A Ruby wrapper for Linux's inotify, using FFI","A Ruby wrapper for Linux's inotify, using FFI"
177
- sass,3.2.19,MIT,A powerful but elegant CSS compiler that makes CSS fun again.,"Sass makes CSS fun again. Sass is an extension of CSS3, adding
178
- nested rules, variables, mixins, selector inheritance, and more.
179
- It's translated to well-formatted, standard CSS using the
180
- command line tool or a web-framework plugin."
181
- sprockets,2.12.1,MIT,Rack-based asset packaging system,"Sprockets is a Rack-based asset packaging system that concatenates and serves JavaScript, CoffeeScript, CSS, LESS, Sass, and SCSS."
182
- sprockets-helpers,1.1.0,MIT,Asset path helpers for Sprockets 2.x applications,Asset path helpers for Sprockets 2.x applications
183
- sprockets-sass,1.2.0,MIT,Better Sass integration with Sprockets 2.0,"When using Sprockets 2.0 with Sass you will eventually run into a pretty big issue. `//= require` directives will not allow Sass mixins, variables, etc. to be shared between files. So you'll try to use `@import`, and that'll also blow up in your face. `sprockets-sass` fixes all of this by creating a Sass::Importer that is Sprockets aware."
184
- thor,0.19.1,MIT,Thor is a toolkit for building powerful command-line interfaces.,Thor is a toolkit for building powerful command-line interfaces.
185
- thread_safe,0.3.4,Apache 2.0,A collection of data structures and utilities to make thread-safe programming in Ruby easier,Thread-safe collections and utilities for Ruby
186
- tilt,1.4.1,MIT,Generic interface to multiple Ruby template engines,Generic interface to multiple Ruby template engines
187
- timers,1.1.0,MIT,"Schedule procs to run after a certain time, or at periodic intervals, using any API that accepts a timeout",Pure Ruby one-shot and periodic timers
188
- tzinfo,1.2.2,MIT,Daylight savings aware timezone library,TZInfo provides daylight savings aware transformations between times in different time zones.
189
- uber,0.0.8,MIT,"Gem-authoring tools like class method inheritance in modules, dynamic options and more.",A gem-authoring framework.
190
- uglifier,2.5.3,MIT,Ruby wrapper for UglifyJS JavaScript compressor,Uglifier minifies JavaScript files by wrapping UglifyJS to be accessible in Ruby
@@ -1,312 +0,0 @@
1
- Feature: Initialize presentation
2
-
3
- As a presentator
4
- I want to create a new presentation
5
- In order to use it
6
-
7
- Background:
8
- Given a mocked home directory
9
- And git is configured with username "User" and email-address "email@example.com"
10
-
11
- Scenario: Initialize with short command
12
- Given I successfully run `middleman-presentation create presentation1 --title "My Presentation"`
13
- When I cd to "presentation1"
14
- Then the file "config.rb" should contain:
15
- """
16
- activate :presentation
17
- """
18
- And the file "Gemfile" should contain:
19
- """
20
- middleman-presentation
21
- """
22
- And a file named "bower.json" should exist
23
- And a file named ".bowerrc" should exist
24
- And a file named ".gitignore" should exist
25
- And a file named "source/layout.erb" should exist
26
- And a file named "source/slides/00.html.erb" should exist
27
- And a file named "source/slides/999980.html.erb" should exist
28
- And a file named "source/slides/999981.html.erb" should exist
29
- And a file named "source/slides/999982.html.erb" should exist
30
- And a file named "source/index.html.erb" should exist
31
- And a file named "source/stylesheets/application.scss" should exist
32
- And a file named "source/javascripts/application.js" should exist
33
- And a file named "script/start" should exist
34
- And a file named "Rakefile" should exist
35
- And a directory named "source/images" should exist
36
- And a directory named "vendor/assets/components" should exist
37
- And the file "data/metadata.yml" should contain:
38
- """
39
- project_id:
40
- """
41
- Then a directory named "vendor/assets/components/middleman-presentation-theme-default" should exist
42
- And the file "source/stylesheets/application.scss" should contain:
43
- """
44
- @import 'middleman-presentation-theme-common/stylesheets/middleman-presentation-theme-common';
45
- """
46
- And the file "source/stylesheets/application.scss" should contain:
47
- """
48
- @import 'middleman-presentation-theme-default/stylesheets/middleman-presentation-theme-default';
49
- """
50
-
51
- Scenario: Initialize with long command
52
- Given I successfully run `middleman-presentation create presentation presentation1 --title "My Presentation"`
53
- When I cd to "presentation1"
54
- Then the file "config.rb" should contain:
55
- """
56
- activate :presentation
57
- """
58
- And the file "Gemfile" should contain:
59
- """
60
- middleman-presentation
61
- """
62
- And a file named "bower.json" should exist
63
- And a file named ".bowerrc" should exist
64
- And a file named ".gitignore" should exist
65
- And a file named "source/layout.erb" should exist
66
- And a file named "source/slides/00.html.erb" should exist
67
- And a file named "source/index.html.erb" should exist
68
- And a file named "source/stylesheets/application.scss" should exist
69
- And a file named "source/javascripts/application.js" should exist
70
- And a file named "script/start" should exist
71
- And a file named "Rakefile" should exist
72
- And a directory named "source/images" should exist
73
- And a directory named "vendor/assets/components" should exist
74
- And the file "data/metadata.yml" should contain:
75
- """
76
- project_id:
77
- """
78
- Then a directory named "vendor/assets/components/middleman-presentation-theme-default" should exist
79
- And the file "source/stylesheets/application.scss" should contain:
80
- """
81
- @import 'middleman-presentation-theme-common/stylesheets/middleman-presentation-theme-common';
82
- """
83
- And the file "source/stylesheets/application.scss" should contain:
84
- """
85
- @import 'middleman-presentation-theme-default/stylesheets/middleman-presentation-theme-default';
86
- """
87
-
88
- Scenario: Existing configuration file
89
- Given a file named "~/.config/middleman/presentation/presentations.yaml" with:
90
- """
91
- author: TestUser
92
- company: MyCompany
93
- email_address: test_user@example.com
94
- homepage: http://example.com
95
- language: en
96
- speaker: TestUser
97
- """
98
- When I successfully run `middleman-presentation create presentation presentation1 --title "My Presentation"`
99
- When I cd to "presentation1"
100
- Then the file "data/metadata.yml" should contain:
101
- """
102
- author: TestUser
103
- """
104
- Then the file "data/metadata.yml" should contain:
105
- """
106
- company: MyCompany
107
- """
108
- Then the file "data/metadata.yml" should contain:
109
- """
110
- email_address: test_user@example.com
111
- """
112
- Then the file "data/metadata.yml" should contain:
113
- """
114
- homepage: http://example.com
115
- """
116
- Then the file "data/metadata.yml" should contain:
117
- """
118
- speaker: TestUser
119
- """
120
-
121
- Scenario: Use language from configuration file
122
- Given a file named "~/.config/middleman/presentation/presentations.yaml" with:
123
- """
124
- language: de
125
- """
126
- When I successfully run `middleman-presentation create presentation presentation1 --title "My Presentation"`
127
- And I cd to "presentation1"
128
- Then the file "source/slides/999980.html.erb" should contain:
129
- """
130
- Fragen
131
- """
132
-
133
- Scenario: German umlauts, French accents and special chars are not a problem for project id
134
- When I successfully run `middleman-presentation create presentation presentation1 --title "üöà~?§$%&/()=#!"`
135
- And I cd to "presentation1"
136
- And the file "data/metadata.yml" should contain:
137
- """
138
- project_id: uoa
139
- """
140
-
141
- Scenario: Use lang from environment as language in slides
142
- Given I set the environment variables to:
143
- | variable | value |
144
- | LANG | de_DE.UTF-8|
145
- When I successfully run `middleman-presentation create presentation presentation1 --title "My Presentation"`
146
- And I cd to "presentation1"
147
- Then the file "source/slides/999980.html.erb" should contain:
148
- """
149
- Fragen
150
- """
151
-
152
- Scenario: Use lang from command line as language in slides
153
- Given I set the environment variables to:
154
- | variable | value |
155
- | LANG | de_DE.UTF-8|
156
- And I successfully run `middleman-presentation create presentation presentation1 --title "My Presentation" --language en`
157
- When I cd to "presentation1"
158
- When I successfully run `env`
159
- And the file "source/slides/999980.html.erb" should contain:
160
- """
161
- Questions
162
- """
163
-
164
- Scenario: Ignore case of lang value
165
- Given I set the environment variables to:
166
- | variable | value |
167
- | LANG | de_de.utf-8|
168
- And I successfully run `middleman-presentation create presentation presentation1 --title "My Presentation"`
169
- When I cd to "presentation1"
170
- When I successfully run `env`
171
- And the file "source/slides/999980.html.erb" should contain:
172
- """
173
- Fragen
174
- """
175
-
176
- Scenario: Use englisch language in slides based if garbabe in environment variable
177
- Given I set the environment variables to:
178
- | variable | value |
179
- | LANG | asdf |
180
- And I successfully run `middleman-presentation create presentation presentation1 --title "My Presentation"`
181
- When I cd to "presentation1"
182
- And the file "source/slides/999980.html.erb" should contain:
183
- """
184
- Questions
185
- """
186
-
187
- Scenario: Use englisch language in slides if given garbabe on command line
188
- Given I successfully run `middleman-presentation create presentation presentation1 --title "My Presentation" --language adsfasdfn`
189
- When I cd to "presentation1"
190
- And the file "source/slides/999980.html.erb" should contain:
191
- """
192
- Questions
193
- """
194
-
195
- Scenario: Use different theme
196
- Given a file named "~/.config/middleman/presentation/presentations.yaml" with:
197
- """
198
- theme:
199
- name: middleman-presentation-theme-fedux_org
200
- github: maxmeyer/middleman-presentation-theme-fedux_org
201
- stylesheets:
202
- - stylesheets/middleman-presentation-theme-fedux_org
203
- """
204
- And I successfully run `middleman-presentation create presentation presentation1 --title "My Presentation"`
205
- When I cd to "presentation1"
206
- Then a directory named "vendor/assets/components/middleman-presentation-theme-fedux_org" should exist
207
- And the file "source/stylesheets/application.scss" should contain:
208
- """
209
- @import 'middleman-presentation-theme-common/stylesheets/middleman-presentation-theme-common';
210
- """
211
- And the file "source/stylesheets/application.scss" should contain:
212
- """
213
- @import 'middleman-presentation-theme-fedux_org/stylesheets/middleman-presentation-theme-fedux_org';
214
- """
215
-
216
- Scenario: Fails if bower is not installed
217
- Given only the executables of gems "middleman-core, middleman-presentation" can be found in PATH
218
- When I run `middleman-presentation create presentation presentation1 --title "My Presentation"`
219
- Then the output should contain:
220
- """
221
- cannot be found in PATH
222
- """
223
-
224
- Scenario: Fails if bower update fails
225
- Given a file named "~/bin/bower" with mode "0755" and with:
226
- """
227
- #!/bin/bash
228
- echo "Failed" >&2
229
- exit 1
230
- """
231
- And only the executables of gems "middleman-core, middleman-presentation" can be found in PATH
232
- And I set the environment variables to:
233
- | variable | value | action |
234
- | PATH | ~/bin: | . |
235
- And I run `middleman-presentation create presentation presentation1 --title "My Presentation"`
236
- Then the output should contain:
237
- """
238
- Failed
239
- """
240
-
241
- Scenario: No predefined slides
242
- When I successfully run `middleman-presentation create presentation presentation1 --title "My Presentation" --no-create-predefined-slides`
243
- Then a file named "source/slides/00.html.erb" should not exist
244
- And a file named "source/slides/999980.html.erb" should not exist
245
- And a file named "source/slides/999981.html.erb" should not exist
246
- And a file named "source/slides/999982.html.erb" should not exist
247
-
248
- Scenario: Custom start slide template
249
- Given a user template named "predefined_slides.d/00.html.erb.tt" with:
250
- """
251
- <section>
252
- <h1>Start</h1>
253
- </section>
254
- """
255
- And I successfully run `middleman-presentation create presentation presentation1 --title "My Presentation"`
256
- When I cd to "presentation1"
257
- Then a slide named "00.html.erb" exist with:
258
- """
259
- <section>
260
- <h1>Start</h1>
261
- </section>
262
- """
263
-
264
- Scenario: Custom questions template
265
- Given a user template named "predefined_slides.d/999980.html.erb.tt" with:
266
- """
267
- <section>
268
- <h1>Questions? Really</h1>
269
- </section>
270
- """
271
- And I successfully run `middleman-presentation create presentation presentation1 --title "My Presentation"`
272
- When I cd to "presentation1"
273
- Then a slide named "999980.html.erb" exist with:
274
- """
275
- <section>
276
- <h1>Questions? Really</h1>
277
- </section>
278
- """
279
-
280
- Scenario: Custom contact template
281
- Given a user template named "predefined_slides.d/999981.html.erb.tt" with:
282
- """
283
- <section>
284
- <h1>Contact</h1>
285
- Me and You
286
- </section>
287
- """
288
- And I successfully run `middleman-presentation create presentation presentation1 --title "My Presentation"`
289
- When I cd to "presentation1"
290
- Then a slide named "999981.html.erb" exist with:
291
- """
292
- <section>
293
- <h1>Contact</h1>
294
- Me and You
295
- </section>
296
- """
297
-
298
- Scenario: Custom end slide template
299
- Given a user template named "predefined_slides.d/999982.html.erb.tt" with:
300
- """
301
- <section>
302
- <h1>See you!</h1>
303
- </section>
304
- """
305
- And I successfully run `middleman-presentation create presentation presentation1 --title "My Presentation"`
306
- When I cd to "presentation1"
307
- Then a slide named "999982.html.erb" exist with:
308
- """
309
- <section>
310
- <h1>See you!</h1>
311
- </section>
312
- """