heirloom 0.5.0rc2 → 0.5.0rc3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (40) hide show
  1. data/CHANGELOG +10 -2
  2. data/lib/heirloom.rb +1 -1
  3. data/lib/heirloom/archive.rb +1 -5
  4. data/lib/heirloom/archive/builder.rb +16 -13
  5. data/lib/heirloom/archive/downloader.rb +27 -19
  6. data/lib/heirloom/archive/writer.rb +52 -0
  7. data/lib/heirloom/cipher.rb +2 -0
  8. data/lib/heirloom/cipher/data.rb +33 -0
  9. data/lib/heirloom/cipher/file.rb +41 -0
  10. data/lib/heirloom/cli/authorize.rb +4 -2
  11. data/lib/heirloom/cli/build.rb +17 -12
  12. data/lib/heirloom/cli/destroy.rb +5 -3
  13. data/lib/heirloom/cli/download.rb +15 -10
  14. data/lib/heirloom/cli/list.rb +7 -5
  15. data/lib/heirloom/cli/shared.rb +14 -4
  16. data/lib/heirloom/cli/show.rb +6 -4
  17. data/lib/heirloom/cli/update.rb +4 -2
  18. data/lib/heirloom/config.rb +1 -1
  19. data/lib/heirloom/directory/directory.rb +23 -8
  20. data/lib/heirloom/directory/git_directory.rb +10 -1
  21. data/lib/heirloom/version.rb +1 -1
  22. data/spec/archive/builder_spec.rb +55 -50
  23. data/spec/archive/downloader_spec.rb +91 -37
  24. data/spec/archive/writer_spec.rb +51 -0
  25. data/spec/archive_spec.rb +0 -11
  26. data/spec/aws/simpledb_spec.rb +2 -2
  27. data/spec/cipher/data_spec.rb +56 -0
  28. data/spec/cipher/file_spec.rb +27 -0
  29. data/spec/cli/build_spec.rb +3 -3
  30. data/spec/cli/download_spec.rb +4 -2
  31. data/spec/cli/shared_spec.rb +12 -5
  32. data/spec/config_spec.rb +2 -2
  33. data/spec/directory/directory_spec.rb +39 -10
  34. data/spec/directory/git_directory_spec.rb +29 -15
  35. metadata +23 -20
  36. data/lib/heirloom/archive/extracter.rb +0 -38
  37. data/lib/heirloom/misc.rb +0 -1
  38. data/lib/heirloom/misc/tmp.rb +0 -12
  39. data/spec/archive/extracter_spec.rb +0 -21
  40. data/spec/misc/tmp_spec.rb +0 -19
@@ -0,0 +1,51 @@
1
+ require 'spec_helper'
2
+
3
+ describe Heirloom do
4
+
5
+ before do
6
+ @logger_mock = mock 'logger'
7
+ @logger_mock.stub :info => true, :debug => true
8
+ @config_mock = mock 'config'
9
+ @config_mock.stub :logger => @logger_mock
10
+ @tempfile_stub = stub 'tempfile', :path => '/tmp/tempfile'
11
+ Tempfile.stub :new => @tempfile_stub
12
+ @writer = Heirloom::Writer.new :config => @config_mock
13
+ end
14
+
15
+ context "extract is set to true" do
16
+ it "should extract the given archive object into the output directory" do
17
+ File.should_receive(:open).with('/tmp/tempfile', 'w')
18
+ Heirloom::Writer.any_instance.should_receive(:`).
19
+ with('tar xzf /tmp/tempfile -C /output')
20
+ $?.should_receive(:success?).and_return true
21
+ @writer.save_archive(:archive => 'archive_data',
22
+ :output => '/output',
23
+ :file => 'id.tar.gz',
24
+ :extract => true).should be_true
25
+ end
26
+
27
+ it "should return false if the extract fails" do
28
+ File.should_receive(:open).with('/tmp/tempfile', 'w')
29
+ Heirloom::Writer.any_instance.should_receive(:`).
30
+ with('tar xzf /tmp/tempfile -C /output')
31
+ @logger_mock.should_receive(:error).with "Error extracting archive."
32
+ $?.should_receive(:success?).and_return false
33
+ @writer.save_archive(:archive => 'archive_data',
34
+ :output => '/output',
35
+ :file => 'id.tar.gz',
36
+ :extract => true).should be_false
37
+ end
38
+ end
39
+
40
+ context "extract is set to false" do
41
+ it "should save the given archive object into the output directory" do
42
+ File.should_receive(:open).with('/output/id.tar.gz', 'w').
43
+ and_return true
44
+ @writer.save_archive :archive => 'archive_data',
45
+ :output => '/output',
46
+ :file => 'id.tar.gz',
47
+ :extract => false
48
+ end
49
+ end
50
+
51
+ end
@@ -125,17 +125,6 @@ describe Heirloom do
125
125
  @archive.list
