Skip to content

Commit

Permalink
test DRY refactor
Browse files Browse the repository at this point in the history
  • Loading branch information
Anil Kulkarni committed Jun 28, 2018
1 parent c66cc28 commit a51afdd
Showing 1 changed file with 30 additions and 28 deletions.
58 changes: 30 additions & 28 deletions test/commands/add_execute_test.exs
Original file line number Diff line number Diff line change
Expand Up @@ -83,40 +83,42 @@ defmodule AddExecuteTest do
end
end

test ":package_already_exists when poison already exists" do
Helpers.IO.stub_stderr()
%WandFile{
dependencies: [
%Dependency{name: "poison", requirement: "~> 3.1"},
]
}
|> Helpers.WandFile.stub_load()
Helpers.Hex.stub_poison()
assert Add.execute([@poison]) == error(:package_already_exists)
end
describe "dependency errors" do
setup do
Helpers.IO.stub_stderr()
Helpers.Hex.stub_poison()
:ok
end

test ":package_already_exists when trying to add the same package twice" do
Helpers.IO.stub_stderr()
Helpers.WandFile.stub_load()
Helpers.Hex.stub_poison()
Helpers.Hex.stub_poison()
assert Add.execute([@poison, @poison]) == error(:package_already_exists)
end
test ":package_already_exists when poison already exists" do
%WandFile{
dependencies: [
%Dependency{name: "poison", requirement: "~> 3.1"},
]
}
|> Helpers.WandFile.stub_load()
assert Add.execute([@poison]) == error(:package_already_exists)
end

test ":file_write_error when trying to save the file" do
Helpers.IO.stub_stderr()
Helpers.Hex.stub_poison()
Helpers.WandFile.stub_load()
%WandFile{
dependencies: [%Dependency{name: "poison", requirement: "~> 3.1.0"}]
}
|> Helpers.WandFile.stub_cannot_save()
assert Add.execute([@poison]) == error(:file_write_error)
test ":package_already_exists when trying to add the same package twice" do
Helpers.WandFile.stub_load()
Helpers.Hex.stub_poison()
assert Add.execute([@poison, @poison]) == error(:package_already_exists)
end

test ":file_write_error when trying to save the file" do
Helpers.WandFile.stub_load()
%WandFile{
dependencies: [%Dependency{name: "poison", requirement: "~> 3.1.0"}]
}
|> Helpers.WandFile.stub_cannot_save()
assert Add.execute([@poison]) == error(:file_write_error)
end
end

test "adds a single package" do
Helpers.Hex.stub_poison()
Helpers.WandFile.stub_load()
Helpers.Hex.stub_poison()
%WandFile{
dependencies: [%Dependency{name: "poison", requirement: "~> 3.1.0"}]
}
Expand Down

0 comments on commit a51afdd

Please sign in to comment.