Skip to content

Instantly share code, notes, and snippets.

@fedejordan
fedejordan / FBSnapshotTestExampleTests.swift
Last active February 19, 2018 03:25
Blog01 - First snapshot test example
import FBSnapshotTestCase
@testable import FBSnapshotTestCaseExample
class FBSnapshotTestCaseExampleTests: FBSnapshotTestCase {
override func setUp() {
super.setUp()
self.recordMode = false
}
@fedejordan
fedejordan / ViewController.swift
Last active February 19, 2018 03:24
Blog01 - SnapKit refactor from Storyboard
import UIKit
import SnapKit
class ViewController: UIViewController {
lazy var titleLabel = UILabel()
lazy var mainImageView = UIImageView()
lazy var registerButton = UIButton()
lazy var loginButton = UIButton()
@fedejordan
fedejordan / multi_devices_test.sh
Last active April 19, 2019 08:39
Blog01 - Script for run tests in different devices for an iOS project
#!/bin/bash
# Script configuration
devicesArray=(
"iPhone 8"
"iPhone 8 Plus"
"iPhone 5s"
"iPhone X")
@fedejordan
fedejordan / ItemsViewController.swift
Last active February 19, 2018 04:15
Blog02 - View and Data logic in UIViewController class
import UIKit
class ItemsViewController: UIViewController {
@IBOutlet private weak var itemsTableView: UITableView!
private var items = [Item]()
override func viewDidLoad() {
super.viewDidLoad()
@fedejordan
fedejordan / ItemsViewController.swift
Created February 19, 2018 05:08
Blog02 - Removed data management from ItemsViewController
import UIKit
class ItemsViewController: UIViewController {
@IBOutlet private weak var itemsTableView: UITableView!
private var itemsInteractor = ItemsInteractor()
override func viewDidLoad() {
super.viewDidLoad()
@fedejordan
fedejordan / ItemsInteractor.swift
Created February 19, 2018 05:10
Blog02 - ItemsInteractor
import UIKit
class ItemsInteractor {
private var items = [Item]()
func loadData() {
items.append(Item(name: "Apple", image: UIImage(named: "apple")!))
items.append(Item(name: "Banana", image: UIImage(named: "banana")!))
items.append(Item(name: "Potato", image: UIImage(named: "potato")!))
@fedejordan
fedejordan / ItemsViewController.swift
Last active February 26, 2018 15:10
Blog02 - ItemsViewController with UICollectionView
import UIKit
class ItemsViewController: UIViewController {
@IBOutlet private weak var itemsCollectionView: UICollectionView!
private var itemsInteractor = ItemsInteractor()
override func viewDidLoad() {
super.viewDidLoad()
@fedejordan
fedejordan / RetweetViewController.swift
Created February 24, 2018 18:36
Blog03 - Testing Twitter API
import UIKit
import TwitterKit
class RetweetViewController: UIViewController {
@IBOutlet private weak var tweetIdTextField: UITextField!
@IBAction private func didSelectRetweet(sender: UIButton) {
guard let tweetId = tweetIdTextField.text else { return }
let client = TWTRAPIClient()
@fedejordan
fedejordan / RetweetViewController.swift
Last active February 24, 2018 20:09
Blog03 - Retweet with tweetId
import UIKit
import TwitterKit
class RetweetViewController: UIViewController {
@IBOutlet private weak var tweetIdTextField: UITextField!
let client = TWTRAPIClient().withCurrentUser()
@IBAction private func didSelectRetweet(sender: UIButton) {
@fedejordan
fedejordan / relevant_tweets.js
Created February 25, 2018 18:15
Blog04 - NodeJS script for relevant tweets
require('dotenv').load();
var Twitter = require('twitter');
var client = new Twitter({
consumer_key: process.env.TWITTER_CONSUMER_KEY,
consumer_secret: process.env.TWITTER_CONSUMER_SECRET,
bearer_token: process.env.TWITTER_BEARER_TOKEN
});