def METHOD_NAME(self):
    import os
    expected_kwargs = {
        "static_folder": os.path.join(self.basefolder, "static"),
        "template_folder": os.path.join(self.basefolder, "templates"),
    }
    class MyPlugin(octoprint.plugin.BlueprintPlugin):
        @octoprint.plugin.BlueprintPlugin.route("/some/path", methods=["GET"])
        def route_method(self):
            pass
        @octoprint.plugin.BlueprintPlugin.errorhandler(404)
        def errorhandler_method(self):
            pass
        @octoprint.plugin.BlueprintPlugin.route("/hidden/path", methods=["GET"])
        def _hidden_method(self):
            pass
    plugin = MyPlugin()
    plugin._basefolder = self.basefolder
    plugin._identifier = "myplugin"
    with mock.patch("flask.Blueprint") as MockBlueprint:
        blueprint = mock.MagicMock()
        MockBlueprint.return_value = blueprint
        errorhandler = mock.MagicMock()
        blueprint.errorhandler.return_value = errorhandler
        result = plugin.get_blueprint()
    self.assertEqual(result, blueprint)
    MockBlueprint.assert_called_once_with("myplugin", "myplugin", **expected_kwargs)
    blueprint.add_url_rule.assert_called_once_with(
        "/some/path", "route_method", view_func=plugin.route_method, methods=["GET"]
    )
    blueprint.errorhandler.assert_called_once_with(404)
    errorhandler.assert_called_once_with(plugin.errorhandler_method)