Ontwikkelaar: Avenga Czechia s.r.o (3)
Prijs: Gratis
Beoordelingen: 0 
Recensies: 0 Schrijf een review
Lijsten: 0 + 1
Punten: 2 + 0 ¡
Mac App Store

Beschrijving

Rubicon
Swift parser + mock generator + Xcode extension
https://github.com/raptorxcz/Rubicon

Rubicon generates spys, stub, mocks and dummies for protocols. Generating methods for parent protocol is not supported.

example:

input:

protocol Car {
var name: String? { get }
var color: Int { get set }

@MainActor
func go()
func load(with stuff: Int, label: String) throws -> Int
func isFull() -> Bool
func download() async throws -> [String]
}

output:

spy:

final class CarSpy: Car {
struct Load {
let stuff: Int
let label: String
}

var name: String?
var color: Int
var loadThrowBlock: () -> Void?
var loadReturn: Int
var isFullReturn: Bool
var downloadThrowBlock: () -> Void?
var downloadReturn: [String]

var goCount = 0
var load = [Load]()
var isFullCount = 0
var downloadCount = 0

init(color: Int, loadReturn: Int, isFullReturn: Bool, downloadReturn: [String]) {
self.color = color
self.loadReturn = loadReturn
self.isFullReturn = isFullReturn
self.downloadReturn = downloadReturn
}

func go() {
goCount += 1
}

func load(with stuff: Int, label: String) throws -> Int {
let item = Load(stuff: stuff, label: label)
load.append(item)
try loadThrowBlock?()
return loadReturn
}

func isFull() -> Bool {
isFullCount += 1
return isFullReturn
}

func download() async throws -> [String] {
downloadCount += 1
try downloadThrowBlock?()
return downloadReturn
}
}

stub:

final class CarStub: Car {
var name: String?
var color: Int
var loadThrowBlock: () -> Void?
var loadReturn: Int
var isFullReturn: Bool
var downloadThrowBlock: () -> Void?
var downloadReturn: [String]

init(color: Int, loadReturn: Int, isFullReturn: Bool, downloadReturn: [String]) {
self.color = color
self.loadReturn = loadReturn
self.isFullReturn = isFullReturn
self.downloadReturn = downloadReturn
}

func go() {
}

func load(with stuff: Int, label: String) throws -> Int {
try loadThrowBlock?()
return loadReturn
}

func isFull() -> Bool {
return isFullReturn
}

func download() async throws -> [String] {
try downloadThrowBlock?()
return downloadReturn
}
}

dummy:

final class CarDummy: Car {
var name: String? {
get {
fatalError()
}
}
var color: Int {
get {
fatalError()
}
set {
fatalError()
}
}

func go() {
fatalError()
}

func load(with stuff: Int, label: String) throws -> Int {
fatalError()
}

func isFull() -> Bool {
fatalError()
}

func download() async throws -> [String] {
fatalError()
}
}

usage in tests:

let carSpy = CarSpy()

...

let a1 = carSpy.goCount == 1
let a2 = carSpy.load.count == 1
let a3 = carSpy.load[0].stuff == 2
let a4 = carSpy.load[0].label == "name"

https://github.com/raptorxcz/Rubicon

Xcode extension

Xcode extension can generate test doubles for all or just selected protocols in the current file. The resulting test double can be written to the source file or pasteboard.
meer ↓
Ad

Screenshots

#1. Rubicon (macOS) Door: Avenga Czechia s.r.o
#2. Rubicon (macOS) Door: Avenga Czechia s.r.o
#3. Rubicon (macOS) Door: Avenga Czechia s.r.o
#4. Rubicon (macOS) Door: Avenga Czechia s.r.o
#5. Rubicon (macOS) Door: Avenga Czechia s.r.o

Wat is er nieuw?

  • Versie: 3.0.0
  • Bijgewerkt:
  • Migrated to Swift Syntax, which fixed many bungs.

Prijs

  • Vandaag: Gratis
  • Minimum: Gratis
  • Maximaal: Gratis
Prijzen volgen
Ad

Ontwikkelaar

Punten

Beoordelingen

0 ☹️

Lijsten

0 ☹️
  • Rubicon

Recensies

Schrijf als eerste een review 🌟

Aanvullende informatie

RubiconRubicon Korte URL: Gekopieerd!
  • 🌟 Delen
  • Mac App Store

