Skip to content

Instantly share code, notes, and snippets.

package com.mautinoa.reactive
import io.reactivex.Observable
import io.reactivex.Scheduler
import io.reactivex.schedulers.TestScheduler
import java.lang.RuntimeException
import java.util.concurrent.TimeUnit
const val TICK = 1000L
@jmfayard
jmfayard / -
Created January 16, 2018 14:37
RxJava testing with the trampoline scheduler
package com.github.rongi.rxpresenter.example
import io.reactivex.android.plugins.RxAndroidPlugins
import io.reactivex.plugins.RxJavaPlugins
import io.reactivex.schedulers.Schedulers
import org.junit.Assert
import org.junit.rules.TestRule
import org.junit.runners.model.Statement
val testSchedulersTestRule = TestRule { base, _ ->
package statemachine
import debug
import fail
import io.reactivex.Observable
import kotlinx.coroutines.experimental.channels.Channel
import kotlinx.coroutines.experimental.channels.produce
import kotlinx.coroutines.experimental.delay
import kotlinx.coroutines.experimental.launch
import kotlinx.coroutines.experimental.runBlocking
@jmfayard
jmfayard / DataTypeExamples.kt
Last active November 27, 2017 18:00
Functional datatypes & abstractions for Kotlin http://kategory.io/
package kategory
import io.kotlintest.matchers.*
import io.kotlintest.specs.FreeSpec
import kategory.Problem.*
import kotlin.reflect.KClass
/*** Kategory.io documentation as runnable code ***/
class DataTypeExamples : FreeSpec() { init {
[alias]
# checkout merge request from gitlab. Usage git mr 91
mr = !sh -c 'git fetch origin merge-requests/$1/head:mr-origin-$1 && git checkout mr-origin-$1' -
# before mrege request
frommaster = reset --soft master
l = log --oneline --decorate
authors = "!git log --pretty=format:%aN | sort | uniq -c | sort -rn"
lg = log --graph --pretty=format:'%Cred%h%Creset %an -%C(yellow)%d%Creset %s %Cgreen(%cr)%Creset' --abbrev-commit --date=relative
ls-ignored = ls-files --exclude-standard --ignored --others
// top-level build.gradle
task printProperties {
group = 'help'
doLast {
def properties = ['org.gradle.java.home', 'org.gradle.jvmargs']
def systemProperties = ['file.encoding', 'user.country', 'user.language', 'java.io.tmpdir', 'user.variant']
println("Detecting what could cause incompatible gradle daemons")
println("Run './gradlew printProperties' from the command-line and the same task Android studio")
@jmfayard
jmfayard / let.kt
Created November 17, 2017 09:18
Scoping + Destructuring
data class User(val id: String, name: String, phoneNumber: String)
fun testSend(sender: User, receiver: User) {
sender.let { (id, name, phoneNumber) ->
 println("Do something with $id, $name, $phoneNumber")
}
receiver.let { (id, name, phoneNumber) -> 
 println("Do something with $id, $name, $phoneNumber")
This file has been truncated, but you can view the full file.
s-1/files-1.1/appcompat-v7-27.0.1.aar/7ba3710c45b362d9a78f7a570a7d2f42/res/drawable-ldrtl-xhdpi-v17/abc_ic_menu_copy_mtrl_am_alpha.png, to=/Users/jmfayard/Dev/mautinoa/android-kotlin-magellan/build/intermediates/res/merged/debug},
future=com.google.common.util.concurrent.SettableFuture@15708be8}
AAPT1 err(Facade for 176707604): Done -> QueuedJob{
title=Compiling design_fab_background.xml,
task={from=/Users/jmfayard/.gradle/caches/transforms-1/files-1.1/design-27.0.1.aar/589e4bbc3ce5596a8ebdb36e7968e485/res/drawable/design_fab_background.xml, to=/Users/jmfayard/Dev/mautinoa/android-kotlin-magellan/build/intermediates/res/merged/debug},
future=com.google.common.util.concurrent.SettableFuture@70cbcf0c}
AAPT warning(1749937772), Job(QueuedJob{
title=Compiling design_layout_tab_text.xml,
task={from=/Users/jmfayard/.gradle/caches/transforms-1/files-1.1/design-27.0.1.aar/589e4bbc3ce5596a8ebdb36e7968e485/res/layout/design_layout_tab_text.xml, to=/Users/jmfayard/Dev/mautinoa/android-kotlin-magellan/build/intermedi
@jmfayard
jmfayard / view.js
Created February 27, 2017 09:00
Bacbone : old & new
define([
"underscore",
"backbone",
"util",
"modules/views/customerprofile"
], function (_, Backbone, util, CustomerProfile) {
return Backbone.View.extend(
{