Fake $_SERVER variables in phpUnit

B. Rentrug

I'm still new to phpUnit and I can't make my (very simple) test work.

<?php

use PHPUnit\Framework\TestCase;

class userTest extends TestCase {
    public function testTrue() {
        $this->assertTrue(true);

        //  This line wont work without autloader.php
        $user = new User();
    }
}

The problem is that I need to load all my classes from autoloader.php:

<?xml version="1.0" encoding="UTF-8"?>
    <phpunit bootstrap="inc/autoload.php"></phpunit>

But I'n those classes I have a lot of $SERVER variables, like

$_SERVER['REMOTE_ADDR']
$_SERVER['HTTPS']
$_SERVER['SERVER_NAME']
$_SERVER['DOCUMENT_ROOT']
$_SERVER['REQUEST_URI']

This is the error I get:

Notice: Undefined index: REMOTE_ADDR in /Applications/MAMP/htdocs/sakkadentrainer/classes/App.php on line 674

How can I make those variables work? I would prefer to kind of "fake" them as env.variables from the phpunit.xml file, but I don't know if that's possible.

Thanks for you help!

My Setup: php 7.1.2, phpUnit 6.1.1, macOs Mojave, MAMP

SOLUTION: https://phpunit.de/manual/6.5/en/appendixes.configuration.html#appendixes.configuration.php-ini-constants-variables

Matteo

Referring to the Doc, you can Setting PHP INI settings, Constants and Global Variables, as example:

<php>
  <server name="REMOTE_ADDR" value="127.0.0.1"/>
</php>

Hope this help

Este artigo é coletado da Internet.

Se houver alguma infração, entre em [email protected] Delete.

editar em
0

deixe-me dizer algumas palavras

0comentários
loginDepois de participar da revisão

Artigos relacionados

TOP lista

  1. 1

    Cannot resolve symbol Apache in Intellij

  2. 2

    Não foi possível carregar o arquivo ou montagem 'System.Runtime.InteropServices.RuntimeInformation

  3. 3

    Dependency Chain: category -> shop => category in model sequelizejs while defining foreign key

  4. 4

    Fazendo a média de várias séries temporais junto com intervalo de confiança (com código de teste)

  5. 5

    Plotly: Como adicionar média e desvio padrão a uma figura create_displot?

  6. 6

    Como faço para remover zeros à esquerda antes de um ponto decimal? O Excel está formatado, mas o Combobox em meu formulário de usuário os está adicionando

  7. 7

    Adicionando leads objetivo remontar a "Erro ao criar feijão com o nome 'EntityManagerFactory'"

  8. 8

    Não foi possível comprar com a oferta de assinatura

  9. 9

    ViewPager com vários filhos visíveis e maior selecionado

  10. 10

    Spin: erro, a versão do spin que gerou este pan.c assumiu um tamanho de palavra diferente (4 iso 8)

  11. 11

    Veicule arquivos estáticos (JavaScript) com Struts 2

  12. 12

    Defina a largura do elemento posicionado de forma absoluta para seu conteúdo (é apenas um texto)

  13. 13

    Carimbo de data e hora do JavaScript para SqlDateTime com milissegundos

  14. 14

    Testando um aplicativo de linha de comando Spring Boot

  15. 15

    R no erro MacOS: memória do vetor esgotada (limite atingido?)

  16. 16

    使用OpenLayers,如何在单个图层上显示不同功能的不同图标?

  17. 17

    Removendo outliers para calcular a média de uma série / dataframe por meio de boxplots?

  18. 18

    Falha do aplicativo Spring Boot - Erro pacote java não existe

  19. 19

    C # HttpClient - posso forçar o fechamento da conexão?

  20. 20

    Como chamar um método de serviço com Thymeleaf

  21. 21

    Como executar o sonar mvn: sonar usando jhipster e sonar em contêineres docker

quentelabel

Arquivo