Sha256: 716c8194ad9335a26448c6ea7391227711aad7cf4d216318cfa73058395cbe09

Contents?: true

Size: 1.25 KB

Versions: 3

Compression:

Stored size: 1.25 KB

Contents

require 'spec_helper'
require 'tempfile'

require_relative '../../lib/geet/git/repository'
require_relative '../../lib/geet/services/create_gist'

describe Geet::Services::CreateGist do
  let(:repository) { Geet::Git::Repository.new }
  let(:tempfile) { Tempfile.open('geet_gist') { |file| file << "testcontent" } }

  it 'should create a public gist' do
    expected_output = <<~STR
      Creating a public gist...
      Gist address: https://gist.github.com/b01dface
    STR

    actual_output = StringIO.new

    VCR.use_cassette("create_gist_public") do
      described_class.new.execute(
        repository, tempfile.path,
        description: 'testdescription', publik: true, no_browse: true, output: actual_output
      )
    end

    expect(actual_output.string).to eql(expected_output)
  end

  it 'should create a private gist' do
    expected_output = <<~STR
      Creating a private gist...
      Gist address: https://gist.github.com/deadbeef
    STR

    actual_output = StringIO.new

    VCR.use_cassette("create_gist_private") do
      described_class.new.execute(
        repository, tempfile.path,
        description: 'testdescription', no_browse: true, output: actual_output
      )
    end

    expect(actual_output.string).to eql(expected_output)
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
geet-0.1.12 spec/integration/create_gist_spec.rb
geet-0.1.11 spec/integration/create_gist_spec.rb
geet-0.1.10 spec/integration/create_gist_spec.rb