当前位置: 首页>>代码示例>>Scala>>正文


Scala Matchers类代码示例

本文整理汇总了Scala中org.mockito.Matchers的典型用法代码示例。如果您正苦于以下问题:Scala Matchers类的具体用法?Scala Matchers怎么用?Scala Matchers使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


在下文中一共展示了Matchers类的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Scala代码示例。

示例1: RefcountedServiceTest

//设置package包名称以及导入依赖的类
package com.twitter.finagle.service

import com.twitter.util._
import org.scalatest.FunSuite
import org.scalatest.junit.JUnitRunner
import org.junit.runner.RunWith
import org.scalatest.mock.MockitoSugar
import org.mockito.Mockito.{times, verify, when}
import org.mockito.{Matchers, Mockito}
import org.mockito.Matchers._
import com.twitter.finagle.Service

@RunWith(classOf[JUnitRunner])
class RefcountedServiceTest extends FunSuite with MockitoSugar {

  class PoolServiceWrapperHelper {
    val service = mock[Service[Any, Any]]
    when(service.close(any)) thenReturn Future.Done
    val promise = new Promise[Any]
    when(service(Matchers.any)) thenReturn promise
    val wrapper = Mockito.spy(new RefcountedService[Any, Any](service))
  }

  test("PoolServiceWrapper should call release() immediately when no requests have been made") {
    val h = new PoolServiceWrapperHelper
    import h._

    verify(service, times(0)).close(any)
    wrapper.close()
    verify(service).close(any)
  }

  test("PoolServiceWrapper should call release() after pending request finishes") {
    val h = new PoolServiceWrapperHelper
    import h._

    val f = wrapper(123)
    assert(!f.isDefined)
    verify(service)(123)

    wrapper.close()
    verify(service, times(0)).close(any)

    promise() = Return(123)
    verify(service).close(any)
    assert(f.isDefined)
    assert(Await.result(f) == 123)
  }
} 
开发者ID:wenkeyang,项目名称:finagle,代码行数:50,代码来源:RefcountedServiceTest.scala

示例2: ThriftServerFramedCodecTest

//设置package包名称以及导入依赖的类
package com.twitter.finagle.thrift

import com.twitter.finagle.Service
import com.twitter.finagle.tracing._
import com.twitter.finagle.util.ByteArrays
import com.twitter.util.Future
import org.apache.thrift.protocol.{TBinaryProtocol, TMessage, TMessageType}
import org.junit.runner.RunWith
import org.mockito.Matchers
import org.mockito.Mockito.when
import org.scalatest.FunSuite
import org.scalatest.junit.JUnitRunner
import org.scalatest.mock.MockitoSugar

@RunWith(classOf[JUnitRunner])
class ThriftServerFramedCodecTest extends FunSuite with MockitoSugar {
  val protocolFactory = new TBinaryProtocol.Factory()

  test("ThriftServerTracingFilter read header correctly") {
    val traceId = TraceId(Some(SpanId(1L)), None, SpanId(2L), Some(true), Flags().setDebug)
    val bufferingTracer = new BufferingTracer
    Trace.letTracer(bufferingTracer) {
      val filter = new TTwitterServerFilter("service", protocolFactory)
  
      val upgradeMsg = new OutputBuffer(protocolFactory)
      upgradeMsg().writeMessageBegin(new TMessage(ThriftTracing.CanTraceMethodName, TMessageType.CALL, 0))
      val options = new thrift.ConnectionOptions
      options.write(upgradeMsg())
      upgradeMsg().writeMessageEnd()
  
      val service = mock[Service[Array[Byte], Array[Byte]]]
      when(service(Matchers.any[Array[Byte]])).thenReturn(Future(Array[Byte]()))
  
      // now finagle knows we can handle the headers
      filter(upgradeMsg.toArray, service)
  
      // let's create a header
      val header = new thrift.RequestHeader
      header.setSpan_id(2L)
      header.setTrace_id(1L)
      header.setSampled(true)
      header.setFlags(1L)
  
      val ignoreMsg = new OutputBuffer(protocolFactory)
      ignoreMsg().writeMessageBegin(new TMessage("ignoreme", TMessageType.CALL, 0))
      new thrift.ConnectionOptions().write(ignoreMsg())
      ignoreMsg().writeMessageEnd()
  
      filter(ByteArrays.concat(OutputBuffer.messageToArray(header, protocolFactory), ignoreMsg.toArray), service)
  
      bufferingTracer.iterator foreach { record =>
        assert(record.traceId == traceId)
        assert(record.traceId.flags == traceId.flags)
      }
    }
  }
} 
开发者ID:wenkeyang,项目名称:finagle,代码行数:58,代码来源:ThriftServerFramedCodecTest.scala

