page-fault-in-nonpaged-area / cosmos

iOS Reddit Client 🍰

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

cosmos

An example iOS Reddit client with emphasis on testing and automation.

alt text

Requirements:

CI/CD Server:

  • macOS 10.14
  • Xcode 10.1 (Swift 4.2)
  • Simulator w/ iOS 12.1
  • Xcode command line tools
  • Jenkins 2.15 with JDK 8+

Idea:

If a macOS machine with public IP is not available, Serveo is used to publicly expose our Jenkins instance so Github can send webhooks to Jenkins, triggering builds on each pull request. If a macOS machine with public is available, we send Github webhooks directly to that machine.

Steps:

  1. Download and install Jenkins for macOS.
  2. Run Jenkins with java -jar jenkins.war if machine uses JDK 8.
  3. Run Jenkins with java -jar jenkins.war --enable-future-if if machine uses java JDK 10.
  4. Configure Github to send webhooks to Jenkins on macOS machine
  5. Install and configure Jenkins Xcode Integration.
  6. Attempt Pull Request.
  7. Wait for Jenkins + GitHub to do its magic.

iOS Technologies Involved

  • CoreData
  • Alamofire
  • Kingfisher
  • SwiftyJSON

Recommended Test Environment

iPhone XS Simulator with iOS 12.1+
Please have the Simulator launched and ready before running the Test(XCTest)!

© 2018-2019 William Yang

3

About

iOS Reddit Client 🍰

License:Other


Languages

Language:Swift 51.7%Language:Objective-C 31.6%Language:C 16.8%