![]() |
||
---|---|---|
.github/workflows | ||
DemoApp | ||
MockUserDefaults.xcodeproj | ||
Sources/MockUserDefaults | ||
Tests | ||
fastlane | ||
scripts | ||
.gitignore | ||
Gemfile | ||
Gemfile.lock | ||
LICENSE | ||
Makefile | ||
MockUserDefaults.podspec | ||
Package.swift | ||
README.md |
README.md
MockUserDefaults
MockUserDefaults
is a simple replacement for NSUserDefaults
/UserDefaults
to make test easier.
Installation
CocoaPods
pod 'MockUserDefaults', '~> 1.2'
Carthage
github "417-72KI/MockUserDefaults" ~> 1.2
SwiftPM (Swift5 only)
.package(url: "https://github.com/kylef/Commander.git", .upToNextMajor(from: "1.2.0")),
Usage
Objective-C
NSUserDefaults *userDefaults = [NSUserDefaults mockedUserDefaults];
[userDefaults setObject:@"string" forKey:@"key"];
XCTAssertEqualObjects([userDefaults objectForKey:@"key"], @"string");
Swift
let userDefaults: UserDefaults = .mocked
userDefaults.set("string", forKey: "key")
XCTAssertEqual(userDefaults.string(forKey: "key"), "string")
Demo
Dependencies
Tool
- CocoaPods
- Bundler
- Carthage
- Homebrew
- XcodeGen
- Mint
- Homebrew
- Mint
- Fastlane
- Bundler
Library
- R.swift
- RxSwift
- RxDataSources
- Nimble
- Quick
Create project
First time
make init_demo_app
After the first time
make demo_app
Usage
- open
MockUserDefaultsDemo.xcworkspace
- Build and run app (⌘+R) in iPhone / iPad Simulator
- Add any keys and values
- Run test (⌘+U) in same simulator
- Re-run app (⌘+R) in same simulator
- You can see that the app isn't affected by the test.