示例3: ClientIdRequiredFilterTest

//设置package包名称以及导入依赖的类
package com.twitter.finagle.thrift

import com.twitter.conversions.time._
import com.twitter.finagle.Service
import com.twitter.util.{Await, Future}
import org.junit.runner.RunWith
import org.mockito.Matchers
import org.mockito.Mockito.{times, verify, when}
import org.scalatest.FunSuite
import org.scalatest.junit.JUnitRunner
import org.scalatest.mock.MockitoSugar

@RunWith(classOf[JUnitRunner])
class ClientIdRequiredFilterTest extends FunSuite with MockitoSugar {

  case class ClientIdRequiredFilterContext(underlying: Service[String,String]) {
    lazy val service = new ClientIdRequiredFilter andThen underlying
  }

  val request = "request"
  val response = Future.value("response")
  val clientId = ClientId("test")
  
  test("ClientIdRequiredFilter passes through when ClientId exists") {
    val c = ClientIdRequiredFilterContext(mock[Service[String,String]])
    import c._

    when(underlying(request)).thenReturn(response)
    clientId.asCurrent {
      val result = service(request)
      assert(Await.result(result, 10.seconds) == Await.result(response, 10.seconds))
      result
    }
  }

  test("ClientIdRequiredFilter throws NoClientIdSpecifiedException when ClientId does not exist") {
    val c = ClientIdRequiredFilterContext(mock[Service[String,String]])
    import c._

    ClientId.let(None) {
      intercept[NoClientIdSpecifiedException]{
        Await.result(service(request), 10.seconds)
      }
      verify(underlying, times(0)).apply(Matchers.anyString())
    }
  }
} 
开发者ID:wenkeyang,项目名称:finagle,代码行数:48,代码来源:ClientIdRequiredFilterTest.scala

示例4: SignalRefreshedTemplateSourceSpec

//设置package包名称以及导入依赖的类
package de.frosner.broccoli.templates

import de.frosner.broccoli.signal.SignalManager
import org.mockito.Mockito.{times, verify}
import org.mockito.{ArgumentCaptor, Matchers}
import org.specs2.mock.Mockito
import org.specs2.mutable.Specification
import sun.misc.{Signal, SignalHandler}

class SignalRefreshedTemplateSourceSpec extends Specification with Mockito {
  "Receiving a SIGUSR2 signal" should {
    "update the cache" in {
      val signalManager = mock[SignalManager]
      val testTemplateSource = mock[CachedTemplateSource]
      val signalRefreshedTemplateSource = new SignalRefreshedTemplateSource(testTemplateSource, signalManager)
      val handler = ArgumentCaptor.forClass(classOf[SignalHandler])
      there was one(signalManager).register(Matchers.eq(new Signal("USR2")), handler.capture())

      there was no(testTemplateSource).refresh()
      there was no(testTemplateSource).loadTemplates()
      signalRefreshedTemplateSource.loadTemplates()

      there was no(testTemplateSource).refresh()
      there was one(testTemplateSource).loadTemplates()
      verify(testTemplateSource, times(1)).loadTemplates()

      handler.getValue.handle(new Signal("USR2"))
      there was one(testTemplateSource).refresh()
      there was one(testTemplateSource).loadTemplates()
    }
  }
} 
开发者ID:FRosner,项目名称:cluster-broccoli,代码行数:33,代码来源:SignalRefreshedTemplateSourceSpec.scala

