     test "builds a pid from string" do
       assert inspect(pid("0.32767.3276")) == "#PID<0.32767.3276>"
       assert inspect(pid("0.5.6")) == "#PID<0.5.6>"
+
       assert_raise ArgumentError, fn ->
         pid("0.6.-6")
       end

  if :erlang.system_info(:otp_release) >= '20' do
    describe "breakpoints" do
      setup do
        on_exit fn -> IEx.Pry.remove_breaks() end
      end

      test "sets up a breakpoint with macro syntax" do
        assert break!(URI.decode_query/2) == 1
        assert IEx.Pry.breaks() == [{1, URI, {:decode_query, 2}, 1}]
      end



      test "prints table with breaks" do
        break!(URI, :decode_query, 2)

        assert capture_io(fn -> breaks() end) == """

                ID   Module.function/arity   Pending stops
               ---- ----------------------- ---------------
                1    URI.decode_query/2      1

               """

        assert capture_io(fn -> URI.decode_query("foo=bar", %{}) end) != ""

        assert capture_io(fn -> breaks() end) == """

                ID   Module.function/arity   Pending stops
               ---- ----------------------- ---------------
                1    URI.decode_query/2      0

               """

        assert capture_io(fn -> URI.decode_query("foo=bar", %{}) end) == ""

        assert capture_io(fn -> breaks() end) == """

                ID   Module.function/arity   Pending stops
               ---- ----------------------- ---------------
                1    URI.decode_query/2      0

               """
      end

      test "does not print table when there are no breaks" do
        assert capture_io(fn -> breaks() end) == "No breakpoints set\n"
      end
    end
  end
