DangerSwiftShoki

0.3.0

A danger-swift plug-in to manage/post danger checking reports with markdown style
yumemi-inc/danger-swift-shoki

What's New

0.3.0

2023-11-29T06:11:55Z

What's Changed

  • update: swift settings by @novr in #14

Full Changelog: v0.2.1...v0.3.0

Build

DangerSwiftShoki

A danger-swift plug-in to manage/post danger checking results with markdown style

Install DangerSwiftShoki

SwiftPM (Recommended)

  • Add dependency package to your Package.swift file which you import danger-swift

    // swift-tools-version:5.5
    ...
    let package = Package(
        ...
        dependencies: [
            ...
            // Danger Plugins
            .package(name: "DangerSwiftShoki", url: "https://www.github.com/yumemi-inc/danger-swift-shoki.git", from: "0.1.0"),
            ...
        ],
        ...
    )
  • Add the correct import to your Dangerfile.swift file

    import DangerSwiftShoki

Marathon (Tool Deprecated)

  • Just add the dependency import to your Dangerfile.swift file like this:

    import DangerSwiftShoki // package: https://github.com/yumemi-inc/danger-swift-shoki.git

Usage

Basically just use .shoki property from a DangerDSL instance to access all features provided by DangerSwiftShoki

Examples below assume you have initialized a danger using Danger() in your Dangerfile.swift

  • First of all create a report data structure with makeInitialReport method

    var report = danger.shoki.makeInitialReport(title: "My Report")
  • Then you can perform any checks with check method, by returning your check result in the trailing execution closure

    danger.shoki.check("Test Result Check", into: &report) {
        if testPassed {
            return .good
            
        } else {
            if isAcceptable {
                return .acceptable(warningMessage: "Encouraged to make a change but OK at this time")
                
            } else {
                return .rejected(failureMessage: "Must fix")
            }
        }
    }
  • You can also ask reviewers not to forget to do some manual checks with askReviewer method if needed

    danger.shoki.askReviewer(to: "Check whether commit messages are correctly formatted or not", into: $report)
  • At last post the whole check result with report method

    danger.shoki.report(report)

Preview

Code above will make danger producing markdown messages like below

My Report

Checking Item Result
Test Result Check 🎉
  • Check whether commit messages are correctly formatted or not

Good Job 💮

Description

  • Swift Tools 5.7.0
View More Packages from this Author

Dependencies

Last updated: Sun Apr 21 2024 22:52:30 GMT-0900 (Hawaii-Aleutian Daylight Time)