barnyard2waldo 0.0.3 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 9bc85cd037506951f02937deb2453dc149306a2d
4
- data.tar.gz: ba2b6f9c1d65bcd50d1b7a514c818b05dc0e5177
3
+ metadata.gz: e0deca698431c13eb336c3d98c44f54a5ec9872d
4
+ data.tar.gz: 7437417f46272d822abc232aa2b48b20f4335713
5
5
  SHA512:
6
- metadata.gz: c6ca42d74fd9943c695bc693961e84263908401a47d01b1a7a8339798e2ab7c28d95f667ce7b50737c08f138b653d3657d6919c29259b3a78d79ae4927700fb5
7
- data.tar.gz: a7a4363e33157e58fe7c26c0c5f7b5f424567d79489c9a430d63766fc166d1bc2293aa50c61eae0b30d0b490d684bb2bec20383f9adeed55a40bebc4dbd1c056
6
+ metadata.gz: bf9d13324bb13b0bf69c8f91be08ddeb244ca1ed62a91d01e813b4081e6159d65bf02b3be517c9267d29a149aac879d68d4db24c2432b273edc44a50d80b0961
7
+ data.tar.gz: 56bb6ed6f68471c5671a7cf43d313b54fa03404722ee73b50d91e30076336d473efb47708fea91ddd9211ab989128378734b93410a941011070c707ea057c167
data/LICENSE CHANGED
@@ -1,4 +1,4 @@
1
- Copyright (c) 2012 Scott MacGregor
1
+ Copyright (c) 2015 Scott MacGregor
2
2
 
3
3
  MIT License
4
4
 
data/README.md CHANGED
@@ -30,12 +30,15 @@ Record Idx: 119879
30
30
  ## Extended Help
31
31
 
32
32
  ```shell
33
- $> waldo -h
33
+ $ waldo -h
34
34
  Usage: waldo [OPTIONS]
35
35
  -b Bookmark file
36
36
  Default: /var/spool/barnyard.waldo
37
+ -z Print Zulu time (utc)
38
+ Default: false
37
39
  Options::
38
40
  -h, --help Display this screen
41
+
39
42
  ```
40
43
 
41
44
  ## Reference:
@@ -49,10 +49,15 @@ module Barnyard2
49
49
  exit
50
50
  end
51
51
 
52
- finder = Barnyard2::Waldo::Where.new(options[:bookmark])
53
- finder.utc = options[:utc]
54
- puts finder
55
-
52
+ begin
53
+ finder = Barnyard2::Waldo::Where.new(options[:bookmark])
54
+ finder.utc = options[:utc]
55
+ puts finder
56
+ rescue Barnyard2::Waldo::WaldoFilePermissionsError
57
+ abort "Waldo File Read Perrmission Error, check permissions on the bookmark file."
58
+ rescue Barnyard2::Waldo::WaldoFileError
59
+ abort "Waldo File Error, file may not exist."
60
+ end
56
61
  end
57
62
 
58
63
  end #Class
@@ -3,6 +3,9 @@ module Barnyard2
3
3
 
4
4
  class CustomError < StandardError; end
5
5
 
6
+ class WaldoFileError < StandardError; end
7
+ class WaldoFilePermissionsError < StandardError; end
8
+
6
9
  module Defaults
7
10
  Bookmark = '/var/spool/barnyard.waldo'
8
11
  UTC = 'false'
@@ -1,5 +1,5 @@
1
1
  module Barnyard2
2
2
  module Waldo
3
- VERSION = "0.0.3"
3
+ VERSION = "0.1.0"
4
4
  end
5
5
  end
@@ -7,20 +7,27 @@ module Barnyard2
7
7
  attr_accessor :utc
8
8
 
9
9
  def initialize (bookmark=Barnyard2::Waldo::Defaults::Bookmark)
10
- fp = open(bookmark, 'rb')
11
- s = fp.read(Barnyard2::Waldo::MAX_FILEPATH_BUF)
12
- @spool_dir = s.strip
13
-
14
- s = fp.read(Barnyard2::Waldo::MAX_FILEPATH_BUF)
15
- @spool_filebase = s.strip
16
-
17
- s = fp.read(Barnyard2::Waldo::UINT32_t)
18
- @epoch = s.unpack('V').first
10
+ raise WaldoFileError unless File.file?(bookmark)
11
+ raise WaldoFilePermissionsError unless File.stat(bookmark).readable?
12
+ begin
13
+ # (r) Read-only, starts at beginning of file (default mode).
14
+ # (b) Binary file mode
15
+ fp = open(bookmark, 'rb')
16
+ s = fp.read(Barnyard2::Waldo::MAX_FILEPATH_BUF)
17
+ @spool_dir = s.strip
18
+
19
+ s = fp.read(Barnyard2::Waldo::MAX_FILEPATH_BUF)
20
+ @spool_filebase = s.strip
21
+
22
+ s = fp.read(Barnyard2::Waldo::UINT32_t)
23
+ @epoch = s.unpack('V').first
24
+
25
+ s = fp.read(Barnyard2::Waldo::UINT32_t)
26
+ @record = s.unpack('V').first
27
+ ensure
28
+ fp.close
29
+ end
19
30
 
20
- s = fp.read(Barnyard2::Waldo::UINT32_t)
21
- @record = s.unpack('V').first
22
- ensure
23
- fp.close
24
31
  end
25
32
 
26
33
  # Unpack the bytes and the array:
data/test/test_waldo.rb CHANGED
@@ -19,6 +19,7 @@ describe Barnyard2::Waldo::Where do
19
19
  it "should return the idx" do
20
20
  @where.record.must_equal 119879
21
21
  end
22
+
22
23
  end
23
24
 
24
25
  describe "when asking to print" do
@@ -28,3 +29,36 @@ describe Barnyard2::Waldo::Where do
28
29
  end
29
30
  end
30
31
  end
32
+
33
+ require 'fileutils'
34
+
35
+ describe Barnyard2::Waldo::Where do
36
+
37
+ describe "when looking at a incorrect file perm" do
38
+ before do
39
+ FileUtils.cp_r('test/data/barnyard.waldo', 'test/data/ZZZZZ.waldo')
40
+ FileUtils.chmod 0000, 'test/data/ZZZZZ.waldo'
41
+ end
42
+
43
+ it "should raise file permission errors" do
44
+ assert_raises Barnyard2::Waldo::WaldoFilePermissionsError do
45
+ Barnyard2::Waldo::Where.new('test/data/ZZZZZ.waldo')
46
+ end
47
+ end
48
+
49
+ after do
50
+ FileUtils.chmod 0664, 'test/data/ZZZZZ.waldo'
51
+ FileUtils.rm 'test/data/ZZZZZ.waldo'
52
+ end
53
+ end
54
+
55
+ describe "when looking for a bad waldo" do
56
+
57
+ it "should raise File existance errors" do
58
+ assert_raises Barnyard2::Waldo::WaldoFileError do
59
+ Barnyard2::Waldo::Where.new('test/data/XXXXX.waldo')
60
+ end
61
+ end
62
+
63
+ end
64
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: barnyard2waldo
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - shadowbq
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-05-15 00:00:00.000000000 Z
11
+ date: 2015-05-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bump