Skip to content
This repository has been archived by the owner on Jun 5, 2020. It is now read-only.

Commit

Permalink
Updated RSpec test framework
Browse files Browse the repository at this point in the history
  • Loading branch information
jamtur01 committed Feb 27, 2013
1 parent f752e7a commit 409d29a
Show file tree
Hide file tree
Showing 13 changed files with 38 additions and 359 deletions.
7 changes: 7 additions & 0 deletions .gemfile
@@ -0,0 +1,7 @@
source :rubygems

puppetversion = ENV['PUPPET_VERSION']
gem 'puppet', puppetversion, :require => false
gem 'puppet-lint'
gem 'rspec-puppet'
gem 'puppetlabs_spec_helper', '>= 0.1.0'
24 changes: 24 additions & 0 deletions .travis.yml
@@ -0,0 +1,24 @@
language: ruby
rvm:
- 1.8.7
- 1.9.3
- ruby-head
script:
- "rake lint"
- "rake spec SPEC_OPTS='--format documentation'"
env:
- PUPPET_VERSION="~> 2.7.0"
- PUPPET_VERSION="~> 3.0.0"
- PUPPET_VERSION="~> 3.1.0"
matrix:
allow_failures:
- rvm: ruby-head
exclude:
- rvm: 1.9.3
env: PUPPET_GEM_VERSION="~> 2.7.0"
- rvm: ruby-head
env: PUPPET_GEM_VERSION="~> 2.7.0"
gemfile: .gemfile
notifications:
email:
- james@lovedthanlost.net
2 changes: 2 additions & 0 deletions README.markdown
@@ -1,6 +1,8 @@
# Puppet Labs F5 module
Warning: this project is currently work in progress, *pending* sections are planned features.

[![Build Status](https://travis-ci.org/puppetlabs/puppetlabs-f5.png?branch=master)](https://travis-ci.org/puppetlabs/puppetlabs-f5)

## Overview
The F5 module was written against F5 VE version 10.1.0.3341. F5 have released version 11 with several API changes but currently they have not released any hardware or software running version 11. This provider uses several version 10.1 API, so it is not expected to work with older F5 devices.

Expand Down
24 changes: 3 additions & 21 deletions Rakefile
@@ -1,22 +1,4 @@
require 'rake'
require 'rspec/core/rake_task'
require 'rubygems'
require 'puppetlabs_spec_helper/rake_tasks'
require 'puppet-lint'

task :default do
sh %{rake -T}
end

# Aliases for spec. The (s) versions are used by rvm specs/tests.
task :test => [:spec]
task :tests => [:spec]
task :specs => [:spec]

desc 'Run all RSpec tests'
RSpec::Core::RakeTask.new(:spec) do |t|
t.rspec_opts = ['--color']
end

desc 'Generate code coverage'
RSpec::Core::RakeTask.new(:coverage) do |t|
t.rcov = true
t.rcov_opts = ['--exclude', 'spec']
end
Empty file added spec/fixtures/manifests/site.pp
Empty file.
8 changes: 0 additions & 8 deletions spec/monkey_patches/alias_should_to_must.rb

This file was deleted.

11 changes: 0 additions & 11 deletions spec/monkey_patches/publicize_methods.rb

This file was deleted.

53 changes: 0 additions & 53 deletions spec/puppet_spec/files.rb

This file was deleted.

28 changes: 0 additions & 28 deletions spec/puppet_spec/fixtures.rb

This file was deleted.

87 changes: 0 additions & 87 deletions spec/puppet_spec/matchers.rb

This file was deleted.

9 changes: 0 additions & 9 deletions spec/puppet_spec/verbose.rb

This file was deleted.

83 changes: 2 additions & 81 deletions spec/spec_helper.rb
@@ -1,82 +1,3 @@
dir = File.expand_path(File.dirname(__FILE__))
$LOAD_PATH.unshift File.join(dir, 'lib')
require 'rubygems'
require 'puppetlabs_spec_helper/module_spec_helper'

# Don't want puppet getting the command line arguments for rake or autotest
ARGV.clear

require 'puppet'
require 'mocha'
gem 'rspec', '>=2.0.0'
require 'rspec/expectations'

# So everyone else doesn't have to include this base constant.
module PuppetSpec
FIXTURE_DIR = File.join(dir = File.expand_path(File.dirname(__FILE__)), "fixtures") unless defined?(FIXTURE_DIR)
end

require 'pathname'
require 'tmpdir'

require 'puppet_spec/verbose'
require 'puppet_spec/files'
require 'puppet_spec/fixtures'
require 'puppet_spec/matchers'
require 'monkey_patches/alias_should_to_must'
require 'monkey_patches/publicize_methods'

Pathname.glob("#{dir}/shared_behaviours/**/*.rb") do |behaviour|
require behaviour.relative_path_from(Pathname.new(dir))
end

RSpec.configure do |config|
include PuppetSpec::Fixtures

config.mock_with :mocha

config.before :each do
GC.disable

# these globals are set by Application
$puppet_application_mode = nil
$puppet_application_name = nil

# REVISIT: I think this conceals other bad tests, but I don't have time to
# fully diagnose those right now. When you read this, please come tell me
# I suck for letting this float. --daniel 2011-04-21
Signal.stubs(:trap)

# Set the confdir and vardir to gibberish so that tests
# have to be correctly mocked.
Puppet[:confdir] = "/dev/null"
Puppet[:vardir] = "/dev/null"

# Avoid opening ports to the outside world
Puppet.settings[:bindaddress] = "127.0.0.1"

@logs = []
# This tests allows the spec_helper to be >2.6.7 and >2.7.1 compatible
# as the Puppet::Test::LogCollector facility wasn't available until 2.7.x
if Puppet.const_defined?("Test") and Puppet::Test.const_defined?("LogCollector")
Puppet::Util::Log.newdestination(Puppet::Test::LogCollector.new(@logs))
else
Puppet::Util::Log.newdestination(@logs)
end

@log_level = Puppet::Util::Log.level
end

config.after :each do
Puppet.settings.clear
Puppet::Node::Environment.clear
Puppet::Util::Storage.clear
Puppet::Util::ExecutionStub.reset

PuppetSpec::Files.cleanup

@logs.clear
Puppet::Util::Log.close_all
Puppet::Util::Log.level = @log_level

GC.enable
end
end

0 comments on commit 409d29a

Please sign in to comment.