タグ

ブックマーク / blog1.mammb.com (8)

  • Gradle Groovy DSL から Kotlin DSL への乗り換え方 - A Memorandum

    はじめに スクリプトファイルの命名 Kotlin と Groovy の言語上の考慮事項 Gradle init によるプロジェクト生成 プラグインの適用 プラグインの設定 タスクの構成 タスクの作成 依存の指定 よくある設定 はじめに Gradle 5.0 よりGradle Kotlin DSL が提供され、groovy によるビルドスクリプトを Kotlin で記載できるようになりました。 Kotlin でビルドスクリプトを書くことで、IDEによるサジェストやコードジャンプなどの恩恵を十分に受けることができますし、タイプセーフでありリファクタリングなども容易となるので、これから Groovy のビルドスクリプトを書くのであれば Gradle Kotlin DSL を使うべきです。 ここでは、Groovy DSL と Kotlin DSL の違いと Kotlin DSL でビルドスクリプト

    Gradle Groovy DSL から Kotlin DSL への乗り換え方 - A Memorandum
    nilab
    nilab 2023/01/24
    Gradle Groovy DSL から Kotlin DSL への乗り換え方 - A Memorandum
  • Quarkus 1.1 で追加されたテンプレートエンジン Qute - A Memorandum

    はじめに Qute とは プロジェクトの作成 Hello Qute Qute テンプレートの文法 Template Extension Methods まとめ はじめに マイクロサービス・アプリケーション・フレームワークである Quarkus の バージョン 1.1 が 2019年12月17日にリリースされました。 主な変更点は以下となります。 GraalVM は 19.2.1 をサポート GraalVM 19.3 へのアップグレードはいくつか問題があり Quarkus 1.2 に持ち越し 新しいテンプレートエンジン Qute を experimental(実験的)として追加 Configuration フレームワークの更新 quarkus-config-yaml 拡張で YAML 形式をサポート Spring API のサポートに Spring Security API を追加 Grad

    Quarkus 1.1 で追加されたテンプレートエンジン Qute - A Memorandum
    nilab
    nilab 2020/07/13
    Quarkus 1.1 で追加されたテンプレートエンジン Qute - A Memorandum
  • MXBean から取得できる情報あれこれ - A Memorandum

    Java Management Extensions の主要どころの簡単なまとめです。 RuntimeMXBean CompilationMXBean OperatingSystemMXBean MemoryMXBean MemoryPoolMXBean ThreadMXBean ClassLoadingMXBean GarbageCollectorMXBean サンプル Java1.6 時代のCPU使用率 RuntimeMXBean ランタイム関連情報の取得。 RuntimeMXBean runtimeMx = ManagementFactory.getRuntimeMXBean(); 以下のような情報が取得できます。 メソッド 出力例 説明 getVmName() Java HotSpot(TM) 64-Bit Server VM VM名 getVmVersion() 25.102-b

    MXBean から取得できる情報あれこれ - A Memorandum
    nilab
    nilab 2020/03/24
    Java Management Extensions
  • JPA 2.1 の 新機能 Converter まとめ - A Memorandum

    Converter の使用例 Converter の自動適用 Embedded 属性の変換 Collection 属性の変換 クラスレベルでの Converter 指定 orm.xml での Converter 指定 注意点 データベースのカラムと Entity の該当する属性の変換を Converter で定義できるようになりました。 Converter の使用例 Converter は以下の AttributeConverterインターフェース を実装して定義します。 public interface AttributeConverter<X,Y> { public Y convertToDatabaseColumn (X attribute); public X convertToEntityAttribute (Y dbData); } Entity の属性は Boolean 型で

    JPA 2.1 の 新機能 Converter まとめ - A Memorandum
    nilab
    nilab 2020/01/17
    Converter の自動適用「Converter の定義で autoApply を設定すると、Entity の属性値に @Convert を指定しなくとも暗黙的に対象の型に対して変換が適用できます」
  • hamcrest の Matchers 詳細 - A Memorandum

    blog1.mammb.com では CoreMatchers についてでしたが、こちらでは org.hamcrest.Matchers についてまとめます。 org.hamcrest.Matchers JUnit についてくるのは org.hamcrest.CoreMatchers で基的な Matcher が提供されています。org.hamcrest.Matchers は CoreMatchers を機能拡張したものとなってます。CoreMatchers にあるメソッドは、Matchers にもあります。 hamcrest-core  − org.hamcrest.Matchers が入ってる hamcrest-library  − org.hamcrest.Matchers が入ってる hamcrest-library は以下のようなパッケージ構成となっており、各用途に応じた Ma

    hamcrest の Matchers 詳細 - A Memorandum
    nilab
    nilab 2019/10/03
    「org.hamcrest.Matchers は CoreMatchers を機能拡張したもの」「allOf() では Matcher を複数指定して AND条件の Matcher を作ります」「anyOf() では Matcher を複数指定して OR条件」「both() と either() でも AND 条件と OR 条件の Matcher を構築」
  • JUnitの新しいアサーション assertThat - A Memorandum

    Junit4.4から assertThat というアサーションメソッドが追加された。 APIの定義は以下の通り。 public static <T> void assertThat(T actual, org.hamcrest.Matcher<T> matcher) public static <T> void assertThat(java.lang.String reason, T actual, org.hamcrest.Matcher<T> matcher) 以下の様に、英語として読みやすい記述でアサーションを記述できる。 import static org.hamcrest.CoreMatchers.*; public class Test1 { @Test public void test() throws Exception { assertThat(Integer.pars

    JUnitの新しいアサーション assertThat - A Memorandum
    nilab
    nilab 2019/10/03
    「英語として読みやすい記述でアサーションを記述できる」
  • 心地良すぎるモックライブラリ Mockito 〜その2〜 - A Memorandum

    呼び出し順序の妥当性検証 余計なメソッド呼び出しが行われていないことを検証する Mockito のアノテーション 複数回のモックメソッド呼び出しの結果を変化させる コールバック付きの戻り値定義 voidメソッドの振舞を定義するdoXXファミリー 実オブジェクトの動作を変えるspy 記事は、以下の記事の続きです。 blog1.mammb.com 呼び出し順序の妥当性検証 以下のように、2つのモックがあり、それぞれのモックの add() メソッドの呼び出し順序を検証したい場合、 List firstMock = mock(List.class); List secondMock = mock(List.class); firstMock.add("was called first"); secondMock.add("was called second"); InOrder を使用します。

    心地良すぎるモックライブラリ Mockito 〜その2〜 - A Memorandum
    nilab
    nilab 2019/07/05
    「void メソッドはコンパイラによる扱いが異なるため、when(Object) とは異なるアプローチが用意されています。doXXファミリーは doThrow(Throwable), doAnswer(Answer), doNothing(), doReturn(Object) があります」
  • 魅惑的(Fascinating)なテスティングフレームワーク Spock - A Memorandum

    Spock とは build.gradle HelloSpock 仕様(テストケース)の構造 フィールド fixture メソッド feature メソッド helper メソッド データドリブンなテスト @Unroll data pipe Stack の仕様例 例外の検証 例外とならないことの検証 タイムアウトを適用する Hamcrest matchers を使う リソースのクリーンナップを行う @Shared で共有リソースを利用する Specification に自然言語の名前をつける MOPを適用する feature の実行を制限する @Ignore @IgnoreRest @IgnoreIf @Requires @Stepwise Spock とは Java と Groovy アプリケーションのテスティングと仕様フレームワーク JUnit, jMock, RSpec, Groov

    魅惑的(Fascinating)なテスティングフレームワーク Spock - A Memorandum
    nilab
    nilab 2015/09/25
    魅惑的(Fascinating)なテスティングフレームワーク Spock - A Memorandum
  • 1