Ark-Plugin-MobileJP

 view release on metacpan or  search on metacpan

META.json  view on Meta::CPAN

         "requires" : {
            "Ark" : "0",
            "Encode::JP::Mobile" : "0",
            "HTTP::MobileAgent" : "0",
            "HTTP::MobileAgent::Plugin::Charset" : "0",
            "perl" : "5.008001"
         }
      },
      "test" : {
         "requires" : {
            "HTTP::Request::Common" : "0",
            "Test::More" : "0.98",
            "Test::Requires" : "0"
         }
      }
   },
   "provides" : {
      "Ark::Plugin::Encoding::MobileJP" : {
         "file" : "lib/Ark/Plugin/Encoding/MobileJP.pm"
      },
      "Ark::Plugin::MobileAgent" : {

META.yml  view on Meta::CPAN

---
abstract: 'Ark plugins for japanese feature phones'
author:
  - 'Daisuke Murase <typester@cpan.org>'
build_requires:
  HTTP::Request::Common: 0
  Test::More: 0.98
  Test::Requires: 0
configure_requires:
  CPAN::Meta: 0
  CPAN::Meta::Prereqs: 0
  Module::Build: 0.38
dynamic_config: 0
generated_by: 'Minilla/v0.9.0, CPAN::Meta::Converter version 2.131560'
license: perl
meta-spec:

cpanfile  view on Meta::CPAN


on configure => sub {
    requires 'CPAN::Meta';
    requires 'CPAN::Meta::Prereqs';
    requires 'Module::Build';
};

on 'test' => sub {
    requires 'Test::More', '0.98';
    requires 'Test::Requires';
    requires 'HTTP::Request::Common';
};

t/plugin_encoding_mobilejp.t  view on Meta::CPAN

use strict;
use warnings;
use utf8;
use Test::Requires 'Encode::JP::Mobile', 'HTTP::MobileAgent::Plugin::Charset';
use Test::More;

use Encode;
use HTTP::Request::Common;

{
    package T;
    use Ark;

    use_plugins qw{
        +T::Encoding::Test
        MobileAgent
        Encoding::MobileJP
    };

t/plugin_encoding_mobilejp.t  view on Meta::CPAN

        $c->res->body($c->req->param('word'));
    }
}

use Ark::Test 'T',
    components => [qw/Controller::Root/];

# DoCoMo
{
    my $request =
        HTTP::Request->new(GET => '/test');
    $request->header('User-Agent' => 'DoCoMo/2.0 P900i(c100;TB;W24H11)');

    ok my ($response, $c) = ctx_request($request), 'DoCoMo Request';
    is $c->encoding->name, 'x-utf8-docomo', 'encoding is x-utf8-docomo';
}

{
    my $request = POST '/test', [
        'word' => Encode::encode('utf8', 'こんにちは'),
    ];

t/plugin_encoding_mobilejp.t  view on Meta::CPAN


    is Encode::is_utf8($c->req->param('word')), 1, 'utf-8 flagged';
    is $c->req->param('word'), 'こんにちは', 'parameter encoding ok';

    is $response->content, Encode::encode('utf8', 'こんにちは'), 'not utf-8 flagged';
}

# AU
{
    my $request =
        HTTP::Request->new(GET => '/test');
    $request->header('User-Agent' => 'KDDI-HI31 UP.Browser/6.2.0.5 (GUI) MMP/2.0');

    ok my ($response, $c) = ctx_request($request), 'AU Request';
    is $c->encoding->name, 'x-sjis-kddi-auto', 'encoding is x-sjis-kddi-auto';
}

{
    my $request = POST '/test', [
        'word' => Encode::encode('sjis', 'こんにちは'),
    ];

t/plugin_encoding_mobilejp.t  view on Meta::CPAN


    is Encode::is_utf8($c->req->param('word')), 1, 'utf-8 flagged';
    is $c->req->param('word'), 'こんにちは', 'parameter encoding ok';

    is $response->content, Encode::encode('sjis', 'こんにちは'), 'response body sjis';
}

# Softbank
{
    my $request =
        HTTP::Request->new(GET => '/test');
    $request->header('User-Agent' => 'SoftBank/1.0/910T/TJ001/SN123456789012345');

    ok my ($response, $c) = ctx_request($request), 'Softbank Request';
    is $c->encoding->name, 'x-utf8-softbank', 'encoding is x-utf8-softbank';
}

{
    my $request = POST '/test', [
        'word' => Encode::encode('utf8', 'こんにちは'),
    ];

t/plugin_encoding_mobilejp_called_parameters_before.t  view on Meta::CPAN

use strict;
use warnings;
use utf8;
use Test::Requires 'Encode::JP::Mobile', 'HTTP::MobileAgent::Plugin::Charset';
use Test::More;

use Encode;
use HTTP::Request::Common;

{
    package T;
    use Ark;

    use_plugins qw{
        +T::Encoding::Test
        MobileAgent
        Encoding::MobileJP
    };



( run in 0.252 second using v1.01-cache-2.11-cpan-de7293f3b23 )