示例5: ClientBuilderSpec

//设置package包名称以及导入依赖的类
package com.twitter.finagle.builder

import com.twitter.finagle._
import com.twitter.finagle.integration.IntegrationBase
import com.twitter.util.{Promise, Return, Future}
import org.mockito.Matchers
import org.specs.SpecificationWithJUnit
import org.specs.mock.Mockito

class ClientBuilderSpec extends SpecificationWithJUnit with IntegrationBase with Mockito {
  "ClientBuilder" should {
    "invoke prepareConnFactory on connection" in {
      val preparedFactory = mock[ServiceFactory[String, String]]
      val preparedServicePromise = new Promise[Service[String, String]]
      preparedFactory() returns preparedServicePromise
      preparedFactory.close(any) returns Future.Done
      preparedFactory.map(Matchers.any()) returns
        preparedFactory.asInstanceOf[ServiceFactory[Any, Nothing]]

      val m = new MockChannel
      m.codec.prepareConnFactory(any) returns preparedFactory

      // Client
      val client = m.build()
      val requestFuture = client("123")

      there was one(m.codec).prepareConnFactory(any)
      there was one(preparedFactory)()

      requestFuture.isDefined must beFalse
      val service = mock[Service[String, String]]
      service("123") returns Future.value("321")
      service.close(any) returns Future.Done
      preparedServicePromise() = Return(service)
      there was one(service)("123")
      requestFuture.poll must beSome(Return("321"))
    }


  }
} 
开发者ID:deenar,项目名称:fintest,代码行数:42,代码来源:ClientBuilderSpec.scala

示例6: CloseOnReleaseServiceSpec

//设置package包名称以及导入依赖的类
package com.twitter.finagle.service

import com.twitter.finagle.{Service, WriteException}
import com.twitter.util.{Future, Promise}
import org.mockito.Matchers
import org.specs.SpecificationWithJUnit
import org.specs.mock.Mockito

class CloseOnReleaseServiceSpec extends SpecificationWithJUnit with Mockito {
  "CloseOnReleaseService" should {
    val service = mock[Service[Any, Any]]
    service.close(any) returns Future.Done
    val promise = new Promise[Any]
    service(Matchers.any) returns promise
    val wrapper = new CloseOnReleaseService(service)

    "only call release on the underlying service once" in {
      wrapper.close()
      there was one(service).close(any)

      wrapper.close()
      there was one(service).close(any)

      service.isAvailable must beFalse
    }

    "throw a write exception if we attempt to use a released service" in {
      wrapper.close()

      wrapper(132)() must throwA[WriteException]
    }
  }
} 
开发者ID:deenar,项目名称:fintest,代码行数:34,代码来源:CloseOnReleaseServiceSpec.scala

示例7: RateLimitingFilterSpec

//设置package包名称以及导入依赖的类
package com.twitter.finagle.service

import org.specs.SpecificationWithJUnit
import org.specs.mock.Mockito
import com.twitter.finagle.Service
import com.twitter.util.TimeConversions._
import org.mockito.Matchers
import com.twitter.util.{Time, Future}

class RateLimitingFilterSpec extends SpecificationWithJUnit with Mockito {

