• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

Camelcade / Perl5-IDEA / #525521714

21 Nov 2025 08:47AM UTC coverage: 75.925% (-0.003%) from 75.928%
#525521714

push

github

hurricup
Bump org.sonarqube from 7.0.1.6134 to 7.1.0.6387

Bumps org.sonarqube from 7.0.1.6134 to 7.1.0.6387.

---
updated-dependencies:
- dependency-name: org.sonarqube
  dependency-version: 7.1.0.6387
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

14753 of 22633 branches covered (65.18%)

Branch coverage included in aggregate %.

31070 of 37720 relevant lines covered (82.37%)

0.82 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

37.5
/mojo/backend/src/main/java/com/perl5/lang/mojolicious/model/MojoProject.java
1
/*
2
 * Copyright 2015-2020 Alexandr Evstigneev
3
 *
4
 * Licensed under the Apache License, Version 2.0 (the "License");
5
 * you may not use this file except in compliance with the License.
6
 * You may obtain a copy of the License at
7
 *
8
 * http://www.apache.org/licenses/LICENSE-2.0
9
 *
10
 * Unless required by applicable law or agreed to in writing, software
11
 * distributed under the License is distributed on an "AS IS" BASIS,
12
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
 * See the License for the specific language governing permissions and
14
 * limitations under the License.
15
 */
16

17
package com.perl5.lang.mojolicious.model;
18

19
import com.intellij.openapi.ui.InputValidator;
20
import com.intellij.openapi.vfs.VirtualFile;
21
import org.jetbrains.annotations.NotNull;
22

23
import javax.swing.*;
24
import java.util.regex.Pattern;
25

26
/**
27
 * Base class for mojo-based projects: applications and plugins
28
 */
29
public abstract class MojoProject {
30
  private final @NotNull VirtualFile myRoot;
31

32
  public MojoProject(@NotNull VirtualFile root) {
1✔
33
    myRoot = root;
1✔
34
  }
1✔
35

36
  public @NotNull VirtualFile getRoot() {
37
    return myRoot;
1!
38
  }
39

40
  public abstract @NotNull Icon getIcon();
41

42
  public abstract @NotNull String getTypeName();
43

44
  public boolean isValid() {
45
    return myRoot.isValid();
×
46
  }
47

48
  @Override
49
  public boolean equals(Object o) {
50
    if (this == o) {
×
51
      return true;
×
52
    }
53
    if (o == null || getClass() != o.getClass()) {
×
54
      return false;
×
55
    }
56

57
    MojoProject project = (MojoProject)o;
×
58

59
    return myRoot.equals(project.myRoot);
×
60
  }
61

62
  @Override
63
  public int hashCode() {
64
    return myRoot.hashCode();
1✔
65
  }
66

67
  @Override
68
  public String toString() {
69
    return getTypeName() + ": " + myRoot;
1✔
70
  }
71

72
  protected abstract static class NameValidator implements InputValidator {
1✔
73
    protected abstract @NotNull Pattern getPattern();
74

75
    @Override
76
    public boolean checkInput(String inputString) {
77
      return getPattern().matcher(inputString).matches();
1✔
78
    }
79

80
    @Override
81
    public boolean canClose(String inputString) {
82
      return checkInput(inputString);
×
83
    }
84
  }
85
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc