GitLab::API::v4::Mock::Engine - Mocking the internals of a GitLab server.
Contents
Attributes
next_ids
my $ids = $engine->next_ids();
A hash reference containing object types to the next ID.
Used by "next_id_for".
users
my $users = $engine->users();
foreach my $user (@$users) { ... }
Returns the full array reference of all users hash references.
Description
This module provides the tooling to run a mock of the internal state of a GitLab server.
At this time very little is validated. For example, when you create a user with "create_user" there is
no logic which double checks that you specify the required "email" field or that you don't put in fields
that are unexpected.
License
See "LICENSE" in GitLab::API::v4.
perl v5.36.0 2023-06-13 GitLab::API::v4::Mock::Engine(3pm)
Methods
next_id_for
my $id = $engine->next_id_for( 'user' );
Given an object type this will return the next unused ID.
Name
GitLab::API::v4::Mock::Engine - Mocking the internals of a GitLab server.
Support
See "SUPPORT" in GitLab::API::v4.
Synopsis
use GitLab::API::v4::Mock::Engine;
my $engine = GitLab::API::v4::Mock::Engine->new();
my $user = $engine->create_user({
email => $email,
username => $username,
name => $name,
...,
});
print "User created with ID: $user->{id}\n";
User Methods
user
my $user = $engine->user( $id );
Returns a user hash reference for the given ID.
If no user is found with the ID then "undef" is returned.
create_user
my $user = $engine->create_user( $user );
my $id = $user->{id};
Takes a user hash reference, sets the "id" field, and stores it in "users".
Returns the updated user hash reference.
update_user
my $user = $engine->update_user( $id, $new_user_data );
Takes the ID of the user to update and a hash reference of fields to update.
Returns the updated user hash reference.
delete_user
my $user = $engine->delete_user( $id );
Deletes the user with the specified ID from "users".
If no user is found with the ID then "undef" is returned. Otherwise the user hash reference is returned.
