Blog

Elixir: buscar existencia de elementos relacionados en código vs BDD

Estaba revisando este código:

  @inactive_implementation_status [
    :deprecated,
    :versioned
  ]


  defp validate_inactive_implementations(%{data: rule} = changeset) do
    active_implementations? =
      rule
      |> TdDd.Repo.preload(:rule_implementations)
      |> Map.get(:rule_implementations)
      |> Enum.any?(&(!Enum.member?(@inactive_implementation_status, &1.status)))

    if active_implementations? do
      add_error(changeset, :rule_implementations, "active_implementations")
    else
      changeset
    end
  end
(more…)

Error mock Apollo: «Failed to match 1 mock for this query, which had the following variables:»

Este mock:

(more…)

Mejora del rendimiento de un join where or separando y juntando con union

Un compañero me llamó la atención sobre el rendimiento de esta query:

(more…)

ElixirLS: the dependency does not match the requirement

ElixirLS me tiraba este error en Visual Studio Code (View -> Output -> Combobox -> ElixirLS):

(more…)

Igualar dos ramas en git / sobreescribir una rama en otra

Normalmente utilizaríamos la opción 1 o 2 que aparecen a continuación, empezar una rama nueva o borrar los commis existentes con un reset:

(more…)

Examinando _.flow con _.tap

_.flow(
  _.get("fields"),
  _.tap(x => {
    console.log("TAP", x)
  }),
  _.filter((field) => !_.includes(fieldsToOmit)(field?.name)),
  [...]

Ecto: rollback de migraciones en test

Las migraciones se ejecutan automáticamente al hacer mix test:

(more…)

Tests en React: setProps en un elemento que requiere history

Tenemos un componente que requiere history:

(more…)

Inspeccionando un generador testSaga de redux-saga-test-plan

    expect(() => {
      console.log("testSaga", 
      testSaga(createGraphSaga, {})
    }).not.toThrow();
  });
(more…)

IO.inspect en pipe, con función, devolviendo argumento a dicha función

Dentro de un pipe quiero devolver una query y también visualizar Ecto.Adapters.SQL.to_sql(:all, Repo, query):

(more…)