  "RateLimitingFilter" should {
    def categorize(i: Int) = (i%5).toString
    val strategy = new LocalRateLimitingStrategy[Int](categorize, 1.second, 5)
    val filter = new RateLimitingFilter[Int, Int](strategy)
    val service = mock[Service[Int, Int]]
    service.close(any) returns Future.Done
    service(Matchers.anyInt) returns Future.value(1)

    val rateLimitedService = filter andThen service

    "Execute requests below rate limit" in {
      var t = Time.now
      Time.withTimeFunction(t) { _ =>
        (1 to 5) foreach { _ =>
          rateLimitedService(1)() mustBe 1
          t += 100.milliseconds
        }
      }
    }

    "Refuse request if rate is above limit" in {
      var t = Time.now
      Time.withTimeFunction(t) { _ =>
        (1 to 5) foreach { _ =>
          rateLimitedService(1)() mustBe 1
          t += 100.milliseconds
        }

        rateLimitedService(1)() must throwA[Exception]
      }
    }

    "Execute different categories of requests and keep a window per category" in {
      var t = Time.now
      Time.withTimeFunction(t) { _ =>
        (1 to 5) foreach { _ =>
          (1 to 5) foreach { i => rateLimitedService(i)() mustBe 1 }
          t += 100.milliseconds
        }
      }
    }
  }
} 
开发者ID:deenar,项目名称:fintest,代码行数:55,代码来源:RateLimitingFilterSpec.scala

示例8: RefcountedServiceSpec

//设置package包名称以及导入依赖的类
package com.twitter.finagle.service

import com.twitter.finagle.Service
import com.twitter.util.{Future, Promise, Return}
import org.mockito.Matchers
import org.specs.SpecificationWithJUnit
import org.specs.mock.Mockito

class RefcountedServiceSpec extends SpecificationWithJUnit with Mockito {
  "PoolServiceWrapper" should {
    val service = mock[Service[Any, Any]]
    service.close(any) returns Future.Done
    val promise = new Promise[Any]
    service(Matchers.any) returns promise
    val wrapper = spy(new RefcountedService[Any, Any](service))

    "call release() immediately when no requests have been made" in {
      there was no(service).close(any)
      wrapper.close()
      there was one(service).close(any)
    }

    "call release() after pending request finishes" in {
      val f = wrapper(123)
      f.isDefined must beFalse
      there was one(service)(123)

      wrapper.close()
      there was no(service).close(any)

      promise() = Return(123)
      there was one(service).close(any)
      f.isDefined must beTrue
      f() must be_==(123)
    }
  }
} 
开发者ID:deenar,项目名称:fintest,代码行数:38,代码来源:RefcountedServiceSpec.scala

示例9: EncryptedIndexStoreTest

//设置package包名称以及导入依赖的类
package org.elasticsearch.index.store

import org.elasticsearch.client.Client
import org.elasticsearch.common.settings.Settings
import org.elasticsearch.common.unit.ByteSizeValue
import org.elasticsearch.env.NodeEnvironment
import org.elasticsearch.index.settings.IndexSettingsService
import org.elasticsearch.index.{Index, IndexService}
import org.elasticsearch.indices.store.IndicesStore
import org.scalatest.FlatSpec
import org.scalatest.mockito.MockitoSugar
import org.mockito.Mockito.when
import org.mockito.Matchers

class EncryptedIndexStoreTest extends FlatSpec with org.scalatest.Matchers with MockitoSugar {

  behavior of "#shardDirectory"
  it should "return EncryptedDirectoryService" in {
    val settings = mock[Settings]
    when(settings.getComponentSettings(Matchers.any())).thenReturn(null)
    when(settings.get(Matchers.eq("index.store.throttle.type"), Matchers.anyString())).thenReturn("all")
    when(settings.getAsBytesSize(Matchers.eq("index.store.throttle.max_bytes_per_sec"), Matchers.any())).thenReturn(new ByteSizeValue(1000))
    val nodeEnv = mock[NodeEnvironment]
    when(nodeEnv.hasNodeFile).thenReturn(false)
    val indexService = mock[IndexService]
    val indexSettingsService = mock[IndexSettingsService]
    when(indexService.settingsService).thenReturn(indexSettingsService)
    val eis = new EncryptedIndexStore(mock[Index], settings, indexService, mock[IndicesStore], nodeEnv, mock[Client])
    eis.shardDirectory() shouldBe classOf[EncryptedDirectoryService]
  }

} 
开发者ID:Workday,项目名称:elasticrypt,代码行数:33,代码来源:EncryptedIndexStoreTest.scala


注:本文中的org.mockito.Matchers类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。