tracker_api 0.2.12 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (72) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +1 -0
  3. data/README.md +1 -1
  4. data/lib/tracker_api.rb +5 -3
  5. data/lib/tracker_api/client.rb +12 -2
  6. data/lib/tracker_api/endpoints/epic.rb +8 -0
  7. data/lib/tracker_api/endpoints/story.rb +2 -0
  8. data/lib/tracker_api/resources/account.rb +1 -1
  9. data/lib/tracker_api/resources/activity.rb +2 -2
  10. data/lib/tracker_api/resources/change.rb +1 -1
  11. data/lib/tracker_api/resources/comment.rb +4 -4
  12. data/lib/tracker_api/resources/epic.rb +5 -5
  13. data/lib/tracker_api/resources/iteration.rb +2 -2
  14. data/lib/tracker_api/resources/label.rb +1 -1
  15. data/lib/tracker_api/resources/me.rb +4 -4
  16. data/lib/tracker_api/resources/membership_summary.rb +1 -1
  17. data/lib/tracker_api/resources/notification.rb +1 -1
  18. data/lib/tracker_api/resources/person.rb +1 -1
  19. data/lib/tracker_api/resources/primary_resource.rb +1 -1
  20. data/lib/tracker_api/resources/project.rb +11 -10
  21. data/lib/tracker_api/resources/project_membership.rb +1 -1
  22. data/lib/tracker_api/resources/shared/base.rb +30 -0
  23. data/lib/tracker_api/resources/shared/collection.rb +17 -0
  24. data/lib/tracker_api/resources/story.rb +31 -17
  25. data/lib/tracker_api/resources/task.rb +1 -1
  26. data/lib/tracker_api/version.rb +1 -1
  27. data/lib/virtus/attribute/nullify_blank.rb +27 -0
  28. data/lib/virtus/dirty_attribute.rb +104 -0
  29. data/lib/virtus/dirty_attribute/session.rb +54 -0
  30. data/test/client_test.rb +16 -1
  31. data/test/minitest_helper.rb +1 -0
  32. data/test/story_test.rb +10 -3
  33. data/test/vcr/cassettes/client_done_iterations_with_pagination.json +1 -1
  34. data/test/vcr/cassettes/client_get_all_stories_with_pagination.json +1 -1
  35. data/test/vcr/cassettes/client_get_limited_stories_with_no_pagination.json +1 -1
  36. data/test/vcr/cassettes/client_get_single_epic_by_epic_id.json +1 -0
  37. data/test/vcr/cassettes/client_get_single_story_by_story_id.json +1 -1
  38. data/test/vcr/cassettes/create_story.json +1 -1
  39. data/test/vcr/cassettes/create_story_with_lengthy_params.json +1 -1
  40. data/test/vcr/cassettes/create_task.json +1 -1
  41. data/test/vcr/cassettes/get_all_projects.json +1 -1
  42. data/test/vcr/cassettes/get_another_story.json +1 -1
  43. data/test/vcr/cassettes/get_current_iteration.json +1 -1
  44. data/test/vcr/cassettes/get_done_iterations.json +1 -1
  45. data/test/vcr/cassettes/get_epics.json +1 -1
  46. data/test/vcr/cassettes/get_iteration_by_number.json +1 -1
  47. data/test/vcr/cassettes/get_labels.json +1 -1
  48. data/test/vcr/cassettes/get_me.json +1 -1
  49. data/test/vcr/cassettes/get_my_activities.json +1 -1
  50. data/test/vcr/cassettes/get_owners_for_story.json +1 -1
  51. data/test/vcr/cassettes/get_project.json +1 -1
  52. data/test/vcr/cassettes/get_project_activity.json +1 -1
  53. data/test/vcr/cassettes/get_project_with_epics.json +1 -1
  54. data/test/vcr/cassettes/get_project_with_labels.json +1 -1
  55. data/test/vcr/cassettes/get_story.json +1 -1
  56. data/test/vcr/cassettes/get_story_activity.json +1 -1
  57. data/test/vcr/cassettes/get_story_comments.json +1 -1
  58. data/test/vcr/cassettes/get_story_owners.json +1 -1
  59. data/test/vcr/cassettes/get_story_with_tasks.json +1 -1
  60. data/test/vcr/cassettes/get_tasks.json +1 -1
  61. data/test/vcr/cassettes/get_tasks_for_story.json +1 -1
  62. data/test/vcr/cassettes/get_tasks_when_stories_filtered.json +1 -1
  63. data/test/vcr/cassettes/get_unscheduled_stories.json +1 -1
  64. data/test/vcr/cassettes/get_unscheduled_story.json +1 -1
  65. data/test/vcr/cassettes/save_story.json +1 -1
  66. data/test/vcr/cassettes/save_story_with_multiple_changes.json +1 -1
  67. data/test/vcr/cassettes/save_story_with_new_label.json +1 -1
  68. data/test/vcr/cassettes/update_story_to_create_activity.json +1 -1
  69. data/tracker_api.gemspec +2 -0
  70. metadata +23 -5
  71. data/lib/tracker_api/resources/shared/has_id.rb +0 -18
  72. data/test/vcr/cassettes/get_story_with_owners.json +0 -1
