diff options
author | Maksim Pechnikov <parallel588@gmail.com> | 2019-10-28 12:47:23 +0300 |
---|---|---|
committer | Maksim Pechnikov <parallel588@gmail.com> | 2019-11-28 22:08:30 +0300 |
commit | a52da55eb9c6bbf8a08bf1d90d59a48dc25f5907 (patch) | |
tree | 766d151dfa013931b636b723746061bbeb4f1429 /test/user | |
parent | ca1acfa314a57f78c2f5f8e60a4bd1380350e483 (diff) | |
download | pleroma-a52da55eb9c6bbf8a08bf1d90d59a48dc25f5907.tar.gz pleroma-a52da55eb9c6bbf8a08bf1d90d59a48dc25f5907.zip |
added User.NotificationSetting struct
Diffstat (limited to 'test/user')
-rw-r--r-- | test/user/notification_setting_test.exs | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/test/user/notification_setting_test.exs b/test/user/notification_setting_test.exs new file mode 100644 index 000000000..d1f766eb3 --- /dev/null +++ b/test/user/notification_setting_test.exs @@ -0,0 +1,40 @@ +# Pleroma: A lightweight social networking server +# Copyright © 2017-2019 Pleroma Authors <https://pleroma.social/> +# SPDX-License-Identifier: AGPL-3.0-only + +defmodule Pleroma.User.NotificationSettingTest do + use Pleroma.DataCase + + alias Pleroma.User.NotificationSetting + + describe "changeset/2" do + test "sets valid privacy option" do + changeset = + NotificationSetting.changeset( + %NotificationSetting{}, + %{"privacy_option" => "name_only"} + ) + + assert %Ecto.Changeset{valid?: true} = changeset + end + + test "returns invalid changeset when privacy option is incorrect" do + changeset = + NotificationSetting.changeset( + %NotificationSetting{}, + %{"privacy_option" => "full_content"} + ) + + assert %Ecto.Changeset{valid?: false} = changeset + + assert [ + privacy_option: + {"is invalid", + [ + validation: :inclusion, + enum: ["name_and_message", "name_only", "no_name_or_message"] + ]} + ] = changeset.errors + end + end +end |