126
126
  end
127
127
 
128
- it "should call cleanup method" do
129
- mock = double('Mock')
130
- Heirloom::Builder.should_receive(:new).
131
- with(:config => @config_mock,
132
- :name => 'chef',
133
- :id => '123').
134
- and_return mock
135
- mock.should_receive(:cleanup)
136
- @archive.cleanup
137
- end
138
-
139
128
  it "should return true if the required buckets exist" do
140
129
  mock = double('Mock')
141
130
  Heirloom::Verifier.should_receive(:new).
@@ -43,8 +43,8 @@ describe Heirloom do
43
43
 
44
44
  it "should update the attributes for an entry" do
45
45
  @fog_mock.should_receive(:put_attributes).
46
- with('domain', 'key', 'attributes', { "option" => "123" })
47
- @sdb.put_attributes('domain', 'key', 'attributes', { "option" => "123" })
46
+ with('domain', 'key', {'key' => 'value'}, { "option" => "123" })
47
+ @sdb.put_attributes('domain', 'key', {'key' => 'value'}, { "option" => "123" })
48
48
  end
49
49
 
50
50
  it "should delete the given entry from sdb" do
@@ -0,0 +1,56 @@
1
+ require 'spec_helper'
2
+
3
+ describe Heirloom do
4
+ before do
5
+ @logger_mock = mock 'logger', :info => true
6
+ @logger_mock.stub :info => true
7
+ @config_mock = mock 'config'
8
+ @config_mock.stub :logger => @logger_mock
9
+ @data = Heirloom::Cipher::Data.new :config => @config_mock
10
+ end
11
+
12
+ context "with secret given" do
13
+ before do
14
+ @aes_mock = mock 'aes'
15
+ OpenSSL::Cipher::AES256.should_receive(:new).
16
+ with(:CBC).and_return @aes_mock
17
+ end
18
+
19
+ it "should decrypt the given data" do
20
+ @aes_mock.should_receive(:decrypt)
21
+ @aes_mock.should_receive(:key=).with 'mysecret'
22
+ @aes_mock.should_receive(:iv=).with 'firstsixteenchar'
23
+ @aes_mock.should_receive(:update).with('crypteddata').and_return 'cleartext'
24
+ @aes_mock.should_receive(:final).and_return 'final'
25
+ @data.decrypt_data(:data => 'firstsixteencharcrypteddata',
26
+ :secret => 'mysecret').
27
+ should == 'cleartextfinal'
28
+ end
29
+
30
+ it "should rescue bad key error and return false" do
31
+ @logger_mock.should_receive(:error).
32
+ with "Unable to decrypt archive: 'OpenSSL::Cipher::CipherError'"
33
+ @aes_mock.should_receive(:decrypt)
34
+ @aes_mock.should_receive(:key=).with 'badsecret'
35
+ @aes_mock.should_receive(:iv=).with 'firstsixteenchar'
36
+ @aes_mock.should_receive(:update).with('crypteddata').and_return 'crap'
37
+ @aes_mock.should_receive(:final).and_raise OpenSSL::Cipher::CipherError
38
+ @data.decrypt_data(:data => 'firstsixteencharcrypteddata',
39
+ :secret => 'badsecret').
40
+ should be_false
41
+ end
42
+
43
+ end
44
+
45
+ context "no secret given" do
46
+ before do
47
+ @data = Heirloom::Cipher::Data.new :config => @config_mock
48
+ end
49
+
50
+ it "should return the data if no secret given" do
51
+ @data.decrypt_data(:data => 'plaintext',
52
+ :secret => nil).should == 'plaintext'
53
+ end
54
+ end
55
+
56
+ end
@@ -0,0 +1,27 @@
1
+ require 'spec_helper'
2
+
3
+ describe Heirloom do
4
+ before do
5
+ @logger_mock = mock 'logger', :info => true
6
+ @logger_mock.stub :info => true
7
+ @config_mock = mock 'config'
8
+ @config_mock.stub :logger => @logger_mock
9
+ @tempfile_stub = stub 'tempfile', :path => '/path_to_encrypted_archive'
10
+ Tempfile.stub :new => @tempfile_stub
11
+ @aes_mock = mock 'aes'
12
+ OpenSSL::Cipher::AES256.should_receive(:new).
13
+ with(:CBC).and_return @aes_mock
14
+ @file = Heirloom::Cipher::File.new :config => @config_mock
15
+ end
16
+
17
+ it "should encrypt the given file" do
18
+ @aes_mock.should_receive(:encrypt)
19
+ @aes_mock.should_receive(:random_iv).and_return 'firstsixteenchar'
20
+ @aes_mock.should_receive(:iv=).with 'firstsixteenchar'
21
+ @aes_mock.should_receive(:key=).with 'mysecret'
22
+ ::File.should_receive(:open)
23
+ @file.encrypt_file(:file => '/file',
24
+ :secret => 'mysecret').should == '/path_to_encrypted_archive'
25
+ end
26
+
27
+ end
@@ -36,6 +36,7 @@ describe Heirloom do
36
36
  end
