threaded_in_memory_queue 0.0.1 → 0.0.2

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: caa7adac3732ae22522e0e9c76514d76b807c4c4
4
- data.tar.gz: 61eb8f9b6e4848a16c36dbb6c630df00c4ec5c97
3
+ metadata.gz: 38361b605ed853eeb5af0accecf034f729c7b31b
4
+ data.tar.gz: d34e9ac4ee7f2ae5facf364fbc0234d8f01e16e5
5
5
  SHA512:
6
- metadata.gz: 12cff123c6b70a73e98f2d468db8a9161d063ecc4ad93ce483bd3664828b86b19abe87efb113e831f0754a6e854cccf7d085c57134b688fcec03cf71bcdd36a7
7
- data.tar.gz: 75309317bc57b8f362a19fe574794e97a1e51eb41b1f257ca023a92827f23b076e89e32493a133f2ce6d69bc7c0f9e44c433d387cbd400213194a8fd9b68e295
6
+ metadata.gz: e5c37e3dd37bb4d273d2195792023148f81d278cb17b19f6d13a5f3c54ccb202a6ddcf6525c8807f5366170f76ad2a9dc91a722b12a33c04978e250e120a60a7
7
+ data.tar.gz: 3ae6c5d6bd2f0ebc9a7301ed06defad3c63a537cef3ba6915449f103d48ed61c985c294df2bb6e77b43dd1b6dacffb9c5723bb03c8faec23879ae3ba2c45f17a
@@ -0,0 +1,2 @@
1
+ .DS_Store
2
+ *.gem
data/README.md CHANGED
@@ -44,7 +44,7 @@ Then to enqueue a task to be run in the background use `ThreadedInMemoryQueue.en
44
44
 
45
45
  ```ruby
46
46
  repo = Repo.last
47
- ThreadedInMemoryQueue.enqueue(Archive, repo.last, 'staging')
47
+ ThreadedInMemoryQueue.enqueue(Archive, repo.id, 'staging')
48
48
  ```
49
49
 
50
50
  The first argument is a class that defines the task to be processed and the rest of the arguments are passed to the task when it is run.
@@ -19,12 +19,21 @@ module ThreadedInMemoryQueue
19
19
  return self
20
20
  end
21
21
 
22
+ def self.started?
23
+ return false unless master
24
+ master.alive?
25
+ end
26
+
27
+ def self.stopped?
28
+ !started?
29
+ end
30
+
22
31
  def self.master
23
- Thread.current[:threaded_in_memory_queue_master]
32
+ @master
24
33
  end
25
34
 
26
35
  def self.master=(master)
27
- Thread.current[:threaded_in_memory_queue_master] = master
36
+ @master = master
28
37
  end
29
38
 
30
39
  def self.enqueue(klass, *args)
@@ -1,7 +1,7 @@
1
1
  module ThreadedInMemoryQueue
2
2
  module Inline
3
3
  def inline
4
- Thread.current[:threaded_worker_inline]
4
+ @inline
5
5
  end
6
6
 
7
7
  def inline?
@@ -9,7 +9,7 @@ module ThreadedInMemoryQueue
9
9
  end
10
10
 
11
11
  def inline=(inline)
12
- Thread.current[:threaded_worker_inline] = inline
12
+ @inline = inline
13
13
  end
14
14
  end
15
- end
15
+ end
@@ -1,3 +1,3 @@
1
1
  module ThreadedInMemoryQueue
2
- VERSION = "0.0.1"
2
+ VERSION = "0.0.2"
3
3
  end
@@ -2,55 +2,28 @@ require 'test_helper'
2
2
 
3
3
  class ThreadedInMemoryQueueTest < Test::Unit::TestCase
4
4
 
5
- def test_calls_contents_of_blocks
6
- Dummy.expects(:process).with(1).once
7
- Dummy.expects(:process).with(2).once
8
-
5
+ def test_started?
9
6
  ThreadedInMemoryQueue.start
10
-
11
- job = Proc.new {|x| Dummy.process(x) }
12
-
13
- ThreadedInMemoryQueue.enqueue(job, 1)
14
- ThreadedInMemoryQueue.enqueue(job, 2)
7
+ assert ThreadedInMemoryQueue.started?
15
8
  ThreadedInMemoryQueue.stop
9
+ sleep 1
10
+ assert ThreadedInMemoryQueue.stopped?
11
+ refute ThreadedInMemoryQueue.started?
16
12
  end
17
13
 
18
- def test_calls_contents_of_klasses
14
+ def test_enqueues
19
15
  Dummy.expects(:process).with(1).once
20
16
  Dummy.expects(:process).with(2).once
21
17
 
22
18
  ThreadedInMemoryQueue.start
23
19
 
24
- job = Class.new do
25
- def self.call(num)
26
- Dummy.process(num)
27
- end
28
- end
20
+ job = Proc.new {|x| Dummy.process(x) }
29
21
 
30
22
  ThreadedInMemoryQueue.enqueue(job, 1)
31
23
  ThreadedInMemoryQueue.enqueue(job, 2)
32
24
  ThreadedInMemoryQueue.stop
33
- end
34
-
35
- def test_configure_size
36
- size = 1
37
- ThreadedInMemoryQueue.start(size: size)
38
- assert_equal size, ThreadedInMemoryQueue.master.workers.size
39
- ThreadedInMemoryQueue.stop
40
-
41
- size = 3
42
- ThreadedInMemoryQueue.start(size: size)
43
- assert_equal size, ThreadedInMemoryQueue.master.workers.size
44
- ThreadedInMemoryQueue.stop
45
-
46
- size = 6
47
- ThreadedInMemoryQueue.start(size: size)
48
- assert_equal size, ThreadedInMemoryQueue.master.workers.size
49
- ThreadedInMemoryQueue.stop
50
-
51
- size = 16
52
- ThreadedInMemoryQueue.start(size: size)
53
- assert_equal size, ThreadedInMemoryQueue.master.workers.size
25
+ ensure
54
26
  ThreadedInMemoryQueue.stop
55
27
  end
28
+
56
29
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: threaded_in_memory_queue
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Richard Schneeman
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-07-15 00:00:00.000000000 Z
11
+ date: 2013-09-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake
@@ -45,6 +45,7 @@ executables: []
45
45
  extensions: []
46
46
  extra_rdoc_files: []
47
47
  files:
48
+ - .gitignore
48
49
  - .travis.yml
49
50
  - Gemfile
50
51
  - Gemfile.lock