From 44a3ecb57aaf98db4cd0deca4e2d4388115c1b4d Mon Sep 17 00:00:00 2001 From: Marcel Otto Date: Thu, 16 Apr 2020 23:42:55 +0200 Subject: [PATCH] Don't support cast/1 on RDF.Literal.Generic --- lib/rdf/literal/datatypes/generic.ex | 1 - test/unit/datatypes/generic_test.exs | 21 ++------------------- 2 files changed, 2 insertions(+), 20 deletions(-) diff --git a/lib/rdf/literal/datatypes/generic.ex b/lib/rdf/literal/datatypes/generic.ex index c717f6b..df54083 100644 --- a/lib/rdf/literal/datatypes/generic.ex +++ b/lib/rdf/literal/datatypes/generic.ex @@ -82,7 +82,6 @@ defmodule RDF.Literal.Generic do def valid?(_), do: false @impl Datatype - def cast(%Literal{literal: %__MODULE__{}} = literal), do: literal def cast(_), do: nil @impl Datatype diff --git a/test/unit/datatypes/generic_test.exs b/test/unit/datatypes/generic_test.exs index 01a504a..8a0bd53 100644 --- a/test/unit/datatypes/generic_test.exs +++ b/test/unit/datatypes/generic_test.exs @@ -143,28 +143,11 @@ defmodule RDF.Literal.GenericTest do end describe "cast/1" do - test "when given a RDF.Literal.Generic literal" do + test "always return nil (RDF.Literal.Generic does not support cast)" do Enum.each @valid, fn {input, {_, datatype}} -> - assert (Generic.new(input, datatype: datatype) |> Generic.cast()) == - Generic.new(input, datatype: datatype) + assert (Generic.new(input, datatype: datatype) |> Generic.cast()) == nil end end - - test "when given a literal with a datatype which is not castable" do - assert RDF.XSD.String.new("foo") |> Generic.cast() == nil - assert RDF.XSD.Integer.new(12345) |> Generic.cast() == nil - end - - test "with invalid literals" do - assert RDF.XSD.Integer.new(3.14) |> Generic.cast() == nil - assert RDF.XSD.Decimal.new("NAN") |> Generic.cast() == nil - assert RDF.XSD.Double.new(true) |> Generic.cast() == nil - end - - test "with non-coercible value" do - assert Generic.cast(:foo) == nil - assert Generic.cast(make_ref()) == nil - end end test "equal_value?/2" do