Red.git | docs/coverage/report-data/ | X-Red-Exceptions.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>RaCoCo result: X::Red::Exceptions</title>
<link rel="stylesheet"
href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css"
integrity="sha384-Vkoo8x4CGsO3+Hhxv8T/Q5PaXtkKtu6ug5TOeNV6gBiFeWPGFN9MuhOf23Q9Ifjh"
crossorigin="anonymous">
<style>
pre.code::before {
counter-reset: listing;
}
pre.code span {
counter-increment: listing;
}
pre.code span::before {
content: counter(listing) ". ";
}
.coverage-green {
background-color: #32CD32;
/*color-blind
background-color: #00CED1;
/**/
}
.coverage-red {
background-color: #fa8072;
}
.coverage-purple {
background-color: #9370DB;
}
</style>
</head>
<body>
<div class="container">
<div class="row mt-5 mb-3">
<div class="col-12">
<div class="page-header">
<h1>X::Red::Exceptions 45.8%</h1>
</div>
</div>
</div>
<div class="row justify-content-md-center">
<div class="col-md-10">
<pre class="code">
<span class="coverage-green">use Red::Column;</span>
<span class="coverage-no"></span>
<span class="coverage-green">class X::Red is Exception {}</span>
<span class="coverage-no"></span>
<span class="coverage-green">class X::Red::RedDbNotDefined is X::Red {</span>
<span class="coverage-red"> method message { Q[$*RED-DB wasn't defined] }</span>
<span class="coverage-no">}</span>
<span class="coverage-no"></span>
<span class="coverage-green">class X::Red::Defaults::FromConfNotFound is X::Red {</span>
<span class="coverage-red"> has Str $.file = "./.red.json";</span>
<span class="coverage-red"> method message { "Red configuration file ($!file) not found" }</span>
<span class="coverage-no">}</span>
<span class="coverage-no"></span>
<span class="coverage-green">class X::Red::Do is X::Red {</span>
<span class="coverage-red"> has Str $.driver = "default"</span>
<span class="coverage-no">}</span>
<span class="coverage-no"></span>
<span class="coverage-green">class X::Red::Do::DriverNotDefined is X::Red::Do {</span>
<span class="coverage-green"> method message { "Driver $.driver not specified" }</span>
<span class="coverage-no">}</span>
<span class="coverage-no"></span>
<span class="coverage-green">class X::Red::Do::DriverDefinedMoreThanOnce is X::Red::Do {</span>
<span class="coverage-red"> method message { "Driver $.driver defined mor than once" }</span>
<span class="coverage-no">}</span>
<span class="coverage-no"></span>
<span class="coverage-green">class X::Red::Driver is X::Red {</span>
<span class="coverage-green"> has Str $.driver = $*RED-DB.^name;</span>
<span class="coverage-no">}</span>
<span class="coverage-no"></span>
<span class="coverage-green">class X::Red::RelationshipNotColumn is X::Red {</span>
<span class="coverage-no"> has Attribute $.relationship;</span>
<span class="coverage-red"> has $.points-to;</span>
<span class="coverage-no"></span>
<span class="coverage-red"> method message {</span>
<span class="coverage-red"> "The relationship '$!relationship.name()' points to a {$!points-to.^name} ($!points-to.Str()). Should point to a column that is refering to another column."</span>
<span class="coverage-no"> }</span>
<span class="coverage-no">}</span>
<span class="coverage-no"></span>
<span class="coverage-green">class X::Red::RelationshipNotRelated is X::Red {</span>
<span class="coverage-no"> has Attribute $.relationship;</span>
<span class="coverage-red"> has Red::Column $.points-to;</span>
<span class="coverage-no"></span>
<span class="coverage-red"> method message {</span>
<span class="coverage-red"> "The relationship '$!relationship.name()' points to a column ('$!points-to.attr-name()') that does not refer to any where"</span>
<span class="coverage-no"> }</span>
<span class="coverage-no">}</span>
<span class="coverage-no"></span>
<span class="coverage-green">class X::Red::InvalidTableName is X::Red::Driver {</span>
<span class="coverage-red"> has Str $.table;</span>
<span class="coverage-no"></span>
<span class="coverage-red"> method message { "'$!table' is an invalid table name for driver { $.driver }" }</span>
<span class="coverage-no">}</span>
<span class="coverage-no"></span>
<span class="coverage-green">class X::Red::UpdateNoId is X::Red::Driver {</span>
<span class="coverage-red"> method message { "Update on a model without id isn't allowed" }</span>
<span class="coverage-no">}</span>
<span class="coverage-no"></span>
<span class="coverage-green">class X::Red::Driver::Mapped is X::Red::Driver {</span>
<span class="coverage-no"> has Exception $.orig-exception is required;</span>
<span class="coverage-green"> has Str $!orig-message = $!orig-exception.message;</span>
<span class="coverage-green"> has Backtrace $!orig-backtrace = $!orig-exception.backtrace;</span>
<span class="coverage-no"></span>
<span class="coverage-red"> method msg { !!! }</span>
<span class="coverage-no"></span>
<span class="coverage-red"> method message {</span>
<span class="coverage-red"> "{self.msg}\nOriginal error:\n{$!orig-message}"</span>
<span class="coverage-no"> }</span>
<span class="coverage-no"></span>
<span class="coverage-green"> method throw is hidden-from-backtrace {</span>
<span class="coverage-green"> nextwith $!orig-backtrace</span>
<span class="coverage-no"> }</span>
<span class="coverage-no">}</span>
<span class="coverage-no"></span>
<span class="coverage-green">class X::Red::Driver::Mapped::UnknownError is X::Red::Driver::Mapped {</span>
<span class="coverage-red"> has Str @.fields;</span>
<span class="coverage-red"> method msg {</span>
<span class="coverage-red"> qq:to/END/</span>
<span class="coverage-no"> Unknown Error!!!</span>
<span class="coverage-no"> Please, copy this backtrace and open an issue on https://github.com/FCO/Red/issues/new</span>
<span class="coverage-red"> Driver: { $.driver }</span>
<span class="coverage-red"> Original error: { $.orig-exception.perl }</span>
<span class="coverage-no"> END</span>
<span class="coverage-no"> }</span>
<span class="coverage-no">}</span>
<span class="coverage-no"></span>
<span class="coverage-green">class X::Red::Driver::Mapped::Unique is X::Red::Driver::Mapped {</span>
<span class="coverage-red"> has Str @.fields;</span>
<span class="coverage-red"> method msg { "Unique constraint ({@!fields.join: ", "}) violated" }</span>
<span class="coverage-no">}</span>
<span class="coverage-no"></span>
<span class="coverage-green">class X::Red::Driver::Mapped::TableExists is X::Red::Driver::Mapped {</span>
<span class="coverage-red"> has Str $.table is required;</span>
<span class="coverage-red"> method msg { "Table $!table already exists" }</span>
<span class="coverage-no">}</span>
</pre>
</div>
</div>
</div>
</body>
</html>