Skip to content
This repository was archived by the owner on Mar 1, 2023. It is now read-only.

Next version #125

Merged
merged 1 commit into from
Sep 10, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,11 @@
# Changes

## 0.10.0

* Upgrade to react-common 0.10.0
* Upgrade to scalajs 1.2.0
* Switch to munit

## 0.9.5

* Upgrade to react-common 0.9.8
Expand Down
28 changes: 16 additions & 12 deletions build.sbt
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,12 @@ val scalaJsReact = "1.7.5"
parallelExecution in (ThisBuild, Test) := false

addCommandAlias("restartWDS",
"; demo/fastOptJS::stopWebpackDevServer; demo/fastOptJS::startWebpackDevServer")
"; demo/fastOptJS::stopWebpackDevServer; demo/fastOptJS::startWebpackDevServer"
)

addCommandAlias("restartWDS",
"; demo/fastOptJS::stopWebpackDevServer; demo/fastOptJS::startWebpackDevServer")
"; demo/fastOptJS::stopWebpackDevServer; demo/fastOptJS::startWebpackDevServer"
)

// resolvers in Global += Resolver.sonatypeRepo("staging")
Global / onChangedBuildSource := ReloadOnSourceChanges
Expand All @@ -23,11 +25,13 @@ inThisBuild(
Developer("cquiroz",
"Carlos Quiroz",
"[email protected]",
url("https://github.com/cquiroz"))
url("https://github.com/cquiroz")
)
),
scmInfo := Some(
ScmInfo(url("https://github.com/cquiroz/scalajs-react-virtualized"),
"scm:git:[email protected]:cquiroz/scalajs-react-virtualized.git")
"scm:git:[email protected]:cquiroz/scalajs-react-virtualized.git"
)
)
)
)
Expand Down Expand Up @@ -84,23 +88,23 @@ lazy val facade =
requireJsDomEnv in Test := true,
// Use yarn as it is faster than npm
useYarn := true,
version in webpack := "4.30.0",
version in webpackCliVersion := "3.3.2",
version in startWebpackDevServer := "3.3.1",
webpack / version := "4.44.1",
webpackCliVersion / version := "3.3.11",
startWebpackDevServer / version := "3.11.0",
scalaJSUseMainModuleInitializer := false,
// Compile tests to JS using fast-optimisation
scalaJSStage in Test := FastOptStage,
libraryDependencies ++= Seq(
"com.github.japgolly.scalajs-react" %%% "core" % scalaJsReact,
"com.github.japgolly.scalajs-react" %%% "test" % scalaJsReact % "test",
"io.github.cquiroz.react" %%% "common" % "0.9.8",
"io.github.cquiroz.react" %%% "test" % "0.9.8" % Test,
"io.github.cquiroz.react" %%% "cats" % "0.9.8",
"com.lihaoyi" %%% "utest" % "0.7.5" % Test,
"io.github.cquiroz.react" %%% "common" % "0.10.0",
"io.github.cquiroz.react" %%% "test" % "0.10.0" % Test,
"io.github.cquiroz.react" %%% "cats" % "0.10.0",
"org.scalameta" %%% "munit" % "0.7.12" % Test,
"org.typelevel" %%% "cats-core" % "2.2.0" % Test
),
webpackConfigFile in Test := Some(baseDirectory.value / "test.webpack.config.js"),
testFrameworks += new TestFramework("utest.runner.Framework")
testFrameworks += new TestFramework("munit.Framework")
)

lazy val commonSettings = Seq(
Expand Down
117 changes: 117 additions & 0 deletions facade/src/test/scala/react/virtualized/AutoSizerSuite.scala
Original file line number Diff line number Diff line change
@@ -0,0 +1,117 @@
package react
package virtualized

import japgolly.scalajs.react._
import japgolly.scalajs.react.test._
import japgolly.scalajs.react.raw._
import japgolly.scalajs.react.vdom.html_<^.{ < => <<, _ }
import react.common._
import react.common.implicits._
import scala.scalajs.js
import scala.scalajs.js.|
import cats.syntax.eq._

class AutoSizerSuite extends munit.FunSuite with TestUtils {
def children(s: Size): VdomNode =
<<.div(
^.width := s.width.toDouble.px,
^.height := s.height.toDouble.px,
<<.span("text")
)

test("render") {
val autoSizer = AutoSizer(AutoSizer.props(children = children))
ReactTestUtils.withRenderedIntoDocument(autoSizer) { m =>
val html =
"""<div style="overflow: visible; height: 0px; width: 0px;">
|<div style="width: 0px; height: 0px;">
|<span>text</span>
|</div>
|</div>""".stripMargin.replaceAll("[\n\r]", "")
assert(m.outerHtmlScrubbed() == html)
}
}
test("supportDisableWidth") {
assertEquals(AutoSizer(AutoSizer.props(children = children)).props.disableWidth.toOption,
Some(false)
)
assertEquals(AutoSizer(
AutoSizer.props(children = children, disableWidth = true)
).props.disableWidth.toOption,
Some(true)
)
}
test("clazz") {
assertEquals(AutoSizer(
AutoSizer.props(children = children, clazz = Css("class"))
).props.className.toOption,
Some("class")
)
assertEquals(AutoSizer(
AutoSizer.props(children = children, className = "class1", clazz = Css("class2"))
).props.className.toOption,
Some("class1 class2")
)
}
test("supportDisableHeight") {
assertEquals(AutoSizer(AutoSizer.props(children = children)).props.disableHeight.toOption,
Some(false)
)
assertEquals(AutoSizer(
AutoSizer.props(children = children, disableHeight = true)
).props.disableHeight.toOption,
Some(true)
)
}
test("supportOnResize") {
val size = Size(height = 10, width = 20)
assertEquals(
AutoSizer(AutoSizer.props(children = children, onResize = x => Callback.empty)).props
.onResize(size),
()
)
}
test("supportClassName") {
assertEquals(AutoSizer(AutoSizer.props(children = children)).props.className, js.undefined)
assertEquals(AutoSizer(
AutoSizer.props(children = children, className = "classname")
).props.className,
"classname": js.UndefOr[String]
)
}
test("supportDefaultHeightWidth") {
assertEquals(AutoSizer(AutoSizer.props(children = children)).props.defaultHeight, js.undefined)
assertEquals(AutoSizer(
AutoSizer.props(children = children, defaultHeight = 43.1)
).props.defaultHeight,
43.1: js.UndefOr[JsNumber]
)
assertEquals(
AutoSizer(AutoSizer.props(children = children, defaultHeight = 43)).props.defaultHeight,
43: js.UndefOr[JsNumber]
)

assertEquals(AutoSizer(AutoSizer.props(children = children)).props.defaultWidth, js.undefined)
assertEquals(AutoSizer(
AutoSizer.props(children = children, defaultWidth = 43.1)
).props.defaultWidth,
43.1: js.UndefOr[JsNumber]
)
assertEquals(
AutoSizer(AutoSizer.props(children = children, defaultWidth = 43)).props.defaultWidth,
43: js.UndefOr[JsNumber]
)
}
test("supportStyle") {
val style = js.Dynamic.literal(foo = 42, bar = "foobar")
val styleMap = Map[String, String | Int]("foo" -> 42, "bar" -> "foobar")
assertEquals(AutoSizer(AutoSizer.props(children = children)).props.style === new js.Object(),
true
)
assertEquals(AutoSizer(
AutoSizer.props(children = children, style = Style(styleMap))
).props.style === style,
true
)
}
}
96 changes: 0 additions & 96 deletions facade/src/test/scala/react/virtualized/AutoSizerTests.scala

This file was deleted.

43 changes: 43 additions & 0 deletions facade/src/test/scala/react/virtualized/CellMeasurerSuite.scala
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
package react
package virtualized

import react.common.TestUtils

class CellMeasurerSuite extends munit.FunSuite with TestUtils {
test("be buildable") {
val cellMeasurerCache = new CellMeasurerCache(CellMeasurerCacheParams(FixedHeight))
assert(cellMeasurerCache != null)
}
test("support clear") {
val cellMeasurerCache = new CellMeasurerCache(CellMeasurerCacheParams(FixedHeight))
assertEquals(cellMeasurerCache.clear(0, 0), ())
}
test("support clearAll") {
val cellMeasurerCache = new CellMeasurerCache(CellMeasurerCacheParams(FixedHeight))
assertEquals(cellMeasurerCache.clearAll(), ())
}
test("support columnWidth") {
val cellMeasurerCache = new CellMeasurerCache(CellMeasurerCacheParams(FixedHeight))
assertEquals(cellMeasurerCache.columnWidth(raw.RawIndexParameter(0)), 100)
}
test("support getHeight") {
val cellMeasurerCache = new CellMeasurerCache(CellMeasurerCacheParams(FixedHeight))
assertEquals(cellMeasurerCache.getHeight(0, 0), 30)
}
test("support getWidth") {
val cellMeasurerCache = new CellMeasurerCache(CellMeasurerCacheParams(FixedHeight))
assertEquals(cellMeasurerCache.getWidth(0, 0), 100)
}
test("support has") {
val cellMeasurerCache = new CellMeasurerCache(CellMeasurerCacheParams(FixedHeight))
assertEquals(cellMeasurerCache.has(0, 0), false)
}
test("support rowHeight") {
val cellMeasurerCache = new CellMeasurerCache(CellMeasurerCacheParams(FixedHeight))
assertEquals(cellMeasurerCache.rowHeight(raw.RawIndexParameter(0)), 30)
}
test("support set") {
val cellMeasurerCache = new CellMeasurerCache(CellMeasurerCacheParams(FixedHeight))
assertEquals(cellMeasurerCache.set(0, 0, 20, 30), ())
}
}
46 changes: 0 additions & 46 deletions facade/src/test/scala/react/virtualized/CellMeasurerTest.scala

This file was deleted.

Loading