Zinc

Kotlin compiler plugin that generates data classes for production and testing.

Лицензия

Лицензия

Категории

Категории

Gradle Компиляция и сборка
Группа

Группа

com.noheltcj.zinc
Идентификатор

Идентификатор

gradle-plugin
Последняя версия

Последняя версия

0.0.3
Дата

Дата

Тип

Тип

pom.sha512
Описание

Описание

Zinc
Kotlin compiler plugin that generates data classes for production and testing.
Ссылка на сайт

Ссылка на сайт

https://github.com/noheltcj/zinc
Система контроля версий

Система контроля версий

https://github.com/noheltcj/zinc

Скачать gradle-plugin

Зависимости

runtime (4)

Идентификатор библиотеки Тип Версия
org.jetbrains.kotlin : kotlin-reflect jar 1.4.21
org.jetbrains.kotlin : kotlin-stdlib jar 1.4.21
org.jetbrains.kotlin : kotlin-gradle-plugin jar 1.4.21
org.jetbrains.kotlin : kotlin-gradle-plugin-api jar 1.4.21

Модули Проекта

Данный проект не имеет модулей.

Zinc

tests lint maven central

An extensible compiler plugin for Kotlin to automatically expand data classes to include their own builder DSL.

Introduction

Zinc was originally conceived as a solution to reduce testing boilerplate, but supposedly there are production use cases too.

More information to come as this becomes more useful.

How it works

When enabled, Zinc analyzes specified source sets and generates builders and a DSL for each data class. There are two classes of builders generated: production and test.

See Examples

Production Builders

These builders are for use in production code when a builder pattern is preferable over using a constructor. All properties must be able to resolve a value. When a field does not have a default value, an exception will be thrown with details about the missing field.

Configure the source sets that should contribute to this classification by setting the productionSourceSetNames field on the plugin extension. See Setup

Test Builders

Not yet implemented.

This is the work-in-progress primary feature of this plugin. Builders in this classification will be generated with randomized default values for all fields. This essentially provides a clean, all fields optional way to supply fake data in tests.

Setup

Artifacts can be downloaded from Maven Central.

Gradle Kotlin Script

plugins {
  id("com.noheltcj.zinc") version "0.0.3"
}

zinc {
  // defaults to true
  enabled = true

  // defaults to setOf("main")
  productionSourceSetNames = setOf("main", "anotherSourceSet")
}

Gradle Groovy

plugins {
    id 'com.noheltcj.zinc' version '0.0.3'
}

zinc {
    productionSourceSetNames = ['main', 'anotherSourceSet']
}

Версии библиотеки

Версия
0.0.3
0.0.2
0.0.1