@@ -1,18 +0,0 @@
1
- require 'virtus'
2
-
3
- module TrackerApi
4
- module Resources
5
- module Shared
6
- module HasId
7
- def self.included(base)
8
- base.class_eval do
9
- include Virtus.model
10
- include Equalizer.new(:id)
11
-
12
- attribute :id, Integer
13
- end
14
- end
15
- end
16
- end
17
- end
18
- end
@@ -1 +0,0 @@
1
- {"http_interactions":[{"request":{"method":"get","uri":"https://www.pivotaltracker.com/services/v5/projects/1027488/stories/66728004?fields=%3Adefault%2Cowners","body":{"encoding":"US-ASCII","string":""},"headers":{"User-Agent":["Ruby/2.1.5 (x86_64-darwin14.0; ruby) TrackerApi/0.2.10 Faraday/0.9.1"],"X-TrackerToken":["d55c3bc1f74346b843ca84ba340b29bf"]}},"response":{"status":{"code":200,"message":null},"headers":{"Content-Type":["application/json; charset=utf-8"],"Status":["200 OK"],"X-Tracker-Project-Version":["78"],"X-UA-Compatible":["IE=Edge,chrome=1"],"ETag":["\"1f26a282513ccf8b2f5b0e873938e95b\""],"Cache-Control":["max-age=0, private, must-revalidate"],"X-Request-Id":["a4c140d6a71860108446763556b27a88"],"X-Runtime":["0.074538"],"Date":["Mon, 20 Jul 2015 20:12:29 GMT"],"X-Rack-Cache":["miss"],"X-Powered-By":["Phusion Passenger 4.0.41"],"Server":["nginx/1.6.0 + Phusion Passenger 4.0.41"],"Access-Control-Allow-Origin":["*"],"Access-Control-Allow-Credentials":["false"],"Access-Control-Allow-Methods":["GET, POST, PUT, DELETE, OPTIONS"],"Access-Control-Allow-Headers":["X-TrackerToken,DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,X-Tracker-Warn-Unless-Project-Version-Is"],"X-Tracker-Client-Pinger-Interval":["12"]},"body":{"encoding":"UTF-8","string":"{\"kind\":\"story\",\"id\":66728004,\"created_at\":\"2014-02-17T00:00:00Z\",\"updated_at\":\"2015-07-02T16:57:53Z\",\"story_type\":\"bug\",\"name\":\"Some product photos not scaled properly when browsing products++\",\"description\":\"+\",\"current_state\":\"started\",\"requested_by_id\":1266314,\"project_id\":1027488,\"url\":\"https://www.pivotaltracker.com/story/show/66728004\",\"owner_ids\":[1266314,1266316],\"owners\":[],\"labels\":[{\"id\":11049868,\"project_id\":1027488,\"kind\":\"label\",\"name\":\"label1\",\"created_at\":\"2015-03-07T12:51:39Z\",\"updated_at\":\"2015-03-07T12:51:39Z\"},{\"id\":11049870,\"project_id\":1027488,\"kind\":\"label\",\"name\":\"label2\",\"created_at\":\"2015-03-07T12:51:39Z\",\"updated_at\":\"2015-03-07T12:51:39Z\"},{\"id\":12049778,\"project_id\":1027488,\"kind\":\"label\",\"name\":\"super-special-label\",\"created_at\":\"2015-06-24T22:46:12Z\",\"updated_at\":\"2015-06-24T22:46:12Z\"}],\"owned_by_id\":1266314}"},"http_version":null},"recorded_at":"Mon, 20 Jul 2015 20:12:49 GMT"}],"recorded_with":"VCR 2.9.3"}