Sha256: 3729aa7fd967a5ba42a1698b8e4c189ed997dba7d644f5cdc87cee48e3e7cd37

Contents?: true

Size: 1.28 KB

Versions: 3

Compression:

Stored size: 1.28 KB

Contents

# frozen_string_literal: true

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.3.0 spec/integration/create_gist_spec.rb
geet-0.2.1 spec/integration/create_gist_spec.rb
geet-0.2.0 spec/integration/create_gist_spec.rb