mirror of
https://github.com/VinylDNS/vinyldns
synced 2025-08-22 02:02:14 +00:00
Update in tests
This commit is contained in:
parent
ed4d324d4a
commit
e805423e3b
@ -72,6 +72,9 @@ lazy val apiAssemblySettings = Seq(
|
||||
MergeStrategy.discard
|
||||
case PathList("scala", "tools", "nsc", "doc", "html", "resource", "lib", "template.js") =>
|
||||
MergeStrategy.discard
|
||||
case "simulacrum/op.class" | "simulacrum/op$.class" | "simulacrum/typeclass$.class"
|
||||
| "simulacrum/typeclass.class" | "simulacrum/noop.class" =>
|
||||
MergeStrategy.discard
|
||||
case x if x.endsWith("module-info.class") => MergeStrategy.discard
|
||||
case x =>
|
||||
val oldStrategy = (assemblyMergeStrategy in assembly).value
|
||||
|
@ -17,7 +17,7 @@
|
||||
package vinyldns.api.domain
|
||||
|
||||
import cats.implicits._
|
||||
import com.comcast.ip4s.{Cidr, IpAddress, Ipv4Address}
|
||||
import com.comcast.ip4s.{Cidr, Ipv4Address, Ipv6Address}
|
||||
import vinyldns.api.domain.zone.InvalidRequest
|
||||
import vinyldns.core.domain.zone.Zone
|
||||
import vinyldns.api.backend.dns.DnsConversions._
|
||||
@ -30,8 +30,9 @@ object ReverseZoneHelpers {
|
||||
if (zone.isIPv4) {
|
||||
recordsetIsWithinCidrMaskIpv4(mask: String, zone: Zone, recordName: String)
|
||||
} else {
|
||||
val ipAddr = IpAddress.fromString(convertPTRtoIPv6(zone, recordName)).get
|
||||
Try(Cidr.fromString(mask).contains(ipAddr)).getOrElse(false)
|
||||
val ipAddr = Ipv6Address.fromString(convertPTRtoIPv6(zone, recordName))
|
||||
Try(Cidr(Cidr.fromString6(mask).get.address,Cidr.fromString6(mask).get.prefixBits).contains(ipAddr.get))
|
||||
.getOrElse(false)
|
||||
}
|
||||
|
||||
// NOTE: this will not work for zones with less than 3 octets
|
||||
@ -86,7 +87,8 @@ object ReverseZoneHelpers {
|
||||
zone: Zone,
|
||||
recordName: String
|
||||
): Boolean = {
|
||||
val recordIpAddr = Ipv4Address.fromString(convertPTRtoIPv4(zone, recordName)).get
|
||||
|
||||
val recordIpAddr = Ipv4Address.fromString(convertPTRtoIPv4(zone, recordName))
|
||||
|
||||
Try {
|
||||
// make sure mask contains 4 octets, expand if not
|
||||
@ -100,8 +102,7 @@ object ReverseZoneHelpers {
|
||||
}
|
||||
|
||||
val updatedMask = Cidr(Ipv4Address.fromString(fullIp).get,Cidr.fromString4(mask).get.prefixBits)
|
||||
|
||||
updatedMask.contains(recordIpAddr)
|
||||
updatedMask.contains(recordIpAddr.get)
|
||||
}.getOrElse(false)
|
||||
}
|
||||
|
||||
|
@ -19,12 +19,7 @@ package vinyldns.api.domain.zone
|
||||
import cats.implicits._
|
||||
import cats.data._
|
||||
import com.comcast.ip4s.IpAddress
|
||||
import vinyldns.core.domain.{
|
||||
DomainHelpers,
|
||||
DomainValidationError,
|
||||
HighValueDomainError,
|
||||
RecordRequiresManualReview
|
||||
}
|
||||
import vinyldns.core.domain.{DomainHelpers, DomainValidationError, HighValueDomainError, RecordRequiresManualReview}
|
||||
import vinyldns.core.domain.record.{NSData, RecordSet}
|
||||
|
||||
import scala.util.matching.Regex
|
||||
|
@ -56,10 +56,10 @@ class ZoneValidations(syncDelayMillis: Int) {
|
||||
def aclRuleMaskIsValid(rule: ACLRule): Either[Throwable, Unit] =
|
||||
rule.recordMask match {
|
||||
case Some(mask) if rule.recordTypes == Set(RecordType.PTR) =>
|
||||
Try(Cidr.fromString(mask)) match {
|
||||
Try(Cidr.fromString(mask).get) match {
|
||||
case Success(_) => Right(())
|
||||
case Failure(e) =>
|
||||
InvalidRequest(s"PTR types must have no mask or a valid CIDR mask: ${e.getMessage}").asLeft
|
||||
case Failure(_) =>
|
||||
InvalidRequest(s"PTR types must have no mask or a valid CIDR mask: Invalid CIDR block").asLeft
|
||||
}
|
||||
case Some(_) if rule.recordTypes.contains(RecordType.PTR) =>
|
||||
InvalidRequest("Multiple record types including PTR must have no mask").asLeft
|
||||
|
@ -29,9 +29,9 @@ trait VinylDNSTestHelpers {
|
||||
|
||||
val highValueDomainRegexList: List[Regex] = List(new Regex("high-value-domain.*"))
|
||||
val highValueDomainIpList: List[IpAddress] =
|
||||
(IpAddress("192.0.2.252") ++ IpAddress("192.0.2.253") ++ IpAddress(
|
||||
(IpAddress.fromString("192.0.2.252") ++ IpAddress.fromString("192.0.2.253") ++ IpAddress.fromString(
|
||||
"fd69:27cc:fe91:0:0:0:0:ffff"
|
||||
) ++ IpAddress(
|
||||
) ++ IpAddress.fromString(
|
||||
"fd69:27cc:fe91:0:0:0:ffff:0"
|
||||
)).toList
|
||||
|
||||
@ -45,9 +45,9 @@ trait VinylDNSTestHelpers {
|
||||
val manualReviewDomainList: List[Regex] = List(new Regex("needs-review.*"))
|
||||
|
||||
val manualReviewIpList: List[IpAddress] =
|
||||
(IpAddress("192.0.2.254") ++ IpAddress("192.0.2.255") ++ IpAddress(
|
||||
(IpAddress.fromString("192.0.2.254") ++ IpAddress.fromString("192.0.2.255") ++ IpAddress.fromString(
|
||||
"fd69:27cc:fe91:0:0:0:ffff:1"
|
||||
) ++ IpAddress("fd69:27cc:fe91:0:0:0:ffff:2")).toList
|
||||
) ++ IpAddress.fromString("fd69:27cc:fe91:0:0:0:ffff:2")).toList
|
||||
|
||||
val manualReviewZoneNameList: Set[String] = Set("zone.needs.review.")
|
||||
|
||||
|
@ -136,8 +136,8 @@ class ReverseZoneHelpersSpec
|
||||
}
|
||||
"recordsetIsWithinCidrMask" should {
|
||||
"when testing IPv4" should {
|
||||
"filter in/out record set based on CIDR rule of 0 (lower bound for ip4 CIDR rules)" in {
|
||||
val mask = "120.1.2.0/0"
|
||||
"filter in/out record set based on CIDR rule of 1 (lower bound for ip4 CIDR rules)" in {
|
||||
val mask = "120.1.2.0/1"
|
||||
val znTrue = Zone("40.120.in-addr.arpa.", "email")
|
||||
val rsTrue =
|
||||
RecordSet("id", "20.3", RecordType.PTR, 200, RecordSetStatus.Active, DateTime.now)
|
||||
@ -150,7 +150,7 @@ class ReverseZoneHelpersSpec
|
||||
}
|
||||
|
||||
"filter in/out record set based on CIDR rule of 8" in {
|
||||
val mask = "10.10.32/19"
|
||||
val mask = "10.10.32.0/19"
|
||||
val zone = Zone("10.10.in-addr.arpa.", "email")
|
||||
val recordSet =
|
||||
RecordSet("id", "90.44", RecordType.PTR, 200, RecordSetStatus.Active, DateTime.now)
|
||||
|
@ -957,8 +957,8 @@ class AccessValidationsSpec
|
||||
|
||||
"ruleAppliesToRecordNameIPv4" should {
|
||||
|
||||
"filter in/out record set based on CIDR rule of 0 (lower bound for ip4 CIDR rules)" in {
|
||||
val aclRule = userReadAcl.copy(recordMask = Some("120.1.2.0/0"))
|
||||
"filter in/out record set based on CIDR rule of 1 (lower bound for ip4 CIDR rules)" in {
|
||||
val aclRule = userReadAcl.copy(recordMask = Some("120.1.2.0/1"))
|
||||
val znTrue = Zone("40.120.in-addr.arpa.", "email")
|
||||
val rsTrue =
|
||||
RecordSet("id", "20.3", RecordType.PTR, 200, RecordSetStatus.Active, DateTime.now)
|
||||
|
@ -47,7 +47,7 @@ object Dependencies {
|
||||
"com.typesafe" % "config" % configV,
|
||||
"org.typelevel" %% "cats-effect" % catsEffectV,
|
||||
"com.47deg" %% "github4s" % "0.18.6",
|
||||
"com.comcast" % "ip4s-core_2.12" % "3.1.3",
|
||||
"com.comcast" %% "ip4s-core" % "3.1.3",
|
||||
"com.iheart" %% "ficus" % ficusV,
|
||||
"com.sun.mail" % "javax.mail" % "1.6.2",
|
||||
"javax.mail" % "javax.mail-api" % "1.6.2",
|
||||
|
Loading…
x
Reference in New Issue
Block a user