Skip to content

Instantly share code, notes, and snippets.

View jeffreyolchovy's full-sized avatar

Jeffrey Olchovy jeffreyolchovy

View GitHub Profile
package sbttweeter
import sbt._
import sbt.Keys._
object TweeterKeys {
val tweeterConsumerKey = settingKey[String]("The Twitter application consumer key")
val tweeterConsumerSecret = settingKey[String]("The Twitter application consumer secret")
val tweeterAccessToken = settingKey[String]("The Twitter user access token")
val tweeterAccessTokenSecret = settingKey[String]("The Twitter user access token secret")
package sbttweeter
import sbt._
import sbt.Keys._
object TweeterKeys {
val tweeterConsumerKey = settingKey[String]("The Twitter application consumer key")
val tweeterConsumerSecret = settingKey[String]("The Twitter application consumer secret")
val tweeterAccessToken = settingKey[String]("The Twitter user access token")
val tweeterAccessTokenSecret = settingKey[String]("The Twitter user access token secret")
package sbttweeter
import sbt._
import sbt.Keys._
object TweeterKeys {
val tweeterConsumerKey = settingKey[String]("The Twitter application consumer key")
val tweeterConsumerSecret = settingKey[String]("The Twitter application consumer secret")
val tweeterAccessToken = settingKey[String]("The Twitter user access token")
val tweeterAccessTokenSecret = settingKey[String]("The Twitter user access token secret")
package sbttweeter
import sbt._
import sbt.Keys._
object TweeterKeys {
val tweeterConsumerKey = settingKey[String]("The Twitter application consumer key")
val tweeterConsumerSecret = settingKey[String]("The Twitter application consumer secret")
val tweeterAccessToken = settingKey[String]("The Twitter user access token")
val tweeterAccessTokenSecret = settingKey[String]("The Twitter user access token secret")
package sbttweeter
import sbt._
import sbt.Keys._
object TweeterKeys {
/* Instantiate your setting, task, and input task keys here */
}
object TweeterPlugin extends AutoPlugin {
package com.example.sbt
import scala.util.Failure
import org.scalatest.{FlatSpec, Matchers}
class TweeterServiceSpec extends FlatSpec with Matchers {
behavior of "TweeterService"
it should "return a failure when acting on behalf of a client with bogus credentials" in {
package com.example.sbt
import scala.util.Try
import twitter4j.{Twitter, TwitterFactory}
import twitter4j.conf.ConfigurationBuilder
case class TweeterService(client: Twitter) {
def post(tweet: String): Try[Long] = {
Try(client.updateStatus(tweet)).map(_.getId)
package sbttweeter
import sbt._
import sbt.Keys._
object TweeterKeys {
/* Instantiate your setting, task, and input task keys here */
}
object TweeterPlugin extends AutoPlugin {
addSbtPlugin("com.eed3si9n" % "sbt-doge" % "0.1.5")
addSbtPlugin("com.github.gseitz" % "sbt-release" % "1.0.4")
lazy val root = (project in file("."))
.aggregate(plugin, library)
.enablePlugins(CrossPerProjectPlugin)
lazy val plugin = (project in file("plugin"))
.settings(
name := "sbt-tweeter",
sbtPlugin := true,
scalaVersion := "2.10.6"
)