人気ブログランキング | 話題のタグを見る
2013年 04月 12日

eclipse Juno SR2 でdjUnitの仮想モック・オブジェクトを使う

環境 : Eclipse Juno (4.2) SR2

1. djUnitインストール
http://works.dgic.co.jp/djunit/update/3.5.x/site.xml
から3.5を落とす。
# eclipseは4.2 だけど3.5用 でも動いた

2. eclipse 再起動

3. 仮想モックオブジェクト使用設定
プロジェクトのプロパティー → djUnit → 仮想モック・オブジェクトタブ
仮想モックオブジェクトを使用するにチェックを付ける

4. ビルドパスにdjunit.jarを追加
{eclipse}\plugins\jp.co.dgic.eclipse.jdt.djunit_0.8.6 に入っていた

5. テストクラス作成
import jp.co.dgic.testing.framework.DJUnitTestCase;
import org.junit.Test;

public class クラスTest extends DJUnitTestCase {

@Test
public void testメソッド() {

// モックに返却させたい値を設定
addReturnValue("パッケージ名含むクラス名", "メソッド名", "返却値");

// テスト実施
クラス.メソッド();
}

}


# by yusukay | 2013-04-12 16:17 | IT
2013年 04月 08日

postgres DBからトリガの情報を取得する

環境 : postgres 8.2.23

# テーブルに紐付けられているトリガを取得
$ \d+ {テーブル名}

-- トリガ名一覧を取得
select * from pg_trigger;

-- トリガに割り当てられている関数名を取得
select tgname,proname from pg_trigger t, pg_proc f where t.tgfoid = f.oid
and tgname = '{トリガ名}';

-- 関数の中身を取得
SELECT prosrc FROM pg_proc WHERE proname = '{関数名}';

# by yusukay | 2013-04-08 14:50 | IT
2013年 04月 04日

pythonでpostgresに接続してみる@CentOS

目的 :pythonでpsycopg2ドライバを使用してpostgresに接続してみる
環境 :
OS:CentOS 5.8
python 2.4


1. python-devel をインストール
$ yum install python-devel

2. psycopg2ソース取得
ソースの取得 rootユーザで
http://initd.org/psycopg/
から最新のリリースを持ってくる
$ wget -P /usr/local/src http://initd.org/psycopg/tarballs/PSYCOPG-2-4/psycopg2-2.4.6.tar.gz


3. psycopg2ソース解凍
$ cd /usr/local/src
$ tar zxvf psycopg2-2.4.6.tar.gz

4. psycopg2インストール
$ cd /usr/local/src/psycopg2-2.4.6
$ python setup.py build
Error: pg_config executable not found.
※ postgresql-devel がいるみたい
$ yum install postgresql-devel

再度
$ python setup.py build
$ python setup.py install

5. 接続確認
pythonからpostgresDBのバージョンを聞くプログラム(connectTestPostgresDB.py)あたりを打ってみる

# -*- coding: utf-8 -*-
# postgresDB 接続テスト
import psycopg2

# コネクション作成
connection = psycopg2.connect(
database='{データーベース}',
user='{ユーザ}',
password='{パスワード}',
host='{ホスト}',
port=5432)
cursor = connection.cursor()

sql = """SELECT version();"""
cursor.execute(sql)
rows = cursor.fetchall()
for row in rows:
print row[0]

cursor.close()
connection.close()


$ python connectTestPostgresDB.py
PostgreSQL 8.3.15 on i686-pc-linux-gnu, compiled by GCC gcc (GCC) 4.1.2 20080704 (Red Hat 4.1.2-52)

↑バージョンが出たのでOK


# by yusukay | 2013-04-04 15:07 | IT
2013年 04月 03日

eclipse色テーマ変更方法

1. 色テーマ入手
http://eclipsecolorthemes.org/
からDownload -> Eclipse Color Theme(XML) よりXMLをダウンロード

2. テーマのインポート
ウィンドウ -> 設定 -> 概観 -> 色テーマ よりテーマのインポート

3. テーマの適用
インポートしたテーマを選択し、適用押下

4. 出現箇所の表示色変更
選択箇所の出現箇所がイけてない場合は
ウィンドウ -> 設定 -> 一般 -> エディタ -> テキスト・エディター -> 注釈
より納得できる出現箇所の色に設定する
# 書き込み出現箇所も同じ色だと良いかも

プロパティファイルの色がイけてない場合は
ウィンドウ -> 設定 -> プロパティー・エディター
より文字色オプションを変更

diffの枠線が気にイけてない場合
eclipse -> ウィンドウ -> 設定 -> 一般 -> 外観 -> 色とフォント
テキストの比較 の発信される変更を示す色を グレーあたりに。


# by yusukay | 2013-04-03 11:45 | IT
2013年 04月 02日

python2.4でLDAP検索してみる

前提条件
python-ldapがインストール済みであること
https://pypi.python.org/pypi/python-ldap


参考:【Using the Python LDAP Module】
http://www.pha.com.au/kb/index.php/Python_-_LDAP

サンプルプログラム
# -*- coding: utf-8 -*-
# searchテスト

import ldap

# LDAP接続
ldaphost = "ldap://{ホストアドレス}:389"
baseDN = "ou={hoge},dc={hoge},dc={hoge}"
username = "cn={hoge}"
password = "{パスワード}"
# 検索条件 とりあえずuid全部取得
searchFilter = "(uid=*)"
count = 0

# LDAPサーバ接続
try:
l = ldap.initialize(ldaphost)
l.protocol_version = ldap.VERSION3
l.simple_bind_s(username, password)
except ldap.LDAPError, e:
print e

# サブツリー配下取得
searchScope = ldap.SCOPE_SUBTREE
# 全属性取得
retrieveAttributes = None

try:
search_results = l.search_s(baseDN, searchScope, searchFilter, retrieveAttributes)
print "検索結果 %d 件" % len(search_results)

if len(search_results) == 0:
print "検索結果0件のため、処理なし"
else:
for base_dn, search_result in search_results:
try:
mail = search_result.get('mail')
cn = search_result.get('cn')
print "mail = %s,cn = %s" % (mail,cn)
except:
pass
except ldap.LDAPError, error_message:
print error_message

# LDAPサーバ切断
l.unbind_s()


# by yusukay | 2013-04-02 16:42 | IT