37
37
 
38
38
  it "should build an archive" do
39
+ @build.stub :ensure_directory => true
39
40
  @archive_mock.should_receive(:buckets_exist?).
40
41
  with(:bucket_prefix => 'base',
41
42
  :regions => ["us-west-1", "us-west-2"]).
@@ -45,15 +46,14 @@ describe Heirloom do
45
46
  with(:bucket_prefix => 'base',
46
47
  :directory => '/buildme',
47
48
  :exclude => ["exclude1", "exclude2"],
48
- :git => false).
49
+ :git => false,
50
+ :secret => nil).
49
51
  and_return '/tmp/build123.tar.gz'
50
52
  @archive_mock.should_receive(:upload).
51
53
  with(:bucket_prefix => 'base',
52
54
  :regions => ['us-west-1', 'us-west-2'],
53
55
  :public_readable => false,
54
56
  :file => '/tmp/build123.tar.gz')
55
- @archive_mock.should_receive(:cleanup)
56
-
57
57
  @build.build
58
58
  end
59
59
 
@@ -34,10 +34,12 @@ describe Heirloom do
34
34
  end
35
35
 
36
36
  it "should download an archive" do
37
- @archive_mock.should_receive(:download).with :output => '/tmp/test123',
37
+ @archive_mock.should_receive(:download).with(:output => '/tmp/test123',
38
38
  :region => 'us-east-1',
39
39
  :base_prefix => 'base',
40
- :extract => false
40
+ :extract => false,
41
+ :secret => nil).
42
+ and_return '/tmp/test123'
41
43
  @cli_download.should_receive(:ensure_directory).
42
44
  with(:config => @config_mock,
43
45
  :path => '/tmp/test123').
@@ -16,6 +16,13 @@ describe Heirloom do
16
16
  @object.extend Heirloom::CLI::Shared
17
17
  end
18
18
 
19
+ it "should exit if the secret is given and under 32 characters" do
20
+ @logger_mock.should_receive(:error)
21
+ lambda { @object.ensure_valid_secret(:secret => 'shorty',
22
+ :config => @config_mock) }.
23
+ should raise_error SystemExit
24
+ end
25
+
19
26
  it "should return false if a required array is emtpy" do
20
27
  @logger_mock.should_receive(:error)
