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

Waffle / waffle / 6364

01 Feb 2026 02:07AM UTC coverage: 46.217%. Remained the same
6364

push

github

web-flow
Merge pull request #3206 from Waffle/renovate/checkstyle.version

Update dependency com.puppycrawl.tools:checkstyle to v13.1.0

276 of 734 branches covered (37.6%)

Branch coverage included in aggregate %.

1019 of 2068 relevant lines covered (49.27%)

1.0 hits per line

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

70.83
/Source/JNA/waffle-tests/src/main/java/waffle/mock/MockWindowsAuthProvider.java
1
/*
2
 * SPDX-License-Identifier: MIT
3
 * See LICENSE file for details.
4
 *
5
 * Copyright 2010-2026 The Waffle Project Contributors: https://github.com/Waffle/waffle/graphs/contributors
6
 */
7
package waffle.mock;
8

9
import com.sun.jna.platform.win32.Secur32.EXTENDED_NAME_FORMAT;
10
import com.sun.jna.platform.win32.Secur32Util;
11

12
import java.nio.charset.StandardCharsets;
13
import java.util.ArrayList;
14
import java.util.List;
15

16
import waffle.windows.auth.IWindowsAccount;
17
import waffle.windows.auth.IWindowsAuthProvider;
18
import waffle.windows.auth.IWindowsComputer;
19
import waffle.windows.auth.IWindowsDomain;
20
import waffle.windows.auth.IWindowsIdentity;
21
import waffle.windows.auth.IWindowsSecurityContext;
22

23
/**
24
 * The Class MockWindowsAuthProvider.
25
 */
26
public class MockWindowsAuthProvider implements IWindowsAuthProvider {
27

28
    /** The Constant GUEST. */
29
    private static final String GUEST = "Guest";
30

31
    /** The groups. */
32
    private final List<String> groups = new ArrayList<>();
2✔
33

34
    /**
35
     * Instantiates a new mock windows auth provider.
36
     */
37
    public MockWindowsAuthProvider() {
2✔
38
        this.groups.add("Users");
2✔
39
        this.groups.add("Everyone");
2✔
40
    }
2✔
41

42
    /**
43
     * Adds the group.
44
     *
45
     * @param name
46
     *            the name
47
     */
48
    public void addGroup(final String name) {
49
        this.groups.add(name);
2✔
50
    }
2✔
51

52
    @Override
53
    public IWindowsSecurityContext acceptSecurityToken(final String connectionId, final byte[] token,
54
            final String securityPackage) {
55
        return new MockWindowsSecurityContext(new String(token, StandardCharsets.UTF_8));
×
56
    }
57

58
    @Override
59
    public IWindowsComputer getCurrentComputer() {
60
        return null;
×
61
    }
62

63
    @Override
64
    public IWindowsDomain[] getDomains() {
65
        return new IWindowsDomain[0];
×
66
    }
67

68
    @Override
69
    public IWindowsIdentity logonDomainUser(final String username, final String domain, final String password) {
70
        return null;
×
71
    }
72

73
    @Override
74
    public IWindowsIdentity logonDomainUserEx(final String username, final String domain, final String password,
75
            final int logonType, final int logonProvider) {
76
        return null;
×
77
    }
78

79
    /**
80
     * Will login the current user with any password. Will logon a "Guest" user as guest.
81
     *
82
     * @param username
83
     *            the username
84
     * @param password
85
     *            the password
86
     *
87
     * @return the i windows identity
88
     */
89
    @Override
90
    public IWindowsIdentity logonUser(final String username, final String password) {
91
        final String currentUsername = Secur32Util.getUserNameEx(EXTENDED_NAME_FORMAT.NameSamCompatible);
2✔
92
        if (currentUsername.equals(username)) {
2✔
93
            return new MockWindowsIdentity(currentUsername, this.groups);
2✔
94
        } else if (MockWindowsAuthProvider.GUEST.equals(username)) {
2✔
95
            return new MockWindowsIdentity(MockWindowsAuthProvider.GUEST, this.groups);
2✔
96
        } else {
97
            throw new RuntimeException("Mock error: " + username);
2✔
98
        }
99
    }
100

101
    @Override
102
    public IWindowsAccount lookupAccount(final String username) {
103
        return null;
×
104
    }
105

106
    @Override
107
    public void resetSecurityToken(final String connectionId) {
108
        // Do Nothing
109
    }
×
110

111
}
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