Mogelijk vindt u dit ook interessant

    • Sitemap Plus
    • macOS Apps: Ontwikkelaarstools  Door: OurBigAdventure, LLC
    • Gratis  
    • Lijsten: 1 + 1  Beoordelingen: 0  Recensies: 0
    • Punten: 26 + 0  Versie: 2.3   Sitemap Plus is designed for web developers, to build a list of pages on websites that they own, the server status at the time of the crawl and the download time for each page. Sitemap
        ⥯ 
    • DevTools - Smarter coding
    • macOS Apps: Ontwikkelaarstools  Door: Anh Nguyen
    • * Gratis  
    • Lijsten: 2 + 3  Beoordelingen: 0  Recensies: 0
    • Punten: 22 + 0  Versie: 1.2.3   DevTools is an all-in-one offline application that provides developers with essential tools for daily tasks and ensures data security. The app has been trusted by over 15,000 ...
        ⥯ 
    • Klipped
    • macOS Apps: Ontwikkelaarstools  Door: Andrew Drake
    • Gratis  
    • Lijsten: 0 + 2  Beoordelingen: 0  Recensies: 0
    • Punten: 19 + 0  Versie: 3.0.2   Beauty in simplicity. Klipped is a minimalist scratch pad that is a buddy for all your other apps. Write ideas down. Paste text and use as a clipboard; delete when you re done. No ...
        ⥯ 
    • 18 Strings
    • macOS Apps: Ontwikkelaarstools  Door: Remote Sunrise LTD
    • Gratis  
    • Lijsten: 0 + 1  Beoordelingen: 0  Recensies: 0
    • Punten: 17 + 0  Versie: 2022.6   Hate doing localization for your project? Now you can hate it a little less: Save tons of money by doing automatic translation using strings from your other projects you have already ...
        ⥯ 
  • -100%
    • Base64 Coder
    • macOS Apps: Ontwikkelaarstools  Door: Pavel Kosykh
    • Gratis $1.79 -100%  
    • Lijsten: 0 + 2  Beoordelingen: 0  Recensies: 0
    • Punten: 14 + 0  Versie: 2.1.0   Base64 Coder is a fast and easy converter files to a Base64 format. Features: Fast work; Automatically string copy; Drag & Drop; MIME prefix support; Save result to file; Result ...
        ⥯ 
    • SnippetsLab
    • macOS Apps: Ontwikkelaarstools  Door: Renfei Song
    • Gratis  
    • Lijsten: 6 + 8  Beoordelingen: 5 (1)  Recensies: 0
    • Punten: 13 + 0  Versie: 2.6.4   Mac App Store Best of 2015 Featured in App Store editorial All Your Code, Brilliantly Organized , Keep Your Code at Your Fingertips and Welcome to the Mac App Store! Featured app in ...
        ⥯ 
    • Xcode
    • macOS Apps: Ontwikkelaarstools  Door: Apple
    • Gratis  
    • Lijsten: 22 + 8  Beoordelingen: 5 (1)  Recensies: 0
    • Punten: 11 + 0  Versie: 26.3   Xcode offers the tools you need to develop, test, and distribute apps for Apple platforms, including predictive code completion, generative intelligence powered by the best coding ...
        ⥯ 
    • Network Debugger
    • macOS Apps: Ontwikkelaarstools  Door: 志健 袁
    • * Gratis  
    • Lijsten: 0 + 1  Beoordelingen: 0  Recensies: 0
    • Punten: 10 + 0  Versie: 1.2.0   Professional network debugging tool for macOS Network Debugger helps developers and testers quickly build TCP and UDP connections, send and inspect messages, and automate repetitive ...
        ⥯ 
    • Anycode: Code Snippet to Image
    • macOS Apps: Ontwikkelaarstools  Door: 宏旭 朱
    • Gratis  
    • Lijsten: 0 + 2  Beoordelingen: 0  Recensies: 0
    • Punten: 10 + 0  Versie: 0.7.0   Anycode is a document-based app that helps you manage your code snippets. - Supports syntax highlighting for Bash, C, C++, C#, Clojure, Dart, Go, Java, JavaScript, JSON, Kotlin, ...
        ⥯ 
    • Eplist - convert data to plist
    • macOS Apps: Ontwikkelaarstools  Door: HuMinghua
    • * Gratis  
    • Lijsten: 1 + 2  Beoordelingen: 0  Recensies: 0
    • Punten: 10 + 0  Versie: 2.0.1   Eplist for Excel is a lightweight conversion tool to help developers to improve development efficiency. You can convert your datas or configuration from excel(.xls and .xlsx) document ...
        ⥯ 
    • KeyPad - Keyboard and Remote
    • macOS Apps: Ontwikkelaarstools  Door: Toolbunch LLC
    • * Gratis  
    • Lijsten: 0 + 0  Beoordelingen: 0  Recensies: 0
    • Punten: 9 + 0  Versie: 1.99.15   Use your Mac keyboard to control all your devices. From smartphones and tablets to TVs and even the raspberry pi, KeyPad turns your Mac into a powerful universal Bluetooth keyboard, ...
        ⥯ 
    • Application Localizer
    • macOS Apps: Ontwikkelaarstools  Door: Serhii Tal
    • Gratis  
    • Lijsten: 0 + 1  Beoordelingen: 0  Recensies: 0
    • Punten: 9 + 0  Versie: 2.0.1   What this app does? It's a powerful tool for macOS designed to help developers easily localize their apps. So you can translate your SwiftUI app's text strings into any language using ...
        ⥯ 
    • RocketSim for Xcode Simulator
    • macOS Apps: Ontwikkelaarstools  Door: SwiftLee
    • * Gratis  
    • Lijsten: 1 + 3  Beoordelingen: 0  Recensies: 0
    • Punten: 9 + 0  Versie: 14.5.0   Join thousands of iOS developers who build, test, and debug apps up to 2x faster with RocketSim. Supercharge your Xcode Simulator with 30+ powerful tools designed to boost ...
        ⥯ 
    • FrameBuddy - Screenshot Frames
    • macOS Apps: Ontwikkelaarstools  Door: Florian Schweizer
    • Gratis  
    • Lijsten: 0 + 4  Beoordelingen: 0  Recensies: 0
    • Punten: 9 + 0  Versie: 1.3   Quickly add a device frame to your screenshots. FrameBuddy is a super simple utility that automatically adds iPhone frames to your (Simulator) screenshots. Iphone icon created by ...
        ⥯ 

Mogelijk vindt u dit ook interessant

Zoekoperators die je kunt gebruiken met AppAgg
Toevoegen aan AppAgg
AppAgg
Aan de slag - het is gratis.
Registreren
Inloggen