cmis-ruby 0.5.9 → 0.5.10

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 35db092ddc232fb977ec926d512a1a11947be02d
4
- data.tar.gz: 6b2201d1e4e9571c1574ec6a3015064c53b8c25c
3
+ metadata.gz: 67382282756ff7179f4b0a8c70b3fe9a159f997c
4
+ data.tar.gz: 85a2fdab45eeaa30828ca6470f75975131b51325
5
5
  SHA512:
6
- metadata.gz: 727266f88279d0feeb50cca2fb68b1aad8894e58435cfb9b7ef6e2f9d60e8f248f808b517cb94fd84d68bc718bb7f3c41e0e896d8e29b0bf3fdec2a6d21dfba8
7
- data.tar.gz: 497c2ebc2a4232b849c4c040172f05635f96b08576b8ec6ff19e311804cb98f0f2eb64e1f294f0b9c557175d50696b7b7c27243764689b6d953ab7e1308dbfb1
6
+ metadata.gz: f9b5fff7672df1656a236239b0e763cd2e4b58340a5597fd2534f86bf5e1ded5e27839b7ea6ca9666ab41922dcf36b4ddbf77a693687c8fa40507c075a97fdaf
7
+ data.tar.gz: ff8457c303ed782d89a367acc852a81e09ef6c85c98a9de3da6118bd818aaf0249fedd4e358aa726ae0cf94ecd99e6a85a6f7528bc9e4af988a454689d4d4cae
data/lib/cmis/object.rb CHANGED
@@ -28,6 +28,13 @@ module CMIS
28
28
  allVersions: true }, opts)
29
29
  end
30
30
 
31
+ def delete_with_relationships(opts = {})
32
+ relationships.each_relationship(limit: :all) do |rel|
33
+ rel.delete(opts)
34
+ end
35
+ delete(opts)
36
+ end
37
+
31
38
  def update_properties(properties, opts = {})
32
39
  with_change_token do
33
40
  server.execute!({ cmisaction: 'update',
data/lib/cmis/utils.rb CHANGED
@@ -32,10 +32,17 @@ module CMIS
32
32
  end
33
33
 
34
34
  def normalize(value)
35
- if value.respond_to?(:strftime)
35
+ if value.respond_to?(:strftime) # datetime literal
36
36
  value = value.strftime('%Y-%m-%dT%H:%M:%S.%L')
37
37
  "TIMESTAMP '#{value}'"
38
- else
38
+
39
+ elsif value.is_a?(Numeric) # signed numeric literal
40
+ value
41
+
42
+ elsif value.is_a?(TrueClass) || value.is_a?(FalseClass) # boolean literal
43
+ value
44
+
45
+ else # treat as a character string literal
39
46
  value = value.to_s
40
47
  value.gsub!(/\\/, Regexp.escape('\\\\'))
41
48
  value.gsub!(/'/, Regexp.escape('\\\''))
data/lib/cmis/version.rb CHANGED
@@ -1,3 +1,4 @@
1
+
1
2
  module CMIS
2
- VERSION = '0.5.9'
3
+ VERSION = '0.5.10'
3
4
  end
@@ -73,6 +73,40 @@ module CMIS
73
73
  end
74
74
  end
75
75
 
76
+ describe '#delete' do
77
+ it 'deletes the document' do
78
+ ephemeral_document = create_document
79
+ ephemeral_document.delete
80
+
81
+ expect {
82
+ repository.object(ephemeral_document.cmis_object_id)
83
+ }.to raise_exception(Exceptions::ObjectNotFound)
84
+ end
85
+ end
86
+
87
+ describe '#delete_with_relationships' do
88
+ it 'deletes the document and its relationships' do
89
+ ephemeral_document = create_document
90
+
91
+ rel = repository.new_relationship
92
+ rel.object_type_id = 'cmis:relationship'
93
+ rel.name = 'relationship'
94
+ rel.source_id = ephemeral_document.cmis_object_id
95
+ rel.target_id = ephemeral_document.cmis_object_id
96
+ rel = rel.create
97
+
98
+ ephemeral_document.delete_with_relationships
99
+
100
+ expect {
101
+ repository.object(ephemeral_document.cmis_object_id)
102
+ }.to raise_exception(Exceptions::ObjectNotFound)
103
+
104
+ expect {
105
+ repository.object(rel.cmis_object_id)
106
+ }.to raise_exception(Exceptions::ObjectNotFound)
107
+ end
108
+ end
109
+
76
110
  def create_document
77
111
  document = repository.new_document
78
112
  document.name = 'test_document'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cmis-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.9
4
+ version: 0.5.10
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kenneth Geerts
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2014-06-19 00:00:00.000000000 Z
12
+ date: 2014-06-30 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: faraday