kopia lustrzana https://git.sr.ht/~edwardloveall/scribe
44 wiersze
1.0 KiB
Crystal
44 wiersze
1.0 KiB
Crystal
require "../spec_helper"
|
|
|
|
describe GistParams do
|
|
it "extracts params from the gist url" do
|
|
url = "https://gist.github.com/user/1D?file=example.txt"
|
|
|
|
params = GistParams.extract_from_url(url)
|
|
|
|
params.id.should eq("1D")
|
|
params.filename.should eq("example.txt")
|
|
end
|
|
|
|
describe "when gist file has a file extension" do
|
|
it "extracts params from the gist url" do
|
|
url = "https://gist.github.com/user/1d.js"
|
|
|
|
params = GistParams.extract_from_url(url)
|
|
|
|
params.id.should eq("1d")
|
|
end
|
|
end
|
|
|
|
describe "when no file param exists" do
|
|
it "does not extract a filename" do
|
|
url = "https://gist.github.com/user/1D"
|
|
|
|
params = GistParams.extract_from_url(url)
|
|
|
|
params.id.should eq("1D")
|
|
params.filename.should be_nil
|
|
end
|
|
end
|
|
|
|
describe "when the URL is not a gist URL" do
|
|
it "raises a MissingGistId exeption" do
|
|
url = "https://example.com"
|
|
|
|
expect_raises(GistParams::MissingGistId, message: "https://example.com") do
|
|
GistParams.extract_from_url(url)
|
|
end
|
|
end
|
|
end
|
|
end
|