21
28
  lambda { @object.ensure_valid_options(:provided => {
@@ -75,15 +82,15 @@ describe Heirloom do
75
82
  end
76
83
 
77
84
  it "should set the access key if specified" do
78
- opts = { :key => 'the_key',
79
- :key_given => true }
85
+ opts = { :aws_access_key => 'the_key',
86
+ :aws_access_key_given => true }
80
87
  @config_mock.should_receive(:access_key=).with 'the_key'
81
88
  @object.load_config :logger => @logger_mock, :opts => opts
82
89
  end
83
90
 
84
91
  it "should set the secret key if specified" do
85
- opts = { :secret => 'the_secret',
86
- :secret_given => true }
92
+ opts = { :aws_secret_key => 'the_secret',
93
+ :aws_secret_key_given => true }
87
94
  @config_mock.should_receive(:secret_key=).with 'the_secret'
88
95
  @object.load_config :logger => @logger_mock, :opts => opts
89
96
  end
@@ -92,7 +99,7 @@ describe Heirloom do
92
99
 
93
100
  context "test ensure directory" do
94
101
  before do
95
- @logger_stub = mock 'logger', :error => true
102
+ @logger_stub = stub 'logger', :error => true
96
103
  @config_mock = mock 'config'
97
104
  @config_mock.stub :logger => @logger_stub
98
105
  @object = Object.new
@@ -21,7 +21,7 @@ describe Heirloom do
21
21
  end
22
22
 
23
23
  it "should create a new config object and read from ~/.heirloom.yml" do
24
- File.should_receive(:exists?).and_return true
24
+ File.stub :exists? => true
25
25
  File.should_receive(:open).with("#{ENV['HOME']}/.heirloom.yml").
26
26
  and_return(@config.to_yaml)
27
27
  config = Heirloom::Config.new
@@ -38,7 +38,7 @@ describe Heirloom do
38
38
  end
39
39
 
40
40
  it "should load a blank config if the file does not exist and no config passed" do
41
- File.should_receive(:exists?).and_return false
41
+ File.stub :exists? => false
42
42
  config = Heirloom::Config.new
43
43
  config.access_key.should be_nil
44
44
  config.secret_key.should be_nil
@@ -9,28 +9,57 @@ describe Heirloom::Directory do
9
9
  @config_mock.stub(:logger).and_return(@logger_stub)
10
10
  @directory = Heirloom::Directory.new :config => @config_mock,
11
11
  :exclude => ['.', '..', 'dont_pack_me'],
12
- :path => '/target/dir'
13
- @directory.stub :random_archive => '/tmp/dir/file.tar.gz'
12
+ :path => '/dir'
13
+ @tempfile_stub = stub 'tempfile', :path => '/tmp/file.tar.gz'
14
+ Tempfile.stub :new => @tempfile_stub
14
15
  output_mock = double 'output mock'
15
- Dir.stub :tmpdir => '/tmp/dir'
16
- Dir.should_receive(:entries).with('/target/dir').
16
+ Dir.should_receive(:entries).with('/dir').
17
17
  exactly(2).times.
18
18
  and_return(['pack_me', '.hidden', 'dont_pack_me'])
19
19
  Heirloom::Directory.any_instance.should_receive(:`).
20
- with("tar czf /tmp/dir/file.tar.gz pack_me .hidden").
20
+ with("cd /dir && tar czf /tmp/file.tar.gz pack_me .hidden").
21
21
  and_return output_mock
22
22
  end
23
23
 
24
- it "should build an archive from the latest commit in path" do
25
- $?.should_receive(:success?).and_return true
26
- @directory.build_artifact_from_directory.should be_true
24
+ context 'when succesful' do
25
+ context 'without secret provided' do
26
+ it "should build an archive from the path" do
27
+ $?.should_receive(:success?).and_return true
28
+ @directory.build_artifact_from_directory(:secret => nil).
29
+ should be_true
30
+ end
31
+ end
32
+
33
+ context 'without secret provided' do
34
+ before do
35
+ @cipher_mock = mock 'cipher'
36
+ Heirloom::Cipher::File.should_receive(:new).
37
+ with(:config => @config_mock).
38
+ and_return @cipher_mock
39
+ end
40
+
41
+ it "should build and encrypt an archive from the path" do
42
+ $?.should_receive(:success?).and_return true
43
+ @cipher_mock.should_receive(:encrypt_file).
44
+ with(:file => '/tmp/file.tar.gz',
45
+ :secret => 'supersecret').
46
+ and_return '/tmp/encrypted_file.tar.gz'
47
+ @directory.build_artifact_from_directory(:secret => 'supersecret').
48
+ should be_true
49
+ end
50
+ end
27
51
  end
28
52
 
29
53
  context 'when unable to create the tar' do
30
54
  before { $?.stub(:success?).and_return(false) }
31
55
 
32
- it "should build return false" do
33
- @directory.build_artifact_from_directory.should be_false
56
+ it "build should return false" do
57
+ @directory.build_artifact_from_directory(:secret => nil).should be_false
58
+ end
59
+
60
+ it "encrypted build should return false" do
61
+ @directory.build_artifact_from_directory(:secret => 'supersecret').
62
+ should be_false
34
63
  end
35
64
  end
36
65
 
@@ -6,26 +6,40 @@ describe Heirloom do
6
6
  before do
7
7
  @repo_mock = double 'repo mock'
8
8
  @git_directory = Heirloom::GitDirectory.new :path => '/target/dir'
9
- Repo.should_receive(:new).with('/target/dir').and_return(@repo_mock)
10
9
  end
10
+
11
+ context "when dir is git repo" do
12
+ before do
13
+ Repo.should_receive(:new).with('/target/dir').exactly(2).times.
14
+ and_return(@repo_mock)
15
+ end
11
16
 
12
- it "should return the first commit from the given repo" do
13
- @repo_mock.stub(:commits).and_return(['git_sha', 'other_sha'])
14
- @git_directory.commit.should == 'git_sha'
15
- end
17
+ it "should return the first commit from the given repo" do
18
+ @repo_mock.stub(:commits).and_return(['git_sha', 'other_sha'])
19
+ @git_directory.commit.should == 'git_sha'
20
+ end
21
+
22
+ it "should read commit from the given path" do
23
+ @repo_mock.should_receive(:commits).
24
+ with('sha_i_want').
25
+ and_return(['sha_i_want', 'other_sha'])
26
+ @git_directory.commit('sha_i_want').should == 'sha_i_want'
27
+ end
16
28
 
17
- it "should read commit from the given path" do
18
- @repo_mock.should_receive(:commits).
19
- with('sha_i_want').
20
- and_return(['sha_i_want', 'other_sha'])
21
- @git_directory.commit('sha_i_want').should == 'sha_i_want'
29
+ it "should return false if the commit given does not exist" do
30
+ @repo_mock.should_receive(:commits).
31
+ with('sha_that_dont_exist').
32
+ and_return(nil)
33
+ @git_directory.commit('sha_that_dont_exist').should be_false
34
+ end
22
35
  end
23
36
 
24
- it "should return false if the commit given does not exist" do
25
- @repo_mock.should_receive(:commits).
26
- with('sha_that_dont_exist').
27
- and_return(nil)
28
- @git_directory.commit('sha_that_dont_exist').should be_false
37
+ context "when dir is not git repo" do
38
+ it "should return false if the directory is not a git repo" do
39
+ Repo.should_receive(:new).with('/target/dir').
40
+ and_raise Grit::InvalidGitRepositoryError
41
+ @git_directory.commit.should be_false
42
+ end
29
43
  end
30
44
 
31
45
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: heirloom
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.0rc2
4
+ version: 0.5.0rc3
5
5
  prerelease: 5
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-08-17 00:00:00.000000000 Z
12
+ date: 2012-08-19 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rspec
16
- requirement: &70122355909400 !ruby/object:Gem::Requirement
16
+ requirement: &70151211289720 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: '0'
22
22
  type: :development
23
23
  prerelease: false
24
- version_requirements: *70122355909400
24
+ version_requirements: *70151211289720
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: fog
27
- requirement: &70122355908680 !ruby/object:Gem::Requirement
27
+ requirement: &70151211289060 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ! '>='
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: '0'
33
33
  type: :runtime
34
34
  prerelease: false
35
- version_requirements: *70122355908680
35
+ version_requirements: *70151211289060
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: grit
38
- requirement: &70122355908000 !ruby/object:Gem::Requirement
38
+ requirement: &70151211287820 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ! '>='
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: '0'
44
44
  type: :runtime
45
45
  prerelease: false
46
- version_requirements: *70122355908000
46
+ version_requirements: *70151211287820
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: logger
49
- requirement: &70122355907160 !ruby/object:Gem::Requirement
49
+ requirement: &70151211287040 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ! '>='
@@ -54,10 +54,10 @@ dependencies:
54
54
  version: '0'
55
55
  type: :runtime
56
56
  prerelease: false
57
- version_requirements: *70122355907160
57
+ version_requirements: *70151211287040
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: trollop
60
- requirement: &70122355906660 !ruby/object:Gem::Requirement
60
+ requirement: &70151211286040 !ruby/object:Gem::Requirement
61
61
  none: false
62
62
  requirements:
63
63
  - - ! '>='
@@ -65,7 +65,7 @@ dependencies:
65
65
  version: '0'
66
66
  type: :runtime
67
67
  prerelease: false
68
- version_requirements: *70122355906660
68
+ version_requirements: *70151211286040
69
69
  description: I help build and manage building tar.gz files and deploying them into
70
70
  the cloud
71
71
  email:
@@ -92,15 +92,18 @@ files:
92
92
  - lib/heirloom/archive/builder.rb
93
93
  - lib/heirloom/archive/destroyer.rb
94
94
  - lib/heirloom/archive/downloader.rb
95
- - lib/heirloom/archive/extracter.rb
96
95
  - lib/heirloom/archive/lister.rb
97
96
  - lib/heirloom/archive/reader.rb
98
97
  - lib/heirloom/archive/updater.rb
99
98
  - lib/heirloom/archive/uploader.rb
100
99
  - lib/heirloom/archive/verifier.rb
100
+ - lib/heirloom/archive/writer.rb
101
101
  - lib/heirloom/aws.rb
102
102
  - lib/heirloom/aws/s3.rb
103
103
  - lib/heirloom/aws/simpledb.rb
104
+ - lib/heirloom/cipher.rb
105
+ - lib/heirloom/cipher/data.rb
106
+ - lib/heirloom/cipher/file.rb
104
107
  - lib/heirloom/cli.rb
105
108
  - lib/heirloom/cli/authorize.rb
106
109
  - lib/heirloom/cli/build.rb
@@ -119,8 +122,6 @@ files:
119
122
  - lib/heirloom/downloader.rb
120
123
  - lib/heirloom/downloader/s3.rb
121
124
  - lib/heirloom/logger.rb
122
- - lib/heirloom/misc.rb
123
- - lib/heirloom/misc/tmp.rb
124
125
  - lib/heirloom/uploader.rb
125
126
  - lib/heirloom/uploader/s3.rb
126
127
  - lib/heirloom/version.rb
@@ -130,15 +131,17 @@ files:
130
131
  - spec/archive/builder_spec.rb
131
132
  - spec/archive/destroyer_spec.rb
132
133
  - spec/archive/downloader_spec.rb
133
- - spec/archive/extracter_spec.rb
134
134
  - spec/archive/lister_spec.rb
135
135
  - spec/archive/reader_spec.rb
136
136
  - spec/archive/updater_spec.rb
137
137
  - spec/archive/uploader_spec.rb
138
138
  - spec/archive/verifier_spec.rb
139
+ - spec/archive/writer_spec.rb
139
140
  - spec/archive_spec.rb
140
141
  - spec/aws/s3_spec.rb
141
142
  - spec/aws/simpledb_spec.rb
143
+ - spec/cipher/data_spec.rb
144
+ - spec/cipher/file_spec.rb
142
145
  - spec/cli/authorize_spec.rb
143
146
  - spec/cli/build_spec.rb
144
147
  - spec/cli/destroy_spec.rb
@@ -153,7 +156,6 @@ files:
153
156
  - spec/directory/git_directory_spec.rb
154
157
  - spec/downloader/s3_spec.rb
155
158
  - spec/logger_spec.rb
156
- - spec/misc/tmp_spec.rb
157
159
  - spec/spec_helper.rb
158
160
  homepage: ''
159
161
  licenses: []
@@ -169,7 +171,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
169
171
  version: '0'
170
172
  segments:
171
173
  - 0
172
- hash: -3832291684396607232
174
+ hash: -4293229693492168052
173
175
  required_rubygems_version: !ruby/object:Gem::Requirement
174
176
  none: false
175
177
  requirements:
@@ -188,15 +190,17 @@ test_files:
188
190
  - spec/archive/builder_spec.rb
189
191
  - spec/archive/destroyer_spec.rb
190
192
  - spec/archive/downloader_spec.rb
191
- - spec/archive/extracter_spec.rb
192
193
  - spec/archive/lister_spec.rb
193
194
  - spec/archive/reader_spec.rb
194
195
  - spec/archive/updater_spec.rb
195
196
  - spec/archive/uploader_spec.rb
196
197
  - spec/archive/verifier_spec.rb
198
+ - spec/archive/writer_spec.rb
197
199
  - spec/archive_spec.rb
198
200
  - spec/aws/s3_spec.rb
199
201
  - spec/aws/simpledb_spec.rb
202
+ - spec/cipher/data_spec.rb
203
+ - spec/cipher/file_spec.rb
200
204
  - spec/cli/authorize_spec.rb
201
205
  - spec/cli/build_spec.rb
202
206
  - spec/cli/destroy_spec.rb
@@ -211,5 +215,4 @@ test_files:
211
215
  - spec/directory/git_directory_spec.rb
212
216
  - spec/downloader/s3_spec.rb
213
217
  - spec/logger_spec.rb
214
- - spec/misc/tmp_spec.rb
215
218
  - spec/spec_helper.rb