Skip to content

Commit

Permalink
Deploy website
Browse files Browse the repository at this point in the history
Deploy website version based on ebbf7ab
  • Loading branch information
Docusaurus bot committed Jun 26, 2024
1 parent f8576a9 commit 2d89a6e
Show file tree
Hide file tree
Showing 10 changed files with 38 additions and 38 deletions.
4 changes: 2 additions & 2 deletions docs/getting-started.html
Original file line number Diff line number Diff line change
Expand Up @@ -58,8 +58,8 @@
<p>If you are coming from ScalaMock for Scala 2, there are a few changes you need to be aware of. See the <a href="/scala3mock/docs/user-guide/faq#moving-from-scalamock-to-scala3mock">FAQ</a>.</p>
<h2><a class="anchor" aria-hidden="true" id="install"></a><a href="#install" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>Install</h2>
<p>To get started with SBT and ScalaTest, add the following dependencies to your <strong>build.sbt</strong>:</p>
<pre><code class="hljs css language-scala">libraryDependencies += <span class="hljs-string">"eu.monniot"</span> %% <span class="hljs-string">"scala3mock"</span> % <span class="hljs-string">"0.6.2"</span> % <span class="hljs-type">Test</span>
libraryDependencies += <span class="hljs-string">"eu.monniot"</span> %% <span class="hljs-string">"scala3mock-scalatest"</span> % <span class="hljs-string">"0.6.2"</span> % <span class="hljs-type">Test</span>
<pre><code class="hljs css language-scala">libraryDependencies += <span class="hljs-string">"eu.monniot"</span> %% <span class="hljs-string">"scala3mock"</span> % <span class="hljs-string">"0.6.3"</span> % <span class="hljs-type">Test</span>
libraryDependencies += <span class="hljs-string">"eu.monniot"</span> %% <span class="hljs-string">"scala3mock-scalatest"</span> % <span class="hljs-string">"0.6.3"</span> % <span class="hljs-type">Test</span>
</code></pre>
<p>While some testing framework integration exists, Scala3Mock at its core do not require one.
You can learn more about the various testing framework integration by going to to the dedicated page in the user guide. If there is no page, it means no special integration has been written yet (or it is not required).</p>
Expand Down
4 changes: 2 additions & 2 deletions docs/getting-started/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -58,8 +58,8 @@
<p>If you are coming from ScalaMock for Scala 2, there are a few changes you need to be aware of. See the <a href="/scala3mock/docs/user-guide/faq#moving-from-scalamock-to-scala3mock">FAQ</a>.</p>
<h2><a class="anchor" aria-hidden="true" id="install"></a><a href="#install" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>Install</h2>
<p>To get started with SBT and ScalaTest, add the following dependencies to your <strong>build.sbt</strong>:</p>
<pre><code class="hljs css language-scala">libraryDependencies += <span class="hljs-string">"eu.monniot"</span> %% <span class="hljs-string">"scala3mock"</span> % <span class="hljs-string">"0.6.2"</span> % <span class="hljs-type">Test</span>
libraryDependencies += <span class="hljs-string">"eu.monniot"</span> %% <span class="hljs-string">"scala3mock-scalatest"</span> % <span class="hljs-string">"0.6.2"</span> % <span class="hljs-type">Test</span>
<pre><code class="hljs css language-scala">libraryDependencies += <span class="hljs-string">"eu.monniot"</span> %% <span class="hljs-string">"scala3mock"</span> % <span class="hljs-string">"0.6.3"</span> % <span class="hljs-type">Test</span>
libraryDependencies += <span class="hljs-string">"eu.monniot"</span> %% <span class="hljs-string">"scala3mock-scalatest"</span> % <span class="hljs-string">"0.6.3"</span> % <span class="hljs-type">Test</span>
</code></pre>
<p>While some testing framework integration exists, Scala3Mock at its core do not require one.
You can learn more about the various testing framework integration by going to to the dedicated page in the user guide. If there is no page, it means no special integration has been written yet (or it is not required).</p>
Expand Down
20 changes: 10 additions & 10 deletions docs/user-guide/advanced-topics.html
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@ <h3><a class="anchor" aria-hidden="true" id="overloaded-methods"></a><a href="#o
}

<span class="hljs-keyword">val</span> fooMock = mock[<span class="hljs-type">Foo</span>]
<span class="hljs-comment">// fooMock: Foo = repl.MdocSession$MdocApp$FooMock$1@2c138b6e</span>
<span class="hljs-comment">// fooMock: Foo = repl.MdocSession$MdocApp$FooMock$1@6fe37978</span>

when(fooMock.overloaded(_: <span class="hljs-type">Int</span>)).expects(<span class="hljs-number">10</span>)
<span class="hljs-comment">// res0: CallHandler1[Int, String] = &lt;advanced-topics.md#L31&gt; Foo.overloaded(10) once (never called - UNSATISFIED)</span>
Expand All @@ -82,7 +82,7 @@ <h3><a class="anchor" aria-hidden="true" id="polymorphic-methods"></a><a href="#
}

<span class="hljs-keyword">val</span> fooMock = mock[<span class="hljs-type">Foo</span>]
<span class="hljs-comment">// fooMock: Foo = repl.MdocSession$MdocApp$FooMock$2@512f8c5c</span>
<span class="hljs-comment">// fooMock: Foo = repl.MdocSession$MdocApp$FooMock$2@76bd22ae</span>

when(fooMock.polymorphic(_: <span class="hljs-type">List</span>[<span class="hljs-type">Int</span>])).expects(<span class="hljs-type">List</span>(<span class="hljs-number">1</span>, <span class="hljs-number">2</span>, <span class="hljs-number">3</span>))
<span class="hljs-comment">// res3: CallHandler1[List[Int], String] = &lt;advanced-topics.md#L58&gt; Foo.polymorphic[T](List(1, 2, 3)) once (never called - UNSATISFIED)</span>
Expand All @@ -93,7 +93,7 @@ <h3><a class="anchor" aria-hidden="true" id="curried-methods"></a><a href="#curr
}

<span class="hljs-keyword">val</span> fooMock = mock[<span class="hljs-type">Foo</span>]
<span class="hljs-comment">// fooMock: Foo = repl.MdocSession$MdocApp$FooMock$3@32a5069a</span>
<span class="hljs-comment">// fooMock: Foo = repl.MdocSession$MdocApp$FooMock$3@5cef2423</span>

when(fooMock.curried(_: <span class="hljs-type">Int</span>)(_: <span class="hljs-type">Double</span>)).expects(<span class="hljs-number">10</span>, <span class="hljs-number">1.23</span>)
<span class="hljs-comment">// res4: CallHandler2[Int, Double, String] = &lt;advanced-topics.md#L75&gt; Foo.curried(10, 1.23) once (never called - UNSATISFIED)</span>
Expand All @@ -106,7 +106,7 @@ <h3><a class="anchor" aria-hidden="true" id="curried-methods"></a><a href="#curr
<span class="hljs-keyword">val</span> fooMock = mock[<span class="hljs-type">Foo</span>]

when(fooMock.curried)
<span class="hljs-comment">// java.lang.ClassCastException: class eu.monniot.scala3mock.functions.MockFunction2 cannot be cast to class eu.monniot.scala3mock.functions.MockFunction1 (eu.monniot.scala3mock.functions.MockFunction2 and eu.monniot.scala3mock.functions.MockFunction1 are in unnamed module of loader sbt.internal.LayeredClassLoader @349ae1a3)</span>
<span class="hljs-comment">// java.lang.ClassCastException: class eu.monniot.scala3mock.functions.MockFunction2 cannot be cast to class eu.monniot.scala3mock.functions.MockFunction1 (eu.monniot.scala3mock.functions.MockFunction2 and eu.monniot.scala3mock.functions.MockFunction1 are in unnamed module of loader sbt.internal.LayeredClassLoader @2ccfeb42)</span>
<span class="hljs-comment">// at repl.MdocSession$MdocApp.$init$$$anonfun$1(advanced-topics.md:93)</span>
</code></pre>
<p>At the moment the <code>when</code> macro isn't smart enough to recognize a curried function whereas the <code>mock</code> macro is. That result in the underlying mock correctly creating a <code>MockFunction2[Int, Double, String]</code> (two args) but the <code>when</code> macro exposes a <code>MockFunction1[Int, Double =&gt; String]</code> (one arg).</p>
Expand All @@ -119,10 +119,10 @@ <h2><a class="anchor" aria-hidden="true" id="methods-with-implicit-parameters"><
}

<span class="hljs-keyword">val</span> memcachedMock = mock[<span class="hljs-type">Memcached</span>]
<span class="hljs-comment">// memcachedMock: Memcached = repl.MdocSession$MdocApp$MemcachedMock$1@40d08a98</span>
<span class="hljs-comment">// memcachedMock: Memcached = repl.MdocSession$MdocApp$MemcachedMock$1@4ab1239a</span>

<span class="hljs-keyword">implicit</span> <span class="hljs-keyword">val</span> codec = <span class="hljs-keyword">new</span> <span class="hljs-type">Codec</span>
<span class="hljs-comment">// codec: Codec = repl.MdocSession$MdocApp$Codec$1@fc64054</span>
<span class="hljs-comment">// codec: Codec = repl.MdocSession$MdocApp$Codec$1@2ee85622</span>
when(memcachedMock.get(_ : <span class="hljs-type">String</span>)(_ : <span class="hljs-type">Codec</span>)).expects(<span class="hljs-string">"some_key"</span>, *).returning(<span class="hljs-type">Some</span>(<span class="hljs-number">123</span>))
<span class="hljs-comment">// res5: CallHandler2[String, Codec, Option[Int]] = &lt;advanced-topics.md#L109&gt; Memcached.get(some_key, *) once (never called - UNSATISFIED)</span>
</code></pre>
Expand All @@ -133,7 +133,7 @@ <h3><a class="anchor" aria-hidden="true" id="repeated-parameters"></a><a href="#
}

<span class="hljs-keyword">val</span> fooMock = mock[<span class="hljs-type">Foo</span>]
<span class="hljs-comment">// fooMock: Foo = repl.MdocSession$MdocApp$FooMock$5@52d2ee1d</span>
<span class="hljs-comment">// fooMock: Foo = repl.MdocSession$MdocApp$FooMock$5@454f9ce2</span>

when(fooMock.takesRepeatedParameter).expects(<span class="hljs-number">42</span>, <span class="hljs-type">Seq</span>(<span class="hljs-string">"red"</span>, <span class="hljs-string">"green"</span>, <span class="hljs-string">"blue"</span>))
<span class="hljs-comment">// res6: CallHandler2[Int, Seq[String], Unit] = &lt;advanced-topics.md#L130&gt; Foo.takesRepeatedParameter(42, List(red, green, blue)) once (never called - UNSATISFIED)</span>
Expand All @@ -145,7 +145,7 @@ <h2><a class="anchor" aria-hidden="true" id="returning-values-oncall"></a><a hre
}

<span class="hljs-keyword">val</span> fooMock = mock[<span class="hljs-type">Foo</span>]
<span class="hljs-comment">// fooMock: Foo = repl.MdocSession$MdocApp$FooMock$6@aecc5ae</span>
<span class="hljs-comment">// fooMock: Foo = repl.MdocSession$MdocApp$FooMock$6@21553b5c</span>

when(fooMock.increment).expects(<span class="hljs-number">12</span>).returning(<span class="hljs-number">13</span>)
<span class="hljs-comment">// res7: CallHandler1[Int, Int] = &lt;advanced-topics.md#L147&gt; Foo.increment(12) once (called once)</span>
Expand Down Expand Up @@ -235,7 +235,7 @@ <h2><a class="anchor" aria-hidden="true" id="exceptions"></a><a href="#exception
}

<span class="hljs-keyword">val</span> fooMock = mock[<span class="hljs-type">Foo</span>]
<span class="hljs-comment">// fooMock: Foo = repl.MdocSession$MdocApp$FooMock$7@4c056bb6</span>
<span class="hljs-comment">// fooMock: Foo = repl.MdocSession$MdocApp$FooMock$7@49b25c7d</span>


<span class="hljs-comment">// Using the throws or throwing function</span>
Expand Down Expand Up @@ -286,7 +286,7 @@ <h2><a class="anchor" aria-hidden="true" id="mocking-0-parameter-functions"></a>
}

<span class="hljs-keyword">val</span> m = mock[<span class="hljs-type">Test</span>]
<span class="hljs-comment">// m: Test = repl.MdocSession$MdocApp$TestMock$1@5466302d</span>
<span class="hljs-comment">// m: Test = repl.MdocSession$MdocApp$TestMock$1@32ce127d</span>

when(() =&gt; m.zeroParameter()).expects().returns(<span class="hljs-number">1</span>)
<span class="hljs-comment">// res36: CallHandler0[Int] = &lt;advanced-topics.md#L374&gt; Test.zeroParameter() once (never called - UNSATISFIED)</span>
Expand Down
20 changes: 10 additions & 10 deletions docs/user-guide/advanced-topics/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@ <h3><a class="anchor" aria-hidden="true" id="overloaded-methods"></a><a href="#o
}

<span class="hljs-keyword">val</span> fooMock = mock[<span class="hljs-type">Foo</span>]
<span class="hljs-comment">// fooMock: Foo = repl.MdocSession$MdocApp$FooMock$1@2c138b6e</span>
<span class="hljs-comment">// fooMock: Foo = repl.MdocSession$MdocApp$FooMock$1@6fe37978</span>

when(fooMock.overloaded(_: <span class="hljs-type">Int</span>)).expects(<span class="hljs-number">10</span>)
<span class="hljs-comment">// res0: CallHandler1[Int, String] = &lt;advanced-topics.md#L31&gt; Foo.overloaded(10) once (never called - UNSATISFIED)</span>
Expand All @@ -82,7 +82,7 @@ <h3><a class="anchor" aria-hidden="true" id="polymorphic-methods"></a><a href="#
}

<span class="hljs-keyword">val</span> fooMock = mock[<span class="hljs-type">Foo</span>]
<span class="hljs-comment">// fooMock: Foo = repl.MdocSession$MdocApp$FooMock$2@512f8c5c</span>
<span class="hljs-comment">// fooMock: Foo = repl.MdocSession$MdocApp$FooMock$2@76bd22ae</span>

when(fooMock.polymorphic(_: <span class="hljs-type">List</span>[<span class="hljs-type">Int</span>])).expects(<span class="hljs-type">List</span>(<span class="hljs-number">1</span>, <span class="hljs-number">2</span>, <span class="hljs-number">3</span>))
<span class="hljs-comment">// res3: CallHandler1[List[Int], String] = &lt;advanced-topics.md#L58&gt; Foo.polymorphic[T](List(1, 2, 3)) once (never called - UNSATISFIED)</span>
Expand All @@ -93,7 +93,7 @@ <h3><a class="anchor" aria-hidden="true" id="curried-methods"></a><a href="#curr
}

<span class="hljs-keyword">val</span> fooMock = mock[<span class="hljs-type">Foo</span>]
<span class="hljs-comment">// fooMock: Foo = repl.MdocSession$MdocApp$FooMock$3@32a5069a</span>
<span class="hljs-comment">// fooMock: Foo = repl.MdocSession$MdocApp$FooMock$3@5cef2423</span>

when(fooMock.curried(_: <span class="hljs-type">Int</span>)(_: <span class="hljs-type">Double</span>)).expects(<span class="hljs-number">10</span>, <span class="hljs-number">1.23</span>)
<span class="hljs-comment">// res4: CallHandler2[Int, Double, String] = &lt;advanced-topics.md#L75&gt; Foo.curried(10, 1.23) once (never called - UNSATISFIED)</span>
Expand All @@ -106,7 +106,7 @@ <h3><a class="anchor" aria-hidden="true" id="curried-methods"></a><a href="#curr
<span class="hljs-keyword">val</span> fooMock = mock[<span class="hljs-type">Foo</span>]

when(fooMock.curried)
<span class="hljs-comment">// java.lang.ClassCastException: class eu.monniot.scala3mock.functions.MockFunction2 cannot be cast to class eu.monniot.scala3mock.functions.MockFunction1 (eu.monniot.scala3mock.functions.MockFunction2 and eu.monniot.scala3mock.functions.MockFunction1 are in unnamed module of loader sbt.internal.LayeredClassLoader @349ae1a3)</span>
<span class="hljs-comment">// java.lang.ClassCastException: class eu.monniot.scala3mock.functions.MockFunction2 cannot be cast to class eu.monniot.scala3mock.functions.MockFunction1 (eu.monniot.scala3mock.functions.MockFunction2 and eu.monniot.scala3mock.functions.MockFunction1 are in unnamed module of loader sbt.internal.LayeredClassLoader @2ccfeb42)</span>
<span class="hljs-comment">// at repl.MdocSession$MdocApp.$init$$$anonfun$1(advanced-topics.md:93)</span>
</code></pre>
<p>At the moment the <code>when</code> macro isn't smart enough to recognize a curried function whereas the <code>mock</code> macro is. That result in the underlying mock correctly creating a <code>MockFunction2[Int, Double, String]</code> (two args) but the <code>when</code> macro exposes a <code>MockFunction1[Int, Double =&gt; String]</code> (one arg).</p>
Expand All @@ -119,10 +119,10 @@ <h2><a class="anchor" aria-hidden="true" id="methods-with-implicit-parameters"><
}

<span class="hljs-keyword">val</span> memcachedMock = mock[<span class="hljs-type">Memcached</span>]
<span class="hljs-comment">// memcachedMock: Memcached = repl.MdocSession$MdocApp$MemcachedMock$1@40d08a98</span>
<span class="hljs-comment">// memcachedMock: Memcached = repl.MdocSession$MdocApp$MemcachedMock$1@4ab1239a</span>

<span class="hljs-keyword">implicit</span> <span class="hljs-keyword">val</span> codec = <span class="hljs-keyword">new</span> <span class="hljs-type">Codec</span>
<span class="hljs-comment">// codec: Codec = repl.MdocSession$MdocApp$Codec$1@fc64054</span>
<span class="hljs-comment">// codec: Codec = repl.MdocSession$MdocApp$Codec$1@2ee85622</span>
when(memcachedMock.get(_ : <span class="hljs-type">String</span>)(_ : <span class="hljs-type">Codec</span>)).expects(<span class="hljs-string">"some_key"</span>, *).returning(<span class="hljs-type">Some</span>(<span class="hljs-number">123</span>))
<span class="hljs-comment">// res5: CallHandler2[String, Codec, Option[Int]] = &lt;advanced-topics.md#L109&gt; Memcached.get(some_key, *) once (never called - UNSATISFIED)</span>
</code></pre>
Expand All @@ -133,7 +133,7 @@ <h3><a class="anchor" aria-hidden="true" id="repeated-parameters"></a><a href="#
}

<span class="hljs-keyword">val</span> fooMock = mock[<span class="hljs-type">Foo</span>]
<span class="hljs-comment">// fooMock: Foo = repl.MdocSession$MdocApp$FooMock$5@52d2ee1d</span>
<span class="hljs-comment">// fooMock: Foo = repl.MdocSession$MdocApp$FooMock$5@454f9ce2</span>

when(fooMock.takesRepeatedParameter).expects(<span class="hljs-number">42</span>, <span class="hljs-type">Seq</span>(<span class="hljs-string">"red"</span>, <span class="hljs-string">"green"</span>, <span class="hljs-string">"blue"</span>))
<span class="hljs-comment">// res6: CallHandler2[Int, Seq[String], Unit] = &lt;advanced-topics.md#L130&gt; Foo.takesRepeatedParameter(42, List(red, green, blue)) once (never called - UNSATISFIED)</span>
Expand All @@ -145,7 +145,7 @@ <h2><a class="anchor" aria-hidden="true" id="returning-values-oncall"></a><a hre
}

<span class="hljs-keyword">val</span> fooMock = mock[<span class="hljs-type">Foo</span>]
<span class="hljs-comment">// fooMock: Foo = repl.MdocSession$MdocApp$FooMock$6@aecc5ae</span>
<span class="hljs-comment">// fooMock: Foo = repl.MdocSession$MdocApp$FooMock$6@21553b5c</span>

when(fooMock.increment).expects(<span class="hljs-number">12</span>).returning(<span class="hljs-number">13</span>)
<span class="hljs-comment">// res7: CallHandler1[Int, Int] = &lt;advanced-topics.md#L147&gt; Foo.increment(12) once (called once)</span>
Expand Down Expand Up @@ -235,7 +235,7 @@ <h2><a class="anchor" aria-hidden="true" id="exceptions"></a><a href="#exception
}

<span class="hljs-keyword">val</span> fooMock = mock[<span class="hljs-type">Foo</span>]
<span class="hljs-comment">// fooMock: Foo = repl.MdocSession$MdocApp$FooMock$7@4c056bb6</span>
<span class="hljs-comment">// fooMock: Foo = repl.MdocSession$MdocApp$FooMock$7@49b25c7d</span>


<span class="hljs-comment">// Using the throws or throwing function</span>
Expand Down Expand Up @@ -286,7 +286,7 @@ <h2><a class="anchor" aria-hidden="true" id="mocking-0-parameter-functions"></a>
}

<span class="hljs-keyword">val</span> m = mock[<span class="hljs-type">Test</span>]
<span class="hljs-comment">// m: Test = repl.MdocSession$MdocApp$TestMock$1@5466302d</span>
<span class="hljs-comment">// m: Test = repl.MdocSession$MdocApp$TestMock$1@32ce127d</span>

when(() =&gt; m.zeroParameter()).expects().returns(<span class="hljs-number">1</span>)
<span class="hljs-comment">// res36: CallHandler0[Int] = &lt;advanced-topics.md#L374&gt; Test.zeroParameter() once (never called - UNSATISFIED)</span>
Expand Down
Loading

0 comments on commit 2d89a6e

Please sign in to comment.