harvest-ruby-v2 0.2.2 → 0.3.4

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
  SHA256:
3
- metadata.gz: b1aac6146965e984e871bb5d1601310c108d0ee6a737ce35a454d68af56e268d
4
- data.tar.gz: 71e4f29dd7d7fe6545dfeda482ced565b93121c7adc5afd22bad3e3479519728
3
+ metadata.gz: '0481299c43502e489ab013be74fe6ae6fa563f1997662b1df2cf1f091d197709'
4
+ data.tar.gz: f99eda5308acbba9efd5c574ce60518dc3681edb2ab223253de0f3eca8592dec
5
5
  SHA512:
6
- metadata.gz: 7d0f40032b530b1edc3b9026c66dfd5e21d89851bfce653ef412aae0c9d853a5f602abb6c3ddd7dde260946281951673e648a6ef3e1364423b7208e5f3423abf
7
- data.tar.gz: 47dde60a64901ab2b224566ffe0260de105fa350e9fdabf9c1ed295bc65b7b50059143518909ba4fccf3a72908cd3183c64a2685e4cdf5c8acecc0b2f935c667
6
+ metadata.gz: c1ad1076b5315860c0995f359099b9aedb8e720709584f0ed825ac2fedb325aa6ae08d17783da7660c08adc901becea8b64a9ea13c65bad380010f2e7dae77e0
7
+ data.tar.gz: de22f15ab703b41ff0a5188562fe19f04a84cc6982170c4a641565a54e3c81bea67b0dc28e993552097518898c9e81451480b4ad26bd813cdab57c6f62237e5d
data/Makefile CHANGED
@@ -7,3 +7,8 @@ setup:
7
7
  yard:
8
8
  bundle exec rake yard
9
9
  bundle exec rake yard-server
10
+
11
+ push:
12
+ find . -maxdepth 1 -name '*.gem' -exec rm {} \;
13
+ gem build *.gemspec
14
+ gem push *.gem
@@ -55,6 +55,10 @@ module Harvest
55
55
  ].include?(meth)
56
56
  end
57
57
 
58
+ def clone
59
+ Harvest::Client.new(@config, state: @state.clone)
60
+ end
61
+
58
62
  # @param meth [Symbol]
59
63
  # @return [Boolean]
60
64
  def respond_to_missing?(meth)
@@ -74,7 +78,7 @@ module Harvest
74
78
  super
75
79
  end
76
80
  rescue NoMethodError
77
- # binding.pry
81
+ # require 'pry'; binding.pry
78
82
  raise Harvest::Exceptions::BadState, "#{meth} is an invalid state change."
79
83
  end
80
84
 
@@ -34,8 +34,8 @@ module Harvest
34
34
 
35
35
  # @api private
36
36
  def time_entry_payload(kwargs)
37
- possible_keys = %i[spent_date notes external_reference user_id]
38
- payload = kwargs.map { |k, v| [k, v] if possible_keys.include?(k) }.to_h
37
+ possible_keys = %i[spent_date notes external_reference user_id project_id task_id]
38
+ payload = kwargs.each { |k, v| [k, v] if possible_keys.include?(k) }.to_h
39
39
  payload[:user_id] ||= @active_user.id
40
40
  payload[:task_id] = @state[:project_tasks][0].task.id
41
41
  payload[:project_id] = true_project(@state[:projects][0]).id
@@ -10,7 +10,7 @@ module Harvest
10
10
 
11
11
  class TimeEntry
12
12
  def find(factory, client, id)
13
- [factory.time_entry(client.api_call(client.api_caller("time_entry/#{id}")))]
13
+ [factory.time_entry(client.api_call(client.api_caller("time_entries/#{id}")))]
14
14
  end
15
15
  end
16
16
  end
@@ -75,8 +75,7 @@ module Harvest
75
75
  def api_call(struct)
76
76
  JSON.parse(
77
77
  send(struct.http_method.to_sym, struct).tap do
78
- require 'pry'
79
- # binding.pry
78
+ # require 'pry'; binding.pry
80
79
  end
81
80
  )
82
81
  end
@@ -1,6 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'pry'
4
3
  require 'harvest/resources'
5
4
 
6
5
  module Harvest
@@ -214,6 +213,11 @@ module Harvest
214
213
  data.method("#{key}=").call(DateTime.strptime(data.method(key).call))
215
214
  end
216
215
  end
216
+ %i[spent_date].each do |key|
217
+ if data.members.include?(key) && !data.method(key).call.nil?
218
+ data.method("#{key}=").call(Date.strptime(data.method(key).call))
219
+ end
220
+ end
217
221
  data
218
222
  end
219
223
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Harvest
4
- VERSION = '0.2.2'
4
+ VERSION = '0.3.4'
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: harvest-ruby-v2
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.2
4
+ version: 0.3.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Craig Davis
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-10-13 00:00:00.000000000 Z
11
+ date: 2020-10-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport