From 5ab6ee01df9bac0c7bd5d27a6990dfdf60555d0f Mon Sep 17 00:00:00 2001 From: =?utf8?q?David=20=E2=80=98Bombe=E2=80=99=20Roden?= Date: Fri, 22 Feb 2019 14:44:22 +0100 Subject: [PATCH] Replace AbstractSoneCommand with Kotlin version --- .../sone/fcp/AbstractSoneCommand.java | 402 --------------------- .../sone/fcp/GetLocalSonesCommand.java | 2 + .../net/pterodactylus/sone/fcp/GetSoneCommand.java | 2 + .../pterodactylus/sone/fcp/GetSonesCommand.java | 2 + .../pterodactylus/sone/fcp/AbstractSoneCommand.kt | 148 ++++++++ .../sone/fcp/CreatePostCommandTest.kt | 2 +- .../sone/fcp/CreateReplyCommandTest.kt | 2 +- .../sone/fcp/DeletePostCommandTest.kt | 2 +- .../sone/fcp/DeleteReplyCommandTest.kt | 2 +- .../sone/fcp/GetLocalSonesCommandTest.kt | 2 +- .../pterodactylus/sone/fcp/GetPostCommandTest.kt | 2 +- .../sone/fcp/GetPostFeedCommandTest.kt | 2 +- .../pterodactylus/sone/fcp/GetPostsCommandTest.kt | 2 +- .../pterodactylus/sone/fcp/GetSoneCommandTest.kt | 2 +- .../pterodactylus/sone/fcp/GetSonesCommandTest.kt | 2 +- .../pterodactylus/sone/fcp/LikePostCommandTest.kt | 2 +- .../pterodactylus/sone/fcp/LikeReplyCommandTest.kt | 2 +- .../pterodactylus/sone/fcp/LockSoneCommandTest.kt | 2 +- .../sone/fcp/UnlockSoneCommandTest.kt | 2 +- .../pterodactylus/sone/fcp/VersionCommandTest.kt | 2 +- 20 files changed, 169 insertions(+), 417 deletions(-) delete mode 100644 src/main/java/net/pterodactylus/sone/fcp/AbstractSoneCommand.java create mode 100644 src/main/kotlin/net/pterodactylus/sone/fcp/AbstractSoneCommand.kt diff --git a/src/main/java/net/pterodactylus/sone/fcp/AbstractSoneCommand.java b/src/main/java/net/pterodactylus/sone/fcp/AbstractSoneCommand.java deleted file mode 100644 index 23f63a3..0000000 --- a/src/main/java/net/pterodactylus/sone/fcp/AbstractSoneCommand.java +++ /dev/null @@ -1,402 +0,0 @@ -/* - * Sone - AbstractSoneCommand.java - Copyright © 2011–2016 David Roden - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ - -package net.pterodactylus.sone.fcp; - -import java.util.Collection; -import java.util.List; - -import net.pterodactylus.sone.core.Core; -import net.pterodactylus.sone.data.Post; -import net.pterodactylus.sone.data.PostReply; -import net.pterodactylus.sone.data.Profile; -import net.pterodactylus.sone.data.Profile.Field; -import net.pterodactylus.sone.data.Sone; -import net.pterodactylus.sone.freenet.SimpleFieldSetBuilder; -import net.pterodactylus.sone.freenet.fcp.AbstractCommand; -import net.pterodactylus.sone.freenet.fcp.Command; -import net.pterodactylus.sone.freenet.fcp.FcpException; -import net.pterodactylus.sone.template.SoneAccessor; - -import freenet.node.FSParseException; -import freenet.support.SimpleFieldSet; - -import com.google.common.base.Optional; - -/** - * Abstract base implementation of a {@link Command} with Sone-related helper - * methods. - */ -public abstract class AbstractSoneCommand extends AbstractCommand { - - /** The Sone core. */ - private final Core core; - - /** Whether this command needs write access. */ - private final boolean writeAccess; - - /** - * Creates a new abstract Sone FCP command. - * - * @param core - * The Sone core - */ - protected AbstractSoneCommand(Core core) { - this(core, false); - } - - /** - * Creates a new abstract Sone FCP command. - * - * @param core - * The Sone core - * @param writeAccess - * {@code true} if this command requires write access, - * {@code false} otherwise - */ - protected AbstractSoneCommand(Core core, boolean writeAccess) { - this.core = core; - this.writeAccess = writeAccess; - } - - // - // ACCESSORS - // - - /** - * Returns the Sone core. - * - * @return The Sone core - */ - protected Core getCore() { - return core; - } - - /** - * Returns whether this command requires write access. - * - * @return {@code true} if this command require write access, {@code false} - * otherwise - */ - public boolean requiresWriteAccess() { - return writeAccess; - } - - // - // PROTECTED METHODS - // - - /** - * Encodes text in a way that makes it possible for the text to be stored in - * a {@link SimpleFieldSet}. Backslashes, CR, and LF are prepended with a - * backslash. - * - * @param text - * The text to encode - * @return The encoded text - */ - protected static String encodeString(String text) { - return text.replaceAll("\\\\", "\\\\\\\\").replaceAll("\n", "\\\\n").replaceAll("\r", "\\\\r"); - } - - /** - * Returns a Sone whose ID is a parameter in the given simple field set. - * - * @param simpleFieldSet - * The simple field set containing the ID of the Sone - * @param parameterName - * The name under which the Sone ID is stored in the simple field - * set - * @param localOnly - * {@code true} to only return local Sones, {@code false} to - * return any Sones - * @return The Sone - * @throws FcpException - * if there is no Sone ID stored under the given parameter name, - * or if the Sone ID is invalid - */ - protected Sone getSone(SimpleFieldSet simpleFieldSet, String parameterName, boolean localOnly) throws FcpException { - return getSone(simpleFieldSet, parameterName, localOnly, true).get(); - } - - /** - * Returns a Sone whose ID is a parameter in the given simple field set. - * - * @param simpleFieldSet - * The simple field set containing the ID of the Sone - * @param parameterName - * The name under which the Sone ID is stored in the simple field - * set - * @param localOnly - * {@code true} to only return local Sones, {@code false} to - * return any Sones - * @param mandatory - * {@code true} if a valid Sone ID is required, {@code false} - * otherwise - * @return The Sone, or {@code null} if {@code mandatory} is {@code false} - * and the Sone ID is invalid - * @throws FcpException - * if there is no Sone ID stored under the given parameter name, - * or if {@code mandatory} is {@code true} and the Sone ID is - * invalid - */ - protected Optional getSone(SimpleFieldSet simpleFieldSet, String parameterName, boolean localOnly, boolean mandatory) throws FcpException { - String soneId = simpleFieldSet.get(parameterName); - if (mandatory && (soneId == null)) { - throw new FcpException("Could not load Sone ID from “" + parameterName + "”."); - } - Sone sone = core.getSone(soneId); - if ((mandatory && (sone == null)) || ((sone != null) && localOnly && !sone.isLocal())) { - throw new FcpException("Could not load Sone from “" + soneId + "”."); - } - return Optional.fromNullable(sone); - } - - /** - * Returns a post whose ID is a parameter in the given simple field set. - * - * @param simpleFieldSet - * The simple field set containing the ID of the post - * @param parameterName - * The name under which the post ID is stored in the simple field - * set - * @return The post - * @throws FcpException - * if there is no post ID stored under the given parameter name, - * or if the post ID is invalid - */ - protected Post getPost(SimpleFieldSet simpleFieldSet, String parameterName) throws FcpException { - try { - String postId = simpleFieldSet.getString(parameterName); - Post post = core.getPost(postId); - if (post == null) { - throw new FcpException("Could not load post from “" + postId + "”."); - } - return post; - } catch (FSParseException fspe1) { - throw new FcpException("Could not post ID from “" + parameterName + "”.", fspe1); - } - } - - /** - * Returns a reply whose ID is a parameter in the given simple field set. - * - * @param simpleFieldSet - * The simple field set containing the ID of the reply - * @param parameterName - * The name under which the reply ID is stored in the simple - * field set - * @return The reply - * @throws FcpException - * if there is no reply ID stored under the given parameter - * name, or if the reply ID is invalid - */ - protected PostReply getReply(SimpleFieldSet simpleFieldSet, String parameterName) throws FcpException { - try { - String replyId = simpleFieldSet.getString(parameterName); - PostReply reply = core.getPostReply(replyId); - if (reply == null) { - throw new FcpException("Could not load reply from “" + replyId + "”."); - } - return reply; - } catch (FSParseException fspe1) { - throw new FcpException("Could not reply ID from “" + parameterName + "”.", fspe1); - } - } - - /** - * Creates a simple field set from the given Sone, including {@link Profile} - * information. - * - * @param sone - * The Sone to encode - * @param prefix - * The prefix for the field names (may be empty but not {@code - * null}) - * @param localSone - * An optional local Sone that is used for Sone-specific data, - * such as if the Sone is followed by the local Sone - * @return The simple field set containing the given Sone - */ - protected static SimpleFieldSet encodeSone(Sone sone, String prefix, Optional localSone) { - SimpleFieldSetBuilder soneBuilder = new SimpleFieldSetBuilder(); - - soneBuilder.put(prefix + "ID", sone.getId()); - soneBuilder.put(prefix + "Name", sone.getName()); - soneBuilder.put(prefix + "NiceName", SoneAccessor.getNiceName(sone)); - soneBuilder.put(prefix + "LastUpdated", sone.getTime()); - if (localSone.isPresent()) { - soneBuilder.put(prefix + "Followed", String.valueOf(localSone.get().hasFriend(sone.getId()))); - } - Profile profile = sone.getProfile(); - soneBuilder.put(prefix + "Field.Count", profile.getFields().size()); - int fieldIndex = 0; - for (Field field : profile.getFields()) { - soneBuilder.put(prefix + "Field." + fieldIndex + ".Name", field.getName()); - soneBuilder.put(prefix + "Field." + fieldIndex + ".Value", field.getValue()); - ++fieldIndex; - } - - return soneBuilder.get(); - } - - /** - * Creates a simple field set from the given collection of Sones. - * - * @param sones - * The Sones to encode - * @param prefix - * The prefix for the field names (may be empty but not - * {@code null}) - * @return The simple field set containing the given Sones - */ - protected static SimpleFieldSet encodeSones(Collection sones, String prefix) { - SimpleFieldSetBuilder soneBuilder = new SimpleFieldSetBuilder(); - - int soneIndex = 0; - soneBuilder.put(prefix + "Count", sones.size()); - for (Sone sone : sones) { - String sonePrefix = prefix + soneIndex++ + "."; - soneBuilder.put(encodeSone(sone, sonePrefix, Optional.absent())); - } - - return soneBuilder.get(); - } - - /** - * Creates a simple field set from the given post. - * - * @param post - * The post to encode - * @param prefix - * The prefix for the field names (may be empty but not - * {@code null}) - * @param includeReplies - * {@code true} to include replies, {@code false} to not include - * replies - * @return The simple field set containing the post - */ - protected SimpleFieldSet encodePost(Post post, String prefix, boolean includeReplies) { - SimpleFieldSetBuilder postBuilder = new SimpleFieldSetBuilder(); - - postBuilder.put(prefix + "ID", post.getId()); - postBuilder.put(prefix + "Sone", post.getSone().getId()); - if (post.getRecipientId().isPresent()) { - postBuilder.put(prefix + "Recipient", post.getRecipientId().get()); - } - postBuilder.put(prefix + "Time", post.getTime()); - postBuilder.put(prefix + "Text", encodeString(post.getText())); - postBuilder.put(encodeLikes(core.getLikes(post), prefix + "Likes.")); - - if (includeReplies) { - List replies = core.getReplies(post.getId()); - postBuilder.put(encodeReplies(replies, prefix)); - } - - return postBuilder.get(); - } - - /** - * Creates a simple field set from the given collection of posts. - * - * @param posts - * The posts to encode - * @param prefix - * The prefix for the field names (may be empty but not - * {@code null}) - * @param includeReplies - * {@code true} to include the replies, {@code false} to not - * include the replies - * @return The simple field set containing the posts - */ - protected SimpleFieldSet encodePosts(Collection posts, String prefix, boolean includeReplies) { - SimpleFieldSetBuilder postBuilder = new SimpleFieldSetBuilder(); - - int postIndex = 0; - postBuilder.put(prefix + "Count", posts.size()); - for (Post post : posts) { - String postPrefix = prefix + postIndex++; - postBuilder.put(encodePost(post, postPrefix + ".", includeReplies)); - } - - return postBuilder.get(); - } - - /** - * Creates a simple field set from the given collection of replies. - * - * @param replies - * The replies to encode - * @param prefix - * The prefix for the field names (may be empty, but not - * {@code null}) - * @return The simple field set containing the replies - */ - protected SimpleFieldSet encodeReplies(Collection replies, String prefix) { - SimpleFieldSetBuilder replyBuilder = new SimpleFieldSetBuilder(); - - int replyIndex = 0; - replyBuilder.put(prefix + "Replies.Count", replies.size()); - for (PostReply reply : replies) { - String replyPrefix = prefix + "Replies." + replyIndex++ + "."; - replyBuilder.put(replyPrefix + "ID", reply.getId()); - replyBuilder.put(replyPrefix + "Sone", reply.getSone().getId()); - replyBuilder.put(replyPrefix + "Time", reply.getTime()); - replyBuilder.put(replyPrefix + "Text", encodeString(reply.getText())); - replyBuilder.put(encodeLikes(core.getLikes(reply), replyPrefix + "Likes.")); - } - - return replyBuilder.get(); - } - - /** - * Creates a simple field set from the given collection of Sones that like - * an element. - * - * @param likes - * The liking Sones - * @param prefix - * The prefix for the field names (may be empty but not - * {@code null}) - * @return The simple field set containing the likes - */ - protected static SimpleFieldSet encodeLikes(Collection likes, String prefix) { - SimpleFieldSetBuilder likesBuilder = new SimpleFieldSetBuilder(); - - int likeIndex = 0; - likesBuilder.put(prefix + "Count", likes.size()); - for (Sone sone : likes) { - String sonePrefix = prefix + likeIndex++ + "."; - likesBuilder.put(sonePrefix + "ID", sone.getId()); - } - - return likesBuilder.get(); - } - - // - // OBJECT METHODS - // - - /** - * {@inheritDoc} - */ - @Override - public String toString() { - return getClass().getName() + "[writeAccess=" + writeAccess + "]"; - } - -} diff --git a/src/main/java/net/pterodactylus/sone/fcp/GetLocalSonesCommand.java b/src/main/java/net/pterodactylus/sone/fcp/GetLocalSonesCommand.java index 3d0bf28..c726ea3 100644 --- a/src/main/java/net/pterodactylus/sone/fcp/GetLocalSonesCommand.java +++ b/src/main/java/net/pterodactylus/sone/fcp/GetLocalSonesCommand.java @@ -17,6 +17,8 @@ package net.pterodactylus.sone.fcp; +import static net.pterodactylus.sone.fcp.AbstractSoneCommandKt.encodeSones; + import net.pterodactylus.sone.core.Core; import freenet.support.SimpleFieldSet; diff --git a/src/main/java/net/pterodactylus/sone/fcp/GetSoneCommand.java b/src/main/java/net/pterodactylus/sone/fcp/GetSoneCommand.java index a3e1b5b..41ff023 100644 --- a/src/main/java/net/pterodactylus/sone/fcp/GetSoneCommand.java +++ b/src/main/java/net/pterodactylus/sone/fcp/GetSoneCommand.java @@ -17,6 +17,8 @@ package net.pterodactylus.sone.fcp; +import static net.pterodactylus.sone.fcp.AbstractSoneCommandKt.encodeSone; + import net.pterodactylus.sone.core.Core; import net.pterodactylus.sone.data.Profile; import net.pterodactylus.sone.data.Sone; diff --git a/src/main/java/net/pterodactylus/sone/fcp/GetSonesCommand.java b/src/main/java/net/pterodactylus/sone/fcp/GetSonesCommand.java index 96861ea..3ff234a 100644 --- a/src/main/java/net/pterodactylus/sone/fcp/GetSonesCommand.java +++ b/src/main/java/net/pterodactylus/sone/fcp/GetSonesCommand.java @@ -17,6 +17,8 @@ package net.pterodactylus.sone.fcp; +import static net.pterodactylus.sone.fcp.AbstractSoneCommandKt.encodeSones; + import java.util.ArrayList; import java.util.Collections; import java.util.List; diff --git a/src/main/kotlin/net/pterodactylus/sone/fcp/AbstractSoneCommand.kt b/src/main/kotlin/net/pterodactylus/sone/fcp/AbstractSoneCommand.kt new file mode 100644 index 0000000..c2afe5a --- /dev/null +++ b/src/main/kotlin/net/pterodactylus/sone/fcp/AbstractSoneCommand.kt @@ -0,0 +1,148 @@ +/* + * Sone - AbstractSoneCommand.java - Copyright © 2011–2016 David Roden + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package net.pterodactylus.sone.fcp + +import com.google.common.base.Optional +import freenet.node.FSParseException +import freenet.support.SimpleFieldSet +import net.pterodactylus.sone.core.Core +import net.pterodactylus.sone.data.Post +import net.pterodactylus.sone.data.PostReply +import net.pterodactylus.sone.data.Sone +import net.pterodactylus.sone.freenet.SimpleFieldSetBuilder +import net.pterodactylus.sone.freenet.fcp.AbstractCommand +import net.pterodactylus.sone.freenet.fcp.Command +import net.pterodactylus.sone.freenet.fcp.FcpException +import net.pterodactylus.sone.template.SoneAccessor +import net.pterodactylus.sone.utils.asOptional +import net.pterodactylus.sone.utils.let +import net.pterodactylus.sone.utils.throwOnNullIf + +/** + * Abstract base implementation of a [Command] with Sone-related helper + * methods. + */ +abstract class AbstractSoneCommand +@JvmOverloads protected constructor( + protected val core: Core, + @get:JvmName("requiresWriteAccess") + val requiresWriteAccess: Boolean = false) : AbstractCommand() { + + @Throws(FcpException::class) + protected fun getSone(simpleFieldSet: SimpleFieldSet, parameterName: String, localOnly: Boolean): Sone = + getSone(simpleFieldSet, parameterName, localOnly, true).get() + + @Throws(FcpException::class) + protected fun getSone(simpleFieldSet: SimpleFieldSet, parameterName: String, localOnly: Boolean, mandatory: Boolean): Optional { + val soneId = simpleFieldSet.get(parameterName) + .throwOnNullIf(mandatory) { FcpException("Could not load Sone ID from “$parameterName”.") } + ?: return Optional.absent() + val sone = core.getSone(soneId) + if (mandatory && sone == null || sone != null && localOnly && !sone.isLocal) { + throw FcpException("Could not load Sone from “$soneId”.") + } + return sone.asOptional() + } + + @Throws(FcpException::class) + protected fun getPost(simpleFieldSet: SimpleFieldSet, parameterName: String): Post { + try { + val postId = simpleFieldSet.getString(parameterName) + return core.getPost(postId) + ?: throw FcpException("Could not load post from “$postId”.") + } catch (fspe1: FSParseException) { + throw FcpException("Could not post ID from “$parameterName”.", fspe1) + } + } + + @Throws(FcpException::class) + protected fun getReply(simpleFieldSet: SimpleFieldSet, parameterName: String): PostReply { + try { + val replyId = simpleFieldSet.getString(parameterName) + return core.getPostReply(replyId) + ?: throw FcpException("Could not load reply from “$replyId”.") + } catch (fspe1: FSParseException) { + throw FcpException("Could not reply ID from “$parameterName”.", fspe1) + } + } + + protected fun encodePost(post: Post, prefix: String, includeReplies: Boolean): SimpleFieldSet = SimpleFieldSetBuilder().apply { + put(prefix + "ID", post.id) + put(prefix + "Sone", post.sone.id) + post.recipientId.let { put(prefix + "Recipient", it) } + put(prefix + "Time", post.time) + put(prefix + "Text", encodeString(post.text)) + put(encodeLikes(core.getLikes(post), "${prefix}Likes.")) + if (includeReplies) { + val replies = core.getReplies(post.id) + put(encodeReplies(replies, prefix)) + } + }.get() + + protected fun encodePosts(posts: Collection, prefix: String, includeReplies: Boolean): SimpleFieldSet = SimpleFieldSetBuilder().apply { + put(prefix + "Count", posts.size) + posts.forEachIndexed { postIndex, post -> + put(encodePost(post, "$prefix$postIndex.", includeReplies)) + } + }.get() + + private fun encodeReplies(replies: Collection, prefix: String): SimpleFieldSet = SimpleFieldSetBuilder().apply { + put(prefix + "Replies.Count", replies.size) + replies.forEachIndexed { replyIndex, reply -> + val replyPrefix = "${prefix}Replies.$replyIndex." + put(replyPrefix + "ID", reply.id) + put(replyPrefix + "Sone", reply.sone.id) + put(replyPrefix + "Time", reply.time) + put(replyPrefix + "Text", encodeString(reply.text)) + put(encodeLikes(core.getLikes(reply), "${replyPrefix}Likes.")) + } + }.get() + + override fun toString() = "${javaClass.name}[requiresWriteAccess=$requiresWriteAccess]" +} + +fun encodeString(text: String) = text + .replace("\\\\".toRegex(), "\\\\\\\\") + .replace("\n".toRegex(), "\\\\n") + .replace("\r".toRegex(), "\\\\r") + +fun encodeSone(sone: Sone, prefix: String, localSone: Optional): SimpleFieldSet = SimpleFieldSetBuilder().apply { + put(prefix + "ID", sone.id) + put(prefix + "Name", sone.name) + put(prefix + "NiceName", SoneAccessor.getNiceName(sone)) + put(prefix + "LastUpdated", sone.time) + localSone.let { put(prefix + "Followed", it.hasFriend(sone.id).toString()) } + val profile = sone.profile + put(prefix + "Field.Count", profile.fields.size) + profile.fields.forEachIndexed { fieldIndex, field -> + put(prefix + "Field." + fieldIndex + ".Name", field.name) + put(prefix + "Field." + fieldIndex + ".Value", field.value) + } +}.get() + +fun encodeSones(sones: Collection, prefix: String): SimpleFieldSet = SimpleFieldSetBuilder().apply { + put(prefix + "Count", sones.size) + sones.forEachIndexed { soneIndex, sone -> + put(encodeSone(sone, "$prefix$soneIndex.", Optional.absent())) + } +}.get() + +fun encodeLikes(likes: Collection, prefix: String): SimpleFieldSet = SimpleFieldSetBuilder().apply { + put(prefix + "Count", likes.size) + likes.forEachIndexed { index, sone -> put("$prefix$index.ID", sone.id) } +}.get() diff --git a/src/test/kotlin/net/pterodactylus/sone/fcp/CreatePostCommandTest.kt b/src/test/kotlin/net/pterodactylus/sone/fcp/CreatePostCommandTest.kt index 2d77c6e..29db41c 100644 --- a/src/test/kotlin/net/pterodactylus/sone/fcp/CreatePostCommandTest.kt +++ b/src/test/kotlin/net/pterodactylus/sone/fcp/CreatePostCommandTest.kt @@ -20,7 +20,7 @@ class CreatePostCommandTest : SoneCommandTest() { @Test fun `command requires write access`() { - assertThat(command.requiresWriteAccess(), equalTo(true)) + assertThat(command.requiresWriteAccess, equalTo(true)) } @Test diff --git a/src/test/kotlin/net/pterodactylus/sone/fcp/CreateReplyCommandTest.kt b/src/test/kotlin/net/pterodactylus/sone/fcp/CreateReplyCommandTest.kt index a6e69cd..1cd53a5 100644 --- a/src/test/kotlin/net/pterodactylus/sone/fcp/CreateReplyCommandTest.kt +++ b/src/test/kotlin/net/pterodactylus/sone/fcp/CreateReplyCommandTest.kt @@ -21,7 +21,7 @@ class CreateReplyCommandTest : SoneCommandTest() { @Test fun `command requires write access`() { - assertThat(command.requiresWriteAccess(), equalTo(true)) + assertThat(command.requiresWriteAccess, equalTo(true)) } @Test diff --git a/src/test/kotlin/net/pterodactylus/sone/fcp/DeletePostCommandTest.kt b/src/test/kotlin/net/pterodactylus/sone/fcp/DeletePostCommandTest.kt index 30fc4cb..651614f 100644 --- a/src/test/kotlin/net/pterodactylus/sone/fcp/DeletePostCommandTest.kt +++ b/src/test/kotlin/net/pterodactylus/sone/fcp/DeletePostCommandTest.kt @@ -21,7 +21,7 @@ class DeletePostCommandTest : SoneCommandTest() { @Test fun `command requires write access`() { - assertThat(command.requiresWriteAccess(), equalTo(true)) + assertThat(command.requiresWriteAccess, equalTo(true)) } @Test diff --git a/src/test/kotlin/net/pterodactylus/sone/fcp/DeleteReplyCommandTest.kt b/src/test/kotlin/net/pterodactylus/sone/fcp/DeleteReplyCommandTest.kt index 6920a33..41a4c02 100644 --- a/src/test/kotlin/net/pterodactylus/sone/fcp/DeleteReplyCommandTest.kt +++ b/src/test/kotlin/net/pterodactylus/sone/fcp/DeleteReplyCommandTest.kt @@ -22,7 +22,7 @@ class DeleteReplyCommandTest : SoneCommandTest() { @Test fun `command requires write access`() { - assertThat(command.requiresWriteAccess(), equalTo(true)) + assertThat(command.requiresWriteAccess, equalTo(true)) } @Test diff --git a/src/test/kotlin/net/pterodactylus/sone/fcp/GetLocalSonesCommandTest.kt b/src/test/kotlin/net/pterodactylus/sone/fcp/GetLocalSonesCommandTest.kt index 2a78efc..7fd8db3 100644 --- a/src/test/kotlin/net/pterodactylus/sone/fcp/GetLocalSonesCommandTest.kt +++ b/src/test/kotlin/net/pterodactylus/sone/fcp/GetLocalSonesCommandTest.kt @@ -18,7 +18,7 @@ class GetLocalSonesCommandTest : SoneCommandTest() { @Test fun `command does not require write access`() { - assertThat(command.requiresWriteAccess(), equalTo(false)) + assertThat(command.requiresWriteAccess, equalTo(false)) } @Test diff --git a/src/test/kotlin/net/pterodactylus/sone/fcp/GetPostCommandTest.kt b/src/test/kotlin/net/pterodactylus/sone/fcp/GetPostCommandTest.kt index 5c76c5b..f8113af 100644 --- a/src/test/kotlin/net/pterodactylus/sone/fcp/GetPostCommandTest.kt +++ b/src/test/kotlin/net/pterodactylus/sone/fcp/GetPostCommandTest.kt @@ -39,7 +39,7 @@ class GetPostCommandTest : SoneCommandTest() { @Test fun `command does not require write access`() { - assertThat(command.requiresWriteAccess(), equalTo(false)) + assertThat(command.requiresWriteAccess, equalTo(false)) } @Test diff --git a/src/test/kotlin/net/pterodactylus/sone/fcp/GetPostFeedCommandTest.kt b/src/test/kotlin/net/pterodactylus/sone/fcp/GetPostFeedCommandTest.kt index d8ab243..767aa28 100644 --- a/src/test/kotlin/net/pterodactylus/sone/fcp/GetPostFeedCommandTest.kt +++ b/src/test/kotlin/net/pterodactylus/sone/fcp/GetPostFeedCommandTest.kt @@ -31,7 +31,7 @@ class GetPostFeedCommandTest : SoneCommandTest() { @Test fun `command does not require write access`() { - assertThat(command.requiresWriteAccess(), equalTo(false)) + assertThat(command.requiresWriteAccess, equalTo(false)) } @Test diff --git a/src/test/kotlin/net/pterodactylus/sone/fcp/GetPostsCommandTest.kt b/src/test/kotlin/net/pterodactylus/sone/fcp/GetPostsCommandTest.kt index acf1824..9f7600a 100644 --- a/src/test/kotlin/net/pterodactylus/sone/fcp/GetPostsCommandTest.kt +++ b/src/test/kotlin/net/pterodactylus/sone/fcp/GetPostsCommandTest.kt @@ -24,7 +24,7 @@ class GetPostsCommandTest : SoneCommandTest() { @Test fun `command does not require write access`() { - assertThat(command.requiresWriteAccess(), equalTo(false)) + assertThat(command.requiresWriteAccess, equalTo(false)) } @Test diff --git a/src/test/kotlin/net/pterodactylus/sone/fcp/GetSoneCommandTest.kt b/src/test/kotlin/net/pterodactylus/sone/fcp/GetSoneCommandTest.kt index 79aad1a..9b9ed8b 100644 --- a/src/test/kotlin/net/pterodactylus/sone/fcp/GetSoneCommandTest.kt +++ b/src/test/kotlin/net/pterodactylus/sone/fcp/GetSoneCommandTest.kt @@ -22,7 +22,7 @@ class GetSoneCommandTest : SoneCommandTest() { @Test fun `command does not require write access`() { - assertThat(command.requiresWriteAccess(), equalTo(false)) + assertThat(command.requiresWriteAccess, equalTo(false)) } @Test diff --git a/src/test/kotlin/net/pterodactylus/sone/fcp/GetSonesCommandTest.kt b/src/test/kotlin/net/pterodactylus/sone/fcp/GetSonesCommandTest.kt index 252eae3..10f6501 100644 --- a/src/test/kotlin/net/pterodactylus/sone/fcp/GetSonesCommandTest.kt +++ b/src/test/kotlin/net/pterodactylus/sone/fcp/GetSonesCommandTest.kt @@ -25,7 +25,7 @@ class GetSonesCommandTest : SoneCommandTest() { @Test fun `command does not require write access`() { - assertThat(command.requiresWriteAccess(), equalTo(false)) + assertThat(command.requiresWriteAccess, equalTo(false)) } @Test diff --git a/src/test/kotlin/net/pterodactylus/sone/fcp/LikePostCommandTest.kt b/src/test/kotlin/net/pterodactylus/sone/fcp/LikePostCommandTest.kt index 6c7d40c..52a4cff 100644 --- a/src/test/kotlin/net/pterodactylus/sone/fcp/LikePostCommandTest.kt +++ b/src/test/kotlin/net/pterodactylus/sone/fcp/LikePostCommandTest.kt @@ -30,7 +30,7 @@ class LikePostCommandTest : SoneCommandTest() { @Test fun `command requires write access`() { - assertThat(command.requiresWriteAccess(), equalTo(true)) + assertThat(command.requiresWriteAccess, equalTo(true)) } @Test diff --git a/src/test/kotlin/net/pterodactylus/sone/fcp/LikeReplyCommandTest.kt b/src/test/kotlin/net/pterodactylus/sone/fcp/LikeReplyCommandTest.kt index 7b9256a..54d0c4d 100644 --- a/src/test/kotlin/net/pterodactylus/sone/fcp/LikeReplyCommandTest.kt +++ b/src/test/kotlin/net/pterodactylus/sone/fcp/LikeReplyCommandTest.kt @@ -31,7 +31,7 @@ class LikeReplyCommandTest : SoneCommandTest() { @Test fun `command requires write access`() { - assertThat(command.requiresWriteAccess(), equalTo(true)) + assertThat(command.requiresWriteAccess, equalTo(true)) } @Test diff --git a/src/test/kotlin/net/pterodactylus/sone/fcp/LockSoneCommandTest.kt b/src/test/kotlin/net/pterodactylus/sone/fcp/LockSoneCommandTest.kt index 284df69..dea019f 100644 --- a/src/test/kotlin/net/pterodactylus/sone/fcp/LockSoneCommandTest.kt +++ b/src/test/kotlin/net/pterodactylus/sone/fcp/LockSoneCommandTest.kt @@ -24,7 +24,7 @@ class LockSoneCommandTest : SoneCommandTest() { @Test fun `command requires write access`() { - assertThat(command.requiresWriteAccess(), equalTo(true)) + assertThat(command.requiresWriteAccess, equalTo(true)) } @Test diff --git a/src/test/kotlin/net/pterodactylus/sone/fcp/UnlockSoneCommandTest.kt b/src/test/kotlin/net/pterodactylus/sone/fcp/UnlockSoneCommandTest.kt index 77e78b3..f520349 100644 --- a/src/test/kotlin/net/pterodactylus/sone/fcp/UnlockSoneCommandTest.kt +++ b/src/test/kotlin/net/pterodactylus/sone/fcp/UnlockSoneCommandTest.kt @@ -24,7 +24,7 @@ class UnlockSoneCommandTest : SoneCommandTest() { @Test fun `command requires write access`() { - assertThat(command.requiresWriteAccess(), equalTo(true)) + assertThat(command.requiresWriteAccess, equalTo(true)) } @Test diff --git a/src/test/kotlin/net/pterodactylus/sone/fcp/VersionCommandTest.kt b/src/test/kotlin/net/pterodactylus/sone/fcp/VersionCommandTest.kt index e54e7aa..9cc9c21 100644 --- a/src/test/kotlin/net/pterodactylus/sone/fcp/VersionCommandTest.kt +++ b/src/test/kotlin/net/pterodactylus/sone/fcp/VersionCommandTest.kt @@ -15,7 +15,7 @@ class VersionCommandTest : SoneCommandTest() { @Test fun `command does not require write access`() { - assertThat(command.requiresWriteAccess(), equalTo(false)) + assertThat(command.requiresWriteAccess, equalTo(false)) } @Test -- 2.7.4