social_net 0.2.6 → 0.2.7
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 +4 -4
 - data/CHANGELOG.md +4 -0
 - data/README.md +10 -0
 - data/lib/social_net/instagram/api/request.rb +1 -1
 - data/lib/social_net/instagram/errors/unknown_video.rb +11 -0
 - data/lib/social_net/instagram/errors.rb +1 -0
 - data/lib/social_net/instagram/models/video.rb +41 -0
 - data/lib/social_net/version.rb +1 -1
 - data/spec/social_net/instagram/models/video_spec.rb +51 -0
 - data/spec/support/cassettes/SocialNet_Instagram_Models_Video/_find_by/given_a_nonexistant_video/.yml +53 -0
 - data/spec/support/cassettes/SocialNet_Instagram_Models_Video/_find_by/given_an_existing_video_s_media_id/returns_an_object_representing_that_video.yml +69 -0
 - data/spec/support/cassettes/SocialNet_Instagram_Models_Video/_find_by_/given_a_nonexistant_video/.yml +53 -0
 - data/spec/support/cassettes/SocialNet_Instagram_Models_Video/_find_by_/given_an_existing_video_s_media_id/returns_an_object_representing_that_video.yml +69 -0
 - metadata +13 -2
 
    
        checksums.yaml
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            ---
         
     | 
| 
       2 
2 
     | 
    
         
             
            SHA1:
         
     | 
| 
       3 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       4 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 3 
     | 
    
         
            +
              metadata.gz: d377f2038172fd76217e4af11f4529fe4635fc54
         
     | 
| 
      
 4 
     | 
    
         
            +
              data.tar.gz: d0dd25976061611f287fa340e092465f6146ae8d
         
     | 
| 
       5 
5 
     | 
    
         
             
            SHA512:
         
     | 
| 
       6 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       7 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 6 
     | 
    
         
            +
              metadata.gz: e79cb37ae71a214c5440efd7b56c9c35e7e51bba4ccfda16eb4f8be9dfcde2679f5d50ef413b920d70f16f4b9a9f1bb02b6b5c2c44106427fdbfa801fa6b9330
         
     | 
| 
      
 7 
     | 
    
         
            +
              data.tar.gz: 098b3b67bb8016f108b2fd94f535ebbb945fe929ddb874ab692ec5c937717edf120c443857157d7f5eb95cecfdbbbba53b7f024714e41da768b254864abcde70
         
     | 
    
        data/CHANGELOG.md
    CHANGED
    
    | 
         @@ -25,3 +25,7 @@ For more information about changelogs, check 
     | 
|
| 
       25 
25 
     | 
    
         
             
            ## 0.2.6 - 2017-5-31
         
     | 
| 
       26 
26 
     | 
    
         | 
| 
       27 
27 
     | 
    
         
             
            * [BUGFIX] Add missing tests and errors for a private Instagram user.
         
     | 
| 
      
 28 
     | 
    
         
            +
             
     | 
| 
      
 29 
     | 
    
         
            +
            ## 0.2.7 - 2017-7-26
         
     | 
| 
      
 30 
     | 
    
         
            +
             
     | 
| 
      
 31 
     | 
    
         
            +
            * [FEATURE] Add `Instagram::Video` support for `find_by media_id:` and `find_by! media_id:`
         
     | 
    
        data/README.md
    CHANGED
    
    | 
         @@ -99,6 +99,16 @@ user.videos #=> 
     | 
|
| 
       99 
99 
     | 
    
         
             
              #   @thumbnail='https://scontent.cdninstagram.com/t51.2885-15/e15/17076697_308353549580106_8220285822193106944_n.jpg']"
         
     | 
| 
       100 
100 
     | 
    
         
             
            ```
         
     | 
| 
       101 
101 
     | 
    
         | 
| 
      
 102 
     | 
    
         
            +
            Use [SocialNet::Instagram::Video]() to:
         
     | 
| 
      
 103 
     | 
    
         
            +
             
     | 
| 
      
 104 
     | 
    
         
            +
            * retrieve an Instagram video by media id
         
     | 
| 
      
 105 
     | 
    
         
            +
             
     | 
| 
      
 106 
     | 
    
         
            +
            ```ruby
         
     | 
| 
      
 107 
     | 
    
         
            +
            video = SocialNet::Instagram::Video.find_by media_id: '1531332985868221389'
         
     | 
| 
      
 108 
     | 
    
         
            +
            video.link #=> 'https://www.instagram.com/p/BVAYzy_g3vN/'
         
     | 
| 
      
 109 
     | 
    
         
            +
            video.file #=> 'https://scontent.cdninstagram.com/t50.2886-16/18954088_1445442168855176_8271610702855143424_n.mp4'
         
     | 
| 
      
 110 
     | 
    
         
            +
            ```
         
     | 
| 
      
 111 
     | 
    
         
            +
             
     | 
| 
       102 
112 
     | 
    
         
             
            *The methods above require a configured Instagram app (see below).*
         
     | 
| 
       103 
113 
     | 
    
         | 
| 
       104 
114 
     | 
    
         
             
            SocialNet::Facebook::Page
         
     | 
| 
         @@ -1,3 +1,6 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            require 'social_net/instagram/api/request'
         
     | 
| 
      
 2 
     | 
    
         
            +
            require 'social_net/instagram/errors'
         
     | 
| 
      
 3 
     | 
    
         
            +
             
     | 
| 
       1 
4 
     | 
    
         
             
            module SocialNet
         
     | 
| 
       2 
5 
     | 
    
         
             
              module Instagram
         
     | 
| 
       3 
6 
     | 
    
         
             
                module Models
         
     | 
| 
         @@ -12,6 +15,44 @@ module SocialNet 
     | 
|
| 
       12 
15 
     | 
    
         
             
                      @thumbnail = attrs['images']['standard_resolution']['url']
         
     | 
| 
       13 
16 
     | 
    
         
             
                      @link = attrs['link']
         
     | 
| 
       14 
17 
     | 
    
         
             
                    end
         
     | 
| 
      
 18 
     | 
    
         
            +
             
     | 
| 
      
 19 
     | 
    
         
            +
                    # Returns the existing Instagram video matching the provided attributes or
         
     | 
| 
      
 20 
     | 
    
         
            +
                    # nil when the video is not found.
         
     | 
| 
      
 21 
     | 
    
         
            +
                    #
         
     | 
| 
      
 22 
     | 
    
         
            +
                    # @return [SocialNet::Instagram::Models::Video] when the video is found.
         
     | 
| 
      
 23 
     | 
    
         
            +
                    # @return [nil] when the video is not found.
         
     | 
| 
      
 24 
     | 
    
         
            +
                    # @param [Hash] params the attributes to find a video by.
         
     | 
| 
      
 25 
     | 
    
         
            +
                    # @option params [String] :media_id The Instagram video's media id.
         
     | 
| 
      
 26 
     | 
    
         
            +
                    def self.find_by(params = {})
         
     | 
| 
      
 27 
     | 
    
         
            +
                      find_by! params
         
     | 
| 
      
 28 
     | 
    
         
            +
                    rescue Errors::UnknownVideo
         
     | 
| 
      
 29 
     | 
    
         
            +
                      nil
         
     | 
| 
      
 30 
     | 
    
         
            +
                    end
         
     | 
| 
      
 31 
     | 
    
         
            +
             
     | 
| 
      
 32 
     | 
    
         
            +
                    # Returns the existing Instagram video matching the provided attributes or
         
     | 
| 
      
 33 
     | 
    
         
            +
                    # raises an error when the video is not found.
         
     | 
| 
      
 34 
     | 
    
         
            +
                    #
         
     | 
| 
      
 35 
     | 
    
         
            +
                    # @return [SocialNet::Instagram::Models::Video] when the video is found.
         
     | 
| 
      
 36 
     | 
    
         
            +
                    # @return [nil] when the video is not found.
         
     | 
| 
      
 37 
     | 
    
         
            +
                    # @param [Hash] params the attributes to find a video by.
         
     | 
| 
      
 38 
     | 
    
         
            +
                    # @option params [String] :media_id The Instagram video's media id.
         
     | 
| 
      
 39 
     | 
    
         
            +
                    # @raise [SocialNet::Errors::UnknownVideo] if the video is not found.
         
     | 
| 
      
 40 
     | 
    
         
            +
                    def self.find_by!(params = {})
         
     | 
| 
      
 41 
     | 
    
         
            +
                      if params[:media_id]
         
     | 
| 
      
 42 
     | 
    
         
            +
                        find_by_id! params[:media_id]
         
     | 
| 
      
 43 
     | 
    
         
            +
                      end
         
     | 
| 
      
 44 
     | 
    
         
            +
                    end
         
     | 
| 
      
 45 
     | 
    
         
            +
             
     | 
| 
      
 46 
     | 
    
         
            +
                    private
         
     | 
| 
      
 47 
     | 
    
         
            +
             
     | 
| 
      
 48 
     | 
    
         
            +
                    def self.find_by_id!(id)
         
     | 
| 
      
 49 
     | 
    
         
            +
                      request = Api::Request.new endpoint: "media/#{id}"
         
     | 
| 
      
 50 
     | 
    
         
            +
                      new request.run
         
     | 
| 
      
 51 
     | 
    
         
            +
                    rescue Errors::ResponseError => error
         
     | 
| 
      
 52 
     | 
    
         
            +
                      case error.response
         
     | 
| 
      
 53 
     | 
    
         
            +
                        when Net::HTTPBadRequest then raise Errors::UnknownVideo
         
     | 
| 
      
 54 
     | 
    
         
            +
                      end
         
     | 
| 
      
 55 
     | 
    
         
            +
                    end
         
     | 
| 
       15 
56 
     | 
    
         
             
                  end
         
     | 
| 
       16 
57 
     | 
    
         
             
                end
         
     | 
| 
       17 
58 
     | 
    
         
             
              end
         
     | 
    
        data/lib/social_net/version.rb
    CHANGED
    
    
| 
         @@ -0,0 +1,51 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            require 'spec_helper'
         
     | 
| 
      
 2 
     | 
    
         
            +
            require 'social_net/instagram'
         
     | 
| 
      
 3 
     | 
    
         
            +
             
     | 
| 
      
 4 
     | 
    
         
            +
            describe SocialNet::Instagram::Video, :vcr do
         
     | 
| 
      
 5 
     | 
    
         
            +
              before :all do
         
     | 
| 
      
 6 
     | 
    
         
            +
                SocialNet::Instagram.configure do |config|
         
     | 
| 
      
 7 
     | 
    
         
            +
                  if config.access_token.blank?
         
     | 
| 
      
 8 
     | 
    
         
            +
                    config.access_token = 'ACCESS_TOKEN'
         
     | 
| 
      
 9 
     | 
    
         
            +
                  end
         
     | 
| 
      
 10 
     | 
    
         
            +
                end
         
     | 
| 
      
 11 
     | 
    
         
            +
              end
         
     | 
| 
      
 12 
     | 
    
         
            +
             
     | 
| 
      
 13 
     | 
    
         
            +
              let(:existing_media_id) { '1531332985868221389' }
         
     | 
| 
      
 14 
     | 
    
         
            +
              let(:unknown_media_id) { '31231231231231232' }
         
     | 
| 
      
 15 
     | 
    
         
            +
             
     | 
| 
      
 16 
     | 
    
         
            +
              describe '.find_by' do
         
     | 
| 
      
 17 
     | 
    
         
            +
                subject(:video) { SocialNet::Instagram::Video.find_by media_id: media_id }
         
     | 
| 
      
 18 
     | 
    
         
            +
             
     | 
| 
      
 19 
     | 
    
         
            +
                context 'given an existing video\'s media id' do
         
     | 
| 
      
 20 
     | 
    
         
            +
                  let(:media_id) { existing_media_id }
         
     | 
| 
      
 21 
     | 
    
         
            +
             
     | 
| 
      
 22 
     | 
    
         
            +
                  it 'returns an object representing that video' do
         
     | 
| 
      
 23 
     | 
    
         
            +
                    expect(video.id).to eq '1531332985868221389_2920261222'
         
     | 
| 
      
 24 
     | 
    
         
            +
                    expect(video.link).to eq 'https://www.instagram.com/p/BVAYzy_g3vN/'
         
     | 
| 
      
 25 
     | 
    
         
            +
                  end
         
     | 
| 
      
 26 
     | 
    
         
            +
                end
         
     | 
| 
      
 27 
     | 
    
         
            +
             
     | 
| 
      
 28 
     | 
    
         
            +
                context 'given a nonexistant video' do
         
     | 
| 
      
 29 
     | 
    
         
            +
                  let(:media_id) { unknown_media_id }
         
     | 
| 
      
 30 
     | 
    
         
            +
                  it { expect(video).to be_nil }
         
     | 
| 
      
 31 
     | 
    
         
            +
                end
         
     | 
| 
      
 32 
     | 
    
         
            +
              end
         
     | 
| 
      
 33 
     | 
    
         
            +
             
     | 
| 
      
 34 
     | 
    
         
            +
              describe '.find_by!' do
         
     | 
| 
      
 35 
     | 
    
         
            +
                subject(:video) { SocialNet::Instagram::Video.find_by! media_id: media_id }
         
     | 
| 
      
 36 
     | 
    
         
            +
             
     | 
| 
      
 37 
     | 
    
         
            +
                context 'given an existing video\'s media id' do
         
     | 
| 
      
 38 
     | 
    
         
            +
                  let(:media_id) { existing_media_id }
         
     | 
| 
      
 39 
     | 
    
         
            +
             
     | 
| 
      
 40 
     | 
    
         
            +
                  it 'returns an object representing that video' do
         
     | 
| 
      
 41 
     | 
    
         
            +
                    expect(video.id).to eq '1531332985868221389_2920261222'
         
     | 
| 
      
 42 
     | 
    
         
            +
                    expect(video.link).to eq 'https://www.instagram.com/p/BVAYzy_g3vN/'
         
     | 
| 
      
 43 
     | 
    
         
            +
                  end
         
     | 
| 
      
 44 
     | 
    
         
            +
                end
         
     | 
| 
      
 45 
     | 
    
         
            +
             
     | 
| 
      
 46 
     | 
    
         
            +
                context 'given a nonexistant video' do
         
     | 
| 
      
 47 
     | 
    
         
            +
                  let(:media_id) { unknown_media_id }
         
     | 
| 
      
 48 
     | 
    
         
            +
                  it { expect{video}.to raise_error SocialNet::Instagram::UnknownVideo }
         
     | 
| 
      
 49 
     | 
    
         
            +
                end
         
     | 
| 
      
 50 
     | 
    
         
            +
              end
         
     | 
| 
      
 51 
     | 
    
         
            +
            end
         
     | 
    
        data/spec/support/cassettes/SocialNet_Instagram_Models_Video/_find_by/given_a_nonexistant_video/.yml
    ADDED
    
    | 
         @@ -0,0 +1,53 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            ---
         
     | 
| 
      
 2 
     | 
    
         
            +
            http_interactions:
         
     | 
| 
      
 3 
     | 
    
         
            +
            - request:
         
     | 
| 
      
 4 
     | 
    
         
            +
                method: get
         
     | 
| 
      
 5 
     | 
    
         
            +
                uri: https://api.instagram.com/v1/media/31231231231231232?access_token=INSTAGRAM_ACCESS_TOKEN
         
     | 
| 
      
 6 
     | 
    
         
            +
                body:
         
     | 
| 
      
 7 
     | 
    
         
            +
                  encoding: US-ASCII
         
     | 
| 
      
 8 
     | 
    
         
            +
                  string: ''
         
     | 
| 
      
 9 
     | 
    
         
            +
                headers:
         
     | 
| 
      
 10 
     | 
    
         
            +
                  Accept-Encoding:
         
     | 
| 
      
 11 
     | 
    
         
            +
                  - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
         
     | 
| 
      
 12 
     | 
    
         
            +
                  Accept:
         
     | 
| 
      
 13 
     | 
    
         
            +
                  - "*/*"
         
     | 
| 
      
 14 
     | 
    
         
            +
                  User-Agent:
         
     | 
| 
      
 15 
     | 
    
         
            +
                  - Ruby
         
     | 
| 
      
 16 
     | 
    
         
            +
              response:
         
     | 
| 
      
 17 
     | 
    
         
            +
                status:
         
     | 
| 
      
 18 
     | 
    
         
            +
                  code: 400
         
     | 
| 
      
 19 
     | 
    
         
            +
                  message: Bad Request
         
     | 
| 
      
 20 
     | 
    
         
            +
                headers:
         
     | 
| 
      
 21 
     | 
    
         
            +
                  Content-Type:
         
     | 
| 
      
 22 
     | 
    
         
            +
                  - application/json; charset=utf-8
         
     | 
| 
      
 23 
     | 
    
         
            +
                  X-Ratelimit-Limit:
         
     | 
| 
      
 24 
     | 
    
         
            +
                  - '5000'
         
     | 
| 
      
 25 
     | 
    
         
            +
                  X-Ratelimit-Remaining:
         
     | 
| 
      
 26 
     | 
    
         
            +
                  - '4965'
         
     | 
| 
      
 27 
     | 
    
         
            +
                  Cache-Control:
         
     | 
| 
      
 28 
     | 
    
         
            +
                  - private, no-cache, no-store, must-revalidate
         
     | 
| 
      
 29 
     | 
    
         
            +
                  Pragma:
         
     | 
| 
      
 30 
     | 
    
         
            +
                  - no-cache
         
     | 
| 
      
 31 
     | 
    
         
            +
                  Expires:
         
     | 
| 
      
 32 
     | 
    
         
            +
                  - Sat, 01 Jan 2000 00:00:00 GMT
         
     | 
| 
      
 33 
     | 
    
         
            +
                  Vary:
         
     | 
| 
      
 34 
     | 
    
         
            +
                  - Cookie, Accept-Language
         
     | 
| 
      
 35 
     | 
    
         
            +
                  Content-Language:
         
     | 
| 
      
 36 
     | 
    
         
            +
                  - en
         
     | 
| 
      
 37 
     | 
    
         
            +
                  Date:
         
     | 
| 
      
 38 
     | 
    
         
            +
                  - Wed, 26 Jul 2017 23:54:13 GMT
         
     | 
| 
      
 39 
     | 
    
         
            +
                  Set-Cookie:
         
     | 
| 
      
 40 
     | 
    
         
            +
                  - csrftoken=j41eKlQbLj0zVbPl8wuhhy59nkmzQR7X; expires=Wed, 25-Jul-2018 23:54:13
         
     | 
| 
      
 41 
     | 
    
         
            +
                    GMT; Max-Age=31449600; Path=/; Secure
         
     | 
| 
      
 42 
     | 
    
         
            +
                  - rur=FTW; Path=/
         
     | 
| 
      
 43 
     | 
    
         
            +
                  Connection:
         
     | 
| 
      
 44 
     | 
    
         
            +
                  - keep-alive
         
     | 
| 
      
 45 
     | 
    
         
            +
                  Content-Length:
         
     | 
| 
      
 46 
     | 
    
         
            +
                  - '94'
         
     | 
| 
      
 47 
     | 
    
         
            +
                body:
         
     | 
| 
      
 48 
     | 
    
         
            +
                  encoding: UTF-8
         
     | 
| 
      
 49 
     | 
    
         
            +
                  string: '{"meta": {"code": 400, "error_type": "APINotFoundError", "error_message":
         
     | 
| 
      
 50 
     | 
    
         
            +
                    "invalid media id"}}'
         
     | 
| 
      
 51 
     | 
    
         
            +
                http_version: 
         
     | 
| 
      
 52 
     | 
    
         
            +
              recorded_at: Wed, 26 Jul 2017 23:54:13 GMT
         
     | 
| 
      
 53 
     | 
    
         
            +
            recorded_with: VCR 2.9.3
         
     | 
| 
         @@ -0,0 +1,69 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            ---
         
     | 
| 
      
 2 
     | 
    
         
            +
            http_interactions:
         
     | 
| 
      
 3 
     | 
    
         
            +
            - request:
         
     | 
| 
      
 4 
     | 
    
         
            +
                method: get
         
     | 
| 
      
 5 
     | 
    
         
            +
                uri: https://api.instagram.com/v1/media/1531332985868221389?access_token=INSTAGRAM_ACCESS_TOKEN
         
     | 
| 
      
 6 
     | 
    
         
            +
                body:
         
     | 
| 
      
 7 
     | 
    
         
            +
                  encoding: US-ASCII
         
     | 
| 
      
 8 
     | 
    
         
            +
                  string: ''
         
     | 
| 
      
 9 
     | 
    
         
            +
                headers:
         
     | 
| 
      
 10 
     | 
    
         
            +
                  Accept-Encoding:
         
     | 
| 
      
 11 
     | 
    
         
            +
                  - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
         
     | 
| 
      
 12 
     | 
    
         
            +
                  Accept:
         
     | 
| 
      
 13 
     | 
    
         
            +
                  - "*/*"
         
     | 
| 
      
 14 
     | 
    
         
            +
                  User-Agent:
         
     | 
| 
      
 15 
     | 
    
         
            +
                  - Ruby
         
     | 
| 
      
 16 
     | 
    
         
            +
              response:
         
     | 
| 
      
 17 
     | 
    
         
            +
                status:
         
     | 
| 
      
 18 
     | 
    
         
            +
                  code: 200
         
     | 
| 
      
 19 
     | 
    
         
            +
                  message: OK
         
     | 
| 
      
 20 
     | 
    
         
            +
                headers:
         
     | 
| 
      
 21 
     | 
    
         
            +
                  Content-Type:
         
     | 
| 
      
 22 
     | 
    
         
            +
                  - application/json; charset=utf-8
         
     | 
| 
      
 23 
     | 
    
         
            +
                  X-Ratelimit-Limit:
         
     | 
| 
      
 24 
     | 
    
         
            +
                  - '5000'
         
     | 
| 
      
 25 
     | 
    
         
            +
                  X-Ratelimit-Remaining:
         
     | 
| 
      
 26 
     | 
    
         
            +
                  - '4966'
         
     | 
| 
      
 27 
     | 
    
         
            +
                  Cache-Control:
         
     | 
| 
      
 28 
     | 
    
         
            +
                  - private, no-cache, no-store, must-revalidate
         
     | 
| 
      
 29 
     | 
    
         
            +
                  Pragma:
         
     | 
| 
      
 30 
     | 
    
         
            +
                  - no-cache
         
     | 
| 
      
 31 
     | 
    
         
            +
                  Expires:
         
     | 
| 
      
 32 
     | 
    
         
            +
                  - Sat, 01 Jan 2000 00:00:00 GMT
         
     | 
| 
      
 33 
     | 
    
         
            +
                  Vary:
         
     | 
| 
      
 34 
     | 
    
         
            +
                  - Cookie, Accept-Language, Accept-Encoding
         
     | 
| 
      
 35 
     | 
    
         
            +
                  Content-Language:
         
     | 
| 
      
 36 
     | 
    
         
            +
                  - en
         
     | 
| 
      
 37 
     | 
    
         
            +
                  Date:
         
     | 
| 
      
 38 
     | 
    
         
            +
                  - Wed, 26 Jul 2017 23:54:13 GMT
         
     | 
| 
      
 39 
     | 
    
         
            +
                  Set-Cookie:
         
     | 
| 
      
 40 
     | 
    
         
            +
                  - csrftoken=Wup5cI7PHEwOEWvIGvzpsEx5Rgp9LSrp; expires=Wed, 25-Jul-2018 23:54:13
         
     | 
| 
      
 41 
     | 
    
         
            +
                    GMT; Max-Age=31449600; Path=/; Secure
         
     | 
| 
      
 42 
     | 
    
         
            +
                  - rur=FTW; Path=/
         
     | 
| 
      
 43 
     | 
    
         
            +
                  Connection:
         
     | 
| 
      
 44 
     | 
    
         
            +
                  - keep-alive
         
     | 
| 
      
 45 
     | 
    
         
            +
                  Content-Length:
         
     | 
| 
      
 46 
     | 
    
         
            +
                  - '702'
         
     | 
| 
      
 47 
     | 
    
         
            +
                body:
         
     | 
| 
      
 48 
     | 
    
         
            +
                  encoding: ASCII-8BIT
         
     | 
| 
      
 49 
     | 
    
         
            +
                  string: '{"data": {"id": "1531332985868221389_2920261222", "user": {"id": "2920261222",
         
     | 
| 
      
 50 
     | 
    
         
            +
                    "full_name": "EjamBrocolli", "profile_picture": "https://scontent.cdninstagram.com/t51.2885-19/s150x150/20181021_187099138494103_2678022811838054400_a.jpg",
         
     | 
| 
      
 51 
     | 
    
         
            +
                    "username": "ejamtucker"}, "images": {"thumbnail": {"width": 150, "height":
         
     | 
| 
      
 52 
     | 
    
         
            +
                    150, "url": "https://scontent.cdninstagram.com/t51.2885-15/s150x150/e15/18948059_1942577789357229_5999747679591071744_n.jpg"},
         
     | 
| 
      
 53 
     | 
    
         
            +
                    "low_resolution": {"width": 320, "height": 320, "url": "https://scontent.cdninstagram.com/t51.2885-15/s320x320/e15/18948059_1942577789357229_5999747679591071744_n.jpg"},
         
     | 
| 
      
 54 
     | 
    
         
            +
                    "standard_resolution": {"width": 640, "height": 640, "url": "https://scontent.cdninstagram.com/t51.2885-15/e15/18948059_1942577789357229_5999747679591071744_n.jpg"}},
         
     | 
| 
      
 55 
     | 
    
         
            +
                    "created_time": "1496769139", "caption": {"id": "17871224890103184", "text":
         
     | 
| 
      
 56 
     | 
    
         
            +
                    "Yesterday Hit Me Hard \ud83c\udf51 #skate.my #Hallofmeat (Cukup Lah Ni Makanan
         
     | 
| 
      
 57 
     | 
    
         
            +
                    Sahur)", "created_time": "1496769139", "from": {"id": "2920261222", "full_name":
         
     | 
| 
      
 58 
     | 
    
         
            +
                    "EjamBrocolli", "profile_picture": "https://scontent.cdninstagram.com/t51.2885-19/s150x150/20181021_187099138494103_2678022811838054400_a.jpg",
         
     | 
| 
      
 59 
     | 
    
         
            +
                    "username": "ejamtucker"}}, "user_has_liked": false, "likes": {"count": 112},
         
     | 
| 
      
 60 
     | 
    
         
            +
                    "tags": ["hallofmeat", "skate"], "filter": "Normal", "comments": {"count":
         
     | 
| 
      
 61 
     | 
    
         
            +
                    17}, "type": "video", "link": "https://www.instagram.com/p/BVAYzy_g3vN/",
         
     | 
| 
      
 62 
     | 
    
         
            +
                    "location": null, "attribution": null, "users_in_photo": [], "videos": {"standard_resolution":
         
     | 
| 
      
 63 
     | 
    
         
            +
                    {"width": 640, "height": 640, "url": "https://scontent.cdninstagram.com/t50.2886-16/18954088_1445442168855176_8271610702855143424_n.mp4"},
         
     | 
| 
      
 64 
     | 
    
         
            +
                    "low_bandwidth": {"width": 480, "height": 480, "url": "https://scontent.cdninstagram.com/t50.2886-16/18928806_320856988345914_4131951279704375296_n.mp4"},
         
     | 
| 
      
 65 
     | 
    
         
            +
                    "low_resolution": {"width": 480, "height": 480, "url": "https://scontent.cdninstagram.com/t50.2886-16/18928806_320856988345914_4131951279704375296_n.mp4"}}},
         
     | 
| 
      
 66 
     | 
    
         
            +
                    "meta": {"code": 200}}'
         
     | 
| 
      
 67 
     | 
    
         
            +
                http_version: 
         
     | 
| 
      
 68 
     | 
    
         
            +
              recorded_at: Wed, 26 Jul 2017 23:54:13 GMT
         
     | 
| 
      
 69 
     | 
    
         
            +
            recorded_with: VCR 2.9.3
         
     | 
| 
         @@ -0,0 +1,53 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            ---
         
     | 
| 
      
 2 
     | 
    
         
            +
            http_interactions:
         
     | 
| 
      
 3 
     | 
    
         
            +
            - request:
         
     | 
| 
      
 4 
     | 
    
         
            +
                method: get
         
     | 
| 
      
 5 
     | 
    
         
            +
                uri: https://api.instagram.com/v1/media/31231231231231232?access_token=INSTAGRAM_ACCESS_TOKEN
         
     | 
| 
      
 6 
     | 
    
         
            +
                body:
         
     | 
| 
      
 7 
     | 
    
         
            +
                  encoding: US-ASCII
         
     | 
| 
      
 8 
     | 
    
         
            +
                  string: ''
         
     | 
| 
      
 9 
     | 
    
         
            +
                headers:
         
     | 
| 
      
 10 
     | 
    
         
            +
                  Accept-Encoding:
         
     | 
| 
      
 11 
     | 
    
         
            +
                  - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
         
     | 
| 
      
 12 
     | 
    
         
            +
                  Accept:
         
     | 
| 
      
 13 
     | 
    
         
            +
                  - "*/*"
         
     | 
| 
      
 14 
     | 
    
         
            +
                  User-Agent:
         
     | 
| 
      
 15 
     | 
    
         
            +
                  - Ruby
         
     | 
| 
      
 16 
     | 
    
         
            +
              response:
         
     | 
| 
      
 17 
     | 
    
         
            +
                status:
         
     | 
| 
      
 18 
     | 
    
         
            +
                  code: 400
         
     | 
| 
      
 19 
     | 
    
         
            +
                  message: Bad Request
         
     | 
| 
      
 20 
     | 
    
         
            +
                headers:
         
     | 
| 
      
 21 
     | 
    
         
            +
                  Content-Type:
         
     | 
| 
      
 22 
     | 
    
         
            +
                  - application/json; charset=utf-8
         
     | 
| 
      
 23 
     | 
    
         
            +
                  X-Ratelimit-Limit:
         
     | 
| 
      
 24 
     | 
    
         
            +
                  - '5000'
         
     | 
| 
      
 25 
     | 
    
         
            +
                  X-Ratelimit-Remaining:
         
     | 
| 
      
 26 
     | 
    
         
            +
                  - '4963'
         
     | 
| 
      
 27 
     | 
    
         
            +
                  Cache-Control:
         
     | 
| 
      
 28 
     | 
    
         
            +
                  - private, no-cache, no-store, must-revalidate
         
     | 
| 
      
 29 
     | 
    
         
            +
                  Pragma:
         
     | 
| 
      
 30 
     | 
    
         
            +
                  - no-cache
         
     | 
| 
      
 31 
     | 
    
         
            +
                  Expires:
         
     | 
| 
      
 32 
     | 
    
         
            +
                  - Sat, 01 Jan 2000 00:00:00 GMT
         
     | 
| 
      
 33 
     | 
    
         
            +
                  Vary:
         
     | 
| 
      
 34 
     | 
    
         
            +
                  - Cookie, Accept-Language
         
     | 
| 
      
 35 
     | 
    
         
            +
                  Content-Language:
         
     | 
| 
      
 36 
     | 
    
         
            +
                  - en
         
     | 
| 
      
 37 
     | 
    
         
            +
                  Date:
         
     | 
| 
      
 38 
     | 
    
         
            +
                  - Wed, 26 Jul 2017 23:54:14 GMT
         
     | 
| 
      
 39 
     | 
    
         
            +
                  Set-Cookie:
         
     | 
| 
      
 40 
     | 
    
         
            +
                  - csrftoken=xIFSTEGyONB8IpDt7S1nEWUSvWovvWJp; expires=Wed, 25-Jul-2018 23:54:14
         
     | 
| 
      
 41 
     | 
    
         
            +
                    GMT; Max-Age=31449600; Path=/; Secure
         
     | 
| 
      
 42 
     | 
    
         
            +
                  - rur=FTW; Path=/
         
     | 
| 
      
 43 
     | 
    
         
            +
                  Connection:
         
     | 
| 
      
 44 
     | 
    
         
            +
                  - keep-alive
         
     | 
| 
      
 45 
     | 
    
         
            +
                  Content-Length:
         
     | 
| 
      
 46 
     | 
    
         
            +
                  - '94'
         
     | 
| 
      
 47 
     | 
    
         
            +
                body:
         
     | 
| 
      
 48 
     | 
    
         
            +
                  encoding: UTF-8
         
     | 
| 
      
 49 
     | 
    
         
            +
                  string: '{"meta": {"code": 400, "error_type": "APINotFoundError", "error_message":
         
     | 
| 
      
 50 
     | 
    
         
            +
                    "invalid media id"}}'
         
     | 
| 
      
 51 
     | 
    
         
            +
                http_version: 
         
     | 
| 
      
 52 
     | 
    
         
            +
              recorded_at: Wed, 26 Jul 2017 23:54:14 GMT
         
     | 
| 
      
 53 
     | 
    
         
            +
            recorded_with: VCR 2.9.3
         
     | 
| 
         @@ -0,0 +1,69 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            ---
         
     | 
| 
      
 2 
     | 
    
         
            +
            http_interactions:
         
     | 
| 
      
 3 
     | 
    
         
            +
            - request:
         
     | 
| 
      
 4 
     | 
    
         
            +
                method: get
         
     | 
| 
      
 5 
     | 
    
         
            +
                uri: https://api.instagram.com/v1/media/1531332985868221389?access_token=INSTAGRAM_ACCESS_TOKEN
         
     | 
| 
      
 6 
     | 
    
         
            +
                body:
         
     | 
| 
      
 7 
     | 
    
         
            +
                  encoding: US-ASCII
         
     | 
| 
      
 8 
     | 
    
         
            +
                  string: ''
         
     | 
| 
      
 9 
     | 
    
         
            +
                headers:
         
     | 
| 
      
 10 
     | 
    
         
            +
                  Accept-Encoding:
         
     | 
| 
      
 11 
     | 
    
         
            +
                  - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
         
     | 
| 
      
 12 
     | 
    
         
            +
                  Accept:
         
     | 
| 
      
 13 
     | 
    
         
            +
                  - "*/*"
         
     | 
| 
      
 14 
     | 
    
         
            +
                  User-Agent:
         
     | 
| 
      
 15 
     | 
    
         
            +
                  - Ruby
         
     | 
| 
      
 16 
     | 
    
         
            +
              response:
         
     | 
| 
      
 17 
     | 
    
         
            +
                status:
         
     | 
| 
      
 18 
     | 
    
         
            +
                  code: 200
         
     | 
| 
      
 19 
     | 
    
         
            +
                  message: OK
         
     | 
| 
      
 20 
     | 
    
         
            +
                headers:
         
     | 
| 
      
 21 
     | 
    
         
            +
                  Content-Type:
         
     | 
| 
      
 22 
     | 
    
         
            +
                  - application/json; charset=utf-8
         
     | 
| 
      
 23 
     | 
    
         
            +
                  X-Ratelimit-Limit:
         
     | 
| 
      
 24 
     | 
    
         
            +
                  - '5000'
         
     | 
| 
      
 25 
     | 
    
         
            +
                  X-Ratelimit-Remaining:
         
     | 
| 
      
 26 
     | 
    
         
            +
                  - '4964'
         
     | 
| 
      
 27 
     | 
    
         
            +
                  Cache-Control:
         
     | 
| 
      
 28 
     | 
    
         
            +
                  - private, no-cache, no-store, must-revalidate
         
     | 
| 
      
 29 
     | 
    
         
            +
                  Pragma:
         
     | 
| 
      
 30 
     | 
    
         
            +
                  - no-cache
         
     | 
| 
      
 31 
     | 
    
         
            +
                  Expires:
         
     | 
| 
      
 32 
     | 
    
         
            +
                  - Sat, 01 Jan 2000 00:00:00 GMT
         
     | 
| 
      
 33 
     | 
    
         
            +
                  Vary:
         
     | 
| 
      
 34 
     | 
    
         
            +
                  - Cookie, Accept-Language, Accept-Encoding
         
     | 
| 
      
 35 
     | 
    
         
            +
                  Content-Language:
         
     | 
| 
      
 36 
     | 
    
         
            +
                  - en
         
     | 
| 
      
 37 
     | 
    
         
            +
                  Date:
         
     | 
| 
      
 38 
     | 
    
         
            +
                  - Wed, 26 Jul 2017 23:54:13 GMT
         
     | 
| 
      
 39 
     | 
    
         
            +
                  Set-Cookie:
         
     | 
| 
      
 40 
     | 
    
         
            +
                  - csrftoken=xKRuZk6RsOUSQn97DtfuDRTUnirdrFVa; expires=Wed, 25-Jul-2018 23:54:13
         
     | 
| 
      
 41 
     | 
    
         
            +
                    GMT; Max-Age=31449600; Path=/; Secure
         
     | 
| 
      
 42 
     | 
    
         
            +
                  - rur=FTW; Path=/
         
     | 
| 
      
 43 
     | 
    
         
            +
                  Connection:
         
     | 
| 
      
 44 
     | 
    
         
            +
                  - keep-alive
         
     | 
| 
      
 45 
     | 
    
         
            +
                  Content-Length:
         
     | 
| 
      
 46 
     | 
    
         
            +
                  - '702'
         
     | 
| 
      
 47 
     | 
    
         
            +
                body:
         
     | 
| 
      
 48 
     | 
    
         
            +
                  encoding: ASCII-8BIT
         
     | 
| 
      
 49 
     | 
    
         
            +
                  string: '{"data": {"id": "1531332985868221389_2920261222", "user": {"id": "2920261222",
         
     | 
| 
      
 50 
     | 
    
         
            +
                    "full_name": "EjamBrocolli", "profile_picture": "https://scontent.cdninstagram.com/t51.2885-19/s150x150/20181021_187099138494103_2678022811838054400_a.jpg",
         
     | 
| 
      
 51 
     | 
    
         
            +
                    "username": "ejamtucker"}, "images": {"thumbnail": {"width": 150, "height":
         
     | 
| 
      
 52 
     | 
    
         
            +
                    150, "url": "https://scontent.cdninstagram.com/t51.2885-15/s150x150/e15/18948059_1942577789357229_5999747679591071744_n.jpg"},
         
     | 
| 
      
 53 
     | 
    
         
            +
                    "low_resolution": {"width": 320, "height": 320, "url": "https://scontent.cdninstagram.com/t51.2885-15/s320x320/e15/18948059_1942577789357229_5999747679591071744_n.jpg"},
         
     | 
| 
      
 54 
     | 
    
         
            +
                    "standard_resolution": {"width": 640, "height": 640, "url": "https://scontent.cdninstagram.com/t51.2885-15/e15/18948059_1942577789357229_5999747679591071744_n.jpg"}},
         
     | 
| 
      
 55 
     | 
    
         
            +
                    "created_time": "1496769139", "caption": {"id": "17871224890103184", "text":
         
     | 
| 
      
 56 
     | 
    
         
            +
                    "Yesterday Hit Me Hard \ud83c\udf51 #skate.my #Hallofmeat (Cukup Lah Ni Makanan
         
     | 
| 
      
 57 
     | 
    
         
            +
                    Sahur)", "created_time": "1496769139", "from": {"id": "2920261222", "full_name":
         
     | 
| 
      
 58 
     | 
    
         
            +
                    "EjamBrocolli", "profile_picture": "https://scontent.cdninstagram.com/t51.2885-19/s150x150/20181021_187099138494103_2678022811838054400_a.jpg",
         
     | 
| 
      
 59 
     | 
    
         
            +
                    "username": "ejamtucker"}}, "user_has_liked": false, "likes": {"count": 112},
         
     | 
| 
      
 60 
     | 
    
         
            +
                    "tags": ["skate", "hallofmeat"], "filter": "Normal", "comments": {"count":
         
     | 
| 
      
 61 
     | 
    
         
            +
                    17}, "type": "video", "link": "https://www.instagram.com/p/BVAYzy_g3vN/",
         
     | 
| 
      
 62 
     | 
    
         
            +
                    "location": null, "attribution": null, "users_in_photo": [], "videos": {"standard_resolution":
         
     | 
| 
      
 63 
     | 
    
         
            +
                    {"width": 640, "height": 640, "url": "https://scontent.cdninstagram.com/t50.2886-16/18954088_1445442168855176_8271610702855143424_n.mp4"},
         
     | 
| 
      
 64 
     | 
    
         
            +
                    "low_bandwidth": {"width": 480, "height": 480, "url": "https://scontent.cdninstagram.com/t50.2886-16/18928806_320856988345914_4131951279704375296_n.mp4"},
         
     | 
| 
      
 65 
     | 
    
         
            +
                    "low_resolution": {"width": 480, "height": 480, "url": "https://scontent.cdninstagram.com/t50.2886-16/18928806_320856988345914_4131951279704375296_n.mp4"}}},
         
     | 
| 
      
 66 
     | 
    
         
            +
                    "meta": {"code": 200}}'
         
     | 
| 
      
 67 
     | 
    
         
            +
                http_version: 
         
     | 
| 
      
 68 
     | 
    
         
            +
              recorded_at: Wed, 26 Jul 2017 23:54:13 GMT
         
     | 
| 
      
 69 
     | 
    
         
            +
            recorded_with: VCR 2.9.3
         
     | 
    
        metadata
    CHANGED
    
    | 
         @@ -1,14 +1,14 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            --- !ruby/object:Gem::Specification
         
     | 
| 
       2 
2 
     | 
    
         
             
            name: social_net
         
     | 
| 
       3 
3 
     | 
    
         
             
            version: !ruby/object:Gem::Version
         
     | 
| 
       4 
     | 
    
         
            -
              version: 0.2. 
     | 
| 
      
 4 
     | 
    
         
            +
              version: 0.2.7
         
     | 
| 
       5 
5 
     | 
    
         
             
            platform: ruby
         
     | 
| 
       6 
6 
     | 
    
         
             
            authors:
         
     | 
| 
       7 
7 
     | 
    
         
             
            - Jeremy Cohen Hoffing
         
     | 
| 
       8 
8 
     | 
    
         
             
            autorequire: 
         
     | 
| 
       9 
9 
     | 
    
         
             
            bindir: bin
         
     | 
| 
       10 
10 
     | 
    
         
             
            cert_chain: []
         
     | 
| 
       11 
     | 
    
         
            -
            date: 2017- 
     | 
| 
      
 11 
     | 
    
         
            +
            date: 2017-07-27 00:00:00.000000000 Z
         
     | 
| 
       12 
12 
     | 
    
         
             
            dependencies:
         
     | 
| 
       13 
13 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       14 
14 
     | 
    
         
             
              name: activesupport
         
     | 
| 
         @@ -154,6 +154,7 @@ files: 
     | 
|
| 
       154 
154 
     | 
    
         
             
            - lib/social_net/instagram/errors/private_user.rb
         
     | 
| 
       155 
155 
     | 
    
         
             
            - lib/social_net/instagram/errors/response_error.rb
         
     | 
| 
       156 
156 
     | 
    
         
             
            - lib/social_net/instagram/errors/unknown_user.rb
         
     | 
| 
      
 157 
     | 
    
         
            +
            - lib/social_net/instagram/errors/unknown_video.rb
         
     | 
| 
       157 
158 
     | 
    
         
             
            - lib/social_net/instagram/models.rb
         
     | 
| 
       158 
159 
     | 
    
         
             
            - lib/social_net/instagram/models/user.rb
         
     | 
| 
       159 
160 
     | 
    
         
             
            - lib/social_net/instagram/models/video.rb
         
     | 
| 
         @@ -173,6 +174,7 @@ files: 
     | 
|
| 
       173 
174 
     | 
    
         
             
            - spec/social_net/facebook/models/pages_spec.rb
         
     | 
| 
       174 
175 
     | 
    
         
             
            - spec/social_net/facebook/models/users_spec.rb
         
     | 
| 
       175 
176 
     | 
    
         
             
            - spec/social_net/instagram/models/user_spec.rb
         
     | 
| 
      
 177 
     | 
    
         
            +
            - spec/social_net/instagram/models/video_spec.rb
         
     | 
| 
       176 
178 
     | 
    
         
             
            - spec/social_net/twitter/models/user_spec.rb
         
     | 
| 
       177 
179 
     | 
    
         
             
            - spec/spec_helper.rb
         
     | 
| 
       178 
180 
     | 
    
         
             
            - spec/support/cassettes/Posts/_posts/given_an_existing_case-insensitive_username/returns_an_object_representing_that_user.yml
         
     | 
| 
         @@ -183,6 +185,10 @@ files: 
     | 
|
| 
       183 
185 
     | 
    
         
             
            - spec/support/cassettes/SocialNet_Instagram_Models_User/_find_by_/given_an_existing_case-insensitive_username/returns_an_object_representing_that_user.yml
         
     | 
| 
       184 
186 
     | 
    
         
             
            - spec/support/cassettes/SocialNet_Instagram_Models_User/_find_by_/given_an_unknown_username/.yml
         
     | 
| 
       185 
187 
     | 
    
         
             
            - spec/support/cassettes/SocialNet_Instagram_Models_User/_videos/given_an_existing_user/returns_an_array_of_video_posts_from_the_user.yml
         
     | 
| 
      
 188 
     | 
    
         
            +
            - spec/support/cassettes/SocialNet_Instagram_Models_Video/_find_by/given_a_nonexistant_video/.yml
         
     | 
| 
      
 189 
     | 
    
         
            +
            - spec/support/cassettes/SocialNet_Instagram_Models_Video/_find_by/given_an_existing_video_s_media_id/returns_an_object_representing_that_video.yml
         
     | 
| 
      
 190 
     | 
    
         
            +
            - spec/support/cassettes/SocialNet_Instagram_Models_Video/_find_by_/given_a_nonexistant_video/.yml
         
     | 
| 
      
 191 
     | 
    
         
            +
            - spec/support/cassettes/SocialNet_Instagram_Models_Video/_find_by_/given_an_existing_video_s_media_id/returns_an_object_representing_that_video.yml
         
     | 
| 
       186 
192 
     | 
    
         
             
            - spec/support/vcr.rb
         
     | 
| 
       187 
193 
     | 
    
         
             
            homepage: https://github.com/CollabCreators/social_net
         
     | 
| 
       188 
194 
     | 
    
         
             
            licenses:
         
     | 
| 
         @@ -212,6 +218,7 @@ test_files: 
     | 
|
| 
       212 
218 
     | 
    
         
             
            - spec/social_net/facebook/models/pages_spec.rb
         
     | 
| 
       213 
219 
     | 
    
         
             
            - spec/social_net/facebook/models/users_spec.rb
         
     | 
| 
       214 
220 
     | 
    
         
             
            - spec/social_net/instagram/models/user_spec.rb
         
     | 
| 
      
 221 
     | 
    
         
            +
            - spec/social_net/instagram/models/video_spec.rb
         
     | 
| 
       215 
222 
     | 
    
         
             
            - spec/social_net/twitter/models/user_spec.rb
         
     | 
| 
       216 
223 
     | 
    
         
             
            - spec/spec_helper.rb
         
     | 
| 
       217 
224 
     | 
    
         
             
            - spec/support/cassettes/Posts/_posts/given_an_existing_case-insensitive_username/returns_an_object_representing_that_user.yml
         
     | 
| 
         @@ -222,5 +229,9 @@ test_files: 
     | 
|
| 
       222 
229 
     | 
    
         
             
            - spec/support/cassettes/SocialNet_Instagram_Models_User/_find_by_/given_an_existing_case-insensitive_username/returns_an_object_representing_that_user.yml
         
     | 
| 
       223 
230 
     | 
    
         
             
            - spec/support/cassettes/SocialNet_Instagram_Models_User/_find_by_/given_an_unknown_username/.yml
         
     | 
| 
       224 
231 
     | 
    
         
             
            - spec/support/cassettes/SocialNet_Instagram_Models_User/_videos/given_an_existing_user/returns_an_array_of_video_posts_from_the_user.yml
         
     | 
| 
      
 232 
     | 
    
         
            +
            - spec/support/cassettes/SocialNet_Instagram_Models_Video/_find_by/given_a_nonexistant_video/.yml
         
     | 
| 
      
 233 
     | 
    
         
            +
            - spec/support/cassettes/SocialNet_Instagram_Models_Video/_find_by/given_an_existing_video_s_media_id/returns_an_object_representing_that_video.yml
         
     | 
| 
      
 234 
     | 
    
         
            +
            - spec/support/cassettes/SocialNet_Instagram_Models_Video/_find_by_/given_a_nonexistant_video/.yml
         
     | 
| 
      
 235 
     | 
    
         
            +
            - spec/support/cassettes/SocialNet_Instagram_Models_Video/_find_by_/given_an_existing_video_s_media_id/returns_an_object_representing_that_video.yml
         
     | 
| 
       225 
236 
     | 
    
         
             
            - spec/support/vcr.rb
         
     | 
| 
       226 
237 
     | 
    
         
             
            has_rdoc: 
         
     |