uuid4r 0.1.1 → 0.1.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.
Files changed (3) hide show
  1. data/ext/extconf.rb +7 -2
  2. data/test/test_uuid.rb~ +120 -0
  3. metadata +22 -6
@@ -1,15 +1,20 @@
1
1
  require 'mkmf'
2
2
 
3
+ lib="uuid"
4
+
3
5
  if File.exist?(`which uuid-config`.chomp)
6
+ lib = `uuid-config --libs`.chomp.gsub(/-l/, '')
4
7
  $CFLAGS << " -Wall " << `uuid-config --cflags`.chomp
5
8
  $LDFLAGS << " " << `uuid-config --ldflags`.chomp
6
9
  end
7
10
 
8
- if !have_library('uuid')
9
- puts "OSSP uuid library required -- not found."
11
+ unless have_library(lib, 'uuid_export')
12
+ puts "OSSP uuid library '#{lib}' required -- not found."
10
13
  exit 1
11
14
  end
15
+
12
16
  create_makefile('uuid4r')
17
+
13
18
  File.open("Makefile", "a") << <<-EOT
14
19
 
15
20
  check: $(DLLIB)
@@ -0,0 +1,120 @@
1
+ require 'test/unit'
2
+ require './uuid4r.so'
3
+
4
+ class UUIDTest < Test::Unit::TestCase
5
+ def test_uuid_v1_default
6
+ assert_kind_of(String, UUID4R::uuid_v1)
7
+ assert_kind_of(String, UUID4R::uuid(1))
8
+ end
9
+
10
+ def test_uuid_v4_default
11
+ assert_kind_of(String, UUID4R::uuid_v4)
12
+ assert_kind_of(String, UUID4R::uuid(4))
13
+ end
14
+
15
+ def test_uuid_v1_str
16
+ assert_kind_of(String, UUID4R::uuid_v1(:str))
17
+ assert(UUID4R::uuid_v1(:str).length > 0)
18
+ assert_not_equal(UUID4R::uuid_v1(:str), UUID4R::uuid_v1(:str))
19
+ end
20
+
21
+ def test_uuid_v1_bin
22
+ assert_kind_of(String, UUID4R::uuid_v1(:bin))
23
+ assert_equal(16, UUID4R::uuid_v1(:bin).length)
24
+ end
25
+
26
+ def test_uuid_v1_txt
27
+ assert_kind_of(String, UUID4R::uuid_v1(:txt))
28
+ assert(/^variant:/ =~ UUID4R::uuid_v1(:txt))
29
+ assert(/^version:/ =~ UUID4R::uuid_v1(:txt))
30
+ assert(/^content:/ =~ UUID4R::uuid_v1(:txt))
31
+ end
32
+
33
+ def test_uuid_v3_str
34
+ a = UUID4R::uuid(3, "ns:URL", "www.sgtpepper.net", :str)
35
+ b = UUID4R::uuid(3, "ns:URL", "www.sgtpepper.net", :str)
36
+ c = UUID4R::uuid_v3("ns:URL", "www.sgtpepper.net", :str)
37
+ d = UUID4R::uuid_v3("ns:URL", "www.sgtpepper.net")
38
+ assert_kind_of(String, a)
39
+ assert(a.length > 0)
40
+ assert_equal(a, b)
41
+ assert_equal(a, c)
42
+ assert_equal(a, d)
43
+ end
44
+
45
+ def test_uuid_v5_str
46
+ a = UUID4R::uuid(5, "ns:URL", "www.sgtpepper.net", :str)
47
+ b = UUID4R::uuid(5, "ns:URL", "www.sgtpepper.net", :str)
48
+ c = UUID4R::uuid_v5("ns:URL", "www.sgtpepper.net", :str)
49
+ d = UUID4R::uuid_v5("ns:URL", "www.sgtpepper.net")
50
+ assert_kind_of(String, a)
51
+ assert(a.length > 0)
52
+ assert_equal(a, b)
53
+ assert_equal(a, c)
54
+ assert_equal(a, d)
55
+ end
56
+
57
+ def test_import
58
+ uuid = UUID4R::import(:str, "266eb9ae-ea6e-11da-8113-0030134d803d")
59
+ assert_kind_of(UUID4R::UUID4RCommon, uuid)
60
+ end
61
+ end
62
+
63
+
64
+ class UUID4Rv1Test < Test::Unit::TestCase
65
+ def setup
66
+ @uuid = UUID4R::UUID4Rv1.new
67
+ end
68
+
69
+ def test_export_str
70
+ assert_kind_of(String, @uuid.export(:str))
71
+ assert_equal(@uuid.export, @uuid.export(:str))
72
+ end
73
+
74
+ def test_compare
75
+ uuid2 = UUID4R::UUID4Rv1.new
76
+ assert(@uuid.compare(uuid2) < 0)
77
+ assert(@uuid.compare(@uuid) == 0)
78
+ assert(uuid2.compare(@uuid) > 0)
79
+ assert_equal(-1, @uuid <=> uuid2)
80
+ assert_equal( 0, @uuid <=> @uuid)
81
+ assert_equal( 1, uuid2 <=> @uuid)
82
+ end
83
+ end
84
+
85
+
86
+ class UUID4Rv4Test < Test::Unit::TestCase
87
+ def setup
88
+ @uuid = UUID4R::UUID4Rv4.new
89
+ end
90
+
91
+ def test_export_str
92
+ assert_kind_of(String, @uuid.export(:str))
93
+ assert_equal(@uuid.export, @uuid.export(:str))
94
+ end
95
+ end
96
+
97
+
98
+ class UUID4Rv3Test < Test::Unit::TestCase
99
+ def setup
100
+ @uuid = UUID4R::UUID4Rv3.new("ns:URL", "www.sgtpepper.net")
101
+ end
102
+
103
+ def test_export_str
104
+ assert_kind_of(String, @uuid.export(:str))
105
+ assert_equal(@uuid.export, @uuid.export(:str))
106
+ end
107
+ end
108
+
109
+
110
+ class UUID4Rv5Test < Test::Unit::TestCase
111
+ def setup
112
+ @uuid = UUID4R::UUID4Rv5.new("ns:URL", "www.sgtpepper.net")
113
+ end
114
+
115
+ def test_export_str
116
+ assert_kind_of(String, @uuid.export(:str))
117
+ assert_equal(@uuid.export, @uuid.export(:str))
118
+ end
119
+ end
120
+
metadata CHANGED
@@ -1,20 +1,29 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: uuid4r
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ hash: 31
5
+ prerelease: false
6
+ segments:
7
+ - 0
8
+ - 1
9
+ - 2
10
+ version: 0.1.2
5
11
  platform: ruby
6
12
  authors:
7
13
  - Daigo Moriwaki
14
+ - Stefan Kaes
8
15
  autorequire:
9
16
  bindir: bin
10
17
  cert_chain: []
11
18
 
12
- date: 2010-02-12 00:00:00 +01:00
19
+ date: 2011-05-15 00:00:00 +02:00
13
20
  default_executable:
14
21
  dependencies: []
15
22
 
16
23
  description: " This library generates and parses Universally Unique Identifier (UUID),\n based on OSSP uuid C library. So, libossp-uuid library is pre-required.\n OSSP uuid (http://www.ossp.org/pkg/lib/uuid/) is a ISO-C:1999 application\n programming interface (API) for the generation of DCE 1.1, ISO/IEC\n 11578:1996 and RFC 4122 compliant UUID. It supports DCE 1.1 variant UUIDs\n of version 1 (time and node based), version 3 (name based, MD5), version 4\n (random number based) and version 5 (name based, SHA-1).\n"
17
- email: daigo@debian.org
24
+ email:
25
+ - daigo@debian.org
26
+ - skaes@railsexpress.de
18
27
  executables: []
19
28
 
20
29
  extensions:
@@ -25,6 +34,7 @@ files:
25
34
  - ext/extconf.rb
26
35
  - ext/uuid4r.c
27
36
  - test/test_uuid.rb
37
+ - test/test_uuid.rb~
28
38
  - README
29
39
  has_rdoc: true
30
40
  homepage: http://uuid4r.rubyforge.org
@@ -40,21 +50,27 @@ rdoc_options:
40
50
  require_paths:
41
51
  - .
42
52
  required_ruby_version: !ruby/object:Gem::Requirement
53
+ none: false
43
54
  requirements:
44
55
  - - ">="
45
56
  - !ruby/object:Gem::Version
57
+ hash: 3
58
+ segments:
59
+ - 0
46
60
  version: "0"
47
- version:
48
61
  required_rubygems_version: !ruby/object:Gem::Requirement
62
+ none: false
49
63
  requirements:
50
64
  - - ">="
51
65
  - !ruby/object:Gem::Version
66
+ hash: 3
67
+ segments:
68
+ - 0
52
69
  version: "0"
53
- version:
54
70
  requirements: []
55
71
 
56
72
  rubyforge_project: uuid4r
57
- rubygems_version: 1.3.5
73
+ rubygems_version: 1.3.7
58
74
  signing_key:
59
75
  specification_version: 3
60
76
  summary: This generates and parses UUID, based on OSSP uuid C library.