Skip to content

Instantly share code, notes, and snippets.

@mh-mobile
Created October 29, 2020 02:52
Show Gist options
  • Save mh-mobile/a3906f189f1e9c70524f6525d73555bc to your computer and use it in GitHub Desktop.
Save mh-mobile/a3906f189f1e9c70524f6525d73555bc to your computer and use it in GitHub Desktop.
require twitter quote search
require "bundler/inline"
gemfile(true) do
source "https://rubygems.org"
git_source(:github) { |repo| "https://github.com/#{repo}.git" }
# Activate the gem you are reporting the issue against.
gem "activerecord", "6.0.0"
end
require 'net/http'
require 'net/https'
require 'json'
# Request (GET )
def send_request
uri = URI('https://api.twitter.com/1.1/search/tweets.json?q=twitter.com%2Fkaigionrails%2Fstatus%2F1319941706612043777&count=100')
# Create client
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_PEER
# Create Request
req = Net::HTTP::Get.new(uri)
# Add headers
req.add_field "Authorization", "Here's bearer token"
# Fetch Request
res = http.request(req)
res
rescue StandardError => e
puts "HTTP Request failed (#{e.message})"
end
require "minitest/autorun"
require "logger"
class TwitterQuoteSearch < Minitest::Test
def test_response
res = send_request
body = JSON.parse(res.body)
statuses = body["statuses"]
statuses.each do |tweet|
id_str = tweet["id_str"]
text = tweet["text"]
created_at = tweet["created_at"]
user = tweet["user"]
quoted_status = tweet["quoted_